From patchwork Fri Aug 11 20:55:36 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Pawe=C5=82_Jarosz?= X-Patchwork-Id: 800747 X-Patchwork-Delegate: philipp.tomsich@theobroma-systems.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="OHp3QSJl"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 3xTcnf3HHrz9sRq for ; Sat, 12 Aug 2017 06:59:34 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id 3A587C21E18; Fri, 11 Aug 2017 20:58:49 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=FREEMAIL_FROM, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 37EDFC21E1E; Fri, 11 Aug 2017 20:56:54 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 1670BC21DF4; Fri, 11 Aug 2017 20:55:33 +0000 (UTC) Received: from mail-lf0-f65.google.com (mail-lf0-f65.google.com [209.85.215.65]) by lists.denx.de (Postfix) with ESMTPS id 77BD9C21E16 for ; Fri, 11 Aug 2017 20:55:23 +0000 (UTC) Received: by mail-lf0-f65.google.com with SMTP id y15so2982928lfd.5 for ; Fri, 11 Aug 2017 13:55:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:content-transfer-encoding:in-reply-to :user-agent; bh=0vffSZriZ0O1Mx+ssqvpeEWDkEKjb+wAXg8Iu7ChPHo=; b=OHp3QSJl0awuSkAvrdNptzBsghumFFcDRXc/k8b25nkPguZteaUYt8XaMJzrBpgix2 YlT+VqG9NkzksgOQU3Wn16RcEDVpuRFOIjUWFq3s9xtwAPGOU/OuS6nbI30GE4aqEpnd zr6Dtfz6yD50sq+NcyW3v2gx0kPWAyfQXENJ8h3iWxzayNEJ9IIjn82G/e7oRkqolMYQ WNz63G8VS4WuL+U4NMVWGVGQL1ieIWcX+U+JyqytMqEbcnjuOZegWRFQq4HzDOmujtQt h2UhSPUqfHrOPv8cK7XzAJqBxbimRFc6wtGBF5nHl+lJWZLn/JBJs9p4tQlKFEiKfm1p tEFg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to:user-agent; bh=0vffSZriZ0O1Mx+ssqvpeEWDkEKjb+wAXg8Iu7ChPHo=; b=Uhavpyo1XWhWITuOpAbBgY2EhIpZwZxkoN11aTxvP+zhylep8eGdVUm3LZzUdFFr6W xp4yUW2qIT8G3wJP9DFtqwbXfqoeNG2EpOpDq0akymL6i1aJctTvZ/BnErZzftJEc8/K eAXN7/ezSXHDS0ObITILFtjOL0x7EcJO+bzKAwsMwqnlwtUjUfVUSyjSYYDpGTD/JHzJ kkWo4n9LdEhTRfDdALhwFB1PtHOE3Jfnr1nYVDrwupqVYuAOd61cUI9kDR7mBPsZaICw mrM13vXQ64rjlS/3yhj0yFV0z4cehbNfgsiKkHQuyADj4/qgZ94K8PMPIlPV+7lVSrZ7 gZaw== X-Gm-Message-State: AHYfb5gfQHhIt8pxNfl/t+Qk/2sEu9Xt3ZlPgpEX3fb5XIWiMKTr7R/e wy8AHPd7sPOivw== X-Received: by 10.46.75.17 with SMTP id y17mr5157079lja.47.1502484922890; Fri, 11 Aug 2017 13:55:22 -0700 (PDT) Received: from vaio-ubuntu (admf2.neoplus.adsl.tpnet.pl. [79.185.35.2]) by smtp.gmail.com with ESMTPSA id h70sm291913lfh.66.2017.08.11.13.55.21 (version=TLS1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Fri, 11 Aug 2017 13:55:22 -0700 (PDT) Date: Fri, 11 Aug 2017 22:55:36 +0200 From: =?utf-8?B?UGF3ZcWC?= Jarosz To: u-boot@lists.denx.de Message-ID: <00305825d429e697fc793f9a438a6c3235b24d7c.1502483336.git.paweljarosz3691@gmail.com> References: MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.24 (2015-08-30) Subject: [U-Boot] [PATCH v2 07/19] rockchip: rk3066: add mk808 board files X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" mk808 is a tv stick with two usb ports, micro sd card slot, hdmi and nand onboard. Signed-off-by: Paweł Jarosz Acked-by: Simon Glass Acked-by: Philipp Tomsich Reviewed-by: Philipp Tomsich --- Changes since v1: - added nand support - dropped spl of-platdata arch/arm/dts/Makefile | 1 + arch/arm/dts/rk3066a-mk808.dts | 189 ++++++++++++++++++++++++++++ board/rikomagic/mk808_rk3066/Kconfig | 15 +++ board/rikomagic/mk808_rk3066/MAINTAINERS | 6 + board/rikomagic/mk808_rk3066/Makefile | 7 ++ board/rikomagic/mk808_rk3066/mk808_rk3066.c | 10 ++ configs/mk808_defconfig | 114 +++++++++++++++++ include/configs/mk808_rk3066.h | 61 +++++++++ 8 files changed, 403 insertions(+) create mode 100644 arch/arm/dts/rk3066a-mk808.dts create mode 100644 board/rikomagic/mk808_rk3066/Kconfig create mode 100644 board/rikomagic/mk808_rk3066/MAINTAINERS create mode 100644 board/rikomagic/mk808_rk3066/Makefile create mode 100644 board/rikomagic/mk808_rk3066/mk808_rk3066.c create mode 100644 configs/mk808_defconfig create mode 100644 include/configs/mk808_rk3066.h diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile index 1858e06..43a750b 100644 --- a/arch/arm/dts/Makefile +++ b/arch/arm/dts/Makefile @@ -29,6 +29,7 @@ dtb-$(CONFIG_EXYNOS5) += exynos5250-arndale.dtb \ dtb-$(CONFIG_EXYNOS7420) += exynos7420-espresso7420.dtb dtb-$(CONFIG_ARCH_ROCKCHIP) += \ rk3036-sdk.dtb \ + rk3066a-mk808.dtb \ rk3188-radxarock.dtb \ rk3288-evb.dtb \ rk3288-fennec.dtb \ diff --git a/arch/arm/dts/rk3066a-mk808.dts b/arch/arm/dts/rk3066a-mk808.dts new file mode 100644 index 0000000..0a452d7 --- /dev/null +++ b/arch/arm/dts/rk3066a-mk808.dts @@ -0,0 +1,189 @@ +/* + * Copyright (c) 2017 Paweł Jarosz + * + * SPDX-License-Identifier: GPL-2.0+ or X11 + */ + +/dts-v1/; +#include "rk3066a.dtsi" + +/ { + model = "Rikomagic MK808"; + compatible = "rikomagic,mk808", "rockchip,rk3066a"; + + chosen { + stdout-path = "serial2:115200n8"; + }; + + memory@60000000 { + reg = <0x60000000 0x40000000>; + device_type = "memory"; + }; + + gpio-leds { + compatible = "gpio-leds"; + + blue { + label = "mk808:blue:power"; + gpios = <&gpio0 3 GPIO_ACTIVE_HIGH>; + default-state = "off"; + linux,default-trigger = "default-on"; + }; + }; + + vcc_io: vcc-io { + compatible = "regulator-fixed"; + regulator-name = "vcc_io"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + }; + + vcc_host: usb-host-regulator { + compatible = "regulator-fixed"; + enable-active-high; + gpio = <&gpio0 6 GPIO_ACTIVE_HIGH>; + pinctrl-0 = <&host_drv>; + pinctrl-names = "default"; + regulator-always-on; + regulator-name = "host-pwr"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + startup-delay-us = <100000>; + vin-supply = <&vcc_io>; + }; + + vcc_otg: usb-otg-regulator { + compatible = "regulator-fixed"; + enable-active-high; + gpio = <&gpio0 5 GPIO_ACTIVE_HIGH>; + pinctrl-0 = <&otg_drv>; + pinctrl-names = "default"; + regulator-always-on; + regulator-name = "vcc_otg"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + startup-delay-us = <100000>; + vin-supply = <&vcc_io>; + }; + + vcc_sd: sdmmc-regulator { + compatible = "regulator-fixed"; + gpio = <&gpio3 7 GPIO_ACTIVE_LOW>; + pinctrl-0 = <&sdmmc_pwr>; + pinctrl-names = "default"; + regulator-name = "vcc_sd"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + startup-delay-us = <100000>; + vin-supply = <&vcc_io>; + }; + + vcc_wifi: sdio-regulator { + compatible = "regulator-fixed"; + enable-active-high; + gpio = <&gpio3 24 GPIO_ACTIVE_HIGH>; + pinctrl-0 = <&wifi_pwr>; + pinctrl-names = "default"; + regulator-name = "vcc_wifi"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + startup-delay-us = <100000>; + vin-supply = <&vcc_io>; + }; +}; + +&dmc { + compatible = "rockchip,rk3066-dmc", "syscon"; + rockchip,pctl-timing = <0x12c 0xc8 0x1f4 0x1e 0x4e 0x4 0x69 0x6 + 0x3 0x0 0x6 0x5 0xc 0x10 0x6 0x4 + 0x4 0x5 0x4 0x200 0x3 0xa 0x40 0x0 + 0x1 0x5 0x5 0x3 0xc 0x1e 0x100 0x0 + 0x4 0x0>; + rockchip,phy-timing = <0x208c6690 0x690878 0x10022a00 + 0x220 0x40 0x0 0x0>; + rockchip,sdram-params = <0x24716310 0 2 300000000 3 9 0>; +}; + +&mmc0 { + bus-width = <4>; + cap-mmc-highspeed; + cap-sd-highspeed; + num-slots = <1>; + vmmc-supply = <&vcc_sd>; + status = "okay"; +}; + +&mmc1 { + bus-width = <4>; + disable-wp; + non-removable; + num-slots = <1>; + pinctrl-0 = <&sd1_clk &sd1_cmd &sd1_bus4>; + pinctrl-names = "default"; + vmmc-supply = <&vcc_wifi>; + status = "okay"; +}; + +&nandc { + u-boot,dm-spl; + status = "okay"; + #address-cells = <1>; + #size-cells = <0>; + + nand@0 { + u-boot,dm-spl; + reg = <0>; + nand-ecc-mode = "hw_syndrome"; + nand-ecc-strength = <40>; + nand-ecc-step-size = <1024>; + rockchip,protect-bootrom-blocks; + }; +}; + +&pinctrl { + usb-host { + host_drv: host-drv { + rockchip,pins = ; + }; + }; + + usb-otg { + otg_drv: otg-drv { + rockchip,pins = ; + }; + }; + + sdmmc { + sdmmc_pwr: sdmmc-pwr { + rockchip,pins = ; + }; + }; + + sdio { + wifi_pwr: wifi-pwr { + rockchip,pins = ; + }; + }; +}; + +&uart2 { + status = "okay"; + u-boot,dm-pre-reloc; +}; + +&usb_host { + status = "okay"; +}; + +&usb_otg { + u-boot,dm-spl; + status = "okay"; +}; + +&usbphy { + status = "okay"; +}; + +&wdt { + status = "okay"; +}; diff --git a/board/rikomagic/mk808_rk3066/Kconfig b/board/rikomagic/mk808_rk3066/Kconfig new file mode 100644 index 0000000..0da0a17 --- /dev/null +++ b/board/rikomagic/mk808_rk3066/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MK808_RK3066 + +config SYS_BOARD + default "mk808_rk3066" + +config SYS_VENDOR + default "rikomagic" + +config SYS_CONFIG_NAME + default "mk808_rk3066" + +config BOARD_SPECIFIC_OPTIONS # dummy + def_bool y + +endif diff --git a/board/rikomagic/mk808_rk3066/MAINTAINERS b/board/rikomagic/mk808_rk3066/MAINTAINERS new file mode 100644 index 0000000..65b5cbd --- /dev/null +++ b/board/rikomagic/mk808_rk3066/MAINTAINERS @@ -0,0 +1,6 @@ +MK808 +M: Paweł Jarosz +S: Maintained +F: include/configs/mk808_rk3066.h +F: configs/mk808-rk3066_defconfig +F: board/rikomagic/mk808_rk3066 diff --git a/board/rikomagic/mk808_rk3066/Makefile b/board/rikomagic/mk808_rk3066/Makefile new file mode 100644 index 0000000..ef5ba56 --- /dev/null +++ b/board/rikomagic/mk808_rk3066/Makefile @@ -0,0 +1,7 @@ +# +# Copyright (c) 2017 Paweł‚ Jarosz +# +# SPDX-License-Identifier: GPL-2.0+ +# + +obj-y += mk808_rk3066.o diff --git a/board/rikomagic/mk808_rk3066/mk808_rk3066.c b/board/rikomagic/mk808_rk3066/mk808_rk3066.c new file mode 100644 index 0000000..e5d66fe --- /dev/null +++ b/board/rikomagic/mk808_rk3066/mk808_rk3066.c @@ -0,0 +1,10 @@ +/* + * (C) Copyright 2017 Paweł Jarosz + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include + +DECLARE_GLOBAL_DATA_PTR; + diff --git a/configs/mk808_defconfig b/configs/mk808_defconfig new file mode 100644 index 0000000..ab67e4f --- /dev/null +++ b/configs/mk808_defconfig @@ -0,0 +1,114 @@ +CONFIG_ARM=y +CONFIG_ARCH_ROCKCHIP=y +CONFIG_ROCKCHIP_RK3066=y +CONFIG_TARGET_MK808_RK3066=y +CONFIG_DEFAULT_DEVICE_TREE="rk3066a-mk808" +CONFIG_CMD_REGULATOR=y +CONFIG_CLK=y +CONFIG_REGMAP=y +CONFIG_SYSCON=y +CONFIG_RAM=y +CONFIG_SYS_MALLOC_F_LEN=0x2000 +CONFIG_USE_PRIVATE_LIBGCC=y +CONFIG_CMD_DHRYSTONE=y +CONFIG_ERRNO_STR=y +CONFIG_SYS_NS16550=y +CONFIG_BOOTDELAY=1 +CONFIG_CONSOLE_MUX=y +CONFIG_DISPLAY_BOARDINFO=y +# CONFIG_DISPLAY_CPUINFO is not set +CONFIG_CMD_BOOTZ=y +CONFIG_DM_REGULATOR_FIXED=y +CONFIG_CMD_EXT4=y +CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_CACHE=y +CONFIG_DM_REGULATOR_GPIO=y +CONFIG_SYSRESET=y +CONFIG_CMD_MMC=y +CONFIG_MMC_DW=y +CONFIG_MMC_DW_ROCKCHIP=y +CONFIG_DM_MMC=y +# CONFIG_CMD_IMLS is not set +# CONFIG_CMD_SETEXPR is not set +CONFIG_EFI_PARTITION is not set +CONFIG_CMD_BOOTEFI is not set +CONFIG_CMD_BOOTEFI_HELLO_COMPILE is not set +CONFIG_EFI_LOADER is not set +CONFIG_CMD_GPIO=y +CONFIG_ROCKCHIP_GPIO=y +CONFIG_PINCTRL=y +CONFIG_PINCTRL_GENERIC=y +CONFIG_PINCTRL_ROCKCHIP_RK3066=y +CONFIG_DEBUG_UART=y +CONFIG_DEBUG_UART_BASE=0x20064000 +CONFIG_DEBUG_UART_CLOCK=24000000 +CONFIG_DEBUG_UART_SHIFT=2 +CONFIG_USB=y +CONFIG_DM_USB=y +CONFIG_USB_STORAGE=y +CONFIG_CMD_USB=y +CONFIG_USB_DWC2=y +CONFIG_USB_GADGET=y +CONFIG_USB_GADGET_DUALSPEED=y +CONFIG_USB_GADGET_DWC2_OTG=y +CONFIG_USB_GADGET_DWC2_OTG_PHY=y +CONFIG_USB_GADGET_VBUS_DRAW=500 +CONFIG_CMD_USB_MASS_STORAGE=y +CONFIG_USB_GADGET_DOWNLOAD=y +CONFIG_G_DNL_MANUFACTURER="Rockchip" +CONFIG_G_DNL_VENDOR_NUM=0x2207 +CONFIG_G_DNL_PRODUCT_NUM=0x300a +CONFIG_BOARD_LATE_INIT=y +CONFIG_MTD_DEVICE=y +CONFIG_NAND_ROCKCHIP=y +CONFIG_CMD_NAND=y +CONFIG_CMD_MTDPARTS=y +CONFIG_MTD_PARTITIONS=y +CONFIG_NAND=y +CONFIG_DFU_NAND=y +CONFIG_USB_FUNCTION_DFU=y +CONFIG_DFU_RAM=y +CONFIG_CMD_DFU=y +CONFIG_SPL_BLK=y +CONFIG_SPL_CLK=y +CONFIG_SPL_DFU_RAM=y +CONFIG_SPL_DFU_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_MTD_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_OF_CONTROL=y +CONFIG_SPL_PINCTRL=y +CONFIG_SPL_RAM=y +CONFIG_SPL_RAM_SUPPORT=y +CONFIG_SPL_REGMAP=y +CONFIG_SPL_STACK_R=y +CONFIG_SPL_STACK_R_ADDR=0x70000000 +CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x200000 +CONFIG_SPL_SYSCON=y +CONFIG_SPL_TINY_MEMSET=y +CONFIG_SPL_USB_GADGET_SUPPORT=y +CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents" +# CONFIG_SPL_USE_ARCH_MEMCPY is not set +# CONFIG_SPL_USE_ARCH_MEMSET is not set +# CONFIG_SPL_SIMPLE_BUS is not set +# CONFIG_SPL_PINCTRL_FULL is not set +# CONFIG_SPL_EFI_PARTITION is not set +# CONFIG_SPL_BOARD_INIT is not set +# CONFIG_SPL_DOS_PARTITION is not set +# CONFIG_SPL_EXT_SUPPORT is not set +# CONFIG_SPL_LIBDISK_SUPPORT is not set +# CONFIG_SPL_MMC_SUPPORT is not set +CONFIG_TPL_BOOTROM_SUPPORT=y +CONFIG_TPL_CLK=y +CONFIG_TPL_DM=y +CONFIG_TPL_DM_SERIAL=y +# CONFIG_TPL_DRIVERS_MISC_SUPPORT is not set +CONFIG_TPL_OF_CONTROL=y +CONFIG_TPL_OF_PLATDATA=y +CONFIG_TPL_RAM=y +CONFIG_TPL_REGMAP=y +CONFIG_TPL_ROCKCHIP_BACK_TO_BROM=y +CONFIG_TPL_SERIAL_SUPPORT=y +CONFIG_TPL_SYSCON=y +CONFIG_TPL_TINY_MEMSET=y diff --git a/include/configs/mk808_rk3066.h b/include/configs/mk808_rk3066.h new file mode 100644 index 0000000..1ad9156 --- /dev/null +++ b/include/configs/mk808_rk3066.h @@ -0,0 +1,61 @@ +/* + * Copyright (c) 2017 Paweł Jarosz + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#ifndef __CONFIG_H +#define __CONFIG_H +/* + * Using bootrom layout for rockchip-idb* and spl*. Size is nand erase size. + */ +#define MTDPARTS_DEFAULT \ + "mtdparts=rockchip-nand.0:" \ + "4M(idb)," \ + "4M(idb.backup)," \ + "4M(spl)," \ + "4M(spl.backup1)," \ + "4M(spl.backup2)," \ + "4M(spl.backup3)," \ + "4M(spl.backup4)," \ + "4M(u-boot)," \ + "4M(u-boot.backup)," \ + "4M(u-boot-env)," \ + "4M(u-boot-env.backup)," \ + "16M(kernel)," \ + "32M(initrd)," \ + "-(rootfs)" + +#define DFU_ALT_INFO_NAND \ + "idb raw 0x0 0x400000;" \ + "idb.backup raw 0x400000 0x400000;" \ + "spl raw 0x800000 0x400000;" \ + "spl.backup1 raw 0xC00000 0x400000;" \ + "spl.backup2 raw 0x1000000 0x400000;" \ + "spl.backup3 raw 0x1400000 0x400000;" \ + "spl.backup4 raw 0x1800000 0x400000;" \ + "u-boot raw 0x1C00000 0x400000;" \ + "u-boot.backup raw 0x2000000 0x400000;" \ + "u-boot-env raw 0x2400000 0x400000;" \ + "u-boot-env.backup raw 0x2800000 0x400000;" \ + "kernel raw 0x2C00000 0x1000000;" \ + "initrd raw 0x3C00000 0x2000000" + +#define DFU_ALT_INFO_RAM \ + "tpl.bin ram 0x10080C00 0x10000;" \ + "spl.bin ram 0x60000000 0x40000;" \ + "u-boot.bin ram 0x60408000 0x80000\0" + +#define ROCKCHIP_DEVICE_SETTINGS \ + "mtdparts=" MTDPARTS_DEFAULT "\0" \ + "dfu_alt_info=" DFU_ALT_INFO_NAND "\0" \ + "dfu_alt_info_ram=" DFU_ALT_INFO_RAM "\0" + +#define CONFIG_SYS_DFU_DATA_BUF_SIZE SZ_4M +#define CONFIG_SYS_NAND_U_BOOT_OFFS 0x01c00000 +#define CONFIG_SYS_NAND_U_BOOT_OFFS_REDUND 0x02000000 + +#include + +#endif +