diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2011-02-24 15:50:07 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2011-03-03 16:15:56 +0100 |
commit | 065c2b470219081f6eabb332508822e6f01498e5 (patch) | |
tree | 40e43068d67834115cdb78e449ab4abfac0b0556 /arch | |
parent | 1f167559e29d91a4ed80dde3937d5e451f72a121 (diff) | |
download | barebox-065c2b470219081f6eabb332508822e6f01498e5.tar.gz barebox-065c2b470219081f6eabb332508822e6f01498e5.tar.xz |
ARM i.MX35 3stack: Switch to default env
Also, enable nand driver and external NAND boot support.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch')
8 files changed, 45 insertions, 184 deletions
diff --git a/arch/arm/boards/freescale-mx35-3-stack/env/bin/_update b/arch/arm/boards/freescale-mx35-3-stack/env/bin/_update deleted file mode 100644 index ddd6b84f72..0000000000 --- a/arch/arm/boards/freescale-mx35-3-stack/env/bin/_update +++ /dev/null @@ -1,39 +0,0 @@ -#!/bin/sh - -if [ -z "$part" -o -z "$image" ]; then - echo "define \$part and \$image" - exit 1 -fi - -if [ ! -e "$part" ]; then - echo "Partition $part does not exist" - exit 1 -fi - -if [ $# = 1 ]; then - image=$1 -fi - -if [ x$ip = xdhcp ]; then - dhcp -fi - -ping $eth0.serverip -if [ $? -ne 0 ] ; then - echo "Server did not reply! Update aborted." - exit 1 -fi - -unprotect $part - -echo -echo "erasing partition $part" -echo -erase $part - -echo -echo "flashing $image to $part" -echo -tftp $image $part - -protect $part diff --git a/arch/arm/boards/freescale-mx35-3-stack/env/bin/boot b/arch/arm/boards/freescale-mx35-3-stack/env/bin/boot deleted file mode 100644 index fb2fe614d4..0000000000 --- a/arch/arm/boards/freescale-mx35-3-stack/env/bin/boot +++ /dev/null @@ -1,57 +0,0 @@ -#!/bin/sh - -. /env/config - -if [ x$1 = xnand ]; then - rootfs_loc=nand - kernel_loc=nand -elif [ x$1 = xnor ]; then - rootfs_loc=nor - kernel_loc=nor -elif [ x$1 = xnet ]; then - rootfs_loc=net - kernel_loc=net -fi - - -if [ x$ip = xdhcp ]; then - bootargs="$bootargs ip=dhcp" -elif [ x$ip != xno ]; then - bootargs="$bootargs ip=$eth0.ipaddr:$eth0.serverip:$eth0.gateway:$eth0.netmask:::" -fi - - -if [ $rootfs_loc != net ]; then - if [ x$rootfs_loc = xnand ]; then - rootfs_mtdblock=$rootfs_mtdblock_nand - else - rootfs_mtdblock=$rootfs_mtdblock_nor - fi - - - if [ $rootfs_type = ubifs ]; then - bootargs="$bootargs root=ubi0:root ubi.mtd=$rootfs_mtdblock" - else - bootargs="$bootargs root=/dev/mtdblock$rootfs_mtdblock" - fi - - bootargs="$bootargs rootfstype=$rootfs_type" -else - bootargs="$bootargs root=/dev/nfs nfsroot=$eth0.serverip:$nfsroot,v3,tcp" -fi - - -bootargs="$bootargs mtdparts=\"physmap-flash.0:$nor_parts;mxc_nand:$nand_parts\"" - -if [ $kernel_loc = net ]; then - if [ x$ip = xdhcp ]; then - dhcp - fi - tftp $kernel uImage || exit 1 - bootm uImage -elif [ $kernel_loc = nor ]; then - bootm /dev/nor0.kernel -else - bootm /dev/nand0.kernel.bb -fi - diff --git a/arch/arm/boards/freescale-mx35-3-stack/env/bin/hush_hack b/arch/arm/boards/freescale-mx35-3-stack/env/bin/hush_hack deleted file mode 100644 index 5fffa92ecd..0000000000 --- a/arch/arm/boards/freescale-mx35-3-stack/env/bin/hush_hack +++ /dev/null @@ -1 +0,0 @@ -nand -a /dev/nand0.* diff --git a/arch/arm/boards/freescale-mx35-3-stack/env/bin/init b/arch/arm/boards/freescale-mx35-3-stack/env/bin/init deleted file mode 100644 index c982f22a86..0000000000 --- a/arch/arm/boards/freescale-mx35-3-stack/env/bin/init +++ /dev/null @@ -1,38 +0,0 @@ -#!/bin/sh - -PATH=/env/bin -export PATH - -. /env/config -if [ -e /dev/nor0 ]; then - addpart /dev/nor0 $nor_parts -fi - -if [ -e /dev/nand0 ]; then - addpart /dev/nand0 $nand_parts - - # Uh, oh, hush first expands wildcards and then starts executing - # commands. What a bug! - source /env/bin/hush_hack -fi - -if [ -z $eth0.ethaddr ]; then - while [ -z $eth0.ethaddr ]; do - readline "no MAC address set for eth0. please enter the one found on your board: " eth0.ethaddr - done - echo -a /env/config "eth0.ethaddr=$eth0.ethaddr" - saveenv -fi - -echo -echo -n "Hit any key to stop autoboot: " -timeout -a $autoboot_timeout -if [ $? != 0 ]; then - echo - echo "type update_kernel nand|nor [<imagename>] to update kernel into flash" - echo "type update_rootfs nand|nor [<imagename>] to update rootfs into flash" - echo - exit -fi - -boot diff --git a/arch/arm/boards/freescale-mx35-3-stack/env/bin/update_kernel b/arch/arm/boards/freescale-mx35-3-stack/env/bin/update_kernel deleted file mode 100644 index 63ad11aaed..0000000000 --- a/arch/arm/boards/freescale-mx35-3-stack/env/bin/update_kernel +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/sh - -. /env/config -image=$kernel - -if [ x$1 = xnand ]; then - part=/dev/nand0.kernel.bb -elif [ x$1 = xnor ]; then - part=/dev/nor0.kernel -else - echo "usage: $0 nor|nand [imagename]" - exit 1 -fi - -. /env/bin/_update $2 diff --git a/arch/arm/boards/freescale-mx35-3-stack/env/bin/update_rootfs b/arch/arm/boards/freescale-mx35-3-stack/env/bin/update_rootfs deleted file mode 100644 index 53dd2ca575..0000000000 --- a/arch/arm/boards/freescale-mx35-3-stack/env/bin/update_rootfs +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/sh - -. /env/config - -if [ $rootfs_type = ubifs ]; then - image=${rootfs}.ubi -else - image=${rootfs}.$rootfs_type -fi - -if [ x$1 = xnand ]; then - part=/dev/nand0.root.bb -elif [ x$1 = xnor ]; then - part=/dev/nor0.root -else - echo "usage: $0 nor|nand [imagename]" - exit 1 -fi - -. /env/bin/_update $2 diff --git a/arch/arm/boards/freescale-mx35-3-stack/env/config b/arch/arm/boards/freescale-mx35-3-stack/env/config index 51195f7404..df01d4222f 100644 --- a/arch/arm/boards/freescale-mx35-3-stack/env/config +++ b/arch/arm/boards/freescale-mx35-3-stack/env/config @@ -1,8 +1,12 @@ #!/bin/sh +machine=mx35-3stack +eth0.serverip= +user= + # use 'dhcp' to do dhcp in barebox and in kernel -# use 'no' if you don't want to pass the ip from barebox to the kernel -#ip=dhcp +# use 'none' if you want to skip kernel ip autoconfiguration +ip=dhcp # or set your networking parameters here #eth0.ipaddr=a.b.c.d @@ -10,26 +14,43 @@ #eth0.gateway=a.b.c.d #eth0.serverip=a.b.c.d -# can be either 'net', 'nor' or 'nand'' -kernel_loc=nand -rootfs_loc=nand +# can be either 'net', 'nor' or 'nand' +kernel_loc=net +# can be either 'net', 'nor', 'nand' or 'initrd' +rootfs_loc=net -# can be either 'jffs2', or 'ubifs' +# can be either 'jffs2' or 'ubifs' rootfs_type=ubifs - -kernel=uImage-mx35-3-stack -rootfs=root-mx35-3-stack -envimage=u-boot-v2-environment-mx35-3-stack +rootfsimage=root-$machine.$rootfs_type + +# The image type of the kernel. Can be uimage, zimage, raw, or raw_lzo +kernelimage_type=zimage +kernelimage=zImage-$machine +#kernelimage_type=uimage +#kernelimage=uImage-$machine +#kernelimage_type=raw +#kernelimage=Image-$machine +#kernelimage_type=raw_lzo +#kernelimage=Image-$machine.lzo + +if [ -n $user ]; then + kernelimage="$user"-"$kernelimage" + nfsroot="$eth0.serverip:/home/$user/nfsroot/$machine" + rootfsimage="$user"-"$rootfsimage" +else + nfsroot="$eth0.serverip:/path/to/nfs/root" +fi autoboot_timeout=3 -nfsroot="/path/to/nfs/root" bootargs="console=ttymxc0,115200" -bootargs="$bootargs video=mx3fb:CTP-CLAA070LC0ACW" - nor_parts="256k(barebox)ro,512k(bareboxenv),2M(kernel),-(root)" rootfs_mtdblock_nor=3 nand_parts="256k(barebox)ro,512k(bareboxenv),2M(kernel),-(root)" rootfs_mtdblock_nand=7 + +# set a fancy prompt (if support is compiled in) +PS1="\e[1;32mbarebox@\e[1;31m\h:\w\e[0m " + diff --git a/arch/arm/configs/freescale_mx35_3stack_defconfig b/arch/arm/configs/freescale_mx35_3stack_defconfig index 20c59535bf..2c0e5137e8 100644 --- a/arch/arm/configs/freescale_mx35_3stack_defconfig +++ b/arch/arm/configs/freescale_mx35_3stack_defconfig @@ -7,9 +7,11 @@ CONFIG_TEXT_BASE=0x87F00000 CONFIG_MALLOC_SIZE=0x1000000 CONFIG_LONGHELP=y CONFIG_GLOB=y +CONFIG_HUSH_FANCY_PROMPT=y CONFIG_CMDLINE_EDITING=y CONFIG_AUTO_COMPLETE=y CONFIG_PARTITION=y +CONFIG_DEFAULT_ENVIRONMENT_GENERIC=y CONFIG_DEFAULT_ENVIRONMENT_PATH="arch/arm/boards/freescale-mx35-3-stack/env/" CONFIG_CMD_EDIT=y CONFIG_CMD_SLEEP=y @@ -18,14 +20,17 @@ CONFIG_CMD_LOADENV=y CONFIG_CMD_EXPORT=y CONFIG_CMD_PRINTENV=y CONFIG_CMD_READLINE=y +CONFIG_CMD_ECHO_E=y CONFIG_CMD_MEMINFO=y -CONFIG_CMD_CRC=y CONFIG_CMD_FLASH=y CONFIG_CMD_RESET=y CONFIG_CMD_GO=y CONFIG_CMD_TIMEOUT=y CONFIG_CMD_PARTITION=y CONFIG_CMD_BMP=y +CONFIG_CMD_GPIO=y +CONFIG_CMD_UNLZO=y +CONFIG_CMD_I2C=y CONFIG_NET=y CONFIG_NET_DHCP=y CONFIG_NET_PING=y @@ -35,5 +40,10 @@ CONFIG_DRIVER_NET_FEC_IMX=y # CONFIG_SPI is not set CONFIG_DRIVER_CFI=y CONFIG_CFI_BUFFER_WRITE=y +CONFIG_MTD=y +CONFIG_NAND=y +CONFIG_NAND_IMX=y +CONFIG_NAND_IMX_BOOT=y +CONFIG_UBI=y CONFIG_VIDEO=y CONFIG_DRIVER_VIDEO_IMX_IPU=y |