diff options
author | Luka Perkov <luka@openwrt.org> | 2014-02-15 23:53:07 +0000 |
---|---|---|
committer | Luka Perkov <luka@openwrt.org> | 2014-02-15 23:53:07 +0000 |
commit | 777e7c3ff5d0030dc7d24a43b70dfd2d3b2a5a4c (patch) | |
tree | 22369c6f07709713097307c6861bbcb49de325a7 /package/boot/uboot-kirkwood/patches | |
parent | cde033f9181a0dda07d06fc62db7f2692c1bf475 (diff) | |
download | upstream-777e7c3ff5d0030dc7d24a43b70dfd2d3b2a5a4c.tar.gz upstream-777e7c3ff5d0030dc7d24a43b70dfd2d3b2a5a4c.tar.bz2 upstream-777e7c3ff5d0030dc7d24a43b70dfd2d3b2a5a4c.zip |
uboot-kirkwood: update to 2013.10
Tested on:
* Cloud Engines Pogoplug E02
* RaidSonic ICY BOX IB-NAS62x0
* Iomega Iconnect
Some users are avoiding to replace their bootloader, because of that add
support for second stage u-boot image. Having ubifs capable bootloader is
required in order to boot current OpenWrt trunk.
Sample ib62x0 commands for running second stage bootloader:
tftpboot 0x800000 uboot-kirkwood-ib62x0_second_stage/openwrt-kirkwood-ib62x0_second_stage-u-boot.img
bootm 0x800000
Sample ib62x0 commands for flashing second stage bootloader:
tftpboot 0x800000 uboot-kirkwood-ib62x0_second_stage/openwrt-kirkwood-ib62x0_second_stage-u-boot.img
nand erase 0x100000 0x100000 ; nand write 0x800000 0x100000 0x${filesize}
nand read 0x800000 0x100000 0x100000 ; bootm 0x800000
While at it include parallel build support, use alphabetic order of the boards
and introduce common OpenWrt configuration.
Signed-off-by: Luka Perkov <luka@openwrt.org>
Tested-by (on ib62x0): Luka Perkov <luka@openwrt.org>
Tested-by (on dockstar): Alexander Couzens <lynxis@fe80.eu>
Tested-by (on iconnect): Wojciech Dubowik <wojciech.dubowik@neratec.com>
CC: Felix Kaechele <heffer@fedoraproject.org>
CC: Wojciech Dubowik <wojciech.dubowik@neratec.com>
CC: Alexander Couzens <lynxis@fe80.eu>
CC: Daniel Engberg <daniel.engberg@pyret.net>
CC: Imre Kaloz <kaloz@openwrt.org>
SVN-Revision: 39590
Diffstat (limited to 'package/boot/uboot-kirkwood/patches')
5 files changed, 397 insertions, 14 deletions
diff --git a/package/boot/uboot-kirkwood/patches/0001-kirkwood-ib62x0-use-device-tree-and-update-config.patch b/package/boot/uboot-kirkwood/patches/0001-kirkwood-ib62x0-use-device-tree-and-update-config.patch new file mode 100644 index 0000000000..de8023689e --- /dev/null +++ b/package/boot/uboot-kirkwood/patches/0001-kirkwood-ib62x0-use-device-tree-and-update-config.patch @@ -0,0 +1,89 @@ +From 2701517a2bbf17544b408738438b0dd17718d4dd Mon Sep 17 00:00:00 2001 +From: Luka Perkov <luka@openwrt.org> +Date: Wed, 14 Nov 2012 23:32:55 +0100 +Subject: [PATCH] kirkwood: ib62x0: use device tree and update config + +Signed-off-by: Luka Perkov <luka@openwrt.org> +CC: Prafulla Wadaskar <prafulla@marvell.com> +--- +v1->v2: + + * keep CONFIG_MACH_TYPE define for backwards compatibility +--- +http://patchwork.ozlabs.org/patch/287388/ +Acked-By: Prafulla Wadaskar <prafulla@marvell.com> +--- + include/configs/ib62x0.h | 38 +++++++++++++++++++++++--------------- + 1 file changed, 23 insertions(+), 15 deletions(-) + +--- a/include/configs/ib62x0.h ++++ b/include/configs/ib62x0.h +@@ -28,6 +28,11 @@ + #define CONFIG_MACH_TYPE MACH_TYPE_NAS6210 + + /* ++ * Enable device tree support ++ */ ++#define CONFIG_OF_LIBFDT ++ ++/* + * Compression configuration + */ + #define CONFIG_BZIP2 +@@ -41,6 +46,7 @@ + #define CONFIG_SYS_MVFS + #include <config_cmd_default.h> + #define CONFIG_CMD_ENV ++#define CONFIG_CMD_BOOTZ + #define CONFIG_CMD_IDE + #define CONFIG_CMD_MII + #define CONFIG_CMD_NAND +@@ -66,7 +72,7 @@ + #define CONFIG_ENV_IS_NOWHERE + #endif + #define CONFIG_ENV_SIZE 0x20000 +-#define CONFIG_ENV_OFFSET 0x80000 ++#define CONFIG_ENV_OFFSET 0xe0000 + + /* + * Default environment variables +@@ -74,24 +80,26 @@ + #define CONFIG_BOOTCOMMAND \ + "setenv bootargs ${console} ${mtdparts} ${bootargs_root}; " \ + "ubi part root; " \ +- "ubifsmount ubi:root; " \ ++ "ubifsmount ubi:rootfs; " \ + "ubifsload 0x800000 ${kernel}; " \ +- "ubifsload 0x1100000 ${initrd}; " \ +- "bootm 0x800000 0x1100000" +- +-#define CONFIG_MTDPARTS \ +- "mtdparts=orion_nand:" \ +- "0x80000@0x0(uboot)," \ +- "0x20000@0x80000(uboot_env)," \ +- "-@0xa0000(root)\0" ++ "ubifsload 0x700000 ${fdt}; " \ ++ "ubifsumount; " \ ++ "fdt addr 0x700000; fdt resize; fdt chosen; " \ ++ "bootz 0x800000 - 0x700000" ++ ++#define CONFIG_MTDPARTS \ ++ "mtdparts=orion_nand:" \ ++ "0xe0000@0x0(uboot)," \ ++ "0x20000@0xe0000(uboot_env)," \ ++ "-@0x100000(root)\0" + +-#define CONFIG_EXTRA_ENV_SETTINGS \ ++#define CONFIG_EXTRA_ENV_SETTINGS \ + "console=console=ttyS0,115200\0" \ + "mtdids=nand0=orion_nand\0" \ + "mtdparts="CONFIG_MTDPARTS \ +- "kernel=/boot/uImage\0" \ +- "initrd=/boot/uInitrd\0" \ +- "bootargs_root=ubi.mtd=2 root=ubi0:root rootfstype=ubifs\0" ++ "kernel=/boot/zImage\0" \ ++ "fdt=/boot/ib62x0.dtb\0" \ ++ "bootargs_root=ubi.mtd=2 root=ubi0:rootfs rootfstype=ubifs rw\0" + + /* + * Ethernet driver configuration diff --git a/package/boot/uboot-kirkwood/patches/110-dockstar.patch b/package/boot/uboot-kirkwood/patches/110-dockstar.patch index 4ff7e57bbb..b0a7f54980 100644 --- a/package/boot/uboot-kirkwood/patches/110-dockstar.patch +++ b/package/boot/uboot-kirkwood/patches/110-dockstar.patch @@ -1,23 +1,104 @@ --- a/include/configs/dockstar.h +++ b/include/configs/dockstar.h -@@ -83,22 +83,19 @@ +@@ -15,21 +15,26 @@ + /* + * Version number information + */ +-#define CONFIG_IDENT_STRING "\nSeagate FreeAgent DockStar" ++#define CONFIG_IDENT_STRING " Seagate FreeAgent DockStar" + + /* +- * High Level Configuration Options (easy to change) ++ * High level configuration options + */ +-#define CONFIG_FEROCEON_88FR131 1 /* CPU Core subversion */ +-#define CONFIG_KIRKWOOD 1 /* SOC Family Name */ +-#define CONFIG_KW88F6281 1 /* SOC Name */ +-#define CONFIG_MACH_DOCKSTAR /* Machine type */ ++#define CONFIG_FEROCEON_88FR131 /* CPU Core subversion */ ++#define CONFIG_KIRKWOOD /* SOC Family Name */ ++#define CONFIG_KW88F6281 /* SOC Name */ + #define CONFIG_SKIP_LOWLEVEL_INIT /* disable board lowlevel_init */ + + /* ++ * Machine type ++ */ ++#define CONFIG_MACH_DOCKSTAR ++ ++/* + * Commands configuration + */ +-#define CONFIG_SYS_NO_FLASH /* Declare no flash (NOR/SPI) */ ++#define CONFIG_SYS_NO_FLASH /* declare no flash (NOR/SPI) */ ++#define CONFIG_SYS_MVFS + #include <config_cmd_default.h> + #define CONFIG_CMD_DHCP + #define CONFIG_CMD_ENV +@@ -37,55 +42,58 @@ + #define CONFIG_CMD_NAND + #define CONFIG_CMD_PING + #define CONFIG_CMD_USB ++ + /* + * mv-common.h should be defined after CMD configs since it used them + * to enable certain macros + */ + #include "mv-common.h" + +-#undef CONFIG_SYS_PROMPT /* previously defined in mv-common.h */ +-#define CONFIG_SYS_PROMPT "DockStar> " /* Command Prompt */ ++#undef CONFIG_SYS_PROMPT ++#define CONFIG_SYS_PROMPT "dockstar => " + + /* +- * Environment variables configurations ++ * Environment variables configuration + */ + #ifdef CONFIG_CMD_NAND +-#define CONFIG_ENV_IS_IN_NAND 1 +-#define CONFIG_ENV_SECT_SIZE 0x20000 /* 128K */ ++#define CONFIG_ENV_IS_IN_NAND ++#define CONFIG_ENV_SECT_SIZE 0x20000 + #else +-#define CONFIG_ENV_IS_NOWHERE 1 /* if env in SDRAM */ ++#define CONFIG_ENV_IS_NOWHERE + #endif +-/* +- * max 4k env size is enough, but in case of nand +- * it has to be rounded to sector size +- */ +-#define CONFIG_ENV_SIZE 0x20000 /* 128k */ +-#define CONFIG_ENV_ADDR 0x60000 +-#define CONFIG_ENV_OFFSET 0x60000 /* env starts here */ ++#define CONFIG_ENV_SIZE 0x20000 ++#define CONFIG_ENV_OFFSET 0xe0000 + + /* * Default environment variables */ #define CONFIG_BOOTCOMMAND \ -- "setenv bootargs ${console} ${mtdparts} ${bootargs_root}; " \ + "setenv bootargs ${console} ${mtdparts} ${bootargs_root}; " \ - "ubi part root; " \ -- "ubifsmount root; " \ +- "ubifsmount ubi:root; " \ - "ubifsload 0x800000 ${kernel}; " \ - "ubifsload 0x1100000 ${initrd}; " \ - "bootm 0x800000 0x1100000" -+ "${x_bootcmd_kernel}; " \ -+ "setenv bootargs ${x_bootargs} ${x_bootargs_root}; " \ -+ "${x_bootcmd_usb}; bootm 0x6400000;" - +- -#define CONFIG_MTDPARTS "mtdparts=orion_nand:1m(uboot),-(root)\0" ++ "ubi part root; " \ ++ "ubifsmount ubi:rootfs; " \ ++ "ubifsload 0x800000 ${kernel}; " \ ++ "ubifsload 0x700000 ${fdt}; " \ ++ "ubifsumount; " \ ++ "fdt addr 0x700000; fdt resize; fdt chosen; " \ ++ "bootz 0x800000 - 0x700000" ++ +#define CONFIG_MTDPARTS \ -+ "orion_nand:1M(u-boot),1M@1M(second_stage_u-boot)," \ -+ "3M@2M(kernel),32M@5M(rootfs),219M@37M(data) rw\0" ++ "mtdparts=orion_nand:" \ ++ "0xe0000@0x0(uboot)," \ ++ "0x20000@0xe0000(uboot_env)," \ ++ "0x100000@0x100000(second_stage_uboot)," \ ++ "-@0x200000(root)\0" #define CONFIG_EXTRA_ENV_SETTINGS \ - "console=console=ttyS0,115200\0" \ @@ -26,10 +107,35 @@ - "kernel=/boot/uImage\0" \ - "initrd=/boot/uInitrd\0" \ - "bootargs_root=ubi.mtd=1 root=ubi0:root rootfstype=ubifs ro\0" -+ "x_bootargs=console=ttyS0,115200 mtdparts="CONFIG_MTDPARTS \ -+ "x_bootcmd_kernel=nand read 0x6400000 0x200000 0x300000\0" \ -+ "x_bootargs_root=root=/dev/mtdblock3 rw rootfstype=jffs2\0" \ -+ "x_bootcmd_usb=usb start\0" ++ "console=console=ttyS0,115200\0" \ ++ "mtdids=nand0=orion_nand\0" \ ++ "mtdparts="CONFIG_MTDPARTS \ ++ "kernel=/boot/zImage\0" \ ++ "fdt=/boot/dockstar.dtb\0" \ ++ "bootargs_root=ubi.mtd=3 root=ubi0:rootfs rootfstype=ubifs rw\0" /* - * Ethernet Driver configuration +- * Ethernet Driver configuration ++ * Ethernet driver configuration + */ + #ifdef CONFIG_CMD_NET + #define CONFIG_MVGBE_PORTS {1, 0} /* enable port 0 only */ +@@ -101,7 +109,7 @@ + #define CONFIG_CMD_UBI + #define CONFIG_CMD_UBIFS + #define CONFIG_RBTREE +-#define CONFIG_MTD_DEVICE /* needed for mtdparts commands */ ++#define CONFIG_MTD_DEVICE + #define CONFIG_MTD_PARTITIONS + #define CONFIG_CMD_MTDPARTS + #define CONFIG_LZO +--- a/boards.cfg ++++ b/boards.cfg +@@ -190,6 +190,7 @@ Active arm arm926ejs kirkw + Active arm arm926ejs kirkwood Marvell openrd openrd_ultimate openrd:BOARD_IS_OPENRD_ULTIMATE - + Active arm arm926ejs kirkwood raidsonic ib62x0 ib62x0 - Luka Perkov <luka@openwrt.org> + Active arm arm926ejs kirkwood Seagate - dockstar - Eric Cooper <ecc@cmu.edu> ++Active arm arm926ejs kirkwood Seagate dockstar dockstar_second_stage dockstar:SECOND_STAGE Luka Perkov <luka@openwrt.org> + Active arm arm926ejs kirkwood Seagate - goflexhome - Suriyan Ramasami <suriyan.r@gmail.com> + Active arm arm926ejs lpc32xx timll devkit3250 devkit3250 - Vladimir Zapolskiy <vz@mleia.com> + Active arm arm926ejs mb86r0x syteco jadecpu jadecpu - Matthias Weisser <weisserm@arcor.de> diff --git a/package/boot/uboot-kirkwood/patches/120-iconnect.patch b/package/boot/uboot-kirkwood/patches/120-iconnect.patch new file mode 100644 index 0000000000..36655a98a5 --- /dev/null +++ b/package/boot/uboot-kirkwood/patches/120-iconnect.patch @@ -0,0 +1,57 @@ +--- a/include/configs/iconnect.h ++++ b/include/configs/iconnect.h +@@ -65,30 +65,35 @@ + #define CONFIG_ENV_IS_NOWHERE + #endif + #define CONFIG_ENV_SIZE 0x20000 +-#define CONFIG_ENV_OFFSET 0x80000 ++#define CONFIG_ENV_OFFSET 0xe0000 + + /* + * Default environment variables + */ + #define CONFIG_BOOTCOMMAND \ + "setenv bootargs ${console} ${mtdparts} ${bootargs_root}; " \ +- "ubi part rootfs; " \ ++ "ubi part root; " \ + "ubifsmount ubi:rootfs; " \ + "ubifsload 0x800000 ${kernel}; " \ +- "bootm 0x800000" ++ "ubifsload 0x700000 ${fdt}; " \ ++ "ubifsumount; " \ ++ "fdt addr 0x700000; fdt resize; fdt chosen; " \ ++ "bootz 0x800000 - 0x700000" + + #define CONFIG_MTDPARTS \ +- "mtdparts=orion_nand:" \ +- "0x80000@0x0(uboot)," \ +- "0x20000@0x80000(uboot_env)," \ +- "-@0xa0000(rootfs)\0" ++ "mtdparts=orion_nand:" \ ++ "0xe0000@0x0(uboot)," \ ++ "0x20000@0xe0000(uboot_env)," \ ++ "0x100000@0x100000(second_stage_uboot)," \ ++ "-@0x200000(root)\0" + + #define CONFIG_EXTRA_ENV_SETTINGS \ + "console=console=ttyS0,115200\0" \ + "mtdids=nand0=orion_nand\0" \ + "mtdparts="CONFIG_MTDPARTS \ +- "kernel=/boot/uImage\0" \ +- "bootargs_root=noinitrd ubi.mtd=2 root=ubi0:rootfs rootfstype=ubifs\0" ++ "kernel=/boot/zImage\0" \ ++ "fdt=/boot/iconnect.dtb\0" \ ++ "bootargs_root=ubi.mtd=3 root=ubi0:rootfs rootfstype=ubifs rw\0" + + /* + * Ethernet driver configuration +--- a/boards.cfg ++++ b/boards.cfg +@@ -164,6 +164,7 @@ Active arm arm926ejs kirkw + Active arm arm926ejs kirkwood cloudengines - pogo_e02 - Dave Purdy <david.c.purdy@gmail.com> + Active arm arm926ejs kirkwood d-link - dns325 - Stefan Herbrechtsmeier <stefan@code.herbrechtsmeier.net> + Active arm arm926ejs kirkwood iomega - iconnect - Luka Perkov <luka@openwrt.org> ++Active arm arm926ejs kirkwood iomega iconnect iconnect_second_stage iconnect:SECOND_STAGE Luka Perkov <luka@openwrt.org> + Active arm arm926ejs kirkwood karo tk71 tk71 - - + Active arm arm926ejs kirkwood keymile km_arm km_kirkwood km_kirkwood:KM_KIRKWOOD Valentin Longchamp <valentin.longchamp@keymile.com> + Active arm arm926ejs kirkwood keymile km_arm km_kirkwood_pci km_kirkwood:KM_KIRKWOOD_PCI Valentin Longchamp <valentin.longchamp@keymile.com> diff --git a/package/boot/uboot-kirkwood/patches/130-ib62x0.patch b/package/boot/uboot-kirkwood/patches/130-ib62x0.patch new file mode 100644 index 0000000000..9a086e08b1 --- /dev/null +++ b/package/boot/uboot-kirkwood/patches/130-ib62x0.patch @@ -0,0 +1,31 @@ +--- a/boards.cfg ++++ b/boards.cfg +@@ -190,6 +190,7 @@ Active arm arm926ejs kirkw + Active arm arm926ejs kirkwood Marvell openrd openrd_client openrd:BOARD_IS_OPENRD_CLIENT - + Active arm arm926ejs kirkwood Marvell openrd openrd_ultimate openrd:BOARD_IS_OPENRD_ULTIMATE - + Active arm arm926ejs kirkwood raidsonic ib62x0 ib62x0 - Luka Perkov <luka@openwrt.org> ++Active arm arm926ejs kirkwood raidsonic ib62x0 ib62x0_second_stage ib62x0:SECOND_STAGE Luka Perkov <luka@openwrt.org> + Active arm arm926ejs kirkwood Seagate - dockstar - Eric Cooper <ecc@cmu.edu> + Active arm arm926ejs kirkwood Seagate dockstar dockstar_second_stage dockstar:SECOND_STAGE Luka Perkov <luka@openwrt.org> + Active arm arm926ejs kirkwood Seagate - goflexhome - Suriyan Ramasami <suriyan.r@gmail.com> +--- a/include/configs/ib62x0.h ++++ b/include/configs/ib62x0.h +@@ -91,7 +91,8 @@ + "mtdparts=orion_nand:" \ + "0xe0000@0x0(uboot)," \ + "0x20000@0xe0000(uboot_env)," \ +- "-@0x100000(root)\0" ++ "0x100000@0x100000(second_stage_uboot)," \ ++ "-@0x200000(root)\0" + + #define CONFIG_EXTRA_ENV_SETTINGS \ + "console=console=ttyS0,115200\0" \ +@@ -99,7 +100,7 @@ + "mtdparts="CONFIG_MTDPARTS \ + "kernel=/boot/zImage\0" \ + "fdt=/boot/ib62x0.dtb\0" \ +- "bootargs_root=ubi.mtd=2 root=ubi0:rootfs rootfstype=ubifs rw\0" ++ "bootargs_root=ubi.mtd=3 root=ubi0:rootfs rootfstype=ubifs rw\0" + + /* + * Ethernet driver configuration diff --git a/package/boot/uboot-kirkwood/patches/200-openwrt-config.patch b/package/boot/uboot-kirkwood/patches/200-openwrt-config.patch new file mode 100644 index 0000000000..0c3e6781cc --- /dev/null +++ b/package/boot/uboot-kirkwood/patches/200-openwrt-config.patch @@ -0,0 +1,100 @@ +--- a/include/configs/dockstar.h ++++ b/include/configs/dockstar.h +@@ -114,4 +114,6 @@ + #define CONFIG_CMD_MTDPARTS + #define CONFIG_LZO + ++#include "openwrt-kirkwood-common.h" ++ + #endif /* _CONFIG_DOCKSTAR_H */ +--- a/include/configs/ib62x0.h ++++ b/include/configs/ib62x0.h +@@ -144,4 +144,6 @@ + #define CONFIG_MTD_PARTITIONS + #define CONFIG_CMD_MTDPARTS + ++#include "openwrt-kirkwood-common.h" ++ + #endif /* _CONFIG_IB62x0_H */ +--- a/include/configs/iconnect.h ++++ b/include/configs/iconnect.h +@@ -117,4 +117,6 @@ + #define CONFIG_MTD_PARTITIONS + #define CONFIG_CMD_MTDPARTS + ++#include "openwrt-kirkwood-common.h" ++ + #endif /* _CONFIG_ICONNECT_H */ +--- /dev/null ++++ b/include/configs/openwrt-kirkwood-common.h +@@ -0,0 +1,52 @@ ++/* ++ * Copyright (C) 2013 Luka Perkov <luka@openwrt.org> ++ * ++ * SPDX-License-Identifier: GPL-2.0+ ++ */ ++ ++#ifndef __OPENWRT_KIRKWOOD_COMMON_H ++#define __OPENWRT_KIRKWOOD_COMMON_H ++ ++/* Commands */ ++#define CONFIG_CMD_BOOTZ ++ ++#if defined(CONFIG_CMD_NET) ++#define CONFIG_CMD_DHCP ++#define CONFIG_CMD_PING ++#endif ++ ++/* Auto boot */ ++#undef CONFIG_BOOTDELAY ++#define CONFIG_BOOTDELAY 3 ++ ++/* Ethernet */ ++#if defined(CONFIG_CMD_NET) ++#define CONFIG_SERVERIP 192.168.1.2 ++#define CONFIG_IPADDR 192.168.1.1 ++#endif ++ ++/* second stage loader */ ++#if defined(CONFIG_SECOND_STAGE) ++#undef CONFIG_ENV_IS_IN_NAND ++#undef CONFIG_ENV_SECT_SIZE ++#define CONFIG_ENV_IS_NOWHERE ++#endif ++ ++/* Flattened Device Tree */ ++#define CONFIG_OF_LIBFDT ++ ++/* Flattened uImage Tree */ ++#define CONFIG_FIT ++#define CONFIG_FIT_VERBOSE ++ ++/* Various */ ++#define CONFIG_BZIP2 ++#define CONFIG_LZMA ++#define CONFIG_LZO ++ ++/* Unnecessary */ ++#undef CONFIG_BOOTM_NETBSD ++#undef CONFIG_BOOTM_PLAN9 ++#undef CONFIG_BOOTM_RTEMS ++ ++#endif /* __OPENWRT_KIRKWOOD_COMMON_H */ +--- a/include/configs/pogo_e02.h ++++ b/include/configs/pogo_e02.h +@@ -102,4 +102,6 @@ + #define CONFIG_CMD_MTDPARTS + #define CONFIG_LZO + ++#include "openwrt-kirkwood-common.h" ++ + #endif /* _CONFIG_POGO_E02_H */ +--- a/include/configs/sheevaplug.h ++++ b/include/configs/sheevaplug.h +@@ -95,4 +95,6 @@ + #define CONFIG_CMD_MTDPARTS + #define CONFIG_LZO + ++#include "openwrt-kirkwood-common.h" ++ + #endif /* _CONFIG_SHEEVAPLUG_H */ |