From: Vladimir Serbinenko Date: Sat, 20 Feb 2016 23:05:38 +0000 (+0100) Subject: coreboot X-Git-Url: http://git.ipfire.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=bacb8f911f6ec25dd4e17964533b90826397009d;p=thirdparty%2Fgrub.git coreboot --- diff --git a/grub-core/kern/arm/coreboot/init.c b/grub-core/kern/arm/coreboot/init.c index 9796c721f..7ea7cf183 100644 --- a/grub-core/kern/arm/coreboot/init.c +++ b/grub-core/kern/arm/coreboot/init.c @@ -71,7 +71,7 @@ heap_init (grub_uint64_t addr, grub_uint64_t size, grub_memory_type_t type, if (modend && begin < modend) begin = modend; - + if (end <= begin) return 0; diff --git a/grub-core/kern/arm/coreboot/timer.c b/grub-core/kern/arm/coreboot/timer.c index 7848e3d00..c4c689c67 100644 --- a/grub-core/kern/arm/coreboot/timer.c +++ b/grub-core/kern/arm/coreboot/timer.c @@ -49,12 +49,13 @@ sp804_get_time_ms (void) } static grub_err_t -sp804_attach(const void *fdt, unsigned int nodeoffset) +sp804_attach(const struct grub_fdtbus_dev *dev) { if (have_timer) return GRUB_ERR_NONE; - const grub_uint32_t *reg = grub_fdt_get_prop (fdt, nodeoffset, "reg", 0); - sp804_regs = (void *) grub_be_to_cpu32 (*reg); + sp804_regs = grub_fdtbus_map_reg (dev, 0, 0); + if (!grub_fdtbus_is_mapping_valid (sp804_regs)) + return grub_error (GRUB_ERR_IO, "could not map sp804: %p", sp804_regs); grub_install_get_time_ms (sp804_get_time_ms); have_timer = 1; return GRUB_ERR_NONE;