[oe-commits] org.oe.dev apex: Enabled support for 16MiB NSLU2 support

rwhitby commit openembedded-commits at lists.openembedded.org
Sat Aug 18 06:04:55 UTC 2007


apex: Enabled support for 16MiB NSLU2 support

Author: rwhitby at nslu2-linux.org
Branch: org.openembedded.dev
Revision: 1526bbd7f3df0052cbb891e0843bf4648881928d
ViewMTN: http://monotone.openembedded.org/revision.psp?id=1526bbd7f3df0052cbb891e0843bf4648881928d
Files:
1
packages/apex/apex_1.5.8.bb
packages/apex/apex-nslu2_1.5.8.bb
packages/apex/apex-nslu2-16mb_1.5.8.bb
packages/apex/nslu2/defconfig-16mb
packages/apex/nslu2/defconfig
Diffs:

#
# mt diff -r6a1478f79899529e74775c3d0e95626ecd6e31a2 -r1526bbd7f3df0052cbb891e0843bf4648881928d
#
# 
# 
# rename "packages/apex/apex_1.5.8.bb"
#     to "packages/apex/apex-nslu2_1.5.8.bb"
# 
# add_file "packages/apex/apex-nslu2-16mb_1.5.8.bb"
#  content [14115392139c7f57ea82db2f816b5069fffa2238]
# 
# add_file "packages/apex/nslu2/defconfig-16mb"
#  content [30b461aef003e2129495c0913af356afcb300e6b]
# 
# patch "packages/apex/apex-nslu2_1.5.8.bb"
#  from [2d94006081eec2999fbdcabc50ff913a57914a72]
#    to [a955d4e6ecf87a690890636436fb86c26ee760ec]
# 
# patch "packages/apex/nslu2/defconfig"
#  from [d1192d9c161dcf4c55f95b991c7175fbd1b1faa3]
#    to [d8fab038940bde31b753345df98a6eff78511a07]
# 
============================================================
--- packages/apex/apex-nslu2-16mb_1.5.8.bb	14115392139c7f57ea82db2f816b5069fffa2238
+++ packages/apex/apex-nslu2-16mb_1.5.8.bb	14115392139c7f57ea82db2f816b5069fffa2238
@@ -0,0 +1,69 @@
+DESCRIPTION = "APEX Boot Loader"
+SECTION = ""
+PRIORITY = "optional"
+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://defconfig-16mb"
+S = ${WORKDIR}/apex-${PV}
+
+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() {
+	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"
+}
+
+# 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_TARGET_DESCRIPTION.*/CONFIG_TARGET_DESCRIPTION=\"OpenEmbedded NSLU2\/BE (16MiB Flash)\"/' \
+	      -e 's|CONFIG_ENV_DEFAULT_CMDLINE=|CONFIG_ENV_DEFAULT_CMDLINE=\"${CMDLINE_CONSOLE} ${CMDLINE_ROOT} ${CMDLINE_DEBUG}\"|' \
+		${WORKDIR}/defconfig-16mb > ${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_TARGET_DESCRIPTION.*/CONFIG_TARGET_DESCRIPTION=\"OpenEmbedded NSLU2\/LE (16MiB Flash)\"/' \
+	      -e 's|CONFIG_ENV_DEFAULT_CMDLINE=|CONFIG_ENV_DEFAULT_CMDLINE=\"${CMDLINE_CONSOLE} ${CMDLINE_ROOT} ${CMDLINE_DEBUG}\"|' \
+		${WORKDIR}/defconfig-16mb > ${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-nslu2-16mb.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-nslu2-16mb.bin 'xp $,4'
+	else
+		oefatal do_populate_staging cannot determine endianess
+	fi
+}
============================================================
--- packages/apex/nslu2/defconfig-16mb	30b461aef003e2129495c0913af356afcb300e6b
+++ packages/apex/nslu2/defconfig-16mb	30b461aef003e2129495c0913af356afcb300e6b
@@ -0,0 +1,156 @@
+#
+# Automatically generated make config: don't edit
+# Linux kernel version: 
+# Fri Jun  1 17:35:34 2007
+#
+CONFIG_ARM=y
+CONFIG_CPU_ARMV5=y
+CONFIG_CPU_XSCALE=y
+# CONFIG_ARCH_LH7952X is not set
+# CONFIG_ARCH_LH7A40X is not set
+CONFIG_ARCH_IXP42X=y
+# CONFIG_ARCH_S3C2410 is not set
+# CONFIG_ARCH_MX3 is not set
+CONFIG_EXPERIMENTAL=y
+# CONFIG_SMALL is not set
+
+#
+# General Setup
+#
+CONFIG_TARGET_DESCRIPTION="SlugOS NSLU2/BE (16MiB Flash)"
+CONFIG_CROSS_COMPILE=""
+CONFIG_AEABI=y
+CONFIG_CC_OPTIMIZE_FOR_SIZE=y
+# CONFIG_CC_OPTIMIZE_FOR_SPEED is not set
+# CONFIG_CC_NO_OPTIMIZATION is not set
+CONFIG_STARTUP_UART=y
+# CONFIG_DEBUG_LL is not set
+CONFIG_SPINNER=y
+CONFIG_ATAG=y
+CONFIG_MMU=y
+# CONFIG_FORCE_WRITETHROUGH_DCACHE is not set
+CONFIG_DISABLE_MMU_AT_BOOT=y
+# CONFIG_INTERRUPTS is not set
+CONFIG_SDRAMBOOT_REPORT=y
+CONFIG_STACK_SIZE=0x1000
+CONFIG_STACKLIMIT=y
+# CONFIG_BOOTSTRAP_MEMTEST is not set
+CONFIG_ATAG_PHYS=0x00000100
+CONFIG_ARCH_NUMBER=597
+CONFIG_APEX_VMA=0x00200000
+CONFIG_KERNEL_LMA=0x00008000
+# CONFIG_USE_RAMDISK is not set
+CONFIG_SDRAM_BANK0=y
+# CONFIG_SDRAM_BANK1 is not set
+CONFIG_NOR_BUSWIDTH=16
+CONFIG_NOR_BANK0=y
+CONFIG_NOR_BANK0_START=0x50000000
+CONFIG_NOR_BANK0_LENGTH=0x01000000
+CONFIG_MACH="ixp42x"
+CONFIG_MACH_NSLU2=y
+# CONFIG_MACH_NAS100D is not set
+# CONFIG_MACH_DSMG600 is not set
+# CONFIG_MACH_AVILA2347 is not set
+# CONFIG_USER_DEFAULTENDIAN is not set
+# CONFIG_USER_BIGENDIAN is not set
+# CONFIG_USER_LITTLEENDIAN is not set
+
+#
+# Platform Setup
+#
+CONFIG_SDRAM_BANK_LENGTH=0x02000000
+# CONFIG_DISABLE_SECOND_UART_INIT is not set
+CONFIG_ARCH_IXP420=y
+
+#
+# Commands
+#
+CONFIG_ALLHELP=y
+CONFIG_ALPHABETIZE_COMMANDS=y
+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
+CONFIG_CMD_COMPARE=y
+CONFIG_CMD_DRVINFO=y
+CONFIG_CMD_DUMP=y
+CONFIG_CMD_ENV=y
+CONFIG_CMD_SETENV=y
+CONFIG_CMD_ERASE=y
+CONFIG_CMD_FILL=y
+CONFIG_CMD_GO=y
+CONFIG_CMD_INFO=y
+# CONFIG_CMD_PAUSE is not set
+CONFIG_CMD_WAIT=y
+CONFIG_CMD_XRECEIVE=y
+CONFIG_CMD_MEMLIMIT=y
+CONFIG_CMD_MEMSCAN=y
+
+#
+# Generic Drivers
+#
+# CONFIG_DRIVER_FAT is not set
+# CONFIG_DRIVER_EXT2 is not set
+# CONFIG_DRIVER_JFFS2 is not set
+CONFIG_DRIVER_FIS=y
+CONFIG_DRIVER_FIS_BLOCKDEVICE="nor:0xfe0000+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
+CONFIG_USES_IXP4XX_NPE_ETH=y
+
+#
+# Environment
+#
+CONFIG_ENV=y
+CONFIG_ENV_LINK=y
+CONFIG_ENV_MUTABLE=y
+CONFIG_ENV_REGION="nor:0x7c000+16k"
+# CONFIG_ENV_SAVEATONCE is not set
+CONFIG_ENV_CHECK_LEN=1024
+# 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
+
+#
+#    Default Startup
+#
+CONFIG_AUTOBOOT=y
+CONFIG_AUTOBOOT_DELAY=10
+CONFIG_ENV_STARTUP_KERNEL_COPY=y
+# CONFIG_ENV_REGION_KERNEL_SWAP is not set
+# CONFIG_ENV_STARTUP_PREFIX_P is not set
+
+#
+#    Regions
+#
+CONFIG_ENV_REGION_KERNEL="fis://kernel"
+
+#
+#    Overrides
+#
+CONFIG_ENV_DEFAULT_CMDLINE_OVERRIDE=y
+CONFIG_ENV_DEFAULT_CMDLINE="root=/dev/mtdblock4 rootfstype=jffs2 console=ttyS0,115200"
+# CONFIG_ENV_DEFAULT_STARTUP_OVERRIDE is not set
+CONFIG_USES_NOR_BOOTFLASH=y
+CONFIG_RELOCATE_SIMPLE=y
+CONFIG_INLINE_PLATFORM_INITIALIZATION=y
+CONFIG_INLINE_PLATFORM_INITIALIZATION_SDRAM_PRE_OVERRIDE=y
+# CONFIG_BIGENDIAN is not set
+# CONFIG_LITTLEENDIAN is not set
+CONFIG_CLEAR_STACKS=y
+CONFIG_ALIASES=y
============================================================
--- packages/apex/apex_1.5.8.bb	2d94006081eec2999fbdcabc50ff913a57914a72
+++ packages/apex/apex-nslu2_1.5.8.bb	a955d4e6ecf87a690890636436fb86c26ee760ec
@@ -10,6 +10,7 @@ SRC_URI = "ftp://ftp.buici.com/pub/apex/
 
 SRC_URI = "ftp://ftp.buici.com/pub/apex/apex-${PV}.tar.gz \
 	   file://defconfig"
+S = ${WORKDIR}/apex-${PV}
 
 CMDLINE_CONSOLE = "console=${@bb.data.getVar("KERNEL_CONSOLE",d,1) or "ttyS0"}"
 
@@ -35,14 +36,14 @@ 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_TARGET_DESCRIPTION.*/CONFIG_TARGET_DESCRIPTION=\"OpenEmbedded NSLU2 (big endian)\"/' \
+	      -e 's/.*CONFIG_TARGET_DESCRIPTION.*/CONFIG_TARGET_DESCRIPTION=\"OpenEmbedded NSLU2\/BE (8MiB Flash)\"/' \
 	      -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_TARGET_DESCRIPTION.*/CONFIG_TARGET_DESCRIPTION=\"OpenEmbedded NSLU2 (little endian)\"/' \
+	      -e 's/.*CONFIG_TARGET_DESCRIPTION.*/CONFIG_TARGET_DESCRIPTION=\"OpenEmbedded NSLU2\/LE (8MiB Flash)\"/' \
 	      -e 's|CONFIG_ENV_DEFAULT_CMDLINE=|CONFIG_ENV_DEFAULT_CMDLINE=\"${CMDLINE_CONSOLE} ${CMDLINE_ROOT} ${CMDLINE_DEBUG}\"|' \
 		${WORKDIR}/defconfig > ${S}/.config
 	else
@@ -58,10 +59,10 @@ do_populate_staging() {
 	. ${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
+		cp src/arch-arm/rom/apex.bin ${STAGING_LOADER_DIR}/apex-nslu2.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'
+		devio '<<'src/arch-arm/rom/apex.bin >${STAGING_LOADER_DIR}/apex-nslu2.bin 'xp $,4'
 	else
 		oefatal do_populate_staging cannot determine endianess
 	fi
============================================================
--- packages/apex/nslu2/defconfig	d1192d9c161dcf4c55f95b991c7175fbd1b1faa3
+++ packages/apex/nslu2/defconfig	d8fab038940bde31b753345df98a6eff78511a07
@@ -17,7 +17,7 @@ CONFIG_EXPERIMENTAL=y
 #
 # General Setup
 #
-CONFIG_TARGET_DESCRIPTION="SlugOS NSLU2 (bigendian)"
+CONFIG_TARGET_DESCRIPTION="SlugOS NSLU2/BE (8MiB Flash)"
 CONFIG_CROSS_COMPILE=""
 CONFIG_AEABI=y
 CONFIG_CC_OPTIMIZE_FOR_SIZE=y
@@ -46,7 +46,6 @@ CONFIG_NOR_BANK0_LENGTH=0x00800000
 CONFIG_NOR_BANK0=y
 CONFIG_NOR_BANK0_START=0x50000000
 CONFIG_NOR_BANK0_LENGTH=0x00800000
-CONFIG_ENV_STARTUP=""
 CONFIG_MACH="ixp42x"
 CONFIG_MACH_NSLU2=y
 # CONFIG_MACH_NAS100D is not set
@@ -116,7 +115,7 @@ CONFIG_ENV_MUTABLE=y
 CONFIG_ENV=y
 CONFIG_ENV_LINK=y
 CONFIG_ENV_MUTABLE=y
-CONFIG_ENV_REGION="nor:0x7f8000+16k"
+CONFIG_ENV_REGION="nor:0x7c000+16k"
 # CONFIG_ENV_SAVEATONCE is not set
 CONFIG_ENV_CHECK_LEN=1024
 # CONFIG_VARIATIONS is not set






More information about the Openembedded-commits mailing list