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.

While at it include parallel build support, use alphabetic order of the boards
and introduce common OpenWrt configuration.

Signed-off-by: Luka Perkov <l...@openwrt.org>
Tested-by (on ib62x0): Luka Perkov <l...@openwrt.org>
CC: Felix Kaechele <hef...@fedoraproject.org>
CC: Wojciech Dubowik <wojciech.dubo...@neratec.com>
CC: Alexander Couzens <lyn...@fe80.eu>
CC: Daniel Engberg <daniel.engb...@pyret.net>
CC: Imre Kaloz <ka...@openwrt.org>
---
ib62x0 commands for running second stage bootloader:

tftpboot 0x800000 
uboot-kirkwood-ib62x0_second_stage/openwrt-kirkwood-ib62x0_second_stage-u-boot.img
bootm 0x800000

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
---
 package/boot/uboot-kirkwood/Makefile               |  55 +++++++--
 ...-ib62x0-use-device-tree-and-update-config.patch |  89 ++++++++++++++
 .../boot/uboot-kirkwood/patches/110-dockstar.patch | 134 ++++++++++++++++++---
 .../boot/uboot-kirkwood/patches/120-iconnect.patch |  57 +++++++++
 .../boot/uboot-kirkwood/patches/130-ib62x0.patch   |  31 +++++
 .../patches/200-openwrt-config.patch               | 100 +++++++++++++++
 6 files changed, 439 insertions(+), 27 deletions(-)
 create mode 100644 
package/boot/uboot-kirkwood/patches/0001-kirkwood-ib62x0-use-device-tree-and-update-config.patch
 create mode 100644 package/boot/uboot-kirkwood/patches/120-iconnect.patch
 create mode 100644 package/boot/uboot-kirkwood/patches/130-ib62x0.patch
 create mode 100644 package/boot/uboot-kirkwood/patches/200-openwrt-config.patch

diff --git a/package/boot/uboot-kirkwood/Makefile 
b/package/boot/uboot-kirkwood/Makefile
index 375d115..328da81 100644
--- a/package/boot/uboot-kirkwood/Makefile
+++ b/package/boot/uboot-kirkwood/Makefile
@@ -1,5 +1,5 @@
 #
-# Copyright (C) 2010-2012 OpenWrt.org
+# Copyright (C) 2010-2013 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
@@ -8,7 +8,7 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=u-boot
-PKG_VERSION:=2012.10
+PKG_VERSION:=2013.10
 PKG_RELEASE:=1
 
 
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
@@ -16,9 +16,11 @@ PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 PKG_SOURCE_URL:= \
        http://mirror2.openwrt.org/sources \
        ftp://ftp.denx.de/pub/u-boot
-PKG_MD5SUM:=8655f63b1e5c4647295ac9ce44660be3
+PKG_MD5SUM:=a076a044b64371edc52f7e562b13f6b2
 PKG_TARGETS:=bin
 
+PKG_BUILD_PARALLEL:=1
+
 include $(INCLUDE_DIR)/package.mk
 
 define uboot/Default
@@ -27,23 +29,44 @@ define uboot/Default
   IMAGE:=
 endef
 
-define uboot/sheevaplug
-  TITLE:=U-Boot for the SheevaPlug
+define uboot/dockstar
+  TITLE:=U-Boot for Seagate DockStar
 endef
 
-define uboot/dockstar
-  TITLE:=U-Boot for the Seagate DockStar
+define uboot/dockstar_second_stage
+  TITLE:=second stage U-Boot for Seagate DockStar
+endef
+
+define uboot/ib62x0
+  TITLE:=U-Boot for RaidSonic ICY BOX NAS6210 and NAS6220
+endef
+
+define uboot/ib62x0_second_stage
+  TITLE:=second stage U-Boot for RaidSonic ICY BOX NAS6210 and NAS6220
 endef
 
 define uboot/iconnect
-  TITLE:=U-Boot for the Iomega iConnect Wireless
+  TITLE:=U-Boot for Iomega iConnect Wireless
 endef
 
-define uboot/ib62x0
-  TITLE:=U-Boot for the RaidSonic ICY BOX NAS6210 and NAS6220
+define uboot/iconnect_second_stage
+  TITLE:=second stage U-Boot for Iomega iConnect Wireless
+endef
+
+define uboot/pogo_e02
+  TITLE:=U-Boot for Cloud Engines Pogoplug E02
+endef
+
+define uboot/sheevaplug
+  TITLE:=U-Boot for SheevaPlug
 endef
 
-UBOOTS:=sheevaplug dockstar iconnect ib62x0
+UBOOTS:= \
+       dockstar dockstar_second_stage \
+       ib62x0 ib62x0_second_stage \
+       iconnect iconnect_second_stage \
+       pogo_e02 \
+       sheevaplug
 
 define Package/uboot/template
 define Package/uboot-kirkwood-$(1)
@@ -69,14 +92,18 @@ UBOOT_IMAGE:=$(if 
$(IMAGE),$(IMAGE),openwrt-$(BOARD)-$(BUILD_VARIANT)-u-boot.bin
 endif
 
 define Build/Configure
-       $(MAKE) -C $(PKG_BUILD_DIR) \
+       +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
                $(UBOOT_CONFIG)_config
 endef
 
 define Build/Compile
-       $(MAKE) -C $(PKG_BUILD_DIR) \
+       +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
                u-boot.kwb \
                CROSS_COMPILE=$(TARGET_CROSS)
+       mkimage -A $(ARCH) -O linux -T kernel -C none \
+               -a 0x600000 -e 0x600000 \
+               -n 'OpenWrt Das U-Boot uImage' \
+               -d $(PKG_BUILD_DIR)/u-boot.bin $(PKG_BUILD_DIR)/u-boot.img
 endef
 
 define Package/uboot/install/default
@@ -85,6 +112,8 @@ define Package/uboot/install/default
                $(BIN_DIR)/uboot-$(BOARD)-$(1)/openwrt-$(BOARD)-$(1)-u-boot.bin
        $(CP) $(PKG_BUILD_DIR)/u-boot.kwb \
                $(BIN_DIR)/uboot-$(BOARD)-$(1)/openwrt-$(BOARD)-$(1)-u-boot.kwb
+       $(CP) $(PKG_BUILD_DIR)/u-boot.img \
+               $(BIN_DIR)/uboot-$(BOARD)-$(1)/openwrt-$(BOARD)-$(1)-u-boot.img
        $(INSTALL_DIR) $(BIN_DIR)/u-boot-kwboot/
        $(CP) $(PKG_BUILD_DIR)/tools/kwboot \
                $(BIN_DIR)/u-boot-kwboot/
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 0000000..de80236
--- /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 <l...@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 <l...@openwrt.org>
+CC: Prafulla Wadaskar <prafu...@marvell.com>
+---
+v1->v2:
+
+ * keep CONFIG_MACH_TYPE define for backwards compatibility
+---
+http://patchwork.ozlabs.org/patch/287388/
+Acked-By: Prafulla Wadaskar <prafu...@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 4ff7e57..b0a7f54 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 <l...@openwrt.org>
+ Active  arm         arm926ejs      kirkwood    Seagate         -              
     dockstar                             -                                     
                                                                                
            Eric Cooper <e...@cmu.edu>
++Active  arm         arm926ejs      kirkwood    Seagate         dockstar       
     dockstar_second_stage                dockstar:SECOND_STAGE                 
                                                                                
            Luka Perkov <l...@openwrt.org>
+ Active  arm         arm926ejs      kirkwood    Seagate         -              
     goflexhome                           -                                     
                                                                                
            Suriyan Ramasami <suriya...@gmail.com>
+ Active  arm         arm926ejs      lpc32xx     timll           devkit3250     
     devkit3250                           -                                     
                                                                                
            Vladimir Zapolskiy <v...@mleia.com>
+ Active  arm         arm926ejs      mb86r0x     syteco          jadecpu        
     jadecpu                              -                                     
                                                                                
            Matthias Weisser <weiss...@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 0000000..36655a9
--- /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.pu...@gmail.com>
+ Active  arm         arm926ejs      kirkwood    d-link          -              
     dns325                               -                                     
                                                                                
            Stefan Herbrechtsmeier <ste...@code.herbrechtsmeier.net>
+ Active  arm         arm926ejs      kirkwood    iomega          -              
     iconnect                             -                                     
                                                                                
            Luka Perkov <l...@openwrt.org>
++Active  arm         arm926ejs      kirkwood    iomega          iconnect       
     iconnect_second_stage                iconnect:SECOND_STAGE                 
                                                                                
            Luka Perkov <l...@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.longch...@keymile.com>
+ Active  arm         arm926ejs      kirkwood    keymile         km_arm         
     km_kirkwood_pci                      km_kirkwood:KM_KIRKWOOD_PCI           
                                                                                
            Valentin Longchamp <valentin.longch...@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 0000000..9a086e0
--- /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 <l...@openwrt.org>
++Active  arm         arm926ejs      kirkwood    raidsonic       ib62x0         
     ib62x0_second_stage                  ib62x0:SECOND_STAGE                   
                                                                                
            Luka Perkov <l...@openwrt.org>
+ Active  arm         arm926ejs      kirkwood    Seagate         -              
     dockstar                             -                                     
                                                                                
            Eric Cooper <e...@cmu.edu>
+ Active  arm         arm926ejs      kirkwood    Seagate         dockstar       
     dockstar_second_stage                dockstar:SECOND_STAGE                 
                                                                                
            Luka Perkov <l...@openwrt.org>
+ Active  arm         arm926ejs      kirkwood    Seagate         -              
     goflexhome                           -                                     
                                                                                
            Suriyan Ramasami <suriya...@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 0000000..0c3e678
--- /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 <l...@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 */
-- 
1.8.5.1
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

Reply via email to