aboutsummaryrefslogtreecommitdiffstats
path: root/package/boot/uboot-oxnas
diff options
context:
space:
mode:
Diffstat (limited to 'package/boot/uboot-oxnas')
-rw-r--r--package/boot/uboot-oxnas/Makefile4
-rw-r--r--package/boot/uboot-oxnas/files/board/ox820/Kconfig15
-rw-r--r--package/boot/uboot-oxnas/files/board/ox820/MAINTAINERS6
-rw-r--r--package/boot/uboot-oxnas/files/board/ox820/ox820.c1
-rw-r--r--package/boot/uboot-oxnas/files/configs/ox820_defconfig3
-rw-r--r--package/boot/uboot-oxnas/files/include/configs/ox820.h5
-rw-r--r--package/boot/uboot-oxnas/patches/010-capacity-is-unsigned.patch42
-rw-r--r--package/boot/uboot-oxnas/patches/150-spl-block.patch6
-rw-r--r--package/boot/uboot-oxnas/patches/300-oxnas-target.patch112
-rw-r--r--package/boot/uboot-oxnas/patches/800-fix-bootm-assertion.patch4
10 files changed, 133 insertions, 65 deletions
diff --git a/package/boot/uboot-oxnas/Makefile b/package/boot/uboot-oxnas/Makefile
index aee7808c51..e2339432fe 100644
--- a/package/boot/uboot-oxnas/Makefile
+++ b/package/boot/uboot-oxnas/Makefile
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=u-boot
-PKG_VERSION:=2014.04
+PKG_VERSION:=2014.10
PKG_RELEASE:=1
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
@@ -18,7 +18,7 @@ PKG_SOURCE_URL:= \
http://mirror2.openwrt.org/sources \
ftp://ftp.denx.de/pub/u-boot
-PKG_MD5SUM:=6d2116d1385a66e9a59742caa9d62a54
+PKG_MD5SUM:=3ddcaee2f05b7c464778112ec83664b5
PKG_LICENSE:=GPL-2.0 GPL-2.0+
PKG_LICENSE_FILES:=Licenses/README
diff --git a/package/boot/uboot-oxnas/files/board/ox820/Kconfig b/package/boot/uboot-oxnas/files/board/ox820/Kconfig
new file mode 100644
index 0000000000..8f631aa67b
--- /dev/null
+++ b/package/boot/uboot-oxnas/files/board/ox820/Kconfig
@@ -0,0 +1,15 @@
+if TARGET_OX820
+
+config SYS_CPU
+ default "arm1136"
+
+config SYS_SOC
+ default "nas782x"
+
+config SYS_BOARD
+ default "ox820"
+
+config SYS_CONFIG_NAME
+ default "ox820"
+
+endif
diff --git a/package/boot/uboot-oxnas/files/board/ox820/MAINTAINERS b/package/boot/uboot-oxnas/files/board/ox820/MAINTAINERS
new file mode 100644
index 0000000000..a86ba2695a
--- /dev/null
+++ b/package/boot/uboot-oxnas/files/board/ox820/MAINTAINERS
@@ -0,0 +1,6 @@
+SHEEVAPLUG BOARD
+M: Daniel Golle <daniel@makrotopia.org>
+S: Maintained
+F: board/ox820/
+F: include/configs/ox820.h
+F: configs/ox820_defconfig
diff --git a/package/boot/uboot-oxnas/files/board/ox820/ox820.c b/package/boot/uboot-oxnas/files/board/ox820/ox820.c
index 32c91f4759..f93cc9ca58 100644
--- a/package/boot/uboot-oxnas/files/board/ox820/ox820.c
+++ b/package/boot/uboot-oxnas/files/board/ox820/ox820.c
@@ -279,6 +279,7 @@ int board_nand_init(struct nand_chip *chip)
int board_init(void)
{
gd->bd->bi_boot_params = CONFIG_SYS_SDRAM_BASE + 0x100;
+ gd->bd->bi_arch_number = MACH_TYPE_OXNAS;
/* assume uart is already initialized by SPL */
diff --git a/package/boot/uboot-oxnas/files/configs/ox820_defconfig b/package/boot/uboot-oxnas/files/configs/ox820_defconfig
new file mode 100644
index 0000000000..48a16d0c25
--- /dev/null
+++ b/package/boot/uboot-oxnas/files/configs/ox820_defconfig
@@ -0,0 +1,3 @@
+CONFIG_ARM=y
+CONFIG_OX820=y
+CONFIG_TARGET_OX820=y
diff --git a/package/boot/uboot-oxnas/files/include/configs/ox820.h b/package/boot/uboot-oxnas/files/include/configs/ox820.h
index 7ade1dc46f..e3c71e61e4 100644
--- a/package/boot/uboot-oxnas/files/include/configs/ox820.h
+++ b/package/boot/uboot-oxnas/files/include/configs/ox820.h
@@ -4,6 +4,8 @@
/* High Level Configuration Options */
#define CONFIG_ARM1136
#define CONFIG_OX820
+#define CONFIG_SYS_GENERIC_BOARD
+#define CONFIG_BOARD_EARLY_INIT_F
#include <asm/arch/cpu.h> /* get chip and board defs */
@@ -50,7 +52,7 @@
#define CONFIG_SYS_ATA_REG_OFFSET 0
#define CONFIG_SYS_ATA_ALT_OFFSET 0
#define CONFIG_IDE_PLX
-#define CONFIG_SYS_IDE_MAXDEVICE 1
+#define CONFIG_SYS_IDE_MAXDEVICE 2
#define CONFIG_SYS_IDE_MAXBUS 1
#define CONFIG_IDE_PREINIT
#define CONFIG_LBA48
@@ -340,7 +342,6 @@
#define CONFIG_CMD_ZIP
#define CONFIG_CMD_UNZIP
#define CONFIG_CMD_TIME
-#define CONFIG_CMD_TERMINAL
#define CONFIG_CMD_SETEXPR
#define CONFIG_CMD_MD5SUM
#define CONFIG_CMD_HASH
diff --git a/package/boot/uboot-oxnas/patches/010-capacity-is-unsigned.patch b/package/boot/uboot-oxnas/patches/010-capacity-is-unsigned.patch
new file mode 100644
index 0000000000..3990aa95a7
--- /dev/null
+++ b/package/boot/uboot-oxnas/patches/010-capacity-is-unsigned.patch
@@ -0,0 +1,42 @@
+From df9fb90120423c4c55b66a5dc09af23f605a406b Mon Sep 17 00:00:00 2001
+From: Daniel Golle <daniel@makrotopia.org>
+Date: Mon, 1 Dec 2014 21:37:25 +0100
+Subject: [PATCH] disk/part.c: use unsigned format when printing capacity
+To: u-boot@lists.denx.de
+
+Large disks otherwise produce highly unplausible output such as
+ Capacity: 1907729.0 MB = 1863.0 GB (-387938128 x 512)
+
+As supposedly all size-related decimals are unsigned, use unsigned
+format in printf statement, resulting in a correct capacity being
+displayed:
+ Capacity: 1907729.0 MB = 1863.0 GB (3907029168 x 512)
+
+Signed-off-by: Daniel Golle <daniel@makrotopia.org>
+---
+ disk/part.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/disk/part.c b/disk/part.c
+index 43485c9..7c67ea6 100644
+--- a/disk/part.c
++++ b/disk/part.c
+@@ -229,13 +229,13 @@ void dev_print (block_dev_desc_t *dev_desc)
+ printf (" Supports 48-bit addressing\n");
+ #endif
+ #if defined(CONFIG_SYS_64BIT_LBA)
+- printf (" Capacity: %ld.%ld MB = %ld.%ld GB (%Ld x %ld)\n",
++ printf (" Capacity: %lu.%lu MB = %lu.%lu GB (%Lu x %lu)\n",
+ mb_quot, mb_rem,
+ gb_quot, gb_rem,
+ lba,
+ dev_desc->blksz);
+ #else
+- printf (" Capacity: %ld.%ld MB = %ld.%ld GB (%ld x %ld)\n",
++ printf (" Capacity: %lu.%lu MB = %lu.%lu GB (%lu x %lu)\n",
+ mb_quot, mb_rem,
+ gb_quot, gb_rem,
+ (ulong)lba,
+--
+2.1.3
+
diff --git a/package/boot/uboot-oxnas/patches/150-spl-block.patch b/package/boot/uboot-oxnas/patches/150-spl-block.patch
index a258f3fe0c..5d76084859 100644
--- a/package/boot/uboot-oxnas/patches/150-spl-block.patch
+++ b/package/boot/uboot-oxnas/patches/150-spl-block.patch
@@ -25,7 +25,7 @@
#ifdef CONFIG_SPL_ETH_DEVICE
--- a/common/cmd_nvedit.c
+++ b/common/cmd_nvedit.c
-@@ -47,6 +47,7 @@ DECLARE_GLOBAL_DATA_PTR;
+@@ -49,6 +49,7 @@ DECLARE_GLOBAL_DATA_PTR;
!defined(CONFIG_ENV_IS_IN_SPI_FLASH) && \
!defined(CONFIG_ENV_IS_IN_REMOTE) && \
!defined(CONFIG_ENV_IS_IN_UBI) && \
@@ -35,7 +35,7 @@
SPI_FLASH|NVRAM|MMC|FAT|REMOTE|UBI} or CONFIG_ENV_IS_NOWHERE
--- a/common/Makefile
+++ b/common/Makefile
-@@ -45,6 +45,7 @@ obj-$(CONFIG_ENV_IS_IN_ONENAND) += env_o
+@@ -63,6 +63,7 @@ obj-$(CONFIG_ENV_IS_IN_ONENAND) += env_o
obj-$(CONFIG_ENV_IS_IN_SPI_FLASH) += env_sf.o
obj-$(CONFIG_ENV_IS_IN_REMOTE) += env_remote.o
obj-$(CONFIG_ENV_IS_IN_UBI) += env_ubi.o
@@ -43,7 +43,7 @@
obj-$(CONFIG_ENV_IS_NOWHERE) += env_nowhere.o
# command
-@@ -191,6 +192,8 @@ obj-$(CONFIG_UPDATE_TFTP) += update.o
+@@ -213,6 +214,8 @@ obj-$(CONFIG_UPDATE_TFTP) += update.o
obj-$(CONFIG_USB_KEYBOARD) += usb_kbd.o
obj-$(CONFIG_CMD_DFU) += cmd_dfu.o
obj-$(CONFIG_CMD_GPT) += cmd_gpt.o
diff --git a/package/boot/uboot-oxnas/patches/300-oxnas-target.patch b/package/boot/uboot-oxnas/patches/300-oxnas-target.patch
index cfe918d5e6..44e5842045 100644
--- a/package/boot/uboot-oxnas/patches/300-oxnas-target.patch
+++ b/package/boot/uboot-oxnas/patches/300-oxnas-target.patch
@@ -8,20 +8,6 @@
#define MACH_TYPE_MICRO9M 1169
#define MACH_TYPE_BUG 1179
#define MACH_TYPE_AT91SAM9263EK 1202
---- a/boards.cfg
-+++ b/boards.cfg
-@@ -57,6 +57,11 @@ Active arm arm1136 mx35
- Active arm arm1136 mx35 - woodburn woodburn_sd woodburn_sd:IMX_CONFIG=board/woodburn/imximage.cfg -
- Active arm arm1136 mx35 CarMediaLab - flea3 - Stefano Babic <sbabic@denx.de>
- Active arm arm1136 mx35 freescale - mx35pdk - Stefano Babic <sbabic@denx.de>
-+Active arm arm1136 nas782x - - ox820 - -
-+Active arm arm1136 nas782x - nas782x ox820_sata ox820:BOOT_FROM_SATA -
-+Active arm arm1136 nas782x - nas782x ox820_fat ox820:BOOT_FROM_SATA,BOOT_FROM_FAT
-+Active arm arm1136 nas782x - nas782x ox820_ext4 ox820:BOOT_FROM_SATA,BOOT_FROM_EXT4 -
-+Active arm arm1136 nas782x - nas782x ox820_nand ox820:BOOT_FROM_NAND -
- Active arm arm1176 bcm2835 raspberrypi rpi_b rpi_b - Stephen Warren <swarren@wwwdotorg.org>
- Active arm arm1176 tnetv107x ti tnetv107xevm tnetv107x_evm - Chan-Taek Park <c-park@ti.com>
- Active arm arm720t - armltd integrator integratorap_cm720t integratorap:CM720T Linus Walleij <linus.walleij@linaro.org>
--- a/drivers/block/Makefile
+++ b/drivers/block/Makefile
@@ -21,3 +21,4 @@ obj-$(CONFIG_IDE_SIL680) += sil680.o
@@ -29,71 +15,87 @@
obj-$(CONFIG_SCSI_SYM53C8XX) += sym53c8xx.o
obj-$(CONFIG_SYSTEMACE) += systemace.o
+obj-$(CONFIG_IDE_PLX) += plxsata_ide.o
---- a/drivers/serial/serial_ns16550.c
-+++ b/drivers/serial/serial_ns16550.c
-@@ -135,6 +135,14 @@ static int calc_divisor (NS16550_t port)
- }
- #endif
-
-+#ifdef CONFIG_OX820
-+ {
-+ /* with additional 3 bit fractional */
-+ u32 div = (CONFIG_SYS_NS16550_CLK + gd->baudrate) / (gd->baudrate * 2);
-+ port->reg9 = (div & 7) << 5;
-+ return (div >> 3);
-+ }
-+#endif
- #define MODE_X_DIV 16
- /* Compute divisor value. Normally, we should simply return:
- * CONFIG_SYS_NS16550_CLK) / MODE_X_DIV / gd->baudrate
--- a/drivers/usb/host/Makefile
+++ b/drivers/usb/host/Makefile
-@@ -32,6 +32,7 @@ obj-$(CONFIG_USB_EHCI_MX6) += ehci-mx6.o
+@@ -33,6 +33,7 @@ obj-$(CONFIG_USB_EHCI_MX6) += ehci-mx6.o
obj-$(CONFIG_USB_EHCI_OMAP) += ehci-omap.o
obj-$(CONFIG_USB_EHCI_PPC4XX) += ehci-ppc4xx.o
obj-$(CONFIG_USB_EHCI_MARVELL) += ehci-marvell.o
+obj-$(CONFIG_USB_EHCI_OXNAS) += ehci-oxnas.o
obj-$(CONFIG_USB_EHCI_PCI) += ehci-pci.o
obj-$(CONFIG_USB_EHCI_SPEAR) += ehci-spear.o
- obj-$(CONFIG_USB_EHCI_TEGRA) += ehci-tegra.o
---- a/spl/Makefile
-+++ b/spl/Makefile
-@@ -207,8 +207,13 @@ cmd_objcopy = $(OBJCOPY) $(OBJCOPYFLAGS)
-
- OBJCOPYFLAGS_$(SPL_BIN).bin = $(SPL_OBJCFLAGS) -O binary
-
-+ifdef CONFIG_OX820
- $(obj)/$(SPL_BIN).bin: $(obj)/$(SPL_BIN) FORCE
- $(call if_changed,objcopy)
-+ $(OBJTREE)/tools/mkox820crc $@
-+else
-+ $(call if_changed,objcopy)
-+endef
-
- LDFLAGS_$(SPL_BIN) += -T u-boot-spl.lds $(LDFLAGS_FINAL)
- ifneq ($(CONFIG_SPL_TEXT_BASE),)
+ obj-$(CONFIG_USB_EHCI_SUNXI) += ehci-sunxi.o
--- a/tools/.gitignore
+++ b/tools/.gitignore
-@@ -7,6 +7,7 @@
+@@ -9,6 +9,7 @@
/mkenvimage
/mkimage
/mkexynosspl
+/mkox820crc
/mpc86x_clk
/mxsboot
- /ncb
+ /mksunxiboot
--- a/tools/Makefile
+++ b/tools/Makefile
-@@ -131,6 +131,12 @@ hostprogs-$(CONFIG_KIRKWOOD) += kwboot$(
- hostprogs-y += proftool$(SFX)
- hostprogs-$(CONFIG_STATIC_RELA) += relocate-rela$(SFX)
+@@ -143,6 +143,12 @@ hostprogs-$(CONFIG_KIRKWOOD) += kwboot
+ hostprogs-y += proftool
+ hostprogs-$(CONFIG_STATIC_RELA) += relocate-rela
+
+hostprogs-$(CONFIG_OX820) += mkox820crc$(SFX)
+
-+mkox820crc$(SFX)-objs := mkox820crc.o crc32.o
++mkox820crc$(SFX)-objs := mkox820crc.o lib/crc32.o
+
+
# We build some files with extra pedantic flags to try to minimize things
# that won't build on some weird host compiler -- though there are lots of
# exceptions for files that aren't complaint.
+--- a/drivers/serial/ns16550.c
++++ b/drivers/serial/ns16550.c
+@@ -118,6 +118,14 @@ int ns16550_calc_divisor(NS16550_t port,
+ }
+ port->osc_12m_sel = 0; /* clear if previsouly set */
+ #endif
++#ifdef CONFIG_OX820
++ {
++ /* with additional 3 bit fractional */
++ u32 div = (CONFIG_SYS_NS16550_CLK + baudrate) / (baudrate * 2);
++ port->reg9 = (div & 7) << 5;
++ return (div >> 3);
++ }
++#endif
+
+ return DIV_ROUND_CLOSEST(clock, mode_x_div * baudrate);
+ }
+--- a/scripts/Makefile.spl
++++ b/scripts/Makefile.spl
+@@ -202,6 +202,9 @@ OBJCOPYFLAGS_$(SPL_BIN).bin = $(SPL_OBJC
+
+ $(obj)/$(SPL_BIN).bin: $(obj)/$(SPL_BIN) FORCE
+ $(call if_changed,objcopy)
++ifdef CONFIG_OX820
++ $(OBJTREE)/tools/mkox820crc $@
++endef
+
+ LDFLAGS_$(SPL_BIN) += -T u-boot-spl.lds $(LDFLAGS_FINAL)
+ ifneq ($(CONFIG_SPL_TEXT_BASE),)
+--- a/arch/arm/Kconfig
++++ b/arch/arm/Kconfig
+@@ -488,6 +488,9 @@ config TARGET_BALLOON3
+ config TARGET_H2200
+ bool "Support h2200"
+
++config TARGET_OX820
++ bool "Support ox820"
++
+ config TARGET_PALMLD
+ bool "Support palmld"
+
+@@ -650,6 +653,7 @@ source "board/logicpd/imx27lite/Kconfig"
+ source "board/logicpd/imx31_litekit/Kconfig"
+ source "board/mpl/vcma9/Kconfig"
+ source "board/olimex/mx23_olinuxino/Kconfig"
++source "board/ox820/Kconfig"
+ source "board/palmld/Kconfig"
+ source "board/palmtc/Kconfig"
+ source "board/palmtreo680/Kconfig"
diff --git a/package/boot/uboot-oxnas/patches/800-fix-bootm-assertion.patch b/package/boot/uboot-oxnas/patches/800-fix-bootm-assertion.patch
index 3abeb3215c..957c492917 100644
--- a/package/boot/uboot-oxnas/patches/800-fix-bootm-assertion.patch
+++ b/package/boot/uboot-oxnas/patches/800-fix-bootm-assertion.patch
@@ -1,8 +1,6 @@
-diff --git a/common/cmd_bootm.c b/common/cmd_bootm.c
-index 166b901..9af3fd3 100644
--- a/common/cmd_bootm.c
+++ b/common/cmd_bootm.c
-@@ -745,7 +745,7 @@ static int do_bootm_subcommand(cmd_tbl_t *cmdtp, int flag, int argc,
+@@ -77,7 +77,7 @@ static int do_bootm_subcommand(cmd_tbl_t
return CMD_RET_USAGE;
}