From patchwork Wed Mar 8 17:54:36 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Julien Grall X-Patchwork-Id: 95049 Delivered-To: patch@linaro.org Received: by 10.182.3.34 with SMTP id 2csp22443obz; Wed, 8 Mar 2017 09:56:50 -0800 (PST) X-Received: by 10.36.54.149 with SMTP id l143mr7291353itl.38.1488995810237; Wed, 08 Mar 2017 09:56:50 -0800 (PST) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org. [192.237.175.120]) by mx.google.com with ESMTPS id 70si4564915ioo.245.2017.03.08.09.56.50 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 08 Mar 2017 09:56:50 -0800 (PST) Received-SPF: neutral (google.com: 192.237.175.120 is neither permitted nor denied by best guess record for domain of xen-devel-bounces@lists.xen.org) client-ip=192.237.175.120; Authentication-Results: mx.google.com; spf=neutral (google.com: 192.237.175.120 is neither permitted nor denied by best guess record for domain of xen-devel-bounces@lists.xen.org) smtp.mailfrom=xen-devel-bounces@lists.xen.org Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1clfnZ-0005xW-8Q; Wed, 08 Mar 2017 17:54:53 +0000 Received: from mail6.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1clfnX-0005wo-CN for xen-devel@lists.xen.org; Wed, 08 Mar 2017 17:54:51 +0000 Received: from [85.158.143.35] by server-6.bemta-6.messagelabs.com id 3C/63-15112-A6540C85; Wed, 08 Mar 2017 17:54:50 +0000 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrGLMWRWlGSWpSXmKPExsVysyfVTTfT9UC EwYJPPBZLPi5mcWD0OLr7N1MAYxRrZl5SfkUCa8bkjU9YCnYqVazecpClgfGnVBcjF4eQwGZG iXe/t7NDOKcZJX48fMTWxcjJwSagKXHn8ycmEFtEQFri2ufLjCA2s4CDxJuP91hAbGEBN4lJa 16wg9gsAqoSVz58Barn4OAVsJS4ciQPJCwhIC+xq+0iK4jNKWAl8bbpK1irEFDJ9zkf2SYwci 9gZFjFqFGcWlSWWqRrZKaXVJSZnlGSm5iZo2toYKaXm1pcnJiempOYVKyXnJ+7iRHoXwYg2MF 4ZkHgIUZJDiYlUd6rqgcihPiS8lMqMxKLM+KLSnNSiw8xynBwKEnwRrsA5QSLUtNTK9Iyc4CB BpOW4OBREuHlBEnzFhck5hZnpkOkTjEqSonz+oIkBEASGaV5cG2w4L7EKCslzMsIdIgQT0FqU W5mCar8K0ZxDkYlYd4ukCk8mXklcNNfAS1mAlqs7boXZHFJIkJKqoEx9qzRdeV5j9NzFTqnXy i4baMsemWjROo2Vp3dKxbZlS3NN3k0/UVY8LaOzfXfH/7sKxZX67yS9u7Ty5Sle9f8MPKd2P9 k1sTF719WG39Jb5n9JdMk98juBkGdfw+mKGhfzbjpy2Bu8eZWoGD1hMLEBI03CfOPrHE5ft/A PU89stXR5aBzw3JXJZbijERDLeai4kQAdYrhI2kCAAA= X-Env-Sender: julien.grall@arm.com X-Msg-Ref: server-3.tower-21.messagelabs.com!1488995688!57836726!1 X-Originating-IP: [217.140.101.70] X-SpamReason: No, hits=0.0 required=7.0 tests= X-StarScan-Received: X-StarScan-Version: 9.2.3; banners=-,-,- X-VirusChecked: Checked Received: (qmail 50877 invoked from network); 8 Mar 2017 17:54:48 -0000 Received: from foss.arm.com (HELO foss.arm.com) (217.140.101.70) by server-3.tower-21.messagelabs.com with SMTP; 8 Mar 2017 17:54:48 -0000 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 539D514F6; Wed, 8 Mar 2017 09:54:48 -0800 (PST) Received: from e108454-lin.cambridge.arm.com (e108454-lin.cambridge.arm.com [10.1.218.32]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id A86233F23B; Wed, 8 Mar 2017 09:54:47 -0800 (PST) From: Julien Grall To: xen-devel@lists.xen.org Date: Wed, 8 Mar 2017 17:54:36 +0000 Message-Id: <20170308175436.24001-5-julien.grall@arm.com> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20170308175436.24001-1-julien.grall@arm.com> References: <20170308175436.24001-1-julien.grall@arm.com> Cc: Julien Grall , sstabellini@kernel.org Subject: [Xen-devel] [PATCH v2 4/4] xen/arm: acpi: Move the ACPI banks in bootinfo X-BeenThere: xen-devel@lists.xen.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" Currently the acpi banks are stored in a separate variable and have an header just for them. This variable can be moved in the structure bootinfo removing an header and a global variable. Signed-off-by: Julien Grall Reviewed-by: Stefano Stabellini --- Changes in v2: - Add Stefano's reviewed-by --- xen/arch/arm/efi/efi-boot.h | 3 +-- xen/arch/arm/efi/efi-dom0.c | 12 +++++------- xen/arch/arm/efi/efi-dom0.h | 8 -------- xen/include/asm-arm/setup.h | 3 +++ 4 files changed, 9 insertions(+), 17 deletions(-) delete mode 100644 xen/arch/arm/efi/efi-dom0.h diff --git a/xen/arch/arm/efi/efi-boot.h b/xen/arch/arm/efi/efi-boot.h index 4877e6714d..e1e447ac8e 100644 --- a/xen/arch/arm/efi/efi-boot.h +++ b/xen/arch/arm/efi/efi-boot.h @@ -7,7 +7,6 @@ #include #include #include -#include "efi-dom0.h" void noreturn efi_xen_start(void *fdt_ptr, uint32_t fdt_size); void __flush_dcache_area(const void *vaddr, unsigned long size); @@ -165,7 +164,7 @@ static EFI_STATUS __init efi_process_memory_map_bootinfo(EFI_MEMORY_DESCRIPTOR * #ifdef CONFIG_ACPI else if ( desc_ptr->Type == EfiACPIReclaimMemory ) { - if ( !meminfo_add_bank(&acpi_mem, desc_ptr) ) + if ( !meminfo_add_bank(&bootinfo.acpi, desc_ptr) ) { PrintStr(L"Error: All " __stringify(NR_MEM_BANKS) " acpi meminfo mem banks exhausted.\r\n"); diff --git a/xen/arch/arm/efi/efi-dom0.c b/xen/arch/arm/efi/efi-dom0.c index f0ceaa6cae..1c356540f7 100644 --- a/xen/arch/arm/efi/efi-dom0.c +++ b/xen/arch/arm/efi/efi-dom0.c @@ -22,7 +22,6 @@ */ #include "efi.h" -#include "efi-dom0.h" #include #include #include @@ -32,7 +31,6 @@ #define XZ_EXTERN STATIC #include "../../../common/xz/crc32.c" -struct meminfo __initdata acpi_mem; /* Constant to indicate "Xen" in unicode u16 format */ static const CHAR16 xen_efi_fw_vendor[] = {0x0058, 0x0065, 0x006E, 0x0000}; @@ -46,7 +44,7 @@ size_t __init estimate_efi_size(int mem_nr_banks) int acpi_mem_nr_banks = 0; if ( !acpi_disabled ) - acpi_mem_nr_banks = acpi_mem.nr_banks; + acpi_mem_nr_banks = bootinfo.acpi.nr_banks; size = ROUNDUP(est_size + ect_size + fw_vendor_size, 8); /* plus 1 for new created tables */ @@ -124,10 +122,10 @@ void __init acpi_create_efi_mmap_table(struct domain *d, fill_efi_memory_descriptor(desc, EfiConventionalMemory, mem->bank[i].start, mem->bank[i].size); - for ( i = 0; i < acpi_mem.nr_banks; i++, desc++ ) + for ( i = 0; i < bootinfo.acpi.nr_banks; i++, desc++ ) fill_efi_memory_descriptor(desc, EfiACPIReclaimMemory, - acpi_mem.bank[i].start, - acpi_mem.bank[i].size); + bootinfo.acpi.bank[i].start, + bootinfo.acpi.bank[i].size); fill_efi_memory_descriptor(desc, EfiACPIReclaimMemory, d->arch.efi_acpi_gpa, d->arch.efi_acpi_len); @@ -135,7 +133,7 @@ void __init acpi_create_efi_mmap_table(struct domain *d, tbl_add[TBL_MMAP].start = d->arch.efi_acpi_gpa + acpi_get_table_offset(tbl_add, TBL_MMAP); tbl_add[TBL_MMAP].size = sizeof(EFI_MEMORY_DESCRIPTOR) - * (mem->nr_banks + acpi_mem.nr_banks + 1); + * (mem->nr_banks + bootinfo.acpi.nr_banks + 1); } /* Create /hypervisor/uefi node for efi properties. */ diff --git a/xen/arch/arm/efi/efi-dom0.h b/xen/arch/arm/efi/efi-dom0.h deleted file mode 100644 index 3cd4caad2a..0000000000 --- a/xen/arch/arm/efi/efi-dom0.h +++ /dev/null @@ -1,8 +0,0 @@ -#ifndef __ARM_EFI_DOM0_H__ -#define __ARM_EFI_DOM0_H__ - -#include - -extern struct meminfo acpi_mem; - -#endif diff --git a/xen/include/asm-arm/setup.h b/xen/include/asm-arm/setup.h index 3da7a4904a..7c761851d2 100644 --- a/xen/include/asm-arm/setup.h +++ b/xen/include/asm-arm/setup.h @@ -43,6 +43,9 @@ struct bootmodules { struct bootinfo { struct meminfo mem; struct bootmodules modules; +#ifdef CONFIG_ACPI + struct meminfo acpi; +#endif }; extern struct bootinfo bootinfo;