summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-04-08ti_armv7_common: env: Change FIT image name to match build nameAndrew F. Davis
The most common name for a FIT image containing a bootable kernel is "fitImage", as our builds now use this name also, change this to the default in our U-Boot environment. Signed-off-by: Andrew F. Davis <afd@ti.com>
2017-04-08mtd: nand: am335x_spl_bch: Incorporate tWB delay in nand_command functionCooper Jr., Franklin
Various commands to NAND flash results in the NAND flash becoming busy. For those commands the SoC should wait until the NAND indicates it is no longer busy before sending further commands. However, there is a delay between the time the SoC sends its last command and when the NAND flash sets its Ready/Busy Pin. This delay (tWB) must be respected or the SoC may falsely assume the flash is ready when in reality it just hasn't had enough time to indicate that it is busy. Properly delaying by tWB is already done for nand_command/nand_command_lp in nand_base.c including the version of it in the Linux kernel. Therefore, this patch brings the handling of tWB delay inline to nand_base.c Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com> [trini: Reformat comments slightly] Signed-off-by: Tom Rini <trini@konsulko.com>
2017-04-08davinci: omapl138_lcdk: switch to using common mmc argsSekhar Nori
Now that we have common MMC/SD boot environment variables that can be used across TI platforms, switch OMAP-L138 LCDK to use them. As a nice side-effect, we get support for using uEnv.txt on this platform. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Reviewed-by: Lukasz Majewski <lukma@denx.de> Reviewed-by: Tom Rini <trini@konsulko.com>
2017-04-08ARM: ti: consolidate mmc environment variablesSekhar Nori
Introduce include/environment/ti/mmc.h that consolidates environment variable definitions for various TI boards that support MMC/SD. This allows reuse of same environment variables on non-ARMv7 TI platforms like OMAP-L138 for example. While at it, move DFU-related environment variable includes to only non-SPL builds for AM335x and AM437x since they are not really used for SPL today. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Reviewed-by: Lukasz Majewski <lukma@denx.de> Reviewed-by: Tom Rini <trini@konsulko.com>
2017-04-08davinci: omapl138_lcdk: use environment variables for memory addressesSekhar Nori
Use environment variables for various memory addresses used on OMAP-L138 LCDK board. This makes it easy to customize the boot process. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Reviewed-by: Lukasz Majewski <lukma@denx.de> Reviewed-by: Tom Rini <trini@konsulko.com>
2017-04-08davinci: omapl138_lcdk: enable some filesystem related commandsSekhar Nori
Enable some generic filesystem commands as well as disk partition related commands for OMAP-L138 LCDK board. These help in booting Linux from MMC/SD, for example. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Reviewed-by: Lukasz Majewski <lukma@denx.de> Reviewed-by: Tom Rini <trini@konsulko.com>
2017-04-08davinci: omapl138_lcdk: remove spibootSekhar Nori
OMAP-L138 LCDK board does not have a SPI flash. Remove spiboot related environment variable definitions. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Reviewed-by: Lukasz Majewski <lukma@denx.de> Reviewed-by: Tom Rini <trini@konsulko.com>
2017-04-08ti: clocks: Fix do_enable_clocks() to accept NULL pointers as input parametersLukasz Majewski
Up till this commit passing NULL as input parameter was allowed, but not handled properly. When one passed NULL to one of this function parameters, the code was executed causing data abort. However, what is more interesting, the abort was not caught because of code execution in HYP mode with masked CPSR A bit ("Imprecise Data Abort mask bit). The TI's AM57xx SoC switch to HYP mode with A bit masked in lowlevel_init.S due to SMC call. Such operation (by default) is performed in SoC ROM code. The problem would pop up when one: - Switch back to SVC mode after disabling LPAE support - Somebody enables A bit (by executing cpsie a asm instruction) and then the previously described exception would be caught. Signed-off-by: Lukasz Majewski <lukma@denx.de> Reviewed-by: Tom Rini <trini@konsulko.com>
2017-04-08ti: wdt: omap: Disable watchdog timer before performing initializationLukasz Majewski
The OMAP WDT IP block requires to be stopped before any write to its registers is performed. This problem has been thoroughly described in Linux kernel: "watchdog: omap: assert the counter being stopped before reprogramming: SHA1: 530c11d432727c697629ad5f9d00ee8e2864d453 Signed-off-by: Lukasz Majewski <lukma@denx.de> Reviewed-by: Tom Rini <trini@konsulko.com>
2017-04-08ti: wdt: omap5: Define WDT_BASE for omap5+ SoCLukasz Majewski
Signed-off-by: Lukasz Majewski <lukma@denx.de> Reviewed-by: Tom Rini <trini@konsulko.com>
2017-04-08ti: wdt: common: Make the wdt IP defines common for the TI platformLukasz Majewski
Signed-off-by: Lukasz Majewski <lukma@denx.de> Reviewed-by: Tom Rini <trini@konsulko.com>
2017-04-08Merge branch 'master' of git://git.denx.de/u-boot-samsungTom Rini
2017-04-08Merge branch 'master' of git://git.denx.de/u-boot-sunxiTom Rini
2017-04-08common/xyzModem.c: Do not use hard-coded address for debug bufferAlexandru Gagniuc
Under the plethora of #ifdefs, the xyzModem code hid this pearl: static char *zm_out = (char *) 0x00380000; This was only enabled when DEBUG is defined, so it's probably why it went unnoticed for so long. No idea what platform had memory at that exact location, but the this approach is extremely hacky. Use a static buffer instead. Signed-off-by: Alexandru Gagniuc <alex.g@adaptrum.com>
2017-04-08common/xyzModem.c: unifdef (Remove useless #ifdefs)Alexandru Gagniuc
Signed-off-by: Alexandru Gagniuc <alex.g@adaptrum.com>
2017-04-08spl: Kconfig: SPL_MMC_SUPPORT depends on GENERIC_MMCAlexandru Gagniuc
spl_mmc.c calls mmc_initialize(). This symbol is provided in drivers/mmc/mmc.c when CONFIG_GENERIC_MMC is enabled. The sunxi Kconfig case is an oddball because it redefines SPL_MMC_SUPPORT. Signed-off-by: Alexandru Gagniuc <alex.g@adaptrum.com> [trini: Update arch/arm/cpu/armv8/zynqmp/Kconfig] Signed-off-by: Tom Rini <trini@konsulko.com>
2017-04-08arm: rmobile: Remove default value of Kconfig from defconfigNobuhiro Iwamatsu
This removes CONFIG_BOOTSTAGE_USER_COUNT, CONFIG_BOOTSTAGE_STASH_ADDR and CONFIG_BOOTSTAGE_STASH_SIZE from defconfig following boards: - Alt - Gose - Koelsh - Lager - Porter - Silk - Stout - Blanche - Salvator-x Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
2017-04-08common, kconfig: Fix defaut value of BOOTSTAGE_STASH_SIZENobuhiro Iwamatsu
The default value of BOOTSTAGE_STASH_SIZE should be set to hexadecimal, but an integer value is set. This fixes the BOOTSTAGE_STASH_SIZE number from hexadecimal to integer. Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
2017-04-08spl: armv7m: keep ARM v7M in thumb mode while jumping to entry pointVikas Manocha
On ARM v7M, the processor will return to ARM mode when executing blx instruction with bit 0 of the address == 0. Always set it to 1 to stay in thumb mode. Similar commit: f99993c10882f7dc8ec35993d5febe59aac01e6a Author: Matt Porter <mporter@konsulko.com> Date: Tue May 5 15:00:23 2015 -0400 common/cmd_boot: keep ARM v7M in thumb mode during do_go_exec() Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
2017-04-08config: am335x_evm: detect BeagleBone Blue using BLArobertcnelson@gmail.com
BeagleBone Blue is next grenation of boards from BeagleBoard.org, focusing on robotics with a TI wl1835 wireless module for connectivity. This board can be indentified by the BLAx value after A335BNLT (BBB) in the at24 eeprom: BLAx: [aa 55 33 ee 41 33 33 35 42 4e 4c 54 42 4c 41 30 |.U3.A335BNLTBLA2|] http://beagleboard.org/blue https://github.com/beagleboard/beaglebone-blue firmware: https://github.com/beagleboard/beaglebone-black-wireless/tree/master/firmware wl18xx mac address: /proc/device-tree/ocp/ethernet@4a100000/slave@4a100200/mac-address Signed-off-by: Robert Nelson <robertcnelson@gmail.com> CC: Tom Rini <trini@konsulko.com> CC: Jason Kridner <jkridner@beagleboard.org> CC: Will Newton <willn@resin.io> Reviewed-by: Tom Rini <trini@konsulko.com>
2017-04-08config: am335x_evm: detect Green Wireless using GW1robertcnelson@gmail.com
SeeedStudio BeagleBone Green Wireless (BBGW) is an expansion of the SeeedStudio Green (BBG) with the Ethernet replaced by a TI wl1835 wireless module. This board can be indentified by the GW1x value after A335BNLT (BBB) in the at24 eeprom: GW1x [aa 55 33 ee 41 33 33 35 42 4e 4c 54 47 57 31 41 |.U3.A335BNLTGW1A|] http://beagleboard.org/green-wireless http://wiki.seeed.cc/BeagleBone_Green_Wireless/ firmware: https://github.com/beagleboard/beaglebone-black-wireless/tree/master/firmware wl18xx mac address: Stored in at24 eeprom at address 5-16: hexdump -e '8/1 "%c"' /sys/bus/i2c/devices/0-0050/eeprom | cut -b 5-16 Signed-off-by: Robert Nelson <robertcnelson@gmail.com> CC: Tom Rini <trini@konsulko.com> CC: Jason Kridner <jkridner@beagleboard.org> CC: Will Newton <willn@resin.io> Reviewed-by: Tom Rini <trini@konsulko.com>
2017-04-08config: am335x_evm: detect Black Wireless using BWArobertcnelson@gmail.com
BeagleBone Black Wireless is clone of the BeagleBone Black (BBB) with the Ethernet replaced by a TI wl1835 wireless module. This board can be indentified by the BWAx value after A335BNLT (BBB) in the at24 eeprom: BWAx [aa 55 33 ee 41 33 33 35 42 4e 4c 54 42 57 41 35 |.U3.A335BNLTBWA5|] http://beagleboard.org/black-wireless https://github.com/beagleboard/beaglebone-black-wireless firmware: https://github.com/beagleboard/beaglebone-black-wireless/tree/master/firmware wl18xx mac address: /proc/device-tree/ocp/ethernet@4a100000/slave@4a100200/mac-address Signed-off-by: Robert Nelson <robertcnelson@gmail.com> CC: Tom Rini <trini@konsulko.com> CC: Jason Kridner <jkridner@beagleboard.org> CC: Will Newton <willn@resin.io> Reviewed-by: Tom Rini <trini@konsulko.com>
2017-04-08stm32f7: enable instruction & data cacheVikas Manocha
It also enables commands for cache enable/disable/status. Signed-off-by: Vikas Manocha <vikas.manocha@st.com> cc: Christophe KERELLO <christophe.kerello@st.com>
2017-04-08armv7m: add instruction & data cache supportVikas Manocha
This patch adds armv7m instruction & data cache support. Signed-off-by: Vikas Manocha <vikas.manocha@st.com> cc: Christophe KERELLO <christophe.kerello@st.com>
2017-04-08Remove extra fdt_fixup_ethernet() callJoakim Tjernlund
ft_cpu_setup() already calls fdt_fixup_ethernet(), calling it in image_setup_libfdt() is both redundant and breaks any modifications done by ft_board_setup(). Restore the old behavior by removing the call in image_setup_libfdt() Fixes: 13d06981a982 ("image: Add device tree setup to image library") Signed-off-by: Joakim Tjernlund <joakim.tjernlund@infinera.com>
2017-04-08board: STiH410-B2260: enable cachesPatrice Chotard
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
2017-04-08ti_armv7_common: env: Use args_mmc in FIT loading pathAndrew F. Davis
The env command 'args_fit' does not define a root path, this forces us to embed the rootfs into the FIT image. FIT images do not need to contain a rootfs, when they do not the kernel will fall-back to the kernel argument 'root', if this is not defined the kernel will not boot. It is safe to add this as when we do have the rootfs in FIT this argument is ignored. As 'loadfit' is only called from the MMC boot path, use 'args_mmc' to correctly populate 'bootargs'. Signed-off-by: Andrew F. Davis <afd@ti.com> Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>
2017-04-08Apparent conflict between CONFIG_BLK and CONFIG_APIfuz@fuz.su
Good evening, I am trying to port FreeBSD to the ASUS Tinker Board, a computer based on the Rockchip 3288 SoC. FreeBSD's boot loader (named loader(8)) needs CONFIG_API to be enabled, but trying to build an U-Boot from trunk with both CONFIG_API and CONFIG_BLK (as required for Rockchip SoC's?) leads to the following build failure: $ CROSS_COMPILE=arm-none-eabi- gmake tinker-rk3288_defconfig all ... CC api/api_storage.o api/api_storage.c: In function 'dev_read_stor': api/api_storage.c:334:9: error: 'struct blk_desc' has no member named 'block_read' if ((dd->block_read) == NULL) { ^~ api/api_storage.c:339:11: error: 'struct blk_desc' has no member named 'block_read' return dd->block_read(dd, start, len, buf); ^~ api/api_storage.c:340:1: warning: control reaches end of non-void function [-Wreturn-type] } ^ gmake[2]: *** [scripts/Makefile.build:281: api/api_storage.o] Fehler 1 gmake[1]: *** [Makefile:1229: api] Fehler 2 gmake: *** [Makefile:460: __build_one_by_one] Error 2 I applied the following fix, but the product doesn't boot. Perhaps that's not a property of the fix though: Yours, Robert Clausecker
2017-04-08board: ti: am57xx: enable input on mmc clockSekhar Nori
As per the latest pinmux data available for AM572x EVM, rev A3, input should be enabled on MMC clock lines for MMC2/2/3 for stable operation. Further, AM572x TRM, SPRUHZ6, Revised June 2016, in section 18.4.6.1.1 "Pad Configuration Registers" states that input should be enabled for MMC 2/3/4 clock lines. Enable input on MMC1 and MMC3 clock to match the latest pinmux data. Input is already enabled on MMC2 clock for BeagleBoard x15. Further, input is already enabled on all MMCx clocks for other AM57xx boards (AM572x and AM571x IDK). Tested with HS and UHS SD card on AM572x EVM Rev A3. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>
2017-04-08ARM: keystone: Pass SPI MTD partition table via kernel command lineVignesh R
SPI U-Boot image for K2 boards have now exceeded 512K partition allocated to it and no longer fit the partitions defined in kernel DTS file. Therefore, pass an updated MTD partition table from U-Boot as kernel command line arguments to avoid kernel from accidentally modifying boot loader image that has overflowed to next user partition. To do is, introduce a common environment file for declaring SPI partition so that each individual boards need not repeat the same. Choose appropriate SPI bus from board config file and pass it as command line argument to kernel. Signed-off-by: Vignesh R <vigneshr@ti.com>
2017-04-08ARMv8: add GOT sections to the list of sections copiedPhilipp Tomsich
Recent Linux distributions (e.g. Debian 9) include cross-compilers for AArch64, but only for the aarch64-linux-gnu triplet only. It can thus be expected that users will attempt to use the system cross-compiler (instead of an aarch64-elf variant) to compile U-Boot for their ARMv8 target systems. One key differences between an aarch64-linux-gnu and an aarch64-elf compiler are the default settings regarding position-independent: with the aarch64-linux-gnu compiler, the default will create and use the global offset table. This change-set adjusts the list of sections copied on ARMv8 to include the GOT sections. With this added, the list matches the previous setup for AArch32 closely. Note that this is not an 'academic' issue, but was in fact encountered by our QA during testing of the RK3399-Q7 BSP and resulted in an early failure of the SPL stage during FDT setup. Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Tested-by: Klaus Goger <klaus.goger@theobroma-systems.com> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
2017-04-08env_mmc: Allow SPL to use any MMC device to load/save the environmentJean-Jacques Hiblot
SPL has been restricted to use only dev 0 based on the assumption that only one MMC device is registered. This is not always the case and many platforms now register several devices as expected by the spl mmc boot code For those platform SPL_ENV_SUPPORT is broken if dev is forced to 0. A word of warning: this commit may break SPL_ENV_SUPPORT on platforms that do not register the same MMC controllers in SPL and in u-boot (mostly iMX6 based platforms). Fortunately none of those activate SPL_ENV_SUPPORT in their default configuration. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
2017-04-07sunxi: Add defconfig for Allwinner A23 EVBFlorent Jacquet
This enables the support for the Allwinner A23 Evaluation Board (EVB), that already had a device tree (from Linux) but no defconfig. This board has an AXP223 PMIC, some NAND, Audio out and in plugs, an accelerometer and light sensor, as well as a USB HSIC hub and a USB OTG mini-USB connector. It also has a Wifi/BT chip. Access to the other buses (LCD, MIPI DSI, LVDS, etc) can be done through dedicated pin headers. Signed-off-by: Florent Jacquet <florent.jacquet@free-electrons.com> Cc: Jagan Teki <jagan@openedev.com> Cc: Maxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
2017-04-07sunxi: Add default environment sizeMaxime Ripard
On boards that defines ENV_IS_NOWHERE, such as the NES classic, commit 19dbe7d1a3f7 ("common: Move environment choice to Kconfig") broke the build because of a missing environment size. Reintroduce a default environment size consistent with what we had before. Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
2017-04-07cmd: nand: Make the NAND options default to NAND_SUNXIMaxime Ripard
If we depend on the ARCH_SUNXI configuration option, the boards that do not have NAND support enabled (with the associated options) will not compile anymore. Depend on the NAND driver configuration option to make sure that is not the case. Reported-by: Chen-Yu Tsai <wens@csie.org> Tested-by: Chen-Yu Tsai <wens@csie.org> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
2017-04-07cmd: ubifs: Add a dependency on CMD_UBIMaxime Ripard
CMD_UBIFS can't compile without CMD_UBI enabled. Make sure we can't end up in that case. Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Acked-by: Heiko Schocher <hs@denx.de>
2017-04-07sunxi: Add boards/sunxi and arch/arm/mach-sunxi to sunxi MAINTAINERS entryChen-Yu Tsai
Recently some sunxi related code was moved to arch/arm/mach-sunxi, but the MAINTAINERS entry was not updated to reflect this. Add this, and the board level boards/sunxi directory to our entry. While at it, also update its status, to reflect the current active maintainership. Signed-off-by: Chen-Yu Tsai <wens@csie.org> Reviewed-by: Jagan Teki <jagan@openedev.com>
2017-04-07arm: sunxi: Add Sunchip CX-A99 initial supportRask Ingemann Lambertsen
The Sunchip CX-A99 is a board used in some media players. It features: An Allwinner A80 ARM SoC (4 * Cortex-A7 + 4 * Cortex-A15 cores) 2 GiB or 4 GiB DDR3 DRAM AXP808 PMIC 16 GB or 32 GB eMMC SDIO Wifi/Bluetooth/FM module SD card slot 1 USB 3.0 connector 2 USB 2.0 connectors SATA connector UART connector (internally) for serial console Ethernet connector (10/100/1000 Mbit/s) HDMI connector Composite video and analog audio connector S/PDIF connector IR remote control receiver This patch adds a defconfig for the board. The DRAM settings are as found in the vendor sys_config.fex file. It has a preliminary device tree for use until a device tree is accepted upstream, after which it can be replaced by the upstream version. Signed-off-by: Rask Ingemann Lambertsen <rask@formelder.dk> [squash commits, and edited new meanful commit message] Signed-off-by: Jagan Teki <jagan@openedev.com> Reviewed-by: Jagan Teki <jagan@openedev.com>
2017-04-07ARM: dts: sun9i: Add mmc1 pinmux settingChen-Yu Tsai
commit 56b0730157f70dc23d6caff9e7ceb8b377b96b9f upstream. On the A80, mmc1 is available on pingroup G. Designs mostly use this to connect to an SDIO WiFi chip. Signed-off-by: Chen-Yu Tsai <wens@csie.org> Signed-off-by: Rask Ingemann Lambertsen <rask@formelder.dk> Reviewed-by: Jagan Teki <jagan@openedev.com>
2017-04-07sunxi: Add support for the CHIP ProMaxime Ripard
The CHIP Pro is a SoM that features the GR8 SIP, an AXP209, a BT/WiFi chip and a 512MiB SLC NAND. This it's an SLC NAND, it doesn't suffer the same drawbacks than found on the MLC NANDs, and we can enable it right away. Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Reviewed-by: Hans de Goede <hdegoede@redhat.com> Reviewed-by: Jagan Teki <jagan@openedev.com>
2017-04-07sunxi: Sync GR8 DTS and AXP209 with the kernelMaxime Ripard
Those DT will be part of 4.10, sync them so we can have our own config. Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Reviewed-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Jagan Teki <jagan@openedev.com>
2017-04-07scripts: sunxi: Build an raw SPL imageMaxime Ripard
Introduce a new sunxi-spl-with-ecc.bin image with already the right header, ECC, randomizer and padding for the BROM to be able to read it. It needs to be flashed using a raw access to the NAND so that the controller doesn't change a thing to it, since we already have all the right parameters. Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com> Reviewed-by: Heiko Schocher <hs@denx.de>
2017-04-07nand: sunxi: Add options for the SPL NAND configurationMaxime Ripard
The SPL image needs to be built with a different ECC configuration than the U-Boot binary. Add Kconfig options with defaults to provide a value that should work for anyone, but is still configurable if needs be. Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com> Reviewed-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Scott Wood <oss@buserror.net> Reviewed-by: Jagan Teki <jagan@openedev.com>
2017-04-07sunxi: Add the default mtdids and mtdparts to our envMaxime Ripard
In order for the user to be able to see and modify them, add those variables to the default environment. Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Jagan Teki <jagan@openedev.com>
2017-04-07sunxi: Enable UBI and NAND supportHans de Goede
Enable the NAND and UBI support in the configuration header so that we can (finally) use it. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Acked-by: Jagan Teki <jagan@openedev.com>
2017-04-07mtd: sunxi: Change U-Boot offsetMaxime Ripard
The default U-Boot offset for the Allwinner SoCs was set to 32kB. This was probably to try to maintain some compatibility with the current image that we build for the MMC where the U-Boot binary is also located at a 32kB offset. However, this causes a number of issues. The first one is that it prevents us from using a backup SPL entirely, which is troublesome in case where the first would be corrupt (especially on MLC which have a higher number of bitflips). We also cannot use the original MMC image on the NAND, because we need to prepare the SPL image to include the ECCs and randomizer settings, which reduces the interest of setting it at that particular offset. It also prevents us from upgrading and flashing the U-Boot and SPLs independantly, since it's very likely that it will fall in the same erase block. Since that default wasn't used by any board, change it for 8MB, which will be in an erase block of its own, all the erase blocks being multiple of two. The highest erase block size we encountered is 4MB, which means that in this particular setup, the first and second erase blocks will be for the SPL and its backup, and the third for U-Boot. Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Jagan Teki <jagan@openedev.com>
2017-04-07mtd: sunxi: Select the U-Boot location config optionMaxime Ripard
We'll need that symbol so that the default offset are defined Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Reviewed-by: Jagan Teki <jagan@openedev.com>
2017-04-07cmd: nand: Expose optional suboptions in KconfigBoris Brezillon
Sometime we need to enable advanced suboptions of the nand command set. Expose these suboptions in Kconfig. Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com> Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Reviewed-by: Jagan Teki <jagan@openedev.com>
2017-04-07cmd: Expose a Kconfig option to enable UBIFS commandsBoris Brezillon
Create a new Kconfig entry to allow CMD_UBIFS selection from Kconfig and add an hidden LZO option that can be selected by CMD_UBIFS. Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com> Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Acked-by: Jagan Teki <jagan@openedev.com>
2017-04-07mtd: ubi: Select RBTREE option from MTD_UBI Kconfig entryBoris Brezillon
Expose the RBTREE feature through Kconfig and select this option from the MTD_UBI option. Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com> Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Acked-by: Jagan Teki <jagan@openedev.com> [Rebased on master] Signed-off-by: Jagan Teki <jagan@openedev.com>