arm-kernel-shim: Added PASSTHROUGH_ATAGS support.
authorRod Whitby <rod@whitby.id.au>
Wed, 14 Feb 2007 06:16:54 +0000 (06:16 +0000)
committerRod Whitby <rod@whitby.id.au>
Wed, 14 Feb 2007 06:16:54 +0000 (06:16 +0000)
packages/arm-kernel-shim/arm-kernel-shim_1.3.bb
packages/arm-kernel-shim/files/config-dsmg600.h
packages/arm-kernel-shim/files/passthrough-atags.patch [new file with mode: 0644]

index a4f5f8f..0c9ad35 100644 (file)
@@ -3,11 +3,12 @@ SECTION = ""
 PRIORITY = "optional"
 HOMEPAGE = "http://wiki.buici.com/twiki/bin/view/Main/ApexBootloader"
 LICENSE = "GPL"
-PR = "r2"
+PR = "r3"
 
 COMPATIBLE_MACHINE = "(ixp4xx|nslu2)"
 
 SRC_URI = "ftp://ftp.buici.com/pub/arm/arm-kernel-shim/arm-kernel-shim-${PV}.tar.gz \
+          file://passthrough-atags.patch;patch=1 \
           file://config-nslu2.h \
           file://config-nas100d.h \
           file://config-dsmg600.h \
index dd94faa..5f90fb4 100644 (file)
 
 #define PHYS_PARAMS       0x00000100 /* Address for the parameter list */
 
-#define RAM_BANK0_START           0x00000000
-#define RAM_BANK0_LENGTH   0x04000000
+//#define RAM_BANK0_START         0x00000000
+//#define RAM_BANK0_LENGTH   0x04000000
 
 //#define RAM_BANK1_START         0xd0000000
 //#define RAM_BANK1_LENGTH   0x10000000
 
-#define COMMANDLINE\
- "init=/linuxrc root=/dev/mtdblock2 rootfstype=jffs2 rw noirqdebug console=ttyS0,115200n8"
+//#define COMMANDLINE\
+// "init=/linuxrc root=/dev/mtdblock2 rootfstype=jffs2 rw noirqdebug console=ttyS0,115200n8"
 
 #define MACH_TYPE                 964
 
+/* The DSM-G600 RedBoot sets up the ATAGs correctly */
+#define PASSTHROUGH_ATAGS
+
 /* Uncomment one of these if you need to switch the CPU into a
    specific mode. */
 //#define FORCE_LITTLEENDIAN
diff --git a/packages/arm-kernel-shim/files/passthrough-atags.patch b/packages/arm-kernel-shim/files/passthrough-atags.patch
new file mode 100644 (file)
index 0000000..194279d
--- /dev/null
@@ -0,0 +1,20 @@
+--- arm-kernel-shim-1.3/main.c~        2007-02-11 05:52:32.000000000 +1030
++++ arm-kernel-shim-1.3/main.c 2007-02-14 16:39:40.000000000 +1030
+@@ -100,6 +100,8 @@
+                 :  "+r" (offset)
+                 :: "lr", "cc");
++#if !defined (PASSTHROUGH_ATAGS)
++
+   p = (struct tag*) PHYS_PARAMS;
+       /* Always start with the CORE tag */
+@@ -151,6 +153,8 @@
+   p->hdr.tag          = ATAG_NONE;
+   p->hdr.size         = 0;
++#endif
++
+       /* Pass control to the kernel */
+   boot (0, MACH_TYPE, PHYS_PARAMS);
+ }