apex: Updated to 1.5.4 and removed old versions
authorRod Whitby <rod@whitby.id.au>
Sat, 2 Jun 2007 10:44:24 +0000 (10:44 +0000)
committerRod Whitby <rod@whitby.id.au>
Sat, 2 Jun 2007 10:44:24 +0000 (10:44 +0000)
packages/apex/apex_1.2.19.bb [deleted file]
packages/apex/apex_1.4.7.bb [deleted file]
packages/apex/apex_1.5.4.bb [moved from packages/apex/apex_1.4.11.bb with 70% similarity]
packages/apex/files/.mtn2git_empty [new file with mode: 0644]
packages/apex/files/fix-compiler-inlining.patch [new file with mode: 0644]
packages/apex/nslu2/defconfig

diff --git a/packages/apex/apex_1.2.19.bb b/packages/apex/apex_1.2.19.bb
deleted file mode 100644 (file)
index 027dfaa..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-DESCRIPTION = "APEX Boot Loader"
-SECTION = ""
-PRIORITY = "optional"
-HOMEPAGE = "http://wiki.buici.com/twiki/bin/view/Main/ApexBootloader"
-LICENSE = "GPL"
-PR = "r0"
-
-SRC_URI = "ftp://ftp.buici.com/pub/apex/apex-${PV}.tar.gz \
-          file://defconfig"
-
-EXTRA_OEMAKE_append = " CROSS_COMPILE=${CROSS_DIR}/bin/${HOST_PREFIX}"
-
-oe_runmake() {
-       #FIXME: /home/slug/openslug/tmp/cross/bin/armeb-linux- is incorrect, but
-       # the cross bin directory should be on the PATH
-       oenote make ${PARALLEL_MAKE} CROSS_COMPILE=/home/slug/openslug/tmp/cross/bin/armeb-linux- "$@"
-       make ${PARALLEL_MAKE} LDFLAGS= CROSS_COMPILE=/home/slug/openslug/tmp/cross/bin/armeb-linux- "$@" || die "oe_runmake failed"
-}
-
-do_configure() {
-       install -m 0644 ${WORKDIR}/defconfig ${S}/.config
-       oe_runmake oldconfig
-}
-
-do_populate_staging() {
-       install -d ${STAGING_LOADER_DIR}
-       install -m 0755 src/arch-arm/rom/apex.bin ${STAGING_LOADER_DIR}/apex.bin
-}
diff --git a/packages/apex/apex_1.4.7.bb b/packages/apex/apex_1.4.7.bb
deleted file mode 100644 (file)
index 713cc83..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-DESCRIPTION = "APEX Boot Loader"
-SECTION = ""
-PRIORITY = "optional"
-HOMEPAGE = "http://wiki.buici.com/twiki/bin/view/Main/ApexBootloader"
-LICENSE = "GPL"
-PR = "r1"
-
-SRC_URI = "ftp://ftp.buici.com/pub/apex/apex-${PV}.tar.gz \
-          file://defconfig"
-
-EXTRA_OEMAKE_append = " CROSS_COMPILE=${CROSS_DIR}/bin/${HOST_PREFIX}"
-
-oe_runmake() {
-       oenote make ${PARALLEL_MAKE} CROSS_COMPILE=${CROSS_DIR}/bin/${TARGET_PREFIX} "$@"
-       make ${PARALLEL_MAKE} LDFLAGS= CROSS_COMPILE=${CROSS_DIR}/bin/${TARGET_PREFIX} "$@" || die "oe_runmake failed"
-}
-
-# FIXME - make this the same as the distro kernel compilation
-CMDLINE="console=ttyS0,115200 rootfstype=jffs2 root=/dev/mtdblock4 rw init=/linuxrc noirqdebug"
-
-# Set the correct CONFIG_USER_xxx_ENDIAN and CONFIG_CMDLINE at the head
-# of the .config file and remove any settings in defconfig then append
-# defconfig to .config
-do_configure() {
-       rm -f ${S}/.config
-       . ${CONFIG_SITE}
-       if [ "x$ac_cv_c_bigendian" = "xyes" -o "x$ac_cv_c_littleendian" = "xno" ]; then
-         sed -e 's/.*CONFIG_USER_BIGENDIAN.*/CONFIG_USER_BIGENDIAN=y/' \
-             -e 's/.*CONFIG_BIGENDIAN.*/CONFIG_BIGENDIAN=y/' \
-             -e 's|CONFIG_ENV_DEFAULT_CMDLINE=|CONFIG_ENV_DEFAULT_CMDLINE=\"${CMDLINE}\"|' \
-               ${WORKDIR}/defconfig > ${S}/.config
-       elif [ "x$ac_cv_c_littleendian" = "xyes" -o "x$ac_cv_c_bigendian" = "xno" ]; then
-         sed -e 's/.*CONFIG_USER_LITTLEENDIAN.*/CONFIG_USER_LITTLEENDIAN=y/' \
-             -e 's/.*CONFIG_LITTLEENDIAN.*/CONFIG_LITTLEENDIAN=y/' \
-             -e 's/.*CONFIG_ENV_REGION_KERNEL_SWAP.*/CONFIG_ENV_REGION_KERNEL_SWAP=y/' \
-             -e 's|CONFIG_ENV_DEFAULT_CMDLINE=|CONFIG_ENV_DEFAULT_CMDLINE=\"${CMDLINE}\"|' \
-               ${WORKDIR}/defconfig > ${S}/.config
-       else
-         oefatal do_configure cannot determine endianess
-       fi
-       oe_runmake oldconfig
-}
-
-DEPENDS += "devio-native"
-
-do_populate_staging() {
-       install -d ${STAGING_LOADER_DIR}
-       . ${CONFIG_SITE}
-       if [ "x$ac_cv_c_bigendian" = "xyes" -o "x$ac_cv_c_littleendian" = "xno" ]; then
-               # FIXME - arch-arm should not be hard-coded
-               cp src/arch-arm/rom/apex.bin ${STAGING_LOADER_DIR}/apex.bin
-       elif [ "x$ac_cv_c_littleendian" = "xyes" -o "x$ac_cv_c_bigendian" = "xno" ]; then
-               # FIXME - arch-arm should not be hard-coded
-               devio '<<'src/arch-arm/rom/apex.bin >${STAGING_LOADER_DIR}/apex.bin 'xp $,4'
-       else
-               oefatal do_populate_staging cannot determine endianess
-       fi
-}
similarity index 70%
rename from packages/apex/apex_1.4.11.bb
rename to packages/apex/apex_1.5.4.bb
index 713cc83..de6ecdf 100644 (file)
@@ -5,9 +5,21 @@ HOMEPAGE = "http://wiki.buici.com/twiki/bin/view/Main/ApexBootloader"
 LICENSE = "GPL"
 PR = "r1"
 
+# Note that this recipe only works for the NSLU2 at the moment.
+# Patches to make it more generic are welcome.
+
 SRC_URI = "ftp://ftp.buici.com/pub/apex/apex-${PV}.tar.gz \
+          file://fix-compiler-inlining.patch;patch=1 \
           file://defconfig"
 
+CMDLINE_CONSOLE = "console=${@bb.data.getVar("KERNEL_CONSOLE",d,1) or "ttyS0"}"
+
+CMDLINE_ROOT         = "root=/dev/mtdblock2 rootfstype=jffs2 rw"
+
+CMDLINE_ROOT_nslu2   = "root=/dev/mtdblock4 rootfstype=jffs2 rw init=/linuxrc"
+CMDLINE_ROOT_dsmg600 = "root=/dev/mtdblock2 rootfstype=jffs2 rw init=/linuxrc"
+CMDLINE_ROOT_nas100d = "root=/dev/mtdblock2 rootfstype=jffs2 rw init=/linuxrc"
+
 EXTRA_OEMAKE_append = " CROSS_COMPILE=${CROSS_DIR}/bin/${HOST_PREFIX}"
 
 oe_runmake() {
@@ -15,9 +27,6 @@ oe_runmake() {
        make ${PARALLEL_MAKE} LDFLAGS= CROSS_COMPILE=${CROSS_DIR}/bin/${TARGET_PREFIX} "$@" || die "oe_runmake failed"
 }
 
-# FIXME - make this the same as the distro kernel compilation
-CMDLINE="console=ttyS0,115200 rootfstype=jffs2 root=/dev/mtdblock4 rw init=/linuxrc noirqdebug"
-
 # Set the correct CONFIG_USER_xxx_ENDIAN and CONFIG_CMDLINE at the head
 # of the .config file and remove any settings in defconfig then append
 # defconfig to .config
@@ -27,13 +36,15 @@ do_configure() {
        if [ "x$ac_cv_c_bigendian" = "xyes" -o "x$ac_cv_c_littleendian" = "xno" ]; then
          sed -e 's/.*CONFIG_USER_BIGENDIAN.*/CONFIG_USER_BIGENDIAN=y/' \
              -e 's/.*CONFIG_BIGENDIAN.*/CONFIG_BIGENDIAN=y/' \
-             -e 's|CONFIG_ENV_DEFAULT_CMDLINE=|CONFIG_ENV_DEFAULT_CMDLINE=\"${CMDLINE}\"|' \
+             -e 's/.*CONFIG_TARGET_DESCRIPTION.*/CONFIG_TARGET_DESCRIPTION=\"OpenEmbedded NSLU2 (big endian)\"/' \
+             -e 's|CONFIG_ENV_DEFAULT_CMDLINE=|CONFIG_ENV_DEFAULT_CMDLINE=\"${CMDLINE_CONSOLE} ${CMDLINE_ROOT} ${CMDLINE_DEBUG}\"|' \
                ${WORKDIR}/defconfig > ${S}/.config
        elif [ "x$ac_cv_c_littleendian" = "xyes" -o "x$ac_cv_c_bigendian" = "xno" ]; then
          sed -e 's/.*CONFIG_USER_LITTLEENDIAN.*/CONFIG_USER_LITTLEENDIAN=y/' \
              -e 's/.*CONFIG_LITTLEENDIAN.*/CONFIG_LITTLEENDIAN=y/' \
              -e 's/.*CONFIG_ENV_REGION_KERNEL_SWAP.*/CONFIG_ENV_REGION_KERNEL_SWAP=y/' \
-             -e 's|CONFIG_ENV_DEFAULT_CMDLINE=|CONFIG_ENV_DEFAULT_CMDLINE=\"${CMDLINE}\"|' \
+             -e 's/.*CONFIG_TARGET_DESCRIPTION.*/CONFIG_TARGET_DESCRIPTION=\"OpenEmbedded NSLU2 (little endian)\"/' \
+             -e 's|CONFIG_ENV_DEFAULT_CMDLINE=|CONFIG_ENV_DEFAULT_CMDLINE=\"${CMDLINE_CONSOLE} ${CMDLINE_ROOT} ${CMDLINE_DEBUG}\"|' \
                ${WORKDIR}/defconfig > ${S}/.config
        else
          oefatal do_configure cannot determine endianess
diff --git a/packages/apex/files/.mtn2git_empty b/packages/apex/files/.mtn2git_empty
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/packages/apex/files/fix-compiler-inlining.patch b/packages/apex/files/fix-compiler-inlining.patch
new file mode 100644 (file)
index 0000000..427068d
--- /dev/null
@@ -0,0 +1,28 @@
+--- apex-1.5.4/src/arch-arm/entry/apex.lds.S~  2007-05-31 14:54:41.000000000 +0930
++++ apex-1.5.4/src/arch-arm/entry/apex.lds.S   2007-06-02 14:26:51.000000000 +0930
+@@ -48,8 +48,8 @@
+       }
+       .reset.post : {         /* Post-SDRAM init code.*/
+               *(.reset.post)
+-              *(.reset.postfn)
+-              *(.reset.postex)
++              *(.reset.post.func)
++              *(.reset.post.exit)
+       }
+       .rlocate : {            /* Final/only relocation of APEX to SDRAM */
+               *(.rlocate)
+--- apex-1.5.4/src/arch-arm/entry/reset.c~     2007-05-31 14:54:41.000000000 +0930
++++ apex-1.5.4/src/arch-arm/entry/reset.c      2007-06-02 14:27:20.000000000 +0930
+@@ -292,10 +292,10 @@
+ //  __asm volatile ("mov sp, %0" :: "r" (&APEX_VMA_STACK_START));
+   __asm volatile ("mov r0, %0" :: "r" (offset));
+-  __asm volatile ("b reset_post_2");
++  __asm volatile ("b reset_post_exit");
+ }
+-void __naked __section (.reset.post) reset_post_2 (void)
++void __naked __section (.reset.post.exit) reset_post_exit (void)
+ {
+ }
index ccec463..560d2e2 100644 (file)
@@ -1,7 +1,7 @@
 #
 # Automatically generated make config: don't edit
 # Linux kernel version: 
-# Tue Jan  9 22:31:18 2007
+# Wed May 30 22:29:37 2007
 #
 CONFIG_ARM=y
 CONFIG_CPU_ARMV5=y
@@ -17,6 +17,7 @@ CONFIG_EXPERIMENTAL=y
 #
 # General Setup
 #
+CONFIG_TARGET_DESCRIPTION="SlugOS NSLU2 (bigendian)"
 CONFIG_CROSS_COMPILE=""
 CONFIG_CC_OPTIMIZE_FOR_SIZE=y
 # CONFIG_CC_OPTIMIZE_FOR_SPEED is not set
@@ -70,6 +71,7 @@ CONFIG_DEL_IS_BS=y
 CONFIG_ANSI_KEYS=y
 CONFIG_COMMAND_HISTORY=y
 CONFIG_COMMAND_EDITING=y
+# CONFIG_TIME_COMMANDS is not set
 CONFIG_CMD_ALIAS=y
 CONFIG_CMD_CHECKSUM=y
 CONFIG_CMD_COPY=y
@@ -85,7 +87,8 @@ CONFIG_CMD_INFO=y
 # CONFIG_CMD_PAUSE is not set
 CONFIG_CMD_WAIT=y
 CONFIG_CMD_XRECEIVE=y
-# CONFIG_CMD_MEMLIMIT is not set
+CONFIG_CMD_MEMLIMIT=y
+CONFIG_CMD_MEMSCAN=y
 
 #
 # Generic Drivers
@@ -97,6 +100,10 @@ CONFIG_DRIVER_FIS=y
 CONFIG_DRIVER_FIS_BLOCKDEVICE="nor:0x7e0000+4k"
 CONFIG_DRIVER_NOR_CFI=y
 # CONFIG_DRIVER_NOR_CFI_NO_BUFFERED is not set
+# CONFIG_DRIVER_NOR_CFI_USE_CACHE is not set
+CONFIG_DRIVER_NOR_CFI_TYPE_INTEL=y
+# CONFIG_DRIVER_NOR_CFI_TYPE_SPANSION is not set
+# CONFIG_DRIVER_ONENAND is not set
 # CONFIG_DRIVER_IXP4XX_NPE_ETH is not set
 CONFIG_USES_NOR_CFI=y
 CONFIG_USES_PATHNAME_PARSER=y
@@ -108,13 +115,13 @@ CONFIG_USES_IXP4XX_NPE_ETH=y
 CONFIG_ENV=y
 CONFIG_ENV_MUTABLE=y
 CONFIG_ENV_LINK=y
-CONFIG_ENV_REGION="nor:0x7fc000+15k"
+CONFIG_ENV_REGION="nor:0x7f8000+16k"
 CONFIG_ENV_CHECK_LEN=1024
-CONFIG_VARIATIONS=y
-CONFIG_VARIATION_SUFFIX="-alt"
+# CONFIG_VARIATIONS is not set
 # CONFIG_NO_BOOTSTRAP is not set
 CONFIG_NOR_BOOT=y
 # CONFIG_NAND_BOOT is not set
+# CONFIG_ONENAND_BOOT is not set
 # CONFIG_COMPANION_EVT1_BOOT is not set
 # CONFIG_COMPANION_EVT2_BOOT is not set
 
@@ -130,16 +137,16 @@ CONFIG_ENV_STARTUP_KERNEL_COPY=y
 #    Regions
 #
 CONFIG_ENV_REGION_KERNEL="fis://kernel"
-# CONFIG_ENV_REGION_KERNEL_ALT_P is not set
 
 #
 #    Overrides
 #
 CONFIG_ENV_DEFAULT_CMDLINE_OVERRIDE=y
-CONFIG_ENV_DEFAULT_CMDLINE="console=ttyS0,115200 rootfstype=jffs2 root=/dev/mtdblock4 rw init=/linuxrc noirqdebug"
-# CONFIG_ENV_DEFAULT_CMDLINE_ALT_P is not set
+CONFIG_ENV_DEFAULT_CMDLINE="root=/dev/mtdblock4 rootfstype=jffs2 console=ttyS0,115200"
 # CONFIG_ENV_DEFAULT_STARTUP_OVERRIDE is not set
-# CONFIG_ENV_DEFAULT_STARTUP_ALT_P is not set
 CONFIG_USES_NOR_BOOTFLASH=y
+CONFIG_RELOCATE_SIMPLE=y
+# CONFIG_BIGENDIAN is not set
+# CONFIG_LITTLEENDIAN is not set
 CONFIG_CLEAR_STACKS=y
 CONFIG_ALIASES=y