diff options
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; } |