]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
coreboot
authorVladimir Serbinenko <phcoder@gmail.com>
Mon, 22 Feb 2016 02:27:39 +0000 (03:27 +0100)
committerVladimir Serbinenko <phcoder@gmail.com>
Mon, 22 Feb 2016 02:27:39 +0000 (03:27 +0100)
gentpl.py
grub-core/Makefile.am
grub-core/Makefile.core.def
grub-core/kern/arm/coreboot/init.c

index ed268178b4dbb46f1076d71ff8e2a610738bc2b9..da67965a41a40cde7c987b719fea39cd02ba10e5 100644 (file)
--- a/gentpl.py
+++ b/gentpl.py
@@ -63,7 +63,7 @@ GROUPS["cmos"] = GROUPS["x86"][:] + ["mips_loongson", "mips_qemu_mips",
                                      "sparc64_ieee1275", "powerpc_ieee1275"]
 GROUPS["cmos"].remove("i386_efi"); GROUPS["cmos"].remove("x86_64_efi");
 GROUPS["pci"]      = GROUPS["x86"] + ["mips_loongson"]
-GROUPS["usb"]      = GROUPS["pci"]
+GROUPS["usb"]      = GROUPS["pci"] + ["arm_coreboot"]
 
 # If gfxterm is main output console integrate it into kernel
 GROUPS["videoinkernel"] = ["mips_loongson", "i386_coreboot", "arm_coreboot" ]
index a7722290f2d64186da59547fca6e52d16b055c17..e37f93d86b9ef1fa30ae2ae7546c48cb9feafc29 100644 (file)
@@ -240,6 +240,7 @@ KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/arm/system.h
 endif
 
 if COND_arm_coreboot
+KERNEL_HEADER_FILES += $(top_builddir)/include/grub/keyboard_layouts.h
 KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/arm/system.h
 KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/video.h
 KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/video_fb.h
@@ -247,6 +248,7 @@ KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/gfxterm.h
 KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/font.h
 KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/bufio.h
 KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/fdt.h
+KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/dma.h
 KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/arm/coreboot/kernel.h
 KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/fdtbus.h
 endif
index 55a59a287bd0844d7a1ac1d3a915bb73b12cd295..8ad6718191a9cf4f2eab17688f6de18ddcc74b67 100644 (file)
@@ -163,6 +163,7 @@ kernel = {
   arm_coreboot = term/ps2.c;
   arm_coreboot = term/arm/pl050.c;
   arm_coreboot = commands/keylayouts.c;
+  arm_coreboot = kern/arm/coreboot/dma.c;
 
   terminfoinkernel = term/terminfo.c;
   terminfoinkernel = term/tparm.c;
@@ -589,8 +590,10 @@ module = {
 module = {
   name = ehci;
   common = bus/usb/ehci.c;
-  common = bus/usb/ehci-pci.c;
+  arm_coreboot = bus/usb/ehci-fdt.c;
+  pci = bus/usb/ehci-pci.c;
   enable = pci;
+  enable = arm_coreboot;
 };
 
 module = {
index 723692d62d353263f3e0ce96c7daf6e2ef4fe844..1e8dfc2a21f4dc30cec57d0d424632cdef449af1 100644 (file)
@@ -83,6 +83,10 @@ heap_init (grub_uint64_t addr, grub_uint64_t size, grub_memory_type_t type,
       begin = modend;
     }
 
+  /* Avoid DMA problems.  */
+  if (end >= 0xfe000000)
+    end = 0xfe000000;
+
   if (end <= begin)
     return 0;