aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/firmware/efi/arm-init.c
diff options
context:
space:
mode:
authorMatt Fleming <matt@codeblueprint.co.uk>2016-04-25 16:06:38 -0400
committerIngo Molnar <mingo@kernel.org>2016-04-28 05:33:50 -0400
commit78ce248faa3c46e24e9bd42db3ab3650659f16dd (patch)
treee40ffbc803346ab0a8d2e0994ab7b20462b20a98 /drivers/firmware/efi/arm-init.c
parent30d7bf034c034995f34dae265d96247f7f12044e (diff)
efi: Iterate over efi.memmap in for_each_efi_memory_desc()
Most of the users of for_each_efi_memory_desc() are equally happy iterating over the EFI memory map in efi.memmap instead of 'memmap', since the former is usually a pointer to the latter. For those users that want to specify an EFI memory map other than efi.memmap, that can be done using for_each_efi_memory_desc_in_map(). One such example is in the libstub code where the firmware is queried directly for the memory map, it gets iterated over, and then freed. This change goes part of the way toward deleting the global 'memmap' variable, which is not universally available on all architectures (notably IA64) and is rather poorly named. Signed-off-by: Matt Fleming <matt@codeblueprint.co.uk> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Cc: Borislav Petkov <bp@alien8.de> Cc: Leif Lindholm <leif.lindholm@linaro.org> Cc: Mark Salter <msalter@redhat.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: linux-efi@vger.kernel.org Link: http://lkml.kernel.org/r/1461614832-17633-7-git-send-email-matt@codeblueprint.co.uk Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'drivers/firmware/efi/arm-init.c')
-rw-r--r--drivers/firmware/efi/arm-init.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/firmware/efi/arm-init.c b/drivers/firmware/efi/arm-init.c
index 008ed1993b72..d5f6b0ca521e 100644
--- a/drivers/firmware/efi/arm-init.c
+++ b/drivers/firmware/efi/arm-init.c
@@ -40,7 +40,7 @@ static phys_addr_t efi_to_phys(unsigned long addr)
40{ 40{
41 efi_memory_desc_t *md; 41 efi_memory_desc_t *md;
42 42
43 for_each_efi_memory_desc(&memmap, md) { 43 for_each_efi_memory_desc_in_map(&memmap, md) {
44 if (!(md->attribute & EFI_MEMORY_RUNTIME)) 44 if (!(md->attribute & EFI_MEMORY_RUNTIME))
45 continue; 45 continue;
46 if (md->virt_addr == 0) 46 if (md->virt_addr == 0)
@@ -145,7 +145,7 @@ static __init void reserve_regions(void)
145 if (efi_enabled(EFI_DBG)) 145 if (efi_enabled(EFI_DBG))
146 pr_info("Processing EFI memory map:\n"); 146 pr_info("Processing EFI memory map:\n");
147 147
148 for_each_efi_memory_desc(&memmap, md) { 148 for_each_efi_memory_desc_in_map(&memmap, md) {
149 paddr = md->phys_addr; 149 paddr = md->phys_addr;
150 npages = md->num_pages; 150 npages = md->num_pages;
151 151