HV: move dmar info definition to board.c

The DMAR info is board specific so move the structure definition to board.c.
As a configruation file, the whole board.c could be generated by acrn-config
tool for each board.

Please note we only provide DMAR info MACROs for nuc7i7dnb board. For other
boards, ACPI_PARSE_ENABLED must be set to y in Kconfig to let hypervisor parse
DMAR info, or use acrn-config tool to generate DMAR info MACROs if user won't
enable ACPI parse code for FuSa consideration.

The patch also moves the function of get_dmar_info() to vtd.c, so dmar_info.c
could be removed.

Tracked-On: #3977

Signed-off-by: Victor Sun <victor.sun@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
This commit is contained in:
Victor Sun
2019-10-29 19:49:52 +08:00
committed by wenlingz
parent 589be88cf6
commit 9e92f3cdf5
14 changed files with 124 additions and 134 deletions

View File

@@ -17,6 +17,7 @@ struct platform_clos_info {
uint32_t msr_index;
};
extern struct dmar_info plat_dmar_info;
extern struct platform_clos_info platform_clos_array[];
extern uint16_t platform_clos_num;
extern const struct cpu_state_table board_cpu_state_tbl;

View File

@@ -471,7 +471,7 @@ static inline uint16_t dma_frcd_up_sid(uint64_t up_sid)
}
#define MAX_DRHDS DRHD_COUNT
#define MAX_DRHD_DEVSCOPES 4
#define MAX_DRHD_DEVSCOPES 16U
#define DMAR_CONTEXT_TRANSLATION_TYPE_TRANSLATED 0x00U
#define DMAR_CONTEXT_TRANSLATION_TYPE_RESERVED 0x01U
@@ -530,8 +530,6 @@ union dmar_ir_entry {
} bits __packed;
};
extern struct dmar_info *get_dmar_info(void);
#ifdef CONFIG_ACPI_PARSE_ENABLED
int32_t parse_dmar_table(struct dmar_info *plat_dmar_info);
#endif