mirror of
https://github.com/projectacrn/acrn-hypervisor.git
synced 2025-05-10 01:16:06 +00:00
On hybrid platform(e.g. ADL), there may be multiple instances of same level caches for different type of processors, The current design only supports one global `rdt_info` for each RDT resource type. In order to support hybrid platform, this patch introduce `rdt_ins` to represents the "instance". Also, the number of `rdt_info` is dynamically generated by config-tool to match with physical board. Tracked-On: projectacrn#6690 Signed-off-by: Tw <wei.tan@intel.com> Acked-by: Eddie Dong <eddie.dong@Intel.com>
42 lines
1005 B
C
42 lines
1005 B
C
/*
|
|
* Copyright (C) 2019 Intel Corporation.
|
|
*
|
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
*/
|
|
#ifndef BOARD_H
|
|
#define BOARD_H
|
|
|
|
#include <types.h>
|
|
#include <board_info.h>
|
|
#include <asm/host_pm.h>
|
|
#include <pci.h>
|
|
#include <misc_cfg.h>
|
|
|
|
/* forward declarations */
|
|
struct acrn_vm;
|
|
|
|
/* user configured mask and MSR info for each CLOS*/
|
|
union clos_config {
|
|
uint16_t mba_delay;
|
|
uint32_t clos_mask;
|
|
};
|
|
|
|
struct vmsix_on_msi_info {
|
|
union pci_bdf bdf;
|
|
uint64_t mmio_base;
|
|
};
|
|
|
|
extern struct dmar_info plat_dmar_info;
|
|
|
|
#ifdef CONFIG_RDT_ENABLED
|
|
extern union clos_config platform_l2_clos_array[MAX_CACHE_CLOS_NUM_ENTRIES];
|
|
extern union clos_config platform_l3_clos_array[MAX_CACHE_CLOS_NUM_ENTRIES];
|
|
extern union clos_config platform_mba_clos_array[MAX_MBA_CLOS_NUM_ENTRIES];
|
|
#endif
|
|
|
|
extern const struct cpu_state_table board_cpu_state_tbl;
|
|
extern const union pci_bdf plat_hidden_pdevs[MAX_HIDDEN_PDEVS_NUM];
|
|
extern const struct vmsix_on_msi_info vmsix_on_msi_devs[MAX_VMSIX_ON_MSI_PDEVS_NUM];
|
|
|
|
#endif /* BOARD_H */
|