On Fri, Jul 28, 2017 at 06:38:22PM +0100, Leif Lindholm wrote: > On Thu, Jul 27, 2017 at 04:27:26PM +0200, Daniel Kiper wrote: > > On Mon, Jun 12, 2017 at 03:53:35PM +0100, Leif Lindholm wrote: > > > Since ARM platforms do not have a common memory map, add a helper > > > function that finds the lowest address region with the EFI_MEMORY_WB > > > attribute set in the UEFI memory map. > > > > > > Required for the arm/arm64 linux loader to restrict the initrd > > > location to where it will be accessible by the kernel at runtime. > > > > > > Signed-off-by: Leif Lindholm <leif.lindh...@linaro.org> > > > --- > > > grub-core/kern/efi/mm.c | 42 ++++++++++++++++++++++++++++++++++++++++++ > > > include/grub/efi/efi.h | 1 + > > > 2 files changed, 43 insertions(+) > > > > > > diff --git a/grub-core/kern/efi/mm.c b/grub-core/kern/efi/mm.c > > > index 20a47aaf5..460a4b763 100644 > > > --- a/grub-core/kern/efi/mm.c > > > +++ b/grub-core/kern/efi/mm.c > > > @@ -525,3 +525,45 @@ grub_efi_mm_init (void) > > > grub_efi_free_pages ((grub_addr_t) memory_map, > > > 2 * BYTES_TO_PAGES (MEMORY_MAP_SIZE)); > > > } > > > + > > > +#if defined (__arm__) || defined (__aarch64__) > > > +grub_err_t > > > +grub_efi_get_dram_base(grub_addr_t *base_addr) > > > > Please make this function more generic and get > > attribute as an argument. > > While I am normally a huge fan of making everything as generic as > possible, this really is a very special case - and as far as I know, > it is really only relevant to ARM/AArch64. I would expect other > architectures to just have a static inline, return 0 in efi/memory.h, > if we ended up merging even more Linux EFI stub loaders together. > > Or are you looking for some more multidimensional memory map lookup > thing? If so, could you give me an example invocation to work > against?
OK, let's leave it as is. Just change function name to grub_efi_get_ram_base(). Daniel _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel