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
This commit is contained in:
Luka Perkov 2014-02-15 23:53:07 +00:00
parent cde033f918
commit 777e7c3ff5
6 changed files with 440 additions and 28 deletions

View file

@ -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
endef
define uboot/dockstar
TITLE:=U-Boot for the Seagate DockStar
TITLE:=U-Boot for Seagate DockStar
endef
define uboot/iconnect
TITLE:=U-Boot for the Iomega iConnect Wireless
define uboot/dockstar_second_stage
TITLE:=second stage U-Boot for Seagate DockStar
endef
define uboot/ib62x0
TITLE:=U-Boot for the RaidSonic ICY BOX NAS6210 and NAS6220
TITLE:=U-Boot for RaidSonic ICY BOX NAS6210 and NAS6220
endef
UBOOTS:=sheevaplug dockstar iconnect ib62x0
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 Iomega iConnect Wireless
endef
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:= \
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/

View file

@ -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

View file

@ -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>

View file

@ -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>

View file

@ -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

View file

@ -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 */