[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v8 02/21] arm/acpi: Add a helper function to get the acpi table offset
From: Shannon Zhao <shannon.zhao@xxxxxxxxxx> These tables are aligned with 64bit. Signed-off-by: Shannon Zhao <shannon.zhao@xxxxxxxxxx> Reviewed-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx> --- v8: update the description of the function --- xen/arch/arm/acpi/lib.c | 15 +++++++++++++++ xen/include/asm-arm/acpi.h | 10 ++++++++++ 2 files changed, 25 insertions(+) diff --git a/xen/arch/arm/acpi/lib.c b/xen/arch/arm/acpi/lib.c index db5c4d8..79f7edd 100644 --- a/xen/arch/arm/acpi/lib.c +++ b/xen/arch/arm/acpi/lib.c @@ -60,3 +60,18 @@ bool_t __init acpi_psci_hvc_present(void) { return acpi_gbl_FADT.arm_boot_flags & ACPI_FADT_PSCI_USE_HVC; } + +paddr_t __init acpi_get_table_offset(struct membank tbl_add[], + EFI_MEM_RES index) +{ + int i; + paddr_t offset = 0; + + for ( i = 0; i < index; i++ ) + { + /* Aligned with 64bit (8 bytes) */ + offset += ROUNDUP(tbl_add[i].size, 8); + } + + return offset; +} diff --git a/xen/include/asm-arm/acpi.h b/xen/include/asm-arm/acpi.h index 7f59761..9f954d3 100644 --- a/xen/include/asm-arm/acpi.h +++ b/xen/include/asm-arm/acpi.h @@ -25,6 +25,7 @@ #include <xen/init.h> #include <asm/page.h> +#include <asm/setup.h> #define COMPILER_DEPENDENT_INT64 long long #define COMPILER_DEPENDENT_UINT64 unsigned long long @@ -46,6 +47,15 @@ bool_t __init acpi_psci_present(void); bool_t __init acpi_psci_hvc_present(void); void __init acpi_smp_init_cpus(void); +/* + * This function returns the offset of a given ACPI/EFI table in the allocated + * memory region. Currently, the tables should be created in the same order as + * their associated 'index' in the enum EFI_MEM_RES. This means the function + * won't return the correct offset until all the tables before a given 'index' + * are created. + */ +paddr_t acpi_get_table_offset(struct membank tbl_add[], EFI_MEM_RES index); + #ifdef CONFIG_ACPI extern bool_t acpi_disabled; /* Basic configuration for ACPI */ -- 2.0.4 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |