diff options
1470 files changed, 22182 insertions, 5849 deletions
@@ -83,7 +83,6 @@ config SYS_MALLOC_F config SYS_MALLOC_F_LEN hex "Size of malloc() pool before relocation" depends on SYS_MALLOC_F - default 0x2000 if SPL_DM && SPL_OF_CONTROL default 0x400 help Before relocation, memory is very limited on many platforms. Still, @@ -138,74 +137,6 @@ endmenu # General setup menu "Boot images" -config SUPPORT_SPL - bool - -config SUPPORT_TPL - bool - -config SPL - bool - depends on SUPPORT_SPL - prompt "Enable SPL" - help - If you want to build SPL as well as the normal image, say Y. - -config SPL_SYS_MALLOC_SIMPLE - bool - depends on SPL - prompt "Only use malloc_simple functions in the SPL" - help - Say Y here to only use the *_simple malloc functions from - malloc_simple.c, rather then using the versions from dlmalloc.c; - this will make the SPL binary smaller at the cost of more heap - usage as the *_simple malloc functions do not re-use free-ed mem. - -config SPL_STACK_R - depends on SPL - bool "Enable SDRAM location for SPL stack" - help - SPL starts off execution in SRAM and thus typically has only a small - stack available. Since SPL sets up DRAM while in its board_init_f() - function, it is possible for the stack to move there before - board_init_r() is reached. This option enables a special SDRAM - location for the SPL stack. U-Boot SPL switches to this after - board_init_f() completes, and before board_init_r() starts. - -config SPL_STACK_R_ADDR - depends on SPL_STACK_R - hex "SDRAM location for SPL stack" - help - Specify the address in SDRAM for the SPL stack. This will be set up - before board_init_r() is called. - -config SPL_STACK_R_MALLOC_SIMPLE_LEN - depends on SPL_STACK_R && SPL_SYS_MALLOC_SIMPLE - hex "Size of malloc_simple heap after switching to DRAM SPL stack" - default 0x100000 - help - Specify the amount of the stack to use as memory pool for - malloc_simple after switching the stack to DRAM. This may be set - to give board_init_r() a larger heap then the initial heap in - SRAM which is limited to SYS_MALLOC_F_LEN bytes. - -config SPL_SEPARATE_BSS - depends on SPL - bool "BSS section is in a different memory region from text" - help - Some platforms need a large BSS region in SPL and can provide this - because RAM is already set up. In this case BSS can be moved to RAM. - This option should then be enabled so that the correct device tree - location is used. Normally we put the device tree at the end of BSS - but with this option enabled, it goes at _image_binary_end. - -config TPL - bool - depends on SPL && SUPPORT_TPL - prompt "Enable TPL" - help - If you want to build TPL as well as the normal image and SPL, say Y. - config FIT bool "Support Flattened Image Tree" help @@ -741,7 +741,8 @@ DO_STATIC_RELA = endif # Always append ALL so that arch config.mk's can add custom ones -ALL-y += u-boot.srec u-boot.bin u-boot.sym System.map u-boot.cfg binary_size_check +ALL-y += u-boot.srec u-boot.bin u-boot.sym System.map u-boot.cfg \ + binary_size_check no_new_adhoc_configs_check ALL-$(CONFIG_ONENAND_U_BOOT) += u-boot-onenand.bin ifeq ($(CONFIG_SPL_FSL_PBL),y) @@ -936,8 +937,26 @@ u-boot.sha1: u-boot.bin u-boot.dis: u-boot $(OBJDUMP) -d $< > $@ +# If .u-boot.cfg.d is still present, then either: +# a) The previous build used a Makefile that used if_changed rather than +# if_changed_dep when building u-boot.cfg, and hence any later builds will +# be unaware of the dependencies for u-boot.cfg. In this case, we must +# delete u-boot.cfg to force it and .u-boot.cfg.cmd to be rebuilt the +# correct way. +# b) The previous build failed or was interrupted while building u-boot.cfg, +# so deleting u-boot.cfg isn't going to cause any additional work. +ifneq ($(wildcard $(obj)/.u-boot.cfg.d),) + unused := $(shell rm -f $(obj)/u-boot.cfg) +endif u-boot.cfg: include/config.h FORCE - $(call if_changed,cpp_cfg) + $(call if_changed_dep,cpp_cfg) + +# Check that this build does not use CONFIG options that we don't know about +# unless they are in Kconfig. All the existing CONFIG options are whitelisted, +# so new ones should not be added. +no_new_adhoc_configs_check: u-boot.cfg FORCE + $(srctree)/scripts/check-config.sh $< \ + $(srctree)/scripts/config_whitelist.txt ${srctree} 1>&2 ifdef CONFIG_TPL SPL_PAYLOAD := tpl/u-boot-with-tpl.bin @@ -3509,21 +3509,6 @@ FIT uImage format: CONFIG_SPL_INIT_MINIMAL Arch init code should be built for a very small image - CONFIG_SPL_LIBCOMMON_SUPPORT - Support for common/libcommon.o in SPL binary - - CONFIG_SPL_LIBDISK_SUPPORT - Support for disk/libdisk.o in SPL binary - - CONFIG_SPL_I2C_SUPPORT - Support for drivers/i2c/libi2c.o in SPL binary - - CONFIG_SPL_GPIO_SUPPORT - Support for drivers/gpio/libgpio.o in SPL binary - - CONFIG_SPL_MMC_SUPPORT - Support for drivers/mmc/libmmc.o in SPL binary - CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR, CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS, Address and partition on the MMC to load U-Boot from @@ -3547,12 +3532,6 @@ FIT uImage format: Partition on the MMC to load U-Boot from when the MMC is being used in fs mode - CONFIG_SPL_FAT_SUPPORT - Support for fs/fat/libfat.o in SPL binary - - CONFIG_SPL_EXT_SUPPORT - Support for EXT filesystem in SPL binary - CONFIG_SPL_FS_LOAD_PAYLOAD_NAME Filename to read to load U-Boot when reading from filesystem @@ -3591,18 +3570,10 @@ FIT uImage format: Support for a lightweight UBI (fastmap) scanner and loader - CONFIG_SPL_MTD_SUPPORT - Support for the MTD subsystem within SPL. Useful for - environment on NAND support within SPL. - CONFIG_SPL_NAND_RAW_ONLY Support to boot only raw u-boot.bin images. Use this only if you need to save space. - CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT - Set for the SPL on PPC mpc8xxx targets, support for - drivers/ddr/fsl/libddr.o in SPL binary. - CONFIG_SPL_COMMON_INIT_DDR Set for common ddr init with serial presence detect in SPL binary. @@ -3638,29 +3609,9 @@ FIT uImage format: Support for an OMAP3-specific set of functions to return the ID and MFR of the first attached NAND chip, if present. - CONFIG_SPL_SERIAL_SUPPORT - Support for drivers/serial/libserial.o in SPL binary - - CONFIG_SPL_SPI_FLASH_SUPPORT - Support for drivers/mtd/spi/libspi_flash.o in SPL binary - - CONFIG_SPL_SPI_SUPPORT - Support for drivers/spi/libspi.o in SPL binary - CONFIG_SPL_RAM_DEVICE Support for running image already present in ram, in SPL binary - CONFIG_SPL_LIBGENERIC_SUPPORT - Support for lib/libgeneric.o in SPL binary - - CONFIG_SPL_ENV_SUPPORT - Support for the environment operating in SPL binary - - CONFIG_SPL_NET_SUPPORT - Support for the net/libnet.o in SPL binary. - It conflicts with SPL env from storage medium specified by - CONFIG_ENV_IS_xxx but CONFIG_ENV_IS_NOWHERE - CONFIG_SPL_PAD_TO Image offset to which the SPL should be padded before appending the SPL payload. By default, this is defined as diff --git a/arch/arc/config.mk b/arch/arc/config.mk index 7c974f0055..13676bd0c8 100644 --- a/arch/arc/config.mk +++ b/arch/arc/config.mk @@ -31,15 +31,15 @@ CONFIG_MMU = 1 endif ifdef CONFIG_CPU_ARC750D -PLATFORM_CPPFLAGS += -marc700 +PLATFORM_CPPFLAGS += -mcpu=arc700 endif ifdef CONFIG_CPU_ARC770D -PLATFORM_CPPFLAGS += -marc700 -mlock -mswape +PLATFORM_CPPFLAGS += -mcpu=arc700 -mlock -mswape endif ifdef CONFIG_CPU_ARCEM6 -PLATFORM_CPPFLAGS += -marcem +PLATFORM_CPPFLAGS += -mcpu=arcem endif ifdef CONFIG_CPU_ARCHS34 diff --git a/arch/arc/include/asm/errno.h b/arch/arc/include/asm/errno.h deleted file mode 100644 index 4c82b503d9..0000000000 --- a/arch/arc/include/asm/errno.h +++ /dev/null @@ -1 +0,0 @@ -#include <asm-generic/errno.h> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 5073930419..38ad59058f 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -890,18 +890,24 @@ config TARGET_COLIBRI_PXA270 config ARCH_UNIPHIER bool "Socionext UniPhier SoCs" + select BLK select CLK_UNIPHIER - select SUPPORT_SPL - select SPL - select OF_CONTROL - select SPL_OF_CONTROL - select OF_LIBFDT select DM - select SPL_DM select DM_GPIO - select DM_SERIAL select DM_I2C select DM_MMC + select DM_SERIAL + select DM_USB + select OF_CONTROL + select OF_LIBFDT + select PINCTRL + select SPL + select SPL_DM + select SPL_LIBCOMMON_SUPPORT + select SPL_LIBGENERIC_SUPPORT + select SPL_OF_CONTROL + select SPL_PINCTRL + select SUPPORT_SPL help Support for UniPhier SoC family developed by Socionext Inc. (formerly, System LSI Business Division of Panasonic Corporation) @@ -927,6 +933,7 @@ config ARCH_ROCKCHIP select DM_SERIAL select DM_SPI select DM_SPI_FLASH + select DM_USB if USB config TARGET_THUNDERX_88XX bool "Support ThunderX 88xx" diff --git a/arch/arm/cpu/arm1136/mx35/generic.c b/arch/arm/cpu/arm1136/mx35/generic.c index 068d93eeec..5297d62d00 100644 --- a/arch/arm/cpu/arm1136/mx35/generic.c +++ b/arch/arm/cpu/arm1136/mx35/generic.c @@ -10,7 +10,7 @@ #include <common.h> #include <div64.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/imx-regs.h> #include <asm/arch/crm_regs.h> #include <asm/arch/clock.h> diff --git a/arch/arm/cpu/arm1136/mx35/mx35_sdram.c b/arch/arm/cpu/arm1136/mx35/mx35_sdram.c index d358f5f2fa..711ea765c8 100644 --- a/arch/arm/cpu/arm1136/mx35/mx35_sdram.c +++ b/arch/arm/cpu/arm1136/mx35/mx35_sdram.c @@ -5,7 +5,7 @@ */ #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/imx-regs.h> #include <linux/types.h> #include <asm/arch/sys_proto.h> diff --git a/arch/arm/cpu/arm920t/imx/timer.c b/arch/arm/cpu/arm920t/imx/timer.c index b62558f92f..178422a9bf 100644 --- a/arch/arm/cpu/arm920t/imx/timer.c +++ b/arch/arm/cpu/arm920t/imx/timer.c @@ -78,11 +78,7 @@ unsigned long long get_ticks(void) */ ulong get_tbclk (void) { - ulong tbclk; - - tbclk = CONFIG_SYS_HZ; - - return tbclk; + return CONFIG_SYS_HZ; } /* diff --git a/arch/arm/cpu/arm926ejs/mxs/clock.c b/arch/arm/cpu/arm926ejs/mxs/clock.c index 9491096424..b552e4382c 100644 --- a/arch/arm/cpu/arm926ejs/mxs/clock.c +++ b/arch/arm/cpu/arm926ejs/mxs/clock.c @@ -11,7 +11,7 @@ */ #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/arch/clock.h> #include <asm/arch/imx-regs.h> diff --git a/arch/arm/cpu/arm926ejs/mxs/iomux.c b/arch/arm/cpu/arm926ejs/mxs/iomux.c index 2e6be06fd4..585fa8a189 100644 --- a/arch/arm/cpu/arm926ejs/mxs/iomux.c +++ b/arch/arm/cpu/arm926ejs/mxs/iomux.c @@ -8,7 +8,7 @@ */ #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/arch/clock.h> #include <asm/arch/iomux.h> diff --git a/arch/arm/cpu/arm926ejs/mxs/mxs.c b/arch/arm/cpu/arm926ejs/mxs/mxs.c index 229862079a..840dd9edbd 100644 --- a/arch/arm/cpu/arm926ejs/mxs/mxs.c +++ b/arch/arm/cpu/arm926ejs/mxs/mxs.c @@ -11,7 +11,7 @@ */ #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/arch/clock.h> #include <asm/imx-common/dma.h> diff --git a/arch/arm/cpu/arm926ejs/spear/timer.c b/arch/arm/cpu/arm926ejs/spear/timer.c index c88e962a3d..89fd54fab1 100644 --- a/arch/arm/cpu/arm926ejs/spear/timer.c +++ b/arch/arm/cpu/arm926ejs/spear/timer.c @@ -37,7 +37,7 @@ int timer_init(void) writel(MISC_PRSC_CFG, &misc_regs_p->prsc1_clk_cfg); synth = MISC_GPT3SYNTH; #else -# error Incorrect config. Can only be spear{600|300|310|320} +# error Incorrect config. Can only be SPEAR{600|300|310|320} #endif writel(readl(&misc_regs_p->periph_clk_cfg) | synth, diff --git a/arch/arm/cpu/armv7/am33xx/Kconfig b/arch/arm/cpu/armv7/am33xx/Kconfig index dc51e9b697..2d7d1fc4f1 100644 --- a/arch/arm/cpu/armv7/am33xx/Kconfig +++ b/arch/arm/cpu/armv7/am33xx/Kconfig @@ -1,4 +1,14 @@ if AM43XX + +config SPL_EXT_SUPPORT + default y + +config SPL_GPIO_SUPPORT + default y + +config SPL_I2C_SUPPORT + default y + config TARGET_AM43XX_EVM bool "Support am43xx_evm" select TI_I2C_BOARD_DETECT diff --git a/arch/arm/cpu/armv7/am33xx/board.c b/arch/arm/cpu/armv7/am33xx/board.c index a99cbf9de0..68badedd14 100644 --- a/arch/arm/cpu/armv7/am33xx/board.c +++ b/arch/arm/cpu/armv7/am33xx/board.c @@ -28,7 +28,7 @@ #include <i2c.h> #include <miiphy.h> #include <cpsw.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <linux/compiler.h> #include <linux/usb/ch9.h> #include <linux/usb/gadget.h> diff --git a/arch/arm/cpu/armv7/am33xx/sys_info.c b/arch/arm/cpu/armv7/am33xx/sys_info.c index 52a6824cf5..f42eee166b 100644 --- a/arch/arm/cpu/armv7/am33xx/sys_info.c +++ b/arch/arm/cpu/armv7/am33xx/sys_info.c @@ -65,9 +65,7 @@ u32 get_device_type(void) */ u32 get_sysboot_value(void) { - int mode; - mode = readl(&cstat->statusreg) & (SYSBOOT_MASK); - return mode; + return readl(&cstat->statusreg) & SYSBOOT_MASK; } #ifdef CONFIG_DISPLAY_CPUINFO diff --git a/arch/arm/cpu/armv7/bcm235xx/clk-bcm235xx.c b/arch/arm/cpu/armv7/bcm235xx/clk-bcm235xx.c index 80187e3eca..490bc4c491 100644 --- a/arch/arm/cpu/armv7/bcm235xx/clk-bcm235xx.c +++ b/arch/arm/cpu/armv7/bcm235xx/clk-bcm235xx.c @@ -12,7 +12,7 @@ #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/sysmap.h> #include <asm/kona-common/clk.h> #include "clk-core.h" diff --git a/arch/arm/cpu/armv7/bcm235xx/clk-bsc.c b/arch/arm/cpu/armv7/bcm235xx/clk-bsc.c index d263068b48..4a1cc719d4 100644 --- a/arch/arm/cpu/armv7/bcm235xx/clk-bsc.c +++ b/arch/arm/cpu/armv7/bcm235xx/clk-bsc.c @@ -6,7 +6,7 @@ #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/sysmap.h> #include <asm/kona-common/clk.h> #include "clk-core.h" diff --git a/arch/arm/cpu/armv7/bcm235xx/clk-core.c b/arch/arm/cpu/armv7/bcm235xx/clk-core.c index a326dfea6c..79fafa08ed 100644 --- a/arch/arm/cpu/armv7/bcm235xx/clk-core.c +++ b/arch/arm/cpu/armv7/bcm235xx/clk-core.c @@ -12,7 +12,7 @@ #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <bitfield.h> #include <asm/arch/sysmap.h> #include <asm/kona-common/clk.h> diff --git a/arch/arm/cpu/armv7/bcm235xx/clk-eth.c b/arch/arm/cpu/armv7/bcm235xx/clk-eth.c index b0b92b9df7..f188ef03e2 100644 --- a/arch/arm/cpu/armv7/bcm235xx/clk-eth.c +++ b/arch/arm/cpu/armv7/bcm235xx/clk-eth.c @@ -6,7 +6,7 @@ #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/sysmap.h> #include <asm/kona-common/clk.h> #include "clk-core.h" diff --git a/arch/arm/cpu/armv7/bcm235xx/clk-sdio.c b/arch/arm/cpu/armv7/bcm235xx/clk-sdio.c index b2ce6d6783..456b76713d 100644 --- a/arch/arm/cpu/armv7/bcm235xx/clk-sdio.c +++ b/arch/arm/cpu/armv7/bcm235xx/clk-sdio.c @@ -6,7 +6,7 @@ #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/sysmap.h> #include <asm/kona-common/clk.h> #include "clk-core.h" diff --git a/arch/arm/cpu/armv7/bcm235xx/clk-usb-otg.c b/arch/arm/cpu/armv7/bcm235xx/clk-usb-otg.c index 1d7c5af76d..908502d632 100644 --- a/arch/arm/cpu/armv7/bcm235xx/clk-usb-otg.c +++ b/arch/arm/cpu/armv7/bcm235xx/clk-usb-otg.c @@ -5,7 +5,7 @@ */ #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/sysmap.h> #include "clk-core.h" diff --git a/arch/arm/cpu/armv7/bcm281xx/clk-bcm281xx.c b/arch/arm/cpu/armv7/bcm281xx/clk-bcm281xx.c index 7e25255230..1c28551a43 100644 --- a/arch/arm/cpu/armv7/bcm281xx/clk-bcm281xx.c +++ b/arch/arm/cpu/armv7/bcm281xx/clk-bcm281xx.c @@ -12,7 +12,7 @@ #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/sysmap.h> #include <asm/kona-common/clk.h> #include "clk-core.h" diff --git a/arch/arm/cpu/armv7/bcm281xx/clk-bsc.c b/arch/arm/cpu/armv7/bcm281xx/clk-bsc.c index ba55d0aeb1..06a7ce889b 100644 --- a/arch/arm/cpu/armv7/bcm281xx/clk-bsc.c +++ b/arch/arm/cpu/armv7/bcm281xx/clk-bsc.c @@ -6,7 +6,7 @@ #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/sysmap.h> #include <asm/kona-common/clk.h> #include "clk-core.h" diff --git a/arch/arm/cpu/armv7/bcm281xx/clk-core.c b/arch/arm/cpu/armv7/bcm281xx/clk-core.c index d4425835a1..cdc1264d7c 100644 --- a/arch/arm/cpu/armv7/bcm281xx/clk-core.c +++ b/arch/arm/cpu/armv7/bcm281xx/clk-core.c @@ -12,7 +12,7 @@ #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <bitfield.h> #include <asm/arch/sysmap.h> #include <asm/kona-common/clk.h> diff --git a/arch/arm/cpu/armv7/bcm281xx/clk-eth.c b/arch/arm/cpu/armv7/bcm281xx/clk-eth.c index b0b92b9df7..f188ef03e2 100644 --- a/arch/arm/cpu/armv7/bcm281xx/clk-eth.c +++ b/arch/arm/cpu/armv7/bcm281xx/clk-eth.c @@ -6,7 +6,7 @@ #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/sysmap.h> #include <asm/kona-common/clk.h> #include "clk-core.h" diff --git a/arch/arm/cpu/armv7/bcm281xx/clk-sdio.c b/arch/arm/cpu/armv7/bcm281xx/clk-sdio.c index 49badcbaa7..bf47672596 100644 --- a/arch/arm/cpu/armv7/bcm281xx/clk-sdio.c +++ b/arch/arm/cpu/armv7/bcm281xx/clk-sdio.c @@ -6,7 +6,7 @@ #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/sysmap.h> #include <asm/kona-common/clk.h> #include "clk-core.h" diff --git a/arch/arm/cpu/armv7/bcm281xx/clk-usb-otg.c b/arch/arm/cpu/armv7/bcm281xx/clk-usb-otg.c index 1d7c5af76d..908502d632 100644 --- a/arch/arm/cpu/armv7/bcm281xx/clk-usb-otg.c +++ b/arch/arm/cpu/armv7/bcm281xx/clk-usb-otg.c @@ -5,7 +5,7 @@ */ #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/sysmap.h> #include "clk-core.h" diff --git a/arch/arm/cpu/armv7/ls102xa/fsl_ls1_serdes.c b/arch/arm/cpu/armv7/ls102xa/fsl_ls1_serdes.c index 86ace9081a..8e247ee60b 100644 --- a/arch/arm/cpu/armv7/ls102xa/fsl_ls1_serdes.c +++ b/arch/arm/cpu/armv7/ls102xa/fsl_ls1_serdes.c @@ -7,7 +7,7 @@ #include <common.h> #include <asm/arch/fsl_serdes.h> #include <asm/arch/immap_ls102xa.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include "fsl_ls1_serdes.h" diff --git a/arch/arm/cpu/armv7/mx5/clock.c b/arch/arm/cpu/armv7/mx5/clock.c index bf52f0d19e..610098c175 100644 --- a/arch/arm/cpu/armv7/mx5/clock.c +++ b/arch/arm/cpu/armv7/mx5/clock.c @@ -9,7 +9,7 @@ #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/imx-regs.h> #include <asm/arch/crm_regs.h> #include <asm/arch/clock.h> diff --git a/arch/arm/cpu/armv7/mx5/soc.c b/arch/arm/cpu/armv7/mx5/soc.c index 3753c14df3..e6cc7cb9c4 100644 --- a/arch/arm/cpu/armv7/mx5/soc.c +++ b/arch/arm/cpu/armv7/mx5/soc.c @@ -12,7 +12,7 @@ #include <asm/arch/clock.h> #include <asm/arch/sys_proto.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/imx-common/boot_mode.h> diff --git a/arch/arm/cpu/armv7/mx6/clock.c b/arch/arm/cpu/armv7/mx6/clock.c index b3c9dcc969..9beb6f0193 100644 --- a/arch/arm/cpu/armv7/mx6/clock.c +++ b/arch/arm/cpu/armv7/mx6/clock.c @@ -7,7 +7,7 @@ #include <common.h> #include <div64.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/imx-regs.h> #include <asm/arch/crm_regs.h> #include <asm/arch/clock.h> diff --git a/arch/arm/cpu/armv7/mx6/mp.c b/arch/arm/cpu/armv7/mx6/mp.c index 9f034d6e13..e28018b26e 100644 --- a/arch/arm/cpu/armv7/mx6/mp.c +++ b/arch/arm/cpu/armv7/mx6/mp.c @@ -9,7 +9,7 @@ #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/sys_proto.h> #include <asm/arch/imx-regs.h> diff --git a/arch/arm/cpu/armv7/mx6/soc.c b/arch/arm/cpu/armv7/mx6/soc.c index 88fcfdc2aa..5b2a0513ab 100644 --- a/arch/arm/cpu/armv7/mx6/soc.c +++ b/arch/arm/cpu/armv7/mx6/soc.c @@ -8,7 +8,7 @@ */ #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/arch/imx-regs.h> #include <asm/arch/clock.h> diff --git a/arch/arm/cpu/armv7/mx7/clock.c b/arch/arm/cpu/armv7/mx7/clock.c index 4d68ad2615..2cfde46a55 100644 --- a/arch/arm/cpu/armv7/mx7/clock.c +++ b/arch/arm/cpu/armv7/mx7/clock.c @@ -10,7 +10,7 @@ #include <common.h> #include <div64.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/imx-regs.h> #include <asm/arch/crm_regs.h> #include <asm/arch/clock.h> diff --git a/arch/arm/cpu/armv7/mx7/clock_slice.c b/arch/arm/cpu/armv7/mx7/clock_slice.c index 1665df92ad..68a7005b2e 100644 --- a/arch/arm/cpu/armv7/mx7/clock_slice.c +++ b/arch/arm/cpu/armv7/mx7/clock_slice.c @@ -10,7 +10,7 @@ #include <common.h> #include <div64.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/imx-regs.h> #include <asm/arch/crm_regs.h> #include <asm/arch/clock.h> diff --git a/arch/arm/cpu/armv7/omap-common/pipe3-phy.c b/arch/arm/cpu/armv7/omap-common/pipe3-phy.c index b71d769410..e02e3ec23e 100644 --- a/arch/arm/cpu/armv7/omap-common/pipe3-phy.c +++ b/arch/arm/cpu/armv7/omap-common/pipe3-phy.c @@ -12,7 +12,7 @@ #include <asm/arch/clock.h> #include <asm/arch/sys_proto.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include "pipe3-phy.h" /* PLLCTRL Registers */ diff --git a/arch/arm/cpu/armv7/omap3/Kconfig b/arch/arm/cpu/armv7/omap3/Kconfig index 99a25f9ff3..7d884a237b 100644 --- a/arch/arm/cpu/armv7/omap3/Kconfig +++ b/arch/arm/cpu/armv7/omap3/Kconfig @@ -1,5 +1,38 @@ if OMAP34XX +config SPL_EXT_SUPPORT + default y + +config SPL_FAT_SUPPORT + default y + +config SPL_GPIO_SUPPORT + default y + +config SPL_I2C_SUPPORT + default y + +config SPL_LIBCOMMON_SUPPORT + default y + +config SPL_LIBDISK_SUPPORT + default y + +config SPL_LIBGENERIC_SUPPORT + default y + +config SPL_MMC_SUPPORT + default y + +config SPL_NAND_SUPPORT + default y + +config SPL_POWER_SUPPORT + default y + +config SPL_SERIAL_SUPPORT + default y + choice prompt "OMAP3 board select" optional diff --git a/arch/arm/cpu/armv7/omap4/Kconfig b/arch/arm/cpu/armv7/omap4/Kconfig index 49adb8ec5b..c3dc95fab0 100644 --- a/arch/arm/cpu/armv7/omap4/Kconfig +++ b/arch/arm/cpu/armv7/omap4/Kconfig @@ -1,5 +1,38 @@ if OMAP44XX +config SPL_EXT_SUPPORT + default y + +config SPL_FAT_SUPPORT + default y + +config SPL_GPIO_SUPPORT + default y + +config SPL_I2C_SUPPORT + default y + +config SPL_LIBCOMMON_SUPPORT + default y + +config SPL_LIBDISK_SUPPORT + default y + +config SPL_LIBGENERIC_SUPPORT + default y + +config SPL_MMC_SUPPORT + default y + +config SPL_NAND_SUPPORT + default y + +config SPL_POWER_SUPPORT + default y + +config SPL_SERIAL_SUPPORT + default y + choice prompt "OMAP4 board select" optional diff --git a/arch/arm/cpu/armv7/omap5/Kconfig b/arch/arm/cpu/armv7/omap5/Kconfig index a8600b102e..ef68c535df 100644 --- a/arch/arm/cpu/armv7/omap5/Kconfig +++ b/arch/arm/cpu/armv7/omap5/Kconfig @@ -1,5 +1,38 @@ if OMAP54XX +config SPL_EXT_SUPPORT + default y + +config SPL_FAT_SUPPORT + default y + +config SPL_GPIO_SUPPORT + default y + +config SPL_I2C_SUPPORT + default y + +config SPL_LIBCOMMON_SUPPORT + default y + +config SPL_LIBDISK_SUPPORT + default y + +config SPL_LIBGENERIC_SUPPORT + default y + +config SPL_MMC_SUPPORT + default y + +config SPL_NAND_SUPPORT + default y + +config SPL_POWER_SUPPORT + default y + +config SPL_SERIAL_SUPPORT + default y + choice prompt "OMAP5 board select" optional diff --git a/arch/arm/cpu/armv8/fsl-layerscape/cpu.c b/arch/arm/cpu/armv8/fsl-layerscape/cpu.c index 5fbd848df5..f865373df3 100644 --- a/arch/arm/cpu/armv8/fsl-layerscape/cpu.c +++ b/arch/arm/cpu/armv8/fsl-layerscape/cpu.c @@ -6,7 +6,7 @@ #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/system.h> #include <asm/armv8/mmu.h> #include <asm/io.h> diff --git a/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch2_serdes.c b/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch2_serdes.c index 29cd28e5d2..e06b063740 100644 --- a/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch2_serdes.c +++ b/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch2_serdes.c @@ -6,7 +6,7 @@ #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/fsl_serdes.h> #include <asm/arch/soc.h> diff --git a/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch3_serdes.c b/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch3_serdes.c index 9110d7a743..7faa86c3fd 100644 --- a/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch3_serdes.c +++ b/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch3_serdes.c @@ -6,7 +6,7 @@ #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/fsl_serdes.h> #include <asm/arch/soc.h> #include <fsl-mc/ldpaa_wriop.h> diff --git a/arch/arm/cpu/armv8/zynqmp/Kconfig b/arch/arm/cpu/armv8/zynqmp/Kconfig index ed3305d718..1eedb39aa5 100644 --- a/arch/arm/cpu/armv8/zynqmp/Kconfig +++ b/arch/arm/cpu/armv8/zynqmp/Kconfig @@ -1,5 +1,29 @@ if ARCH_ZYNQMP +config SPL_FAT_SUPPORT + default y + +config SPL_LIBCOMMON_SUPPORT + default y + +config SPL_LIBDISK_SUPPORT + default y + +config SPL_LIBGENERIC_SUPPORT + default y + +config SPL_MMC_SUPPORT + default y + +config SPL_SERIAL_SUPPORT + default y + +config SPL_SPI_FLASH_SUPPORT + default y if ZYNQ_QSPI + +config SPL_SPI_SUPPORT + default y if ZYNQ_QSPI + config SYS_BOARD default "zynqmp" @@ -23,5 +47,53 @@ config ZYNQMP_USB config SYS_MALLOC_F_LEN default 0x600 +config SPL_ZYNQMP_ALT_BOOTMODE_ENABLED + bool "Overwrite SPL bootmode" + depends on SPL + help + Overwrite bootmode selected via boot mode pins to tell SPL what should + be the next boot device. + +config SPL_ZYNQMP_ALT_BOOTMODE + hex + default 0x0 if JTAG_MODE + default 0x1 if QSPI_MODE_24BIT + default 0x2 if QSPI_MODE_32BIT + default 0x3 if SD_MODE + default 0x4 if NAND_MODE + default 0x5 if SD_MODE1 + default 0x6 if EMMC_MODE + default 0x7 if USB_MODE + +choice + prompt "Boot mode" + depends on ZYNQMP_ALT_BOOTMODE_ENABLED + default JTAG + +config JTAG_MODE + bool "JTAG_MODE" + +config QSPI_MODE_24BIT + bool "QSPI_MODE_24BIT" + +config QSPI_MODE_32BIT + bool "QSPI_MODE_32BIT" + +config SD_MODE + bool "SD_MODE" + +config SD_MODE1 + bool "SD_MODE1" + +config NAND_MODE + bool "NAND_MODE" + +config EMMC_MODE + bool "EMMC_MODE" + +config USB_MODE + bool "USB" + +endchoice endif diff --git a/arch/arm/cpu/armv8/zynqmp/spl.c b/arch/arm/cpu/armv8/zynqmp/spl.c index 867d2b25a8..04e190537d 100644 --- a/arch/arm/cpu/armv8/zynqmp/spl.c +++ b/arch/arm/cpu/armv8/zynqmp/spl.c @@ -35,10 +35,29 @@ void board_init_f(ulong dummy) board_init_r(NULL, 0); } +static void ps_mode_reset(ulong mode) +{ + writel(mode << ZYNQMP_CRL_APB_BOOT_PIN_CTRL_OUT_EN_SHIFT, + &crlapb_base->boot_pin_ctrl); + udelay(5); + writel(mode << ZYNQMP_CRL_APB_BOOT_PIN_CTRL_OUT_VAL_SHIFT | + mode << ZYNQMP_CRL_APB_BOOT_PIN_CTRL_OUT_EN_SHIFT, + &crlapb_base->boot_pin_ctrl); +} + +/* + * Set default PS_MODE1 which is used for USB ULPI phy reset + * Also other resets can be connected to this certain pin + */ +#ifndef MODE_RESET +# define MODE_RESET PS_MODE1 +#endif + #ifdef CONFIG_SPL_BOARD_INIT void spl_board_init(void) { preloader_console_init(); + ps_mode_reset(MODE_RESET); board_init(); } #endif @@ -48,6 +67,13 @@ u32 spl_boot_device(void) u32 reg = 0; u8 bootmode; +#if defined(CONFIG_SPL_ZYNQMP_ALT_BOOTMODE_ENABLED) + /* Change default boot mode at run-time */ + writel(BOOT_MODE_USE_ALT | + CONFIG_SPL_ZYNQMP_ALT_BOOTMODE << BOOT_MODE_ALT_SHIFT, + &crlapb_base->boot_mode); +#endif + reg = readl(&crlapb_base->boot_mode); bootmode = reg & BOOT_MODES_MASK; @@ -60,6 +86,10 @@ u32 spl_boot_device(void) case SD_MODE1: return BOOT_DEVICE_MMC1; #endif +#ifdef CONFIG_SPL_DFU_SUPPORT + case USB_MODE: + return BOOT_DEVICE_DFU; +#endif default: printf("Invalid Boot Mode:0x%x\n", bootmode); break; diff --git a/arch/arm/cpu/sa1100/timer.c b/arch/arm/cpu/sa1100/timer.c index 0a0006b426..90e2128b22 100644 --- a/arch/arm/cpu/sa1100/timer.c +++ b/arch/arm/cpu/sa1100/timer.c @@ -66,8 +66,5 @@ unsigned long long get_ticks(void) */ ulong get_tbclk (void) { - ulong tbclk; - - tbclk = CONFIG_SYS_HZ; - return tbclk; + return CONFIG_SYS_HZ; } diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile index 715e9bd7bd..e89b6e8074 100644 --- a/arch/arm/dts/Makefile +++ b/arch/arm/dts/Makefile @@ -70,6 +70,7 @@ dtb-$(CONFIG_ARCH_MVEBU) += \ armada-375-db.dtb \ armada-388-clearfog.dtb \ armada-388-gp.dtb \ + armada-385-amc.dtb \ armada-xp-gp.dtb \ armada-xp-maxbcm.dtb \ armada-xp-synology-ds414.dtb \ @@ -263,7 +264,8 @@ dtb-$(CONFIG_MACH_SUN8I_H3) += \ sun8i-h3-orangepi-pc.dtb \ sun8i-h3-orangepi-pc-plus.dtb \ sun8i-h3-orangepi-plus.dtb \ - sun8i-h3-orangepi-plus2e.dtb + sun8i-h3-orangepi-plus2e.dtb \ + sun8i-h3-nanopi-neo.dtb dtb-$(CONFIG_MACH_SUN50I) += \ sun50i-a64-pine64-plus.dtb \ sun50i-a64-pine64.dtb diff --git a/arch/arm/dts/armada-385-amc.dts b/arch/arm/dts/armada-385-amc.dts new file mode 100644 index 0000000000..a5a8a7f186 --- /dev/null +++ b/arch/arm/dts/armada-385-amc.dts @@ -0,0 +1,163 @@ +/* + * Device Tree file for Marvell Armada 385 development board + * (DB-88F6820-AMC) + * + * Copyright (C) 2014 Marvell + * + * Gregory CLEMENT <gregory.clement@free-electrons.com> + * + * This file is dual-licensed: you can use it either under the terms + * of the GPL or the X11 license, at your option. Note that this dual + * licensing only applies to this file, and not this project as a + * whole. + * + * a) This file is licensed under the terms of the GNU General Public + * License version 2. This program is licensed "as is" without + * any warranty of any kind, whether express or implied. + * + * Or, alternatively, + * + * b) Permission is hereby granted, free of charge, to any person + * obtaining a copy of this software and associated documentation + * files (the "Software"), to deal in the Software without + * restriction, including without limitation the rights to use, + * copy, modify, merge, publish, distribute, sublicense, and/or + * sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following + * conditions: + * + * The above copyright notice and this permission notice shall be + * included in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE. + */ + +/dts-v1/; +#include "armada-385.dtsi" +#include <dt-bindings/gpio/gpio.h> + +/ { + model = "Marvell Armada 385 AMC"; + compatible = "marvell,a385-amc", "marvell,armada385", "marvell,armada380"; + + chosen { + stdout-path = "serial0:115200n8"; + }; + + aliases { + ethernet0 = ð0; + ethernet1 = ð1; + spi1 = &spi1; + }; + + memory { + device_type = "memory"; + reg = <0x00000000 0x80000000>; /* 2 GB */ + }; + + soc { + ranges = <MBUS_ID(0xf0, 0x01) 0 0xf1000000 0x100000 + MBUS_ID(0x01, 0x1d) 0 0xfff00000 0x100000>; + + internal-regs { + i2c@11000 { + pinctrl-names = "default"; + pinctrl-0 = <&i2c0_pins>; + status = "okay"; + }; + + serial@12000 { + /* + * Exported on the micro USB connector CON16 + * through an FTDI + */ + + pinctrl-names = "default"; + pinctrl-0 = <&uart0_pins>; + status = "okay"; + u-boot,dm-pre-reloc; + }; + + ethernet@34000 { + status = "okay"; + phy = <&phy1>; + phy-mode = "sgmii"; + }; + + usb@58000 { + status = "okay"; + }; + + ethernet@70000 { + pinctrl-names = "default"; + /* + * The Reference Clock 0 is used to provide a + * clock to the PHY + */ + pinctrl-0 = <&ge0_rgmii_pins>, <&ref_clk0_pins>; + status = "okay"; + phy = <&phy0>; + phy-mode = "rgmii-id"; + }; + + + mdio@72004 { + pinctrl-names = "default"; + pinctrl-0 = <&mdio_pins>; + + phy0: ethernet-phy@1 { + reg = <1>; + }; + + phy1: ethernet-phy@0 { + reg = <0>; + }; + }; + + flash@d0000 { + status = "okay"; + num-cs = <1>; + marvell,nand-keep-config; + marvell,nand-enable-arbiter; + nand-on-flash-bbt; + }; + }; + + pcie-controller { + status = "okay"; + pcie@1,0 { + /* Port 0, Lane 0 */ + status = "okay"; + }; + + }; + }; +}; + +&spi1 { + pinctrl-names = "default"; + pinctrl-0 = <&spi1_pins>; + status = "okay"; + u-boot,dm-pre-reloc; + + spi-flash@0 { + u-boot,dm-pre-reloc; + #address-cells = <1>; + #size-cells = <1>; + compatible = "st,m25p128", "jedec,spi-nor"; + reg = <0>; /* Chip select 0 */ + spi-max-frequency = <50000000>; + m25p,fast-read; + }; +}; + +&refclk { + clock-frequency = <20000000>; +}; diff --git a/arch/arm/dts/rk3399-evb.dts b/arch/arm/dts/rk3399-evb.dts index e92a492545..bd7801b9a5 100644 --- a/arch/arm/dts/rk3399-evb.dts +++ b/arch/arm/dts/rk3399-evb.dts @@ -43,6 +43,12 @@ regulator-always-on; regulator-boot-on; }; + + vcc5v0_host: vcc5v0-host-en { + compatible = "regulator-fixed"; + regulator-name = "vcc5v0_host"; + gpio = <&gpio4 25 GPIO_ACTIVE_HIGH>; + }; }; &emmc_phy { @@ -85,6 +91,10 @@ status = "okay"; }; +&dwc3_typec0 { + status = "okay"; +}; + &usb_host1_ehci { status = "okay"; }; @@ -93,6 +103,10 @@ status = "okay"; }; +&dwc3_typec1 { + status = "okay"; +}; + &pinctrl { pmic { pmic_int_l: pmic-int-l { diff --git a/arch/arm/dts/rk3399.dtsi b/arch/arm/dts/rk3399.dtsi index a4c6e27b39..179860c900 100644 --- a/arch/arm/dts/rk3399.dtsi +++ b/arch/arm/dts/rk3399.dtsi @@ -9,6 +9,7 @@ #include <dt-bindings/interrupt-controller/arm-gic.h> #include <dt-bindings/interrupt-controller/irq.h> #include <dt-bindings/pinctrl/rockchip.h> +#define USB_CLASS_HUB 9 / { compatible = "rockchip,rk3399"; @@ -175,6 +176,8 @@ clocks = <&cru SCLK_SDMMC>, <&cru HCLK_SDMMC>, <&cru SCLK_SDMMC_DRV>, <&cru SCLK_SDMMC_SAMPLE>; clock-names = "ciu", "biu", "ciu-drive", "ciu-sample"; + pinctrl-names = "default"; + pinctrl-0 = <&sdmmc_clk>; fifo-depth = <0x100>; status = "disabled"; }; @@ -228,6 +231,50 @@ status = "disabled"; }; + dwc3_typec0: usb@fe800000 { + compatible = "rockchip,rk3399-xhci"; + reg = <0x0 0xfe800000 0x0 0x100000>; + status = "disabled"; + rockchip,vbus-gpio = <&gpio1 3 GPIO_ACTIVE_HIGH>; + snps,dis-enblslpm-quirk; + snps,phyif-utmi-bits = <16>; + snps,dis-u2-freeclk-exists-quirk; + snps,dis-u2-susphy-quirk; + + #address-cells = <2>; + #size-cells = <2>; + hub { + compatible = "usb-hub"; + usb,device-class = <USB_CLASS_HUB>; + }; + typec_phy0 { + compatible = "rockchip,rk3399-usb3-phy"; + reg = <0x0 0xff7c0000 0x0 0x40000>; + }; + }; + + dwc3_typec1: usb@fe900000 { + compatible = "rockchip,rk3399-xhci"; + reg = <0x0 0xfe900000 0x0 0x100000>; + status = "disabled"; + rockchip,vbus-gpio = <&gpio1 4 GPIO_ACTIVE_HIGH>; + snps,dis-enblslpm-quirk; + snps,phyif-utmi-bits = <16>; + snps,dis-u2-freeclk-exists-quirk; + snps,dis-u2-susphy-quirk; + + #address-cells = <2>; + #size-cells = <2>; + hub { + compatible = "usb-hub"; + usb,device-class = <USB_CLASS_HUB>; + }; + typec_phy1 { + compatible = "rockchip,rk3399-usb3-phy"; + reg = <0x0 0xff800000 0x0 0x40000>; + }; + }; + gic: interrupt-controller@fee00000 { compatible = "arm,gic-v3"; #interrupt-cells = <3>; @@ -771,6 +818,41 @@ }; }; + sdmmc { + sdmmc_bus1: sdmmc-bus1 { + rockchip,pins = + <4 8 RK_FUNC_1 &pcfg_pull_up>; + }; + + sdmmc_bus4: sdmmc-bus4 { + rockchip,pins = + <4 8 RK_FUNC_1 &pcfg_pull_up>, + <4 9 RK_FUNC_1 &pcfg_pull_up>, + <4 10 RK_FUNC_1 &pcfg_pull_up>, + <4 11 RK_FUNC_1 &pcfg_pull_up>; + }; + + sdmmc_clk: sdmmc-clk { + rockchip,pins = + <4 12 RK_FUNC_1 &pcfg_pull_none>; + }; + + sdmmc_cmd: sdmmc-cmd { + rockchip,pins = + <4 13 RK_FUNC_1 &pcfg_pull_up>; + }; + + sdmmc_cd: sdmcc-cd { + rockchip,pins = + <0 7 RK_FUNC_1 &pcfg_pull_up>; + }; + + sdmmc_wp: sdmmc-wp { + rockchip,pins = + <0 8 RK_FUNC_1 &pcfg_pull_up>; + }; + }; + spdif { spdif_bus: spdif-bus { rockchip,pins = diff --git a/arch/arm/dts/sun8i-h3-nanopi-neo.dts b/arch/arm/dts/sun8i-h3-nanopi-neo.dts new file mode 100644 index 0000000000..3d64cafc1e --- /dev/null +++ b/arch/arm/dts/sun8i-h3-nanopi-neo.dts @@ -0,0 +1,125 @@ +/* + * Copyright (C) 2016 James Pettigrew <james@innovum.com.au> + * + * This file is dual-licensed: you can use it either under the terms + * of the GPL or the X11 license, at your option. Note that this dual + * licensing only applies to this file, and not this project as a + * whole. + * + * a) This file is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of the + * License, or (at your option) any later version. + * + * This file is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * Or, alternatively, + * + * b) Permission is hereby granted, free of charge, to any person + * obtaining a copy of this software and associated documentation + * files (the "Software"), to deal in the Software without + * restriction, including without limitation the rights to use, + * copy, modify, merge, publish, distribute, sublicense, and/or + * sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following + * conditions: + * + * The above copyright notice and this permission notice shall be + * included in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE. + */ + +/dts-v1/; +#include "sun8i-h3.dtsi" +#include "sunxi-common-regulators.dtsi" + +#include <dt-bindings/gpio/gpio.h> +#include <dt-bindings/pinctrl/sun4i-a10.h> + +/ { + model = "FriendlyARM NanoPi NEO"; + compatible = "friendlyarm,nanopi-neo", "allwinner,sun8i-h3"; + + aliases { + serial0 = &uart0; + }; + + chosen { + stdout-path = "serial0:115200n8"; + }; + + leds { + compatible = "gpio-leds"; + pinctrl-names = "default"; + pinctrl-0 = <&leds_opc>, <&leds_r_opc>; + + pwr { + label = "nanopi:green:pwr"; + gpios = <&r_pio 0 10 GPIO_ACTIVE_HIGH>; /* PL10 */ + default-state = "on"; + }; + + status { + label = "nanopi:blue:status"; + gpios = <&pio 0 10 GPIO_ACTIVE_HIGH>; /* PA10 */ + }; + }; +}; + +&ehci3 { + status = "okay"; +}; + +&mmc0 { + pinctrl-names = "default"; + pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin>; + vmmc-supply = <®_vcc3v3>; + bus-width = <4>; + cd-gpios = <&pio 5 6 GPIO_ACTIVE_HIGH>; /* PF6 */ + cd-inverted; + status = "okay"; +}; + +&ohci3 { + status = "okay"; +}; + +&pio { + leds_opc: led-pins { + allwinner,pins = "PA10"; + allwinner,function = "gpio_out"; + allwinner,drive = <SUN4I_PINCTRL_10_MA>; + allwinner,pull = <SUN4I_PINCTRL_NO_PULL>; + }; +}; + +&r_pio { + leds_r_opc: led-pins { + allwinner,pins = "PL10"; + allwinner,function = "gpio_out"; + allwinner,drive = <SUN4I_PINCTRL_10_MA>; + allwinner,pull = <SUN4I_PINCTRL_NO_PULL>; + }; +}; + +&uart0 { + pinctrl-names = "default"; + pinctrl-0 = <&uart0_pins_a>; + status = "okay"; +}; + +&usbphy { + /* USB VBUS is always on */ + status = "okay"; +}; diff --git a/arch/arm/dts/uniphier-common32.dtsi b/arch/arm/dts/uniphier-common32.dtsi index b0b2b57bb9..e4410339eb 100644 --- a/arch/arm/dts/uniphier-common32.dtsi +++ b/arch/arm/dts/uniphier-common32.dtsi @@ -31,7 +31,7 @@ interrupts = <0 33 4>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_uart0>; - clocks = <&uart_clk>; + clocks = <&peri_clk 0>; }; serial1: serial@54006900 { @@ -41,7 +41,7 @@ interrupts = <0 35 4>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_uart1>; - clocks = <&uart_clk>; + clocks = <&peri_clk 1>; }; serial2: serial@54006a00 { @@ -51,7 +51,7 @@ interrupts = <0 37 4>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_uart2>; - clocks = <&uart_clk>; + clocks = <&peri_clk 2>; }; serial3: serial@54006b00 { @@ -61,7 +61,7 @@ interrupts = <0 177 4>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_uart3>; - clocks = <&uart_clk>; + clocks = <&peri_clk 3>; }; system_bus: system-bus@58c00000 { @@ -79,16 +79,33 @@ reg = <0x59801000 0x400>; }; - mio: mioctrl@59810000 { - /* specify compatible in each SoC DTSI */ + mioctrl@59810000 { + compatible = "socionext,uniphier-mioctrl", + "simple-mfd", "syscon"; reg = <0x59810000 0x800>; - #clock-cells = <1>; + u-boot,dm-pre-reloc; + + mio_clk: clock { + #clock-cells = <1>; + }; + + mio_rst: reset { + #reset-cells = <1>; + }; }; - peri: perictrl@59820000 { - /* specify compatible in each SoC DTSI */ + perictrl@59820000 { + compatible = "socionext,uniphier-perictrl", + "simple-mfd", "syscon"; reg = <0x59820000 0x200>; - #clock-cells = <1>; + + peri_clk: clock { + #clock-cells = <1>; + }; + + peri_rst: reset { + #reset-cells = <1>; + }; }; timer@60000200 { @@ -114,7 +131,8 @@ }; soc-glue@5f800000 { - compatible = "simple-mfd", "syscon"; + compatible = "socionext,uniphier-soc-glue", + "simple-mfd", "syscon"; reg = <0x5f800000 0x2000>; u-boot,dm-pre-reloc; @@ -124,12 +142,18 @@ }; }; - sysctrl: sysctrl@61840000 { - /* specify compatible in each SoC DTSI */ + sysctrl@61840000 { + compatible = "socionext,uniphier-sysctrl", + "simple-mfd", "syscon"; reg = <0x61840000 0x4000>; - #clock-cells = <1>; - clock-names = "ref"; - clocks = <&refclk>; + + sys_clk: clock { + #clock-cells = <1>; + }; + + sys_rst: reset { + #reset-cells = <1>; + }; }; nand: nand@68000000 { diff --git a/arch/arm/dts/uniphier-ph1-ld11-ref.dts b/arch/arm/dts/uniphier-ph1-ld11-ref.dts index 4eb7664a9e..ca31026738 100644 --- a/arch/arm/dts/uniphier-ph1-ld11-ref.dts +++ b/arch/arm/dts/uniphier-ph1-ld11-ref.dts @@ -70,3 +70,7 @@ &pinctrl_uart0 { u-boot,dm-pre-reloc; }; + +&pinctrl_system_bus { + u-boot,dm-pre-reloc; +}; diff --git a/arch/arm/dts/uniphier-ph1-ld11.dtsi b/arch/arm/dts/uniphier-ph1-ld11.dtsi index ffe04f5cb6..0bdbbddd9d 100644 --- a/arch/arm/dts/uniphier-ph1-ld11.dtsi +++ b/arch/arm/dts/uniphier-ph1-ld11.dtsi @@ -54,12 +54,6 @@ clock-frequency = <25000000>; }; - uart_clk: uart_clk { - #clock-cells = <0>; - compatible = "fixed-clock"; - clock-frequency = <58820000>; - }; - i2c_clk: i2c_clk { #clock-cells = <0>; compatible = "fixed-clock"; @@ -69,10 +63,10 @@ timer { compatible = "arm,armv8-timer"; - interrupts = <1 13 0xf01>, - <1 14 0xf01>, - <1 11 0xf01>, - <1 10 0xf01>; + interrupts = <1 13 4>, + <1 14 4>, + <1 11 4>, + <1 10 4>; }; soc { @@ -89,7 +83,7 @@ interrupts = <0 33 4>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_uart0>; - clocks = <&uart_clk>; + clocks = <&peri_clk 0>; clock-frequency = <58820000>; }; @@ -100,7 +94,7 @@ interrupts = <0 35 4>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_uart1>; - clocks = <&uart_clk>; + clocks = <&peri_clk 1>; clock-frequency = <58820000>; }; @@ -111,7 +105,7 @@ interrupts = <0 37 4>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_uart2>; - clocks = <&uart_clk>; + clocks = <&peri_clk 2>; clock-frequency = <58820000>; }; @@ -122,7 +116,7 @@ interrupts = <0 177 4>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_uart3>; - clocks = <&uart_clk>; + clocks = <&peri_clk 3>; clock-frequency = <58820000>; }; @@ -213,6 +207,22 @@ reg = <0x59801000 0x400>; }; + perictrl@59820000 { + compatible = "socionext,uniphier-perictrl", + "simple-mfd", "syscon"; + reg = <0x59820000 0x200>; + + peri_clk: clock { + compatible = "socionext,uniphier-ld11-peri-clock"; + #clock-cells = <1>; + }; + + peri_rst: reset { + compatible = "socionext,uniphier-ld11-peri-reset"; + #reset-cells = <1>; + }; + }; + usb0: usb@5a800100 { compatible = "socionext,uniphier-ehci", "generic-ehci"; status = "disabled"; @@ -220,7 +230,7 @@ interrupts = <0 243 4>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usb0>; - clocks = <&mio 3>, <&mio 6>; + clocks = <&mio_clk 3>, <&mio_clk 6>; }; usb1: usb@5a810100 { @@ -230,7 +240,7 @@ interrupts = <0 244 4>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usb1>; - clocks = <&mio 4>, <&mio 6>; + clocks = <&mio_clk 4>, <&mio_clk 6>; }; usb2: usb@5a820100 { @@ -240,17 +250,29 @@ interrupts = <0 245 4>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usb2>; - clocks = <&mio 5>, <&mio 6>; + clocks = <&mio_clk 5>, <&mio_clk 6>; }; - mio: mioctrl@5b3e0000 { - compatible = "socionext,ph1-ld11-mioctrl"; + mioctrl@5b3e0000 { + compatible = "socionext,uniphier-mioctrl", + "simple-mfd", "syscon"; reg = <0x5b3e0000 0x800>; - #clock-cells = <1>; + + mio_clk: clock { + compatible = "socionext,uniphier-ld11-mio-clock"; + #clock-cells = <1>; + }; + + mio_rst: reset { + compatible = "socionext,uniphier-ld11-mio-reset"; + #reset-cells = <1>; + resets = <&sys_rst 7>; + }; }; soc-glue@5f800000 { - compatible = "simple-mfd", "syscon"; + compatible = "socionext,uniphier-soc-glue", + "simple-mfd", "syscon"; reg = <0x5f800000 0x2000>; u-boot,dm-pre-reloc; @@ -273,6 +295,22 @@ #interrupt-cells = <3>; interrupts = <1 9 4>; }; + + sysctrl@61840000 { + compatible = "socionext,uniphier-ld11-sysctrl", + "simple-mfd", "syscon"; + reg = <0x61840000 0x4000>; + + sys_clk: clock { + compatible = "socionext,uniphier-ld11-clock"; + #clock-cells = <1>; + }; + + sys_rst: reset { + compatible = "socionext,uniphier-ld11-reset"; + #reset-cells = <1>; + }; + }; }; }; diff --git a/arch/arm/dts/uniphier-ph1-ld20-ref.dts b/arch/arm/dts/uniphier-ph1-ld20-ref.dts index 90c8705fff..e4e8d76749 100644 --- a/arch/arm/dts/uniphier-ph1-ld20-ref.dts +++ b/arch/arm/dts/uniphier-ph1-ld20-ref.dts @@ -58,3 +58,7 @@ &pinctrl_uart0 { u-boot,dm-pre-reloc; }; + +&pinctrl_system_bus { + u-boot,dm-pre-reloc; +}; diff --git a/arch/arm/dts/uniphier-ph1-ld20.dtsi b/arch/arm/dts/uniphier-ph1-ld20.dtsi index 7497539467..7f97f8816a 100644 --- a/arch/arm/dts/uniphier-ph1-ld20.dtsi +++ b/arch/arm/dts/uniphier-ph1-ld20.dtsi @@ -78,12 +78,6 @@ clock-frequency = <25000000>; }; - uart_clk: uart_clk { - #clock-cells = <0>; - compatible = "fixed-clock"; - clock-frequency = <58820000>; - }; - i2c_clk: i2c_clk { #clock-cells = <0>; compatible = "fixed-clock"; @@ -93,10 +87,10 @@ timer { compatible = "arm,armv8-timer"; - interrupts = <1 13 0xf01>, - <1 14 0xf01>, - <1 11 0xf01>, - <1 10 0xf01>; + interrupts = <1 13 4>, + <1 14 4>, + <1 11 4>, + <1 10 4>; }; soc { @@ -113,7 +107,7 @@ interrupts = <0 33 4>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_uart0>; - clocks = <&uart_clk>; + clocks = <&peri_clk 0>; clock-frequency = <58820000>; }; @@ -124,7 +118,7 @@ interrupts = <0 35 4>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_uart1>; - clocks = <&uart_clk>; + clocks = <&peri_clk 1>; clock-frequency = <58820000>; }; @@ -135,7 +129,7 @@ interrupts = <0 37 4>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_uart2>; - clocks = <&uart_clk>; + clocks = <&peri_clk 2>; clock-frequency = <58820000>; }; @@ -146,7 +140,7 @@ interrupts = <0 177 4>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_uart3>; - clocks = <&uart_clk>; + clocks = <&peri_clk 3>; clock-frequency = <58820000>; }; @@ -237,10 +231,36 @@ reg = <0x59801000 0x400>; }; - mio: mioctrl@59810000 { - compatible = "socionext,ph1-ld20-mioctrl"; + mioctrl@59810000 { + compatible = "socionext,uniphier-mioctrl", + "simple-mfd", "syscon"; reg = <0x59810000 0x800>; - #clock-cells = <1>; + + mio_clk: clock { + compatible = "socionext,uniphier-ld20-mio-clock"; + #clock-cells = <1>; + }; + + mio_rst: reset { + compatible = "socionext,uniphier-ld20-mio-reset"; + #reset-cells = <1>; + }; + }; + + perictrl@59820000 { + compatible = "socionext,uniphier-perictrl", + "simple-mfd", "syscon"; + reg = <0x59820000 0x200>; + + peri_clk: clock { + compatible = "socionext,uniphier-ld20-peri-clock"; + #clock-cells = <1>; + }; + + peri_rst: reset { + compatible = "socionext,uniphier-ld20-peri-reset"; + #reset-cells = <1>; + }; }; sd: sdhc@5a400000 { @@ -250,12 +270,13 @@ interrupts = <0 76 4>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_sd>; - clocks = <&mio 0>; + clocks = <&mio_clk 0>; bus-width = <4>; }; soc-glue@5f800000 { - compatible = "simple-mfd", "syscon"; + compatible = "socionext,uniphier-soc-glue", + "simple-mfd", "syscon"; reg = <0x5f800000 0x2000>; u-boot,dm-pre-reloc; @@ -278,6 +299,22 @@ #interrupt-cells = <3>; interrupts = <1 9 4>; }; + + sysctrl@61840000 { + compatible = "socionext,uniphier-sysctrl", + "simple-mfd", "syscon"; + reg = <0x61840000 0x4000>; + + sys_clk: clock { + compatible = "socionext,uniphier-ld20-clock"; + #clock-cells = <1>; + }; + + sys_rst: reset { + compatible = "socionext,uniphier-ld20-reset"; + #reset-cells = <1>; + }; + }; }; }; diff --git a/arch/arm/dts/uniphier-ph1-ld4.dtsi b/arch/arm/dts/uniphier-ph1-ld4.dtsi index 07f315a2b7..e4884b9516 100644 --- a/arch/arm/dts/uniphier-ph1-ld4.dtsi +++ b/arch/arm/dts/uniphier-ph1-ld4.dtsi @@ -30,12 +30,6 @@ clock-frequency = <50000000>; }; - uart_clk: uart_clk { - #clock-cells = <0>; - compatible = "fixed-clock"; - clock-frequency = <36864000>; - }; - iobus_clk: iobus_clk { #clock-cells = <0>; compatible = "fixed-clock"; @@ -228,7 +222,7 @@ pinctrl-names = "default", "1.8v"; pinctrl-0 = <&pinctrl_sd>; pinctrl-1 = <&pinctrl_sd_1v8>; - clocks = <&mio 0>; + clocks = <&mio_clk 0>; bus-width = <4>; }; @@ -240,7 +234,7 @@ pinctrl-names = "default", "1.8v"; pinctrl-0 = <&pinctrl_emmc>; pinctrl-1 = <&pinctrl_emmc_1v8>; - clocks = <&mio 1>; + clocks = <&mio_clk 1>; bus-width = <8>; non-removable; }; @@ -252,7 +246,7 @@ interrupts = <0 80 4>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usb0>; - clocks = <&mio 3>, <&mio 6>; + clocks = <&mio_clk 3>, <&mio_clk 6>; }; usb1: usb@5a810100 { @@ -262,7 +256,7 @@ interrupts = <0 81 4>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usb1>; - clocks = <&mio 4>, <&mio 6>; + clocks = <&mio_clk 4>, <&mio_clk 6>; }; usb2: usb@5a820100 { @@ -272,7 +266,7 @@ interrupts = <0 82 4>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usb2>; - clocks = <&mio 5>, <&mio 6>; + clocks = <&mio_clk 5>, <&mio_clk 6>; }; aidet@61830000 { @@ -302,22 +296,30 @@ clock-frequency = <36864000>; }; -&mio { - compatible = "socionext,ph1-ld4-mioctrl"; - clock-names = "stdmac", "ehci"; - clocks = <&sysctrl 10>, <&sysctrl 18>; +&mio_clk { + compatible = "socionext,uniphier-ld4-mio-clock"; +}; + +&mio_rst { + compatible = "socionext,uniphier-ld4-mio-reset"; +}; + +&peri_clk { + compatible = "socionext,uniphier-ld4-peri-clock"; }; -&peri { - compatible = "socionext,ph1-ld4-perictrl"; - clock-names = "uart", "i2c"; - clocks = <&sysctrl 3>, <&sysctrl 4>; +&peri_rst { + compatible = "socionext,uniphier-ld4-peri-reset"; }; &pinctrl { compatible = "socionext,uniphier-ld4-pinctrl"; }; -&sysctrl { - compatible = "socionext,ph1-ld4-sysctrl"; +&sys_clk { + compatible = "socionext,uniphier-ld4-clock"; +}; + +&sys_rst { + compatible = "socionext,uniphier-ld4-reset"; }; diff --git a/arch/arm/dts/uniphier-ph1-pro4-sanji.dts b/arch/arm/dts/uniphier-ph1-pro4-sanji.dts index 965fe08e38..3f178d239a 100644 --- a/arch/arm/dts/uniphier-ph1-pro4-sanji.dts +++ b/arch/arm/dts/uniphier-ph1-pro4-sanji.dts @@ -89,7 +89,7 @@ u-boot,dm-pre-reloc; }; -&mio { +&mio_clk { u-boot,dm-pre-reloc; }; diff --git a/arch/arm/dts/uniphier-ph1-pro4.dtsi b/arch/arm/dts/uniphier-ph1-pro4.dtsi index e0b28b8291..192ce841e1 100644 --- a/arch/arm/dts/uniphier-ph1-pro4.dtsi +++ b/arch/arm/dts/uniphier-ph1-pro4.dtsi @@ -351,7 +351,7 @@ pinctrl-names = "default", "1.8v"; pinctrl-0 = <&pinctrl_sd>; pinctrl-1 = <&pinctrl_sd_1v8>; - clocks = <&mio 0>; + clocks = <&mio_clk 0>; bus-width = <4>; }; @@ -363,7 +363,7 @@ pinctrl-names = "default", "1.8v"; pinctrl-0 = <&pinctrl_emmc>; pinctrl-1 = <&pinctrl_emmc_1v8>; - clocks = <&mio 1>; + clocks = <&mio_clk 1>; bus-width = <8>; non-removable; }; @@ -376,7 +376,7 @@ pinctrl-names = "default", "1.8v"; pinctrl-0 = <&pinctrl_sd1>; pinctrl-1 = <&pinctrl_sd1_1v8>; - clocks = <&mio 2>; + clocks = <&mio_clk 2>; bus-width = <4>; }; @@ -387,7 +387,7 @@ interrupts = <0 80 4>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usb2>; - clocks = <&mio 3>, <&mio 6>; + clocks = <&mio_clk 3>, <&mio_clk 6>; }; usb3: usb@5a810100 { @@ -397,7 +397,7 @@ interrupts = <0 81 4>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usb3>; - clocks = <&mio 4>, <&mio 6>; + clocks = <&mio_clk 4>, <&mio_clk 6>; }; aidet@5fc20000 { @@ -444,22 +444,30 @@ clock-frequency = <73728000>; }; -&mio { - compatible = "socionext,ph1-pro4-mioctrl"; - clock-names = "stdmac", "ehci"; - clocks = <&sysctrl 10>, <&sysctrl 18>; +&mio_clk { + compatible = "socionext,uniphier-pro4-mio-clock"; }; -&peri { - compatible = "socionext,ph1-pro4-perictrl"; - clock-names = "uart", "fi2c"; - clocks = <&sysctrl 3>, <&sysctrl 4>; +&mio_rst { + compatible = "socionext,uniphier-pro4-mio-reset"; +}; + +&peri_clk { + compatible = "socionext,uniphier-pro4-peri-clock"; +}; + +&peri_rst { + compatible = "socionext,uniphier-pro4-peri-reset"; }; &pinctrl { compatible = "socionext,uniphier-pro4-pinctrl"; }; -&sysctrl { - compatible = "socionext,ph1-pro4-sysctrl"; +&sys_clk { + compatible = "socionext,uniphier-pro4-clock"; +}; + +&sys_rst { + compatible = "socionext,uniphier-pro4-reset"; }; diff --git a/arch/arm/dts/uniphier-ph1-pro5.dtsi b/arch/arm/dts/uniphier-ph1-pro5.dtsi index 05f961f588..22a70b1a60 100644 --- a/arch/arm/dts/uniphier-ph1-pro5.dtsi +++ b/arch/arm/dts/uniphier-ph1-pro5.dtsi @@ -38,12 +38,6 @@ clock-frequency = <50000000>; }; - uart_clk: uart_clk { - #clock-cells = <0>; - compatible = "fixed-clock"; - clock-frequency = <73728000>; - }; - i2c_clk: i2c_clk { #clock-cells = <0>; compatible = "fixed-clock"; @@ -367,7 +361,7 @@ interrupts = <0 78 4>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_emmc>; - clocks = <&mio 1>; + clocks = <&mio_clk 1>; bus-width = <8>; non-removable; }; @@ -380,7 +374,7 @@ pinctrl-names = "default", "1.8v"; pinctrl-0 = <&pinctrl_sd>; pinctrl-1 = <&pinctrl_sd_1v8>; - clocks = <&mio 0>; + clocks = <&mio_clk 0>; bus-width = <4>; }; @@ -423,22 +417,30 @@ clock-frequency = <73728000>; }; -&mio { - compatible = "socionext,ph1-pro5-mioctrl"; - clock-names = "stdmac"; - clocks = <&sysctrl 10>; +&mio_clk { + compatible = "socionext,uniphier-pro5-mio-clock"; +}; + +&mio_rst { + compatible = "socionext,uniphier-pro5-mio-reset"; +}; + +&peri_clk { + compatible = "socionext,uniphier-pro5-peri-clock"; }; -&peri { - compatible = "socionext,ph1-pro5-perictrl"; - clock-names = "uart", "fi2c"; - clocks = <&sysctrl 3>, <&sysctrl 4>; +&peri_rst { + compatible = "socionext,uniphier-pro5-peri-reset"; }; &pinctrl { compatible = "socionext,uniphier-pro5-pinctrl"; }; -&sysctrl { - compatible = "socionext,ph1-pro5-sysctrl"; +&sys_clk { + compatible = "socionext,uniphier-pro5-clock"; +}; + +&sys_rst { + compatible = "socionext,uniphier-pro5-reset"; }; diff --git a/arch/arm/dts/uniphier-ph1-sld3-ref.dts b/arch/arm/dts/uniphier-ph1-sld3-ref.dts index 0863588d99..116e571e4e 100644 --- a/arch/arm/dts/uniphier-ph1-sld3-ref.dts +++ b/arch/arm/dts/uniphier-ph1-sld3-ref.dts @@ -86,10 +86,14 @@ u-boot,dm-pre-reloc; }; -&mio { +&emmc { u-boot,dm-pre-reloc; }; -&emmc { - u-boot,dm-pre-reloc; +&pinctrl_uart0 { + u-boot,dm-pre-reloc; +}; + +&pinctrl_emmc { + u-boot,dm-pre-reloc; }; diff --git a/arch/arm/dts/uniphier-ph1-sld3.dtsi b/arch/arm/dts/uniphier-ph1-sld3.dtsi index 6a95541311..a554b086e8 100644 --- a/arch/arm/dts/uniphier-ph1-sld3.dtsi +++ b/arch/arm/dts/uniphier-ph1-sld3.dtsi @@ -42,12 +42,6 @@ clock-frequency = <50000000>; }; - uart_clk: uart_clk { - #clock-cells = <0>; - compatible = "fixed-clock"; - clock-frequency = <36864000>; - }; - iobus_clk: iobus_clk { #clock-cells = <0>; compatible = "fixed-clock"; @@ -90,7 +84,8 @@ status = "disabled"; reg = <0x54006800 0x40>; interrupts = <0 33 4>; - clocks = <&uart_clk>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_uart0>; clock-frequency = <36864000>; }; @@ -99,7 +94,8 @@ status = "disabled"; reg = <0x54006900 0x40>; interrupts = <0 35 4>; - clocks = <&uart_clk>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_uart1>; clock-frequency = <36864000>; }; @@ -108,7 +104,8 @@ status = "disabled"; reg = <0x54006a00 0x40>; interrupts = <0 37 4>; - clocks = <&uart_clk>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_uart2>; clock-frequency = <36864000>; }; @@ -231,6 +228,8 @@ #address-cells = <1>; #size-cells = <0>; interrupts = <0 41 1>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_i2c0>; clocks = <&iobus_clk>; clock-frequency = <100000>; }; @@ -291,12 +290,22 @@ reg = <0x59801000 0x400>; }; - mio: mioctrl@59810000 { - compatible = "socionext,ph1-sld3-mioctrl"; + mioctrl@59810000 { + compatible = "socionext,uniphier-mioctrl", + "simple-mfd", "syscon"; reg = <0x59810000 0x800>; - #clock-cells = <1>; - clock-names = "stdmac", "ehci"; - clocks = <&sysctrl 10>, <&sysctrl 18>; + u-boot,dm-pre-reloc; + + mio_clk: clock { + compatible = "socionext,uniphier-sld3-mio-clock"; + #clock-cells = <1>; + u-boot,dm-pre-reloc; + }; + + mio_rst: reset { + compatible = "socionext,uniphier-sld3-mio-reset"; + #reset-cells = <1>; + }; }; emmc: sdhc@5a400000 { @@ -304,7 +313,10 @@ status = "disabled"; reg = <0x5a400000 0x200>; interrupts = <0 78 4>; - clocks = <&mio 1>; + pinctrl-names = "default", "1.8v"; + pinctrl-0 = <&pinctrl_emmc>; + pinctrl-1 = <&pinctrl_emmc_1v8>; + clocks = <&mio_clk 1>; bus-width = <8>; non-removable; }; @@ -314,7 +326,10 @@ status = "disabled"; reg = <0x5a500000 0x200>; interrupts = <0 76 4>; - clocks = <&mio 0>; + pinctrl-names = "default", "1.8v"; + pinctrl-0 = <&pinctrl_sd>; + pinctrl-1 = <&pinctrl_sd_1v8>; + clocks = <&mio_clk 0>; bus-width = <4>; }; @@ -323,7 +338,9 @@ status = "disabled"; reg = <0x5a800100 0x100>; interrupts = <0 80 4>; - clocks = <&mio 3>, <&mio 6>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_usb0>; + clocks = <&mio_clk 3>, <&mio_clk 6>; }; usb1: usb@5a810100 { @@ -331,7 +348,9 @@ status = "disabled"; reg = <0x5a810100 0x100>; interrupts = <0 81 4>; - clocks = <&mio 4>, <&mio 6>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_usb1>; + clocks = <&mio_clk 4>, <&mio_clk 6>; }; usb2: usb@5a820100 { @@ -339,7 +358,9 @@ status = "disabled"; reg = <0x5a820100 0x100>; interrupts = <0 82 4>; - clocks = <&mio 5>, <&mio 6>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_usb2>; + clocks = <&mio_clk 5>, <&mio_clk 6>; }; usb3: usb@5a830100 { @@ -347,7 +368,20 @@ status = "disabled"; reg = <0x5a830100 0x100>; interrupts = <0 83 4>; - clocks = <&mio 7>, <&mio 6>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_usb3>; + clocks = <&mio_clk 7>, <&mio_clk 6>; + }; + + soc-glue@5f800000 { + compatible = "simple-mfd", "syscon"; + reg = <0x5f800000 0x2000>; + u-boot,dm-pre-reloc; + + pinctrl: pinctrl { + compatible = "socionext,uniphier-sld3-pinctrl"; + u-boot,dm-pre-reloc; + }; }; aidet@f1830000 { @@ -355,12 +389,20 @@ reg = <0xf1830000 0x200>; }; - sysctrl: sysctrl@f1840000 { - compatible = "socionext,ph1-sld3-sysctrl"; + sysctrl@f1840000 { + compatible = "socionext,uniphier-sysctrl", + "simple-mfd", "syscon"; reg = <0xf1840000 0x4000>; - #clock-cells = <1>; - clock-names = "ref"; - clocks = <&refclk>; + + sys_clk: clock { + compatible = "socionext,uniphier-sld3-clock"; + #clock-cells = <1>; + }; + + sys_rst: reset { + compatible = "socionext,uniphier-sld3-reset"; + #reset-cells = <1>; + }; }; nand: nand@f8000000 { @@ -370,3 +412,5 @@ }; }; }; + +/include/ "uniphier-pinctrl.dtsi" diff --git a/arch/arm/dts/uniphier-ph1-sld8.dtsi b/arch/arm/dts/uniphier-ph1-sld8.dtsi index e0376a1e96..1ecce5030f 100644 --- a/arch/arm/dts/uniphier-ph1-sld8.dtsi +++ b/arch/arm/dts/uniphier-ph1-sld8.dtsi @@ -30,12 +30,6 @@ clock-frequency = <50000000>; }; - uart_clk: uart_clk { - #clock-cells = <0>; - compatible = "fixed-clock"; - clock-frequency = <80000000>; - }; - iobus_clk: iobus_clk { #clock-cells = <0>; compatible = "fixed-clock"; @@ -228,7 +222,7 @@ pinctrl-names = "default", "1.8v"; pinctrl-0 = <&pinctrl_sd>; pinctrl-1 = <&pinctrl_sd_1v8>; - clocks = <&mio 0>; + clocks = <&mio_clk 0>; bus-width = <4>; }; @@ -240,7 +234,7 @@ pinctrl-names = "default", "1.8v"; pinctrl-0 = <&pinctrl_emmc>; pinctrl-1 = <&pinctrl_emmc_1v8>; - clocks = <&mio 1>; + clocks = <&mio_clk 1>; bus-width = <8>; non-removable; }; @@ -252,7 +246,7 @@ interrupts = <0 80 4>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usb0>; - clocks = <&mio 3>, <&mio 6>; + clocks = <&mio_clk 3>, <&mio_clk 6>; }; usb1: usb@5a810100 { @@ -262,7 +256,7 @@ interrupts = <0 81 4>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usb1>; - clocks = <&mio 4>, <&mio 6>; + clocks = <&mio_clk 4>, <&mio_clk 6>; }; usb2: usb@5a820100 { @@ -272,7 +266,7 @@ interrupts = <0 82 4>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usb2>; - clocks = <&mio 5>, <&mio 6>; + clocks = <&mio_clk 5>, <&mio_clk 6>; }; aidet@61830000 { @@ -302,22 +296,30 @@ clock-frequency = <80000000>; }; -&mio { - compatible = "socionext,ph1-sld8-mioctrl"; - clock-names = "stdmac", "ehci"; - clocks = <&sysctrl 10>, <&sysctrl 18>; +&mio_clk { + compatible = "socionext,uniphier-sld8-mio-clock"; +}; + +&mio_rst { + compatible = "socionext,uniphier-sld8-mio-reset"; +}; + +&peri_clk { + compatible = "socionext,uniphier-sld8-peri-clock"; }; -&peri { - compatible = "socionext,ph1-sld8-perictrl"; - clock-names = "uart", "i2c"; - clocks = <&sysctrl 3>, <&sysctrl 4>; +&peri_rst { + compatible = "socionext,uniphier-sld8-peri-reset"; }; &pinctrl { compatible = "socionext,uniphier-sld8-pinctrl"; }; -&sysctrl { - compatible = "socionext,ph1-sld8-sysctrl"; +&sys_clk { + compatible = "socionext,uniphier-sld8-clock"; +}; + +&sys_rst { + compatible = "socionext,uniphier-sld8-reset"; }; diff --git a/arch/arm/dts/uniphier-proxstream2-gentil.dts b/arch/arm/dts/uniphier-proxstream2-gentil.dts index 117570352f..7233dc67ab 100644 --- a/arch/arm/dts/uniphier-proxstream2-gentil.dts +++ b/arch/arm/dts/uniphier-proxstream2-gentil.dts @@ -69,7 +69,7 @@ u-boot,dm-pre-reloc; }; -&mio { +&mio_clk { u-boot,dm-pre-reloc; }; diff --git a/arch/arm/dts/uniphier-proxstream2-vodka.dts b/arch/arm/dts/uniphier-proxstream2-vodka.dts index 928a0928fd..30ea27034c 100644 --- a/arch/arm/dts/uniphier-proxstream2-vodka.dts +++ b/arch/arm/dts/uniphier-proxstream2-vodka.dts @@ -54,7 +54,7 @@ u-boot,dm-pre-reloc; }; -&mio { +&mio_clk { u-boot,dm-pre-reloc; }; diff --git a/arch/arm/dts/uniphier-proxstream2.dtsi b/arch/arm/dts/uniphier-proxstream2.dtsi index 23a6bfac87..609cbaa9d7 100644 --- a/arch/arm/dts/uniphier-proxstream2.dtsi +++ b/arch/arm/dts/uniphier-proxstream2.dtsi @@ -52,12 +52,6 @@ clock-frequency = <50000000>; }; - uart_clk: uart_clk { - #clock-cells = <0>; - compatible = "fixed-clock"; - clock-frequency = <88900000>; - }; - i2c_clk: i2c_clk { #clock-cells = <0>; compatible = "fixed-clock"; @@ -366,7 +360,7 @@ interrupts = <0 78 4>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_emmc>; - clocks = <&mio 1>; + clocks = <&mio_clk 1>; bus-width = <8>; non-removable; }; @@ -379,7 +373,7 @@ pinctrl-names = "default", "1.8v"; pinctrl-0 = <&pinctrl_sd>; pinctrl-1 = <&pinctrl_sd_1v8>; - clocks = <&mio 0>; + clocks = <&mio_clk 0>; bus-width = <4>; }; @@ -427,22 +421,30 @@ clock-frequency = <88900000>; }; -&mio { - compatible = "socionext,proxstream2-mioctrl"; - clock-names = "stdmac"; - clocks = <&sysctrl 10>; +&mio_clk { + compatible = "socionext,uniphier-pxs2-mio-clock"; +}; + +&mio_rst { + compatible = "socionext,uniphier-pxs2-mio-reset"; +}; + +&peri_clk { + compatible = "socionext,uniphier-pxs2-peri-clock"; }; -&peri { - compatible = "socionext,proxstream2-perictrl"; - clock-names = "uart", "fi2c"; - clocks = <&sysctrl 3>, <&sysctrl 4>; +&peri_rst { + compatible = "socionext,uniphier-pxs2-peri-reset"; }; &pinctrl { compatible = "socionext,uniphier-pxs2-pinctrl"; }; -&sysctrl { - compatible = "socionext,proxstream2-sysctrl"; +&sys_clk { + compatible = "socionext,uniphier-pxs2-clock"; +}; + +&sys_rst { + compatible = "socionext,uniphier-pxs2-reset"; }; diff --git a/arch/arm/imx-common/cmd_bmode.c b/arch/arm/imx-common/cmd_bmode.c index 841b1d31c7..b0868aa871 100644 --- a/arch/arm/imx-common/cmd_bmode.c +++ b/arch/arm/imx-common/cmd_bmode.c @@ -4,7 +4,7 @@ * SPDX-License-Identifier: GPL-2.0+ */ #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/imx-common/boot_mode.h> #include <malloc.h> diff --git a/arch/arm/imx-common/cpu.c b/arch/arm/imx-common/cpu.c index 4223187261..a33aa16487 100644 --- a/arch/arm/imx-common/cpu.c +++ b/arch/arm/imx-common/cpu.c @@ -10,7 +10,7 @@ #include <bootm.h> #include <common.h> #include <netdev.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/arch/imx-regs.h> #include <asm/arch/clock.h> diff --git a/arch/arm/imx-common/i2c-mxv7.c b/arch/arm/imx-common/i2c-mxv7.c index ff72b1a1fc..ae8809c42d 100644 --- a/arch/arm/imx-common/i2c-mxv7.c +++ b/arch/arm/imx-common/i2c-mxv7.c @@ -7,7 +7,7 @@ #include <malloc.h> #include <asm/arch/clock.h> #include <asm/arch/imx-regs.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/imx-common/mxc_i2c.h> #include <watchdog.h> diff --git a/arch/arm/imx-common/misc.c b/arch/arm/imx-common/misc.c index 12256a38eb..1b0f18d33f 100644 --- a/arch/arm/imx-common/misc.c +++ b/arch/arm/imx-common/misc.c @@ -6,7 +6,7 @@ #include <common.h> #include <asm/arch/sys_proto.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/imx-common/regs-common.h> diff --git a/arch/arm/imx-common/rdc-sema.c b/arch/arm/imx-common/rdc-sema.c index dcb5c419ee..5df4e02b53 100644 --- a/arch/arm/imx-common/rdc-sema.c +++ b/arch/arm/imx-common/rdc-sema.c @@ -8,7 +8,7 @@ #include <asm/arch/imx-regs.h> #include <asm/imx-common/rdc-sema.h> #include <asm/arch/imx-rdc.h> -#include <asm-generic/errno.h> +#include <linux/errno.h> /* * Check if the RDC Semaphore is required for this peripheral. diff --git a/arch/arm/imx-common/video.c b/arch/arm/imx-common/video.c index 46f8a1e1dc..fdc987f469 100644 --- a/arch/arm/imx-common/video.c +++ b/arch/arm/imx-common/video.c @@ -3,7 +3,7 @@ */ #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/imx-common/video.h> int board_video_skip(void) diff --git a/arch/arm/include/asm/arch-rockchip/clock.h b/arch/arm/include/asm/arch-rockchip/clock.h index 21edbc2f89..804c77beaa 100644 --- a/arch/arm/include/asm/arch-rockchip/clock.h +++ b/arch/arm/include/asm/arch-rockchip/clock.h @@ -16,6 +16,7 @@ enum { ROCKCHIP_SYSCON_GRF, ROCKCHIP_SYSCON_SGRF, ROCKCHIP_SYSCON_PMU, + ROCKCHIP_SYSCON_PMUGRF, }; /* Standard Rockchip clock numbers */ diff --git a/arch/arm/include/asm/arch-rockchip/grf_rk3399.h b/arch/arm/include/asm/arch-rockchip/grf_rk3399.h new file mode 100644 index 0000000000..d3d1467ea4 --- /dev/null +++ b/arch/arm/include/asm/arch-rockchip/grf_rk3399.h @@ -0,0 +1,321 @@ +/* + * (C) Copyright 2016 Rockchip Electronics Co., Ltd + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#ifndef __SOC_ROCKCHIP_RK3399_GRF_H__ +#define __SOC_ROCKCHIP_RK3399_GRF_H__ + +struct rk3399_grf_regs { + u32 reserved[0x800]; + u32 usb3_perf_con0; + u32 usb3_perf_con1; + u32 usb3_perf_con2; + u32 usb3_perf_rd_max_latency_num; + u32 usb3_perf_rd_latency_samp_num; + u32 usb3_perf_rd_latency_acc_num; + u32 usb3_perf_rd_axi_total_byte; + u32 usb3_perf_wr_axi_total_byte; + u32 usb3_perf_working_cnt; + u32 reserved1[0x103]; + u32 usb3otg0_con0; + u32 usb3otg0_con1; + u32 reserved2[2]; + u32 usb3otg1_con0; + u32 usb3otg1_con1; + u32 reserved3[2]; + u32 usb3otg0_status_lat0; + u32 usb3otg0_status_lat1; + u32 usb3otg0_status_cb; + u32 reserved4; + u32 usb3otg1_status_lat0; + u32 usb3otg1_status_lat1; + u32 usb3ogt1_status_cb; + u32 reserved5[0x6e5]; + u32 pcie_perf_con0; + u32 pcie_perf_con1; + u32 pcie_perf_con2; + u32 pcie_perf_rd_max_latency_num; + u32 pcie_perf_rd_latency_samp_num; + u32 pcie_perf_rd_laterncy_acc_num; + u32 pcie_perf_rd_axi_total_byte; + u32 pcie_perf_wr_axi_total_byte; + u32 pcie_perf_working_cnt; + u32 reserved6[0x37]; + u32 usb20_host0_con0; + u32 usb20_host0_con1; + u32 reserved7[2]; + u32 usb20_host1_con0; + u32 usb20_host1_con1; + u32 reserved8[2]; + u32 hsic_con0; + u32 hsic_con1; + u32 reserved9[6]; + u32 grf_usbhost0_status; + u32 grf_usbhost1_Status; + u32 grf_hsic_status; + u32 reserved10[0xc9]; + u32 hsicphy_con0; + u32 reserved11[3]; + u32 usbphy0_ctrl[26]; + u32 reserved12[6]; + u32 usbphy1[26]; + u32 reserved13[0x72f]; + u32 soc_con9; + u32 reserved14[0x0a]; + u32 soc_con20; + u32 soc_con21; + u32 soc_con22; + u32 soc_con23; + u32 soc_con24; + u32 soc_con25; + u32 soc_con26; + u32 reserved15[0xf65]; + u32 cpu_con[4]; + u32 reserved16[0x1c]; + u32 cpu_status[6]; + u32 reserved17[0x1a]; + u32 a53_perf_con[4]; + u32 a53_perf_rd_mon_st; + u32 a53_perf_rd_mon_end; + u32 a53_perf_wr_mon_st; + u32 a53_perf_wr_mon_end; + u32 a53_perf_rd_max_latency_num; + u32 a53_perf_rd_latency_samp_num; + u32 a53_perf_rd_laterncy_acc_num; + u32 a53_perf_rd_axi_total_byte; + u32 a53_perf_wr_axi_total_byte; + u32 a53_perf_working_cnt; + u32 a53_perf_int_status; + u32 reserved18[0x31]; + u32 a72_perf_con[4]; + u32 a72_perf_rd_mon_st; + u32 a72_perf_rd_mon_end; + u32 a72_perf_wr_mon_st; + u32 a72_perf_wr_mon_end; + u32 a72_perf_rd_max_latency_num; + u32 a72_perf_rd_latency_samp_num; + u32 a72_perf_rd_laterncy_acc_num; + u32 a72_perf_rd_axi_total_byte; + u32 a72_perf_wr_axi_total_byte; + u32 a72_perf_working_cnt; + u32 a72_perf_int_status; + u32 reserved19[0x7f6]; + u32 soc_con5; + u32 soc_con6; + u32 reserved20[0x779]; + u32 gpio2a_iomux; + union { + u32 iomux_spi2; + u32 gpio2b_iomux; + }; + union { + u32 gpio2c_iomux; + u32 iomux_spi5; + }; + u32 gpio2d_iomux; + union { + u32 gpio3a_iomux; + u32 iomux_spi0; + }; + u32 gpio3b_iomux; + u32 gpio3c_iomux; + union { + u32 iomux_i2s0; + u32 gpio3d_iomux; + }; + union { + u32 iomux_i2sclk; + u32 gpio4a_iomux; + }; + union { + u32 iomux_sdmmc; + u32 iomux_uart2a; + u32 gpio4b_iomux; + }; + union { + u32 iomux_pwm_0; + u32 iomux_pwm_1; + u32 iomux_uart2b; + u32 iomux_uart2c; + u32 iomux_edp_hotplug; + u32 gpio4c_iomux; + }; + u32 gpio4d_iomux; + u32 reserved21[4]; + u32 gpio2_p[3][4]; + u32 reserved22[4]; + u32 gpio2_sr[3][4]; + u32 reserved23[4]; + u32 gpio2_smt[3][4]; + u32 reserved24[(0xe130 - 0xe0ec)/4 - 1]; + u32 gpio4b_e01; + u32 gpio4b_e2; + u32 reserved24a[(0xe200 - 0xe134)/4 - 1]; + u32 soc_con0; + u32 soc_con1; + u32 soc_con2; + u32 soc_con3; + u32 soc_con4; + u32 soc_con5_pcie; + u32 reserved25; + u32 soc_con7; + u32 soc_con8; + u32 soc_con9_pcie; + u32 reserved26[0x1e]; + u32 soc_status[6]; + u32 reserved27[0x32]; + u32 ddrc0_con0; + u32 ddrc0_con1; + u32 ddrc1_con0; + u32 ddrc1_con1; + u32 reserved28[0xac]; + u32 io_vsel; + u32 saradc_testbit; + u32 tsadc_testbit_l; + u32 tsadc_testbit_h; + u32 reserved29[0x6c]; + u32 chip_id_addr; + u32 reserved30[0x1f]; + u32 fast_boot_addr; + u32 reserved31[0x1df]; + u32 emmccore_con[12]; + u32 reserved32[4]; + u32 emmccore_status[4]; + u32 reserved33[0x1cc]; + u32 emmcphy_con[7]; + u32 reserved34; + u32 emmcphy_status; +}; +check_member(rk3399_grf_regs, emmcphy_status, 0xf7a0); + +struct rk3399_pmugrf_regs { + union { + u32 iomux_pwm_3a; + u32 gpio0a_iomux; + }; + u32 gpio0b_iomux; + u32 reserved0[2]; + union { + u32 spi1_rxd; + u32 tsadc_int; + u32 gpio1a_iomux; + }; + union { + u32 spi1_csclktx; + u32 iomux_pwm_3b; + u32 iomux_i2c0_sda; + u32 gpio1b_iomux; + }; + union { + u32 iomux_pwm_2; + u32 iomux_i2c0_scl; + u32 gpio1c_iomux; + }; + u32 gpio1d_iomux; + u32 reserved1[8]; + u32 gpio0_p[2][4]; + u32 reserved3[8]; + u32 gpio0a_e; + u32 reserved4; + u32 gpio0b_e; + u32 reserved5[5]; + u32 gpio1a_e; + u32 reserved6; + u32 gpio1b_e; + u32 reserved7; + u32 gpio1c_e; + u32 reserved8; + u32 gpio1d_e; + u32 reserved9[0x11]; + u32 gpio0l_sr; + u32 reserved10; + u32 gpio1l_sr; + u32 gpio1h_sr; + u32 reserved11[4]; + u32 gpio0a_smt; + u32 gpio0b_smt; + u32 reserved12[2]; + u32 gpio1a_smt; + u32 gpio1b_smt; + u32 gpio1c_smt; + u32 gpio1d_smt; + u32 reserved13[8]; + u32 gpio0l_he; + u32 reserved14; + u32 gpio1l_he; + u32 gpio1h_he; + u32 reserved15[4]; + u32 soc_con0; + u32 reserved16[9]; + u32 soc_con10; + u32 soc_con11; + u32 reserved17[0x24]; + u32 pmupvtm_con0; + u32 pmupvtm_con1; + u32 pmupvtm_status0; + u32 pmupvtm_status1; + u32 grf_osc_e; + u32 reserved18[0x2b]; + u32 os_reg0; + u32 os_reg1; + u32 os_reg2; + u32 os_reg3; +}; +check_member(rk3399_pmugrf_regs, os_reg3, 0x30c); + +struct rk3399_pmusgrf_regs { + u32 ddr_rgn_con[35]; + u32 reserved[0x1fe5]; + u32 soc_con8; + u32 soc_con9; + u32 soc_con10; + u32 soc_con11; + u32 soc_con12; + u32 soc_con13; + u32 soc_con14; + u32 soc_con15; + u32 reserved1[3]; + u32 soc_con19; + u32 soc_con20; + u32 soc_con21; + u32 soc_con22; + u32 reserved2[0x29]; + u32 perilp_con[9]; + u32 reserved4[7]; + u32 perilp_status; + u32 reserved5[0xfaf]; + u32 soc_con0; + u32 soc_con1; + u32 reserved6[0x3e]; + u32 pmu_con[9]; + u32 reserved7[0x17]; + u32 fast_boot_addr; + u32 reserved8[0x1f]; + u32 efuse_prg_mask; + u32 efuse_read_mask; + u32 reserved9[0x0e]; + u32 pmu_slv_con0; + u32 pmu_slv_con1; + u32 reserved10[0x771]; + u32 soc_con3; + u32 soc_con4; + u32 soc_con5; + u32 soc_con6; + u32 soc_con7; + u32 reserved11[8]; + u32 soc_con16; + u32 soc_con17; + u32 soc_con18; + u32 reserved12[0xdd]; + u32 slv_secure_con0; + u32 slv_secure_con1; + u32 reserved13; + u32 slv_secure_con2; + u32 slv_secure_con3; + u32 slv_secure_con4; +}; +check_member(rk3399_pmusgrf_regs, slv_secure_con4, 0xe3d4); + +#endif /* __SOC_ROCKCHIP_RK3399_GRF_H__ */ diff --git a/arch/arm/include/asm/arch-rockchip/sdram.h b/arch/arm/include/asm/arch-rockchip/sdram.h index e08e28f4f0..82c3d07cbb 100644 --- a/arch/arm/include/asm/arch-rockchip/sdram.h +++ b/arch/arm/include/asm/arch-rockchip/sdram.h @@ -24,12 +24,16 @@ struct rk3288_sdram_channel { u8 row_3_4; u8 cs0_row; u8 cs1_row; +#if CONFIG_IS_ENABLED(OF_PLATDATA) /* * For of-platdata, which would otherwise convert this into two * byte-swapped integers. With a size of 9 bytes, this struct will * appear in of-platdata as a byte array. + * + * If OF_PLATDATA enabled, need to add a dummy byte in dts.(i.e 0xff) */ u8 dummy; +#endif }; struct rk3288_sdram_pctl_timing { diff --git a/arch/arm/include/asm/arch-rockchip/sys_proto.h b/arch/arm/include/asm/arch-rockchip/sys_proto.h new file mode 100644 index 0000000000..35423e1ba0 --- /dev/null +++ b/arch/arm/include/asm/arch-rockchip/sys_proto.h @@ -0,0 +1,10 @@ +/* + * (C) Copyright 2016 Rockchip Electronics Co.,Ltd + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#ifndef _ASM_ARCH_SYS_PROTO_H +#define _ASM_ARCH_SYS_PROTO_H + +#endif /* _ASM_ARCH_SYS_PROTO_H */ diff --git a/arch/arm/include/asm/arch-sunxi/usb_phy.h b/arch/arm/include/asm/arch-sunxi/usb_phy.h index 6a14cad3ff..cef6c985bc 100644 --- a/arch/arm/include/asm/arch-sunxi/usb_phy.h +++ b/arch/arm/include/asm/arch-sunxi/usb_phy.h @@ -16,7 +16,6 @@ void sunxi_usb_phy_init(int index); void sunxi_usb_phy_exit(int index); void sunxi_usb_phy_power_on(int index); void sunxi_usb_phy_power_off(int index); -int sunxi_usb_phy_power_is_on(int index); int sunxi_usb_phy_vbus_detect(int index); int sunxi_usb_phy_id_detect(int index); void sunxi_usb_phy_enable_squelch_detect(int index, int enable); diff --git a/arch/arm/include/asm/arch-zynqmp/hardware.h b/arch/arm/include/asm/arch-zynqmp/hardware.h index 35964d603b..456c1b0902 100644 --- a/arch/arm/include/asm/arch-zynqmp/hardware.h +++ b/arch/arm/include/asm/arch-zynqmp/hardware.h @@ -25,6 +25,13 @@ #define ZYNQMP_CRL_APB_BASEADDR 0xFF5E0000 #define ZYNQMP_CRL_APB_TIMESTAMP_REF_CTRL_CLKACT 0x1000000 +#define ZYNQMP_CRL_APB_BOOT_PIN_CTRL_OUT_EN_SHIFT 0 +#define ZYNQMP_CRL_APB_BOOT_PIN_CTRL_OUT_VAL_SHIFT 8 + +#define PS_MODE0 BIT(0) +#define PS_MODE1 BIT(1) +#define PS_MODE2 BIT(2) +#define PS_MODE3 BIT(3) struct crlapb_regs { u32 reserved0[36]; @@ -35,7 +42,9 @@ struct crlapb_regs { u32 boot_mode; /* 0x200 */ u32 reserved3[14]; u32 rst_lpd_top; /* 0x23C */ - u32 reserved4[26]; + u32 reserved4[4]; + u32 boot_pin_ctrl; /* 0x250 */ + u32 reserved5[21]; }; #define crlapb_base ((struct crlapb_regs *)ZYNQMP_CRL_APB_BASEADDR) @@ -69,7 +78,10 @@ struct iou_scntr_secure { #define SD_MODE1 0x00000005 /* sd 1 */ #define NAND_MODE 0x00000004 #define EMMC_MODE 0x00000006 +#define USB_MODE 0x00000007 #define JTAG_MODE 0x00000000 +#define BOOT_MODE_USE_ALT 0x100 +#define BOOT_MODE_ALT_SHIFT 12 #define ZYNQMP_IOU_SLCR_BASEADDR 0xFF180000 diff --git a/arch/arm/include/asm/errno.h b/arch/arm/include/asm/errno.h deleted file mode 100644 index 4c82b503d9..0000000000 --- a/arch/arm/include/asm/errno.h +++ /dev/null @@ -1 +0,0 @@ -#include <asm-generic/errno.h> diff --git a/arch/arm/include/asm/fsl_secure_boot.h b/arch/arm/include/asm/fsl_secure_boot.h index 6b9d3e426e..4525287f66 100644 --- a/arch/arm/include/asm/fsl_secure_boot.h +++ b/arch/arm/include/asm/fsl_secure_boot.h @@ -26,13 +26,8 @@ #define CONFIG_FSL_CAAM #endif -#ifdef CONFIG_SPL_BUILD #define CONFIG_SPL_BOARD_INIT -#define CONFIG_SPL_DM 1 -#define CONFIG_SPL_CRYPTO_SUPPORT -#define CONFIG_SPL_HASH_SUPPORT -#define CONFIG_SPL_RSA -#define CONFIG_SPL_DRIVERS_MISC_SUPPORT +#ifdef CONFIG_SPL_BUILD /* * Define the key hash for U-Boot here if public/private key pair used to * sign U-boot are different from the SRK hash put in the fuse diff --git a/arch/arm/include/asm/spl.h b/arch/arm/include/asm/spl.h index 19c38f4083..6f312d6652 100644 --- a/arch/arm/include/asm/spl.h +++ b/arch/arm/include/asm/spl.h @@ -28,6 +28,7 @@ enum { BOOT_DEVICE_SATA, BOOT_DEVICE_I2C, BOOT_DEVICE_BOARD, + BOOT_DEVICE_DFU, BOOT_DEVICE_NONE }; #endif diff --git a/arch/arm/mach-at91/armv7/clock.c b/arch/arm/mach-at91/armv7/clock.c index 76fcada788..2e55953799 100644 --- a/arch/arm/mach-at91/armv7/clock.c +++ b/arch/arm/mach-at91/armv7/clock.c @@ -11,7 +11,7 @@ */ #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/arch/hardware.h> #include <asm/arch/at91_pmc.h> diff --git a/arch/arm/mach-at91/include/mach/gpio.h b/arch/arm/mach-at91/include/mach/gpio.h index 6d2a7b72ff..5a32bdba8d 100644 --- a/arch/arm/mach-at91/include/mach/gpio.h +++ b/arch/arm/mach-at91/include/mach/gpio.h @@ -10,7 +10,7 @@ #define __ASM_ARCH_AT91_GPIO_H #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/at91_pio.h> #include <asm/arch/hardware.h> diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig index c25fcf3f9f..ce2a16f95b 100644 --- a/arch/arm/mach-exynos/Kconfig +++ b/arch/arm/mach-exynos/Kconfig @@ -61,6 +61,15 @@ endif if ARCH_EXYNOS5 +config SPL_GPIO_SUPPORT + default y + +config SPL_LIBCOMMON_SUPPORT + default y + +config SPL_LIBGENERIC_SUPPORT + default y + choice prompt "EXYNOS5 board select" diff --git a/arch/arm/mach-keystone/psc.c b/arch/arm/mach-keystone/psc.c index ff042a6db2..bbea74a879 100644 --- a/arch/arm/mach-keystone/psc.c +++ b/arch/arm/mach-keystone/psc.c @@ -8,7 +8,7 @@ */ #include <common.h> -#include <asm-generic/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/processor.h> #include <asm/arch/psc_defs.h> diff --git a/arch/arm/mach-mvebu/Kconfig b/arch/arm/mach-mvebu/Kconfig index 220886aa59..0fd71a717a 100644 --- a/arch/arm/mach-mvebu/Kconfig +++ b/arch/arm/mach-mvebu/Kconfig @@ -21,7 +21,7 @@ config MV78460 bool select ARMADA_XP -config DB_88F6820_GP +config 88F6820 bool select ARMADA_38X @@ -31,7 +31,7 @@ choice config TARGET_CLEARFOG bool "Support ClearFog" - select DB_88F6820_GP + select 88F6820 config TARGET_DB_88F6720 bool "Support DB-88F6720 Armada 375" @@ -39,7 +39,11 @@ config TARGET_DB_88F6720 config TARGET_DB_88F6820_GP bool "Support DB-88F6820-GP" - select DB_88F6820_GP + select 88F6820 + +config TARGET_DB_88F6820_AMC + bool "Support DB-88F6820-AMC" + select 88F6820 config TARGET_DB_MV784MP_GP bool "Support db-mv784mp-gp" @@ -63,6 +67,7 @@ config SYS_BOARD default "clearfog" if TARGET_CLEARFOG default "db-88f6720" if TARGET_DB_88F6720 default "db-88f6820-gp" if TARGET_DB_88F6820_GP + default "db-88f6820-amc" if TARGET_DB_88F6820_AMC default "db-mv784mp-gp" if TARGET_DB_MV784MP_GP default "ds414" if TARGET_DS414 default "maxbcm" if TARGET_MAXBCM @@ -72,6 +77,7 @@ config SYS_CONFIG_NAME default "clearfog" if TARGET_CLEARFOG default "db-88f6720" if TARGET_DB_88F6720 default "db-88f6820-gp" if TARGET_DB_88F6820_GP + default "db-88f6820-amc" if TARGET_DB_88F6820_AMC default "db-mv784mp-gp" if TARGET_DB_MV784MP_GP default "ds414" if TARGET_DS414 default "maxbcm" if TARGET_MAXBCM @@ -81,6 +87,7 @@ config SYS_VENDOR default "Marvell" if TARGET_DB_MV784MP_GP default "Marvell" if TARGET_DB_88F6720 default "Marvell" if TARGET_DB_88F6820_GP + default "Marvell" if TARGET_DB_88F6820_AMC default "solidrun" if TARGET_CLEARFOG default "Synology" if TARGET_DS414 diff --git a/arch/arm/mach-mvebu/mbus.c b/arch/arm/mach-mvebu/mbus.c index df263bc3b3..c4128cdeed 100644 --- a/arch/arm/mach-mvebu/mbus.c +++ b/arch/arm/mach-mvebu/mbus.c @@ -48,7 +48,7 @@ */ #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/arch/cpu.h> #include <asm/arch/soc.h> diff --git a/arch/arm/mach-mvebu/serdes/a38x/sys_env_lib.c b/arch/arm/mach-mvebu/serdes/a38x/sys_env_lib.c index 49d704a362..cc3e5e23c0 100644 --- a/arch/arm/mach-mvebu/serdes/a38x/sys_env_lib.c +++ b/arch/arm/mach-mvebu/serdes/a38x/sys_env_lib.c @@ -45,7 +45,7 @@ u32 g_dev_id = -1; u32 mv_board_id_get(void) { -#if defined(CONFIG_DB_88F6820_GP) +#if defined(CONFIG_TARGET_DB_88F6820_GP) return DB_GP_68XX_ID; #else /* diff --git a/arch/arm/mach-rmobile/emac.c b/arch/arm/mach-rmobile/emac.c index 0710cfd3c1..e45244c781 100644 --- a/arch/arm/mach-rmobile/emac.c +++ b/arch/arm/mach-rmobile/emac.c @@ -8,7 +8,7 @@ */ #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <netdev.h> int cpu_eth_init(bd_t *bis) diff --git a/arch/arm/mach-rockchip/board.c b/arch/arm/mach-rockchip/board.c index bec756d7ac..6c36bf9397 100644 --- a/arch/arm/mach-rockchip/board.c +++ b/arch/arm/mach-rockchip/board.c @@ -81,10 +81,6 @@ void enable_caches(void) } #endif -void lowlevel_init(void) -{ -} - #if defined(CONFIG_USB_GADGET) && defined(CONFIG_USB_GADGET_DWC2_OTG) #include <usb.h> #include <usb/dwc2_udc.h> diff --git a/arch/arm/mach-rockchip/rk3036/Kconfig b/arch/arm/mach-rockchip/rk3036/Kconfig index 08047144f6..9263608e8a 100644 --- a/arch/arm/mach-rockchip/rk3036/Kconfig +++ b/arch/arm/mach-rockchip/rk3036/Kconfig @@ -12,6 +12,9 @@ config SYS_SOC config SYS_MALLOC_F_LEN default 0x400 +config SPL_SERIAL_SUPPORT + default y + source "board/rockchip/evb_rk3036/Kconfig" source "board/rockchip/kylin_rk3036/Kconfig" diff --git a/arch/arm/mach-rockchip/rk3288-board-spl.c b/arch/arm/mach-rockchip/rk3288-board-spl.c index e0d92a66b3..ae509ffab2 100644 --- a/arch/arm/mach-rockchip/rk3288-board-spl.c +++ b/arch/arm/mach-rockchip/rk3288-board-spl.c @@ -280,7 +280,3 @@ err: /* No way to report error here */ hang(); } - -void lowlevel_init(void) -{ -} diff --git a/arch/arm/mach-rockchip/rk3288/Kconfig b/arch/arm/mach-rockchip/rk3288/Kconfig index b4113e085b..94863a925e 100644 --- a/arch/arm/mach-rockchip/rk3288/Kconfig +++ b/arch/arm/mach-rockchip/rk3288/Kconfig @@ -72,6 +72,21 @@ config SYS_SOC config SYS_MALLOC_F_LEN default 0x0800 +config SPL_DRIVERS_MISC_SUPPORT + default y + +config SPL_LIBCOMMON_SUPPORT + default y + +config SPL_LIBGENERIC_SUPPORT + default y + +config SPL_MMC_SUPPORT + default y + +config SPL_SERIAL_SUPPORT + default y + source "board/chipspark/popmetal_rk3288/Kconfig" source "board/firefly/firefly-rk3288/Kconfig" diff --git a/arch/arm/mach-rockchip/rk3288/Makefile b/arch/arm/mach-rockchip/rk3288/Makefile index 5ec3f0d7e2..b5b28efbe8 100644 --- a/arch/arm/mach-rockchip/rk3288/Makefile +++ b/arch/arm/mach-rockchip/rk3288/Makefile @@ -5,5 +5,6 @@ # obj-y += clk_rk3288.o +obj-y += rk3288.o obj-y += sdram_rk3288.o obj-y += syscon_rk3288.o diff --git a/arch/arm/mach-rockchip/rk3288/rk3288.c b/arch/arm/mach-rockchip/rk3288/rk3288.c new file mode 100644 index 0000000000..92f34bbbcb --- /dev/null +++ b/arch/arm/mach-rockchip/rk3288/rk3288.c @@ -0,0 +1,19 @@ +/* + * Copyright (c) 2016 Rockchip Electronics Co., Ltd + * + * SPDX-License-Identifier: GPL-2.0+ + */ +#include <asm/io.h> +#include <asm/arch/hardware.h> + +#define GRF_SOC_CON2 0x24c + +int arch_cpu_init(void) +{ + /* We do some SoC one time setting here. */ + + /* Use rkpwm by default */ + rk_setreg(GRF_SOC_CON2, 1 << 0); + + return 0; +} diff --git a/arch/arm/mach-rockchip/rk3399/syscon_rk3399.c b/arch/arm/mach-rockchip/rk3399/syscon_rk3399.c index 2d81c55cd2..2cef68bc4d 100644 --- a/arch/arm/mach-rockchip/rk3399/syscon_rk3399.c +++ b/arch/arm/mach-rockchip/rk3399/syscon_rk3399.c @@ -11,6 +11,7 @@ static const struct udevice_id rk3399_syscon_ids[] = { { .compatible = "rockchip,rk3399-grf", .data = ROCKCHIP_SYSCON_GRF }, + { .compatible = "rockchip,rk3399-pmugrf", .data = ROCKCHIP_SYSCON_PMUGRF }, }; U_BOOT_DRIVER(syscon_rk3399) = { diff --git a/arch/arm/mach-socfpga/Kconfig b/arch/arm/mach-socfpga/Kconfig index 1a43c7bc9a..d91b8bbceb 100644 --- a/arch/arm/mach-socfpga/Kconfig +++ b/arch/arm/mach-socfpga/Kconfig @@ -1,5 +1,32 @@ if ARCH_SOCFPGA +config SPL_LIBCOMMON_SUPPORT + default y + +config SPL_LIBDISK_SUPPORT + default y + +config SPL_LIBGENERIC_SUPPORT + default y + +config SPL_MMC_SUPPORT + default y if DM_MMC + +config SPL_NAND_SUPPORT + default y if SPL_NAND_DENALI + +config SPL_SERIAL_SUPPORT + default y + +config SPL_SPI_FLASH_SUPPORT + default y if SPL_SPI_SUPPORT + +config SPL_SPI_SUPPORT + default y if DM_SPI + +config SPL_WATCHDOG_SUPPORT + default y + config TARGET_SOCFPGA_ARRIA5 bool select TARGET_SOCFPGA_GEN5 diff --git a/arch/arm/mach-socfpga/fpga_manager.c b/arch/arm/mach-socfpga/fpga_manager.c index 43fd2fedee..f9095739b0 100644 --- a/arch/arm/mach-socfpga/fpga_manager.c +++ b/arch/arm/mach-socfpga/fpga_manager.c @@ -10,7 +10,7 @@ #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/fpga_manager.h> #include <asm/arch/reset_manager.h> #include <asm/arch/system_manager.h> diff --git a/arch/arm/mach-socfpga/freeze_controller.c b/arch/arm/mach-socfpga/freeze_controller.c index 2b16795554..71d5d99e9c 100644 --- a/arch/arm/mach-socfpga/freeze_controller.c +++ b/arch/arm/mach-socfpga/freeze_controller.c @@ -9,7 +9,7 @@ #include <asm/io.h> #include <asm/arch/clock_manager.h> #include <asm/arch/freeze_controller.h> -#include <asm/errno.h> +#include <linux/errno.h> DECLARE_GLOBAL_DATA_PTR; diff --git a/arch/arm/mach-sunxi/usb_phy.c b/arch/arm/mach-sunxi/usb_phy.c index f9993d2875..bd1bbee410 100644 --- a/arch/arm/mach-sunxi/usb_phy.c +++ b/arch/arm/mach-sunxi/usb_phy.c @@ -296,13 +296,6 @@ void sunxi_usb_phy_power_off(int index) gpio_set_value(phy->gpio_vbus, 0); } -int sunxi_usb_phy_power_is_on(int index) -{ - struct sunxi_usb_phy *phy = &sunxi_usb_phy[index]; - - return phy->power_on_count > 0; -} - int sunxi_usb_phy_vbus_detect(int index) { struct sunxi_usb_phy *phy = &sunxi_usb_phy[index]; diff --git a/arch/arm/mach-tegra/Kconfig b/arch/arm/mach-tegra/Kconfig index 1eaf406272..76909ee2d9 100644 --- a/arch/arm/mach-tegra/Kconfig +++ b/arch/arm/mach-tegra/Kconfig @@ -1,5 +1,17 @@ if TEGRA +config SPL_GPIO_SUPPORT + default y + +config SPL_LIBCOMMON_SUPPORT + default y + +config SPL_LIBGENERIC_SUPPORT + default y + +config SPL_SERIAL_SUPPORT + default y + config TEGRA_IVC bool "Tegra IVC protocol" help diff --git a/arch/arm/mach-tegra/tegra20/crypto.c b/arch/arm/mach-tegra/tegra20/crypto.c index ec95d7ceb1..1b82fbb591 100644 --- a/arch/arm/mach-tegra/tegra20/crypto.c +++ b/arch/arm/mach-tegra/tegra20/crypto.c @@ -6,7 +6,7 @@ */ #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include "crypto.h" #include "aes.h" diff --git a/arch/arm/mach-tegra/tegra20/warmboot.c b/arch/arm/mach-tegra/tegra20/warmboot.c index 5fdc4bbb50..6aef6d3a50 100644 --- a/arch/arm/mach-tegra/tegra20/warmboot.c +++ b/arch/arm/mach-tegra/tegra20/warmboot.c @@ -7,7 +7,7 @@ #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/clock.h> #include <asm/arch/emc.h> #include <asm/arch/gp_padctrl.h> diff --git a/arch/arm/mach-uniphier/Makefile b/arch/arm/mach-uniphier/Makefile index 774ea9985a..ae78548670 100644 --- a/arch/arm/mach-uniphier/Makefile +++ b/arch/arm/mach-uniphier/Makefile @@ -4,28 +4,25 @@ ifdef CONFIG_SPL_BUILD -obj-y += init/ bcu/ memconf/ pll/ early-clk/ early-pinctrl/ +obj-y += init/ bcu/ memconf/ obj-$(CONFIG_MICRO_SUPPORT_CARD) += sbc/ else -obj-$(CONFIG_BOARD_EARLY_INIT_F) += board_early_init_f.o obj-$(CONFIG_DISPLAY_CPUINFO) += cpu_info.o -obj-$(CONFIG_MISC_INIT_F) += print_misc_info.o obj-y += dram_init.o -obj-y += board_common.o -obj-$(CONFIG_BOARD_EARLY_INIT_R) += board_early_init_r.o +obj-y += board_init.o obj-$(CONFIG_BOARD_LATE_INIT) += board_late_init.o obj-y += reset.o -obj-y += pinctrl/ clk/ - endif obj-y += boards.o obj-y += soc_info.o obj-y += boot-mode/ +obj-y += clk/ obj-y += dram/ +obj-y += pinctrl-glue.o obj-$(CONFIG_MICRO_SUPPORT_CARD) += micro-support-card.o obj-$(CONFIG_DEBUG_UART_UNIPHIER) += debug-uart/ diff --git a/arch/arm/mach-uniphier/board_common.c b/arch/arm/mach-uniphier/board_common.c deleted file mode 100644 index 330d690bab..0000000000 --- a/arch/arm/mach-uniphier/board_common.c +++ /dev/null @@ -1,20 +0,0 @@ -/* - * Copyright (C) 2012-2015 Masahiro Yamada <yamada.masahiro@socionext.com> - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#include <common.h> - -#include "micro-support-card.h" - -void uniphier_smp_kick_all_cpus(void); - -int board_init(void) -{ - led_puts("Uboo"); -#ifdef CONFIG_ARM64 - uniphier_smp_kick_all_cpus(); -#endif - return 0; -} diff --git a/arch/arm/mach-uniphier/board_early_init_r.c b/arch/arm/mach-uniphier/board_early_init_r.c deleted file mode 100644 index b26da3633f..0000000000 --- a/arch/arm/mach-uniphier/board_early_init_r.c +++ /dev/null @@ -1,15 +0,0 @@ -/* - * Copyright (C) 2014-2015 Masahiro Yamada <yamada.masahiro@socionext.com> - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#include <common.h> - -#include "micro-support-card.h" - -int board_early_init_r(void) -{ - support_card_late_init(); - return 0; -} diff --git a/arch/arm/mach-uniphier/board_early_init_f.c b/arch/arm/mach-uniphier/board_init.c index d35d38dcbf..b9be52f6cb 100644 --- a/arch/arm/mach-uniphier/board_early_init_f.c +++ b/arch/arm/mach-uniphier/board_init.c @@ -1,5 +1,7 @@ /* - * Copyright (C) 2012-2015 Masahiro Yamada <yamada.masahiro@socionext.com> + * Copyright (C) 2012-2015 Panasonic Corporation + * Copyright (C) 2015-2016 Socionext Inc. + * Author: Masahiro Yamada <yamada.masahiro@socionext.com> * * SPDX-License-Identifier: GPL-2.0+ */ @@ -10,6 +12,7 @@ #include "init.h" #include "micro-support-card.h" +#include "sg-regs.h" #include "soc-info.h" DECLARE_GLOBAL_DATA_PTR; @@ -45,71 +48,99 @@ static void uniphier_setup_xirq(void) writel(tmp, 0x55000090); } -int board_early_init_f(void) +static void uniphier_nand_pin_init(bool cs2) { +#ifdef CONFIG_NAND_DENALI + if (uniphier_pin_init(cs2 ? "nand2cs_grp" : "nand_grp")) + pr_err("failed to init NAND pins\n"); +#endif +} + +int board_init(void) +{ + const struct uniphier_board_data *bd; + led_puts("U0"); + bd = uniphier_get_board_param(); + if (!bd) + return -ENODEV; + switch (uniphier_get_soc_type()) { #if defined(CONFIG_ARCH_UNIPHIER_SLD3) case SOC_UNIPHIER_SLD3: - uniphier_sld3_pin_init(); + uniphier_nand_pin_init(true); led_puts("U1"); + uniphier_sld3_pll_init(); uniphier_ld4_clk_init(); break; #endif #if defined(CONFIG_ARCH_UNIPHIER_LD4) case SOC_UNIPHIER_LD4: - uniphier_ld4_pin_init(); + uniphier_nand_pin_init(true); led_puts("U1"); + uniphier_ld4_pll_init(); uniphier_ld4_clk_init(); break; #endif #if defined(CONFIG_ARCH_UNIPHIER_PRO4) case SOC_UNIPHIER_PRO4: - uniphier_pro4_pin_init(); + uniphier_nand_pin_init(false); led_puts("U1"); + uniphier_pro4_pll_init(); uniphier_pro4_clk_init(); break; #endif #if defined(CONFIG_ARCH_UNIPHIER_SLD8) case SOC_UNIPHIER_SLD8: - uniphier_sld8_pin_init(); + uniphier_nand_pin_init(true); led_puts("U1"); + uniphier_ld4_pll_init(); uniphier_ld4_clk_init(); break; #endif #if defined(CONFIG_ARCH_UNIPHIER_PRO5) case SOC_UNIPHIER_PRO5: - uniphier_pro5_pin_init(); + uniphier_nand_pin_init(true); led_puts("U1"); uniphier_pro5_clk_init(); break; #endif #if defined(CONFIG_ARCH_UNIPHIER_PXS2) case SOC_UNIPHIER_PXS2: - uniphier_pxs2_pin_init(); + uniphier_nand_pin_init(true); led_puts("U1"); uniphier_pxs2_clk_init(); break; #endif #if defined(CONFIG_ARCH_UNIPHIER_LD6B) case SOC_UNIPHIER_LD6B: - uniphier_ld6b_pin_init(); + uniphier_nand_pin_init(true); led_puts("U1"); uniphier_pxs2_clk_init(); break; #endif #if defined(CONFIG_ARCH_UNIPHIER_LD11) case SOC_UNIPHIER_LD11: - uniphier_ld20_pin_init(); + uniphier_nand_pin_init(false); + sg_set_pinsel(149, 14, 8, 4); /* XIRQ0 -> XIRQ0 */ + sg_set_iectrl(149); + sg_set_pinsel(153, 14, 8, 4); /* XIRQ4 -> XIRQ4 */ + sg_set_iectrl(153); led_puts("U1"); + uniphier_ld11_pll_init(); uniphier_ld11_clk_init(); break; #endif #if defined(CONFIG_ARCH_UNIPHIER_LD20) case SOC_UNIPHIER_LD20: - uniphier_ld20_pin_init(); + uniphier_nand_pin_init(false); + sg_set_pinsel(149, 14, 8, 4); /* XIRQ0 -> XIRQ0 */ + sg_set_iectrl(149); + sg_set_pinsel(153, 14, 8, 4); /* XIRQ4 -> XIRQ4 */ + sg_set_iectrl(153); led_puts("U1"); + uniphier_ld20_pll_init(bd); uniphier_ld20_clk_init(); cci500_init(2); break; @@ -122,5 +153,15 @@ int board_early_init_f(void) led_puts("U2"); + support_card_late_init(); + + led_puts("U3"); + +#ifdef CONFIG_ARM64 + uniphier_smp_kick_all_cpus(); +#endif + + led_puts("Uboo"); + return 0; } diff --git a/arch/arm/mach-uniphier/boards.c b/arch/arm/mach-uniphier/boards.c index 20093d8178..79b1d2013a 100644 --- a/arch/arm/mach-uniphier/boards.c +++ b/arch/arm/mach-uniphier/boards.c @@ -184,6 +184,27 @@ static const struct uniphier_board_data uniphier_ld11_data = { #endif #if defined(CONFIG_ARCH_UNIPHIER_LD20) +static const struct uniphier_board_data uniphier_ld20_ref_data = { + .dram_freq = 1866, + .dram_nr_ch = 3, + .dram_ch[0] = { + .base = 0x80000000, + .size = 0x40000000, + .width = 32, + }, + .dram_ch[1] = { + .base = 0xc0000000, + .size = 0x40000000, + .width = 32, + }, + .dram_ch[2] = { + .base = 0x100000000UL, + .size = 0x40000000, + .width = 32, + }, + .flags = UNIPHIER_BD_BOARD_LD20_REF, +}; + static const struct uniphier_board_data uniphier_ld20_data = { .dram_freq = 1866, .dram_nr_ch = 3, @@ -202,6 +223,7 @@ static const struct uniphier_board_data uniphier_ld20_data = { .size = 0x40000000, .width = 32, }, + .flags = UNIPHIER_BD_BOARD_LD20_GLOBAL, }; static const struct uniphier_board_data uniphier_ld21_data = { @@ -209,7 +231,7 @@ static const struct uniphier_board_data uniphier_ld21_data = { .dram_nr_ch = 2, .dram_ch[0] = { .base = 0x80000000, - .size = 0x40000000, + .size = 0x20000000, .width = 32, }, .dram_ch[1] = { @@ -217,7 +239,7 @@ static const struct uniphier_board_data uniphier_ld21_data = { .size = 0x40000000, .width = 32, }, - .flags = UNIPHIER_BD_PACKAGE_LD21, + .flags = UNIPHIER_BD_BOARD_LD21_GLOBAL, }; #endif @@ -255,6 +277,7 @@ static const struct uniphier_board_id uniphier_boards[] = { #endif #if defined(CONFIG_ARCH_UNIPHIER_LD20) { "socionext,ph1-ld21", &uniphier_ld21_data, }, + { "socionext,ph1-ld20-ref", &uniphier_ld20_ref_data, }, { "socionext,ph1-ld20", &uniphier_ld20_data, }, #endif }; diff --git a/arch/arm/mach-uniphier/clk/Makefile b/arch/arm/mach-uniphier/clk/Makefile index 1428e0c9cc..95f433e87d 100644 --- a/arch/arm/mach-uniphier/clk/Makefile +++ b/arch/arm/mach-uniphier/clk/Makefile @@ -2,12 +2,31 @@ # SPDX-License-Identifier: GPL-2.0+ # -obj-$(CONFIG_ARCH_UNIPHIER_SLD3) += clk-ld4.o -obj-$(CONFIG_ARCH_UNIPHIER_LD4) += clk-ld4.o -obj-$(CONFIG_ARCH_UNIPHIER_PRO4) += clk-pro4.o -obj-$(CONFIG_ARCH_UNIPHIER_SLD8) += clk-ld4.o +ifdef CONFIG_SPL_BUILD + +obj-$(CONFIG_ARCH_UNIPHIER_SLD3) += early-clk-ld4.o dpll-sld3.o +obj-$(CONFIG_ARCH_UNIPHIER_LD4) += early-clk-ld4.o dpll-ld4.o +obj-$(CONFIG_ARCH_UNIPHIER_PRO4) += early-clk-ld4.o dpll-pro4.o +obj-$(CONFIG_ARCH_UNIPHIER_SLD8) += early-clk-ld4.o dpll-sld8.o +obj-$(CONFIG_ARCH_UNIPHIER_PRO5) += early-clk-pro5.o +obj-$(CONFIG_ARCH_UNIPHIER_PXS2) += early-clk-pxs2.o +obj-$(CONFIG_ARCH_UNIPHIER_LD6B) += early-clk-pxs2.o +obj-$(CONFIG_ARCH_UNIPHIER_LD11) += early-clk-ld11.o dpll-ld11.o +obj-$(CONFIG_ARCH_UNIPHIER_LD20) += early-clk-ld20.o dpll-ld20.o + +else + +obj-$(CONFIG_ARCH_UNIPHIER_SLD3) += clk-ld4.o pll-sld3.o dpll-tail.o +obj-$(CONFIG_ARCH_UNIPHIER_LD4) += clk-ld4.o pll-ld4.o dpll-tail.o +obj-$(CONFIG_ARCH_UNIPHIER_PRO4) += clk-pro4.o pll-pro4.o dpll-tail.o +obj-$(CONFIG_ARCH_UNIPHIER_SLD8) += clk-ld4.o pll-ld4.o dpll-tail.o obj-$(CONFIG_ARCH_UNIPHIER_PRO5) += clk-pro5.o obj-$(CONFIG_ARCH_UNIPHIER_PXS2) += clk-pxs2.o obj-$(CONFIG_ARCH_UNIPHIER_LD6B) += clk-pxs2.o -obj-$(CONFIG_ARCH_UNIPHIER_LD11) += clk-ld11.o -obj-$(CONFIG_ARCH_UNIPHIER_LD20) += clk-ld20.o +obj-$(CONFIG_ARCH_UNIPHIER_LD11) += clk-ld11.o pll-ld11.o +obj-$(CONFIG_ARCH_UNIPHIER_LD20) += clk-ld20.o pll-ld20.o + +endif + +obj-$(CONFIG_ARCH_UNIPHIER_LD11) += pll-base-ld20.o +obj-$(CONFIG_ARCH_UNIPHIER_LD20) += pll-base-ld20.o diff --git a/arch/arm/mach-uniphier/clk/dpll-ld11.c b/arch/arm/mach-uniphier/clk/dpll-ld11.c new file mode 100644 index 0000000000..7f0677c0d4 --- /dev/null +++ b/arch/arm/mach-uniphier/clk/dpll-ld11.c @@ -0,0 +1,16 @@ +/* + * Copyright (C) 2016 Socionext Inc. + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include "../init.h" +#include "../sc64-regs.h" +#include "pll.h" + +int uniphier_ld11_dpll_init(const struct uniphier_board_data *bd) +{ + uniphier_ld20_sscpll_init(SC_DPLLCTRL, UNIPHIER_PLL_FREQ_DEFAULT, 0, 2); + + return 0; +} diff --git a/arch/arm/mach-uniphier/clk/dpll-ld20.c b/arch/arm/mach-uniphier/clk/dpll-ld20.c new file mode 100644 index 0000000000..113231307a --- /dev/null +++ b/arch/arm/mach-uniphier/clk/dpll-ld20.c @@ -0,0 +1,22 @@ +/* + * Copyright (C) 2016 Socionext Inc. + * Author: Masahiro Yamada <yamada.masahiro@socionext.com> + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include "../init.h" +#include "../sc64-regs.h" +#include "pll.h" + +int uniphier_ld20_dpll_init(const struct uniphier_board_data *bd) +{ + unsigned int dpll_ssc_rate = UNIPHIER_BD_DPLL_SSC_GET_RATE(bd->flags); + unsigned int dram_freq = bd->dram_freq; + + uniphier_ld20_sscpll_init(SC_DPLL0CTRL, dram_freq, dpll_ssc_rate, 2); + uniphier_ld20_sscpll_init(SC_DPLL1CTRL, dram_freq, dpll_ssc_rate, 2); + uniphier_ld20_sscpll_init(SC_DPLL2CTRL, dram_freq, dpll_ssc_rate, 2); + + return 0; +} diff --git a/arch/arm/mach-uniphier/clk/dpll-ld4.c b/arch/arm/mach-uniphier/clk/dpll-ld4.c new file mode 100644 index 0000000000..a40b30d0e0 --- /dev/null +++ b/arch/arm/mach-uniphier/clk/dpll-ld4.c @@ -0,0 +1,56 @@ +/* + * Copyright (C) 2013-2014 Panasonic Corporation + * Copyright (C) 2015-2016 Socionext Inc. + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include <common.h> +#include <linux/err.h> +#include <linux/io.h> + +#include "../init.h" +#include "../sc-regs.h" + +#undef DPLL_SSC_RATE_1PER + +int uniphier_ld4_dpll_init(const struct uniphier_board_data *bd) +{ + unsigned int dram_freq = bd->dram_freq; + u32 tmp; + + /* + * Set Frequency + * Set 0xc(1600MHz)/0xd(1333MHz)/0xe(1066MHz) + * to FOUT (DPLLCTRL.bit[29:20]) + */ + tmp = readl(SC_DPLLCTRL); + tmp &= ~0x000f0000; + switch (dram_freq) { + case 1333: + tmp |= 0x000d0000; + break; + case 1600: + tmp |= 0x000c0000; + break; + default: + pr_err("Unsupported frequency"); + return -EINVAL; + } + +#if defined(DPLL_SSC_RATE_1PER) + tmp &= ~SC_DPLLCTRL_SSC_RATE; +#else + tmp |= SC_DPLLCTRL_SSC_RATE; +#endif + writel(tmp, SC_DPLLCTRL); + + tmp = readl(SC_DPLLCTRL2); + tmp |= SC_DPLLCTRL2_NRSTDS; + writel(tmp, SC_DPLLCTRL2); + + /* Wait 500 usec until dpll gets stable */ + udelay(500); + + return 0; +} diff --git a/arch/arm/mach-uniphier/clk/dpll-pro4.c b/arch/arm/mach-uniphier/clk/dpll-pro4.c new file mode 100644 index 0000000000..3ac48d6365 --- /dev/null +++ b/arch/arm/mach-uniphier/clk/dpll-pro4.c @@ -0,0 +1,60 @@ +/* + * Copyright (C) 2013-2014 Panasonic Corporation + * Copyright (C) 2015-2016 Socionext Inc. + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include <common.h> +#include <linux/err.h> +#include <linux/io.h> + +#include "../init.h" +#include "../sc-regs.h" + +#undef DPLL_SSC_RATE_1PER + +int uniphier_pro4_dpll_init(const struct uniphier_board_data *bd) +{ + unsigned int dram_freq = bd->dram_freq; + u32 tmp; + + /* + * Set Frequency + * Set 0xc(1600MHz)/0xd(1333MHz)/0xe(1066MHz) + * to FOUT ( DPLLCTRL.bit[29:20] ) + */ + tmp = readl(SC_DPLLCTRL); + tmp &= ~(0x000f0000); + switch (dram_freq) { + case 1333: + tmp |= 0x000d0000; + break; + case 1600: + tmp |= 0x000c0000; + break; + default: + pr_err("Unsupported frequency"); + return -EINVAL; + } + + /* + * Set Moduration rate + * Set 0x0(1%)/0x1(2%) to SSC_RATE(DPLLCTRL.bit[15]) + */ +#if defined(DPLL_SSC_RATE_1PER) + tmp &= ~0x00008000; +#else + tmp |= 0x00008000; +#endif + writel(tmp, SC_DPLLCTRL); + + tmp = readl(SC_DPLLCTRL2); + tmp |= SC_DPLLCTRL2_NRSTDS; + writel(tmp, SC_DPLLCTRL2); + + /* Wait until dpll gets stable */ + udelay(500); + + return 0; +} diff --git a/arch/arm/mach-uniphier/pll/pll-init-sld3.c b/arch/arm/mach-uniphier/clk/dpll-sld3.c index 5b4f2e3a1e..0eb310ceb8 100644 --- a/arch/arm/mach-uniphier/pll/pll-init-sld3.c +++ b/arch/arm/mach-uniphier/clk/dpll-sld3.c @@ -6,7 +6,7 @@ #include "../init.h" -int uniphier_sld3_pll_init(const struct uniphier_board_data *bd) +int uniphier_sld3_dpll_init(const struct uniphier_board_data *bd) { /* add pll init code here */ return 0; diff --git a/arch/arm/mach-uniphier/clk/dpll-sld8.c b/arch/arm/mach-uniphier/clk/dpll-sld8.c new file mode 100644 index 0000000000..7faa5e85b6 --- /dev/null +++ b/arch/arm/mach-uniphier/clk/dpll-sld8.c @@ -0,0 +1,62 @@ +/* + * Copyright (C) 2013-2014 Panasonic Corporation + * Copyright (C) 2015-2016 Socionext Inc. + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include <common.h> +#include <linux/io.h> + +#include "../init.h" +#include "../sc-regs.h" + +int uniphier_sld8_dpll_init(const struct uniphier_board_data *bd) +{ + u32 tmp; + /* + * Set DPLL SSC parameters for DPLLCTRL3 + * [23] DIVN_TEST 0x1 + * [22:16] DIVN 0x50 + * [10] FREFSEL_TEST 0x1 + * [9:8] FREFSEL 0x2 + * [4] ICPD_TEST 0x1 + * [3:0] ICPD 0xb + */ + tmp = readl(SC_DPLLCTRL3); + tmp &= ~0x00ff0717; + tmp |= 0x00d0061b; + writel(tmp, SC_DPLLCTRL3); + + /* + * Set DPLL SSC parameters for DPLLCTRL + * <-1%> <-2%> + * [29:20] SSC_UPCNT 132 (0x084) 132 (0x084) + * [14:0] SSC_dK 6335(0x18bf) 12710(0x31a6) + */ + tmp = readl(SC_DPLLCTRL); + tmp &= ~0x3ff07fff; +#ifdef DPLL_SSC_RATE_1PER + tmp |= 0x084018bf; +#else + tmp |= 0x084031a6; +#endif + writel(tmp, SC_DPLLCTRL); + + /* + * Set DPLL SSC parameters for DPLLCTRL2 + * [31:29] SSC_STEP 0 + * [27] SSC_REG_REF 1 + * [26:20] SSC_M 79 (0x4f) + * [19:0] SSC_K 964689 (0xeb851) + */ + tmp = readl(SC_DPLLCTRL2); + tmp &= ~0xefffffff; + tmp |= 0x0cfeb851; + writel(tmp, SC_DPLLCTRL2); + + /* Wait 500 usec until dpll gets stable */ + udelay(500); + + return 0; +} diff --git a/arch/arm/mach-uniphier/clk/dpll-tail.c b/arch/arm/mach-uniphier/clk/dpll-tail.c new file mode 100644 index 0000000000..2b88490f42 --- /dev/null +++ b/arch/arm/mach-uniphier/clk/dpll-tail.c @@ -0,0 +1,21 @@ +/* + * Copyright (C) 2011-2014 Panasonic Corporation + * Copyright (C) 2015-2016 Socionext Inc. + * Author: Masahiro Yamada <yamada.masahiro@socionext.com> + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include <linux/io.h> + +#include "../sc-regs.h" +#include "pll.h" + +void uniphier_ld4_dpll_ssc_en(void) +{ + u32 tmp; + + tmp = readl(SC_DPLLCTRL); + tmp |= SC_DPLLCTRL_SSC_EN; + writel(tmp, SC_DPLLCTRL); +} diff --git a/arch/arm/mach-uniphier/early-clk/early-clk-ld11.c b/arch/arm/mach-uniphier/clk/early-clk-ld11.c index c94d83c4ed..c94d83c4ed 100644 --- a/arch/arm/mach-uniphier/early-clk/early-clk-ld11.c +++ b/arch/arm/mach-uniphier/clk/early-clk-ld11.c diff --git a/arch/arm/mach-uniphier/early-clk/early-clk-ld20.c b/arch/arm/mach-uniphier/clk/early-clk-ld20.c index 5201a55940..5201a55940 100644 --- a/arch/arm/mach-uniphier/early-clk/early-clk-ld20.c +++ b/arch/arm/mach-uniphier/clk/early-clk-ld20.c diff --git a/arch/arm/mach-uniphier/early-clk/early-clk-ld4.c b/arch/arm/mach-uniphier/clk/early-clk-ld4.c index b6e8b646f9..b6e8b646f9 100644 --- a/arch/arm/mach-uniphier/early-clk/early-clk-ld4.c +++ b/arch/arm/mach-uniphier/clk/early-clk-ld4.c diff --git a/arch/arm/mach-uniphier/early-clk/early-clk-pro5.c b/arch/arm/mach-uniphier/clk/early-clk-pro5.c index c41a8ead2e..c41a8ead2e 100644 --- a/arch/arm/mach-uniphier/early-clk/early-clk-pro5.c +++ b/arch/arm/mach-uniphier/clk/early-clk-pro5.c diff --git a/arch/arm/mach-uniphier/early-clk/early-clk-pxs2.c b/arch/arm/mach-uniphier/clk/early-clk-pxs2.c index 665ecd510f..665ecd510f 100644 --- a/arch/arm/mach-uniphier/early-clk/early-clk-pxs2.c +++ b/arch/arm/mach-uniphier/clk/early-clk-pxs2.c diff --git a/arch/arm/mach-uniphier/clk/pll-base-ld20.c b/arch/arm/mach-uniphier/clk/pll-base-ld20.c new file mode 100644 index 0000000000..a5027d2079 --- /dev/null +++ b/arch/arm/mach-uniphier/clk/pll-base-ld20.c @@ -0,0 +1,123 @@ +/* + * Copyright (C) 2016 Socionext Inc. + * Author: Masahiro Yamada <yamada.masahiro@socionext.com> + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include <common.h> +#include <linux/bitops.h> +#include <linux/io.h> +#include <linux/sizes.h> + +#include "pll.h" + +/* PLL type: SSC */ +#define SC_PLLCTRL_SSC_DK_MASK GENMASK(14, 0) +#define SC_PLLCTRL_SSC_EN BIT(31) +#define SC_PLLCTRL2_NRSTDS BIT(28) +#define SC_PLLCTRL2_SSC_JK_MASK GENMASK(26, 0) + +/* PLL type: VPLL27 */ +#define SC_VPLL27CTRL_WP BIT(0) +#define SC_VPLL27CTRL3_K_LD BIT(28) + +/* PLL type: DSPLL */ +#define SC_DSPLLCTRL2_K_LD BIT(28) + +int uniphier_ld20_sscpll_init(unsigned long reg_base, unsigned int freq, + unsigned int ssc_rate, unsigned int divn) +{ + void __iomem *base; + u32 tmp; + + base = ioremap(reg_base, SZ_16); + if (!base) + return -ENOMEM; + + if (freq != UNIPHIER_PLL_FREQ_DEFAULT) { + tmp = readl(base); /* SSCPLLCTRL */ + tmp &= ~SC_PLLCTRL_SSC_DK_MASK; + tmp |= (487 * freq * ssc_rate / divn / 512) & + SC_PLLCTRL_SSC_DK_MASK; + writel(tmp, base); + + tmp = readl(base + 4); + tmp &= ~SC_PLLCTRL2_SSC_JK_MASK; + tmp |= (41859 * freq / divn) & SC_PLLCTRL2_SSC_JK_MASK; + + udelay(50); + } + + tmp = readl(base + 4); /* SSCPLLCTRL2 */ + tmp |= SC_PLLCTRL2_NRSTDS; + writel(tmp, base + 4); + + iounmap(base); + + return 0; +} + +int uniphier_ld20_sscpll_ssc_en(unsigned long reg_base) +{ + void __iomem *base; + u32 tmp; + + base = ioremap(reg_base, SZ_16); + if (!base) + return -ENOMEM; + + mdelay(1); + + tmp = readl(base); /* SSCPLLCTRL */ + tmp |= SC_PLLCTRL_SSC_EN; + writel(tmp, base); + + iounmap(base); + + return 0; +} + +int uniphier_ld20_vpll27_init(unsigned long reg_base) +{ + void __iomem *base; + u32 tmp; + + base = ioremap(reg_base, SZ_16); + if (!base) + return -ENOMEM; + + tmp = readl(base); /* VPLL27CTRL */ + tmp |= SC_VPLL27CTRL_WP; /* write protect off */ + writel(tmp, base); + + tmp = readl(base + 8); /* VPLL27CTRL3 */ + tmp |= SC_VPLL27CTRL3_K_LD; + writel(tmp, base + 8); + + tmp = readl(base); /* VPLL27CTRL */ + tmp &= ~SC_VPLL27CTRL_WP; /* write protect on */ + writel(tmp, base); + + iounmap(base); + + return 0; +} + +int uniphier_ld20_dspll_init(unsigned long reg_base) +{ + void __iomem *base; + u32 tmp; + + base = ioremap(reg_base, SZ_16); + if (!base) + return -ENOMEM; + + tmp = readl(base + 8); /* DSPLLCTRL2 */ + tmp |= SC_DSPLLCTRL2_K_LD; + writel(tmp, base + 8); + + iounmap(base); + + return 0; +} diff --git a/arch/arm/mach-uniphier/clk/pll-ld11.c b/arch/arm/mach-uniphier/clk/pll-ld11.c new file mode 100644 index 0000000000..8a4a748cfd --- /dev/null +++ b/arch/arm/mach-uniphier/clk/pll-ld11.c @@ -0,0 +1,32 @@ +/* + * Copyright (C) 2016 Socionext Inc. + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include <common.h> +#include <linux/io.h> + +#include "../init.h" +#include "../sc64-regs.h" +#include "pll.h" + +void uniphier_ld11_pll_init(void) +{ + uniphier_ld20_sscpll_init(SC_CPLLCTRL, 1960, 1, 2); /* 2000MHz -> 1960MHz */ + /* do nothing for SPLL */ + uniphier_ld20_sscpll_init(SC_MPLLCTRL, 1600, 1, 2); /* 1500MHz -> 1600MHz */ + uniphier_ld20_sscpll_init(SC_VSPLLCTRL, UNIPHIER_PLL_FREQ_DEFAULT, 0, 2); + + mdelay(1); + + uniphier_ld20_sscpll_ssc_en(SC_CPLLCTRL); + uniphier_ld20_sscpll_ssc_en(SC_MPLLCTRL); + uniphier_ld20_sscpll_ssc_en(SC_VSPLLCTRL); + + uniphier_ld20_vpll27_init(SC_VPLL27FCTRL); + uniphier_ld20_vpll27_init(SC_VPLL27ACTRL); + + writel(0, SC_CA53_GEARSET); /* Gear0: CPLL/2 */ + writel(SC_CA_GEARUPD, SC_CA53_GEARUPD); +} diff --git a/arch/arm/mach-uniphier/clk/pll-ld20.c b/arch/arm/mach-uniphier/clk/pll-ld20.c new file mode 100644 index 0000000000..5e545da227 --- /dev/null +++ b/arch/arm/mach-uniphier/clk/pll-ld20.c @@ -0,0 +1,40 @@ +/* + * Copyright (C) 2016 Socionext Inc. + * Author: Masahiro Yamada <yamada.masahiro@socionext.com> + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include <common.h> + +#include "../init.h" +#include "../sc64-regs.h" +#include "pll.h" + +int uniphier_ld20_pll_init(const struct uniphier_board_data *bd) +{ + unsigned int dpll_ssc_rate = UNIPHIER_BD_DPLL_SSC_GET_RATE(bd->flags); + + uniphier_ld20_sscpll_init(SC_CPLLCTRL, UNIPHIER_PLL_FREQ_DEFAULT, 0, 4); + /* do nothing for SPLL */ + uniphier_ld20_sscpll_init(SC_SPLL2CTRL, UNIPHIER_PLL_FREQ_DEFAULT, 0, 4); + uniphier_ld20_sscpll_init(SC_MPLLCTRL, UNIPHIER_PLL_FREQ_DEFAULT, 0, 2); + uniphier_ld20_sscpll_init(SC_VPPLLCTRL, UNIPHIER_PLL_FREQ_DEFAULT, 0, 4); + uniphier_ld20_sscpll_init(SC_GPPLLCTRL, UNIPHIER_PLL_FREQ_DEFAULT, 0, 2); + + mdelay(1); + + if (dpll_ssc_rate > 0) { + uniphier_ld20_sscpll_ssc_en(SC_DPLL0CTRL); + uniphier_ld20_sscpll_ssc_en(SC_DPLL1CTRL); + uniphier_ld20_sscpll_ssc_en(SC_DPLL2CTRL); + } + + uniphier_ld20_vpll27_init(SC_VPLL27FCTRL); + uniphier_ld20_vpll27_init(SC_VPLL27ACTRL); + + uniphier_ld20_dspll_init(SC_VPLL8KCTRL); + uniphier_ld20_dspll_init(SC_A2PLLCTRL); + + return 0; +} diff --git a/arch/arm/mach-uniphier/pll/pll-init-ld4.c b/arch/arm/mach-uniphier/clk/pll-ld4.c index 57c1d9f7df..13257e4d16 100644 --- a/arch/arm/mach-uniphier/pll/pll-init-ld4.c +++ b/arch/arm/mach-uniphier/clk/pll-ld4.c @@ -1,55 +1,17 @@ /* - * Copyright (C) 2011-2015 Masahiro Yamada <yamada.masahiro@socionext.com> + * Copyright (C) 2013-2014 Panasonic Corporation + * Copyright (C) 2015-2016 Socionext Inc. * * SPDX-License-Identifier: GPL-2.0+ */ #include <common.h> -#include <linux/err.h> #include <linux/io.h> #include "../init.h" #include "../sc-regs.h" #include "../sg-regs.h" - -#undef DPLL_SSC_RATE_1PER - -static int dpll_init(unsigned int dram_freq) -{ - u32 tmp; - - /* - * Set Frequency - * Set 0xc(1600MHz)/0xd(1333MHz)/0xe(1066MHz) - * to FOUT (DPLLCTRL.bit[29:20]) - */ - tmp = readl(SC_DPLLCTRL); - tmp &= ~0x000f0000; - switch (dram_freq) { - case 1333: - tmp |= 0x000d0000; - break; - case 1600: - tmp |= 0x000c0000; - break; - default: - pr_err("Unsupported frequency"); - return -EINVAL; - } - -#if defined(DPLL_SSC_RATE_1PER) - tmp &= ~SC_DPLLCTRL_SSC_RATE; -#else - tmp |= SC_DPLLCTRL_SSC_RATE; -#endif - writel(tmp, SC_DPLLCTRL); - - tmp = readl(SC_DPLLCTRL2); - tmp |= SC_DPLLCTRL2_NRSTDS; - writel(tmp, SC_DPLLCTRL2); - - return 0; -} +#include "pll.h" static void upll_init(void) { @@ -183,22 +145,9 @@ static void vpll_init(void) writel(tmp, SC_VPLL27BCTRL); } -int uniphier_ld4_pll_init(const struct uniphier_board_data *bd) +void uniphier_ld4_pll_init(void) { - int ret; - - ret = dpll_init(bd->dram_freq); - if (ret) - return ret; upll_init(); vpll_init(); - - /* - * Wait 500 usec until dpll get stable - * We wait 10 usec in upll_init() and vpll_init() - * so 20 usec can be saved here. - */ - udelay(480); - - return 0; + uniphier_ld4_dpll_ssc_en(); } diff --git a/arch/arm/mach-uniphier/pll/pll-init-pro4.c b/arch/arm/mach-uniphier/clk/pll-pro4.c index a7e4e0ec9e..cdd1fd4bf1 100644 --- a/arch/arm/mach-uniphier/pll/pll-init-pro4.c +++ b/arch/arm/mach-uniphier/clk/pll-pro4.c @@ -1,59 +1,17 @@ /* - * Copyright (C) 2011-2015 Masahiro Yamada <yamada.masahiro@socionext.com> + * Copyright (C) 2013-2014 Panasonic Corporation + * Copyright (C) 2015-2016 Socionext Inc. * * SPDX-License-Identifier: GPL-2.0+ */ #include <common.h> -#include <linux/err.h> #include <linux/io.h> #include "../init.h" #include "../sc-regs.h" #include "../sg-regs.h" - -#undef DPLL_SSC_RATE_1PER - -static int dpll_init(unsigned int dram_freq) -{ - u32 tmp; - - /* - * Set Frequency - * Set 0xc(1600MHz)/0xd(1333MHz)/0xe(1066MHz) - * to FOUT ( DPLLCTRL.bit[29:20] ) - */ - tmp = readl(SC_DPLLCTRL); - tmp &= ~(0x000f0000); - switch (dram_freq) { - case 1333: - tmp |= 0x000d0000; - break; - case 1600: - tmp |= 0x000c0000; - break; - default: - pr_err("Unsupported frequency"); - return -EINVAL; - } - - /* - * Set Moduration rate - * Set 0x0(1%)/0x1(2%) to SSC_RATE(DPLLCTRL.bit[15]) - */ -#if defined(DPLL_SSC_RATE_1PER) - tmp &= ~0x00008000; -#else - tmp |= 0x00008000; -#endif - writel(tmp, SC_DPLLCTRL); - - tmp = readl(SC_DPLLCTRL2); - tmp |= SC_DPLLCTRL2_NRSTDS; - writel(tmp, SC_DPLLCTRL2); - - return 0; -} +#include "pll.h" static void vpll_init(void) { @@ -145,20 +103,8 @@ static void vpll_init(void) writel(tmp, SC_VPLL27BCTRL); } -int uniphier_pro4_pll_init(const struct uniphier_board_data *bd) +void uniphier_pro4_pll_init(void) { - int ret; - - ret = dpll_init(bd->dram_freq); - if (ret) - return ret; vpll_init(); - - /* - * Wait 500 usec until dpll get stable - * We wait 1 usec in vpll_init() so 1 usec can be saved here. - */ - udelay(499); - - return 0; + uniphier_ld4_dpll_ssc_en(); } diff --git a/arch/arm/mach-uniphier/clk/pll-sld3.c b/arch/arm/mach-uniphier/clk/pll-sld3.c new file mode 100644 index 0000000000..37a7c12782 --- /dev/null +++ b/arch/arm/mach-uniphier/clk/pll-sld3.c @@ -0,0 +1,14 @@ +/* + * Copyright (C) 2016 Socionext Inc. + * Author: Masahiro Yamada <yamada.masahiro@socionext.com> + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include "../init.h" +#include "pll.h" + +void uniphier_sld3_pll_init(void) +{ + uniphier_ld4_dpll_ssc_en(); +} diff --git a/arch/arm/mach-uniphier/clk/pll.h b/arch/arm/mach-uniphier/clk/pll.h new file mode 100644 index 0000000000..d7e93037d6 --- /dev/null +++ b/arch/arm/mach-uniphier/clk/pll.h @@ -0,0 +1,21 @@ +/* + * Copyright (C) 2016 Socionext Inc. + * Author: Masahiro Yamada <yamada.masahiro@socionext.com> + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#ifndef MACH_PLL_H +#define MACH_PLL_H + +#define UNIPHIER_PLL_FREQ_DEFAULT (0) + +void uniphier_ld4_dpll_ssc_en(void); + +int uniphier_ld20_sscpll_init(unsigned long reg_base, unsigned int freq, + unsigned int ssc_rate, unsigned int divn); +int uniphier_ld20_sscpll_ssc_en(unsigned long reg_base); +int uniphier_ld20_vpll27_init(unsigned long reg_base); +int uniphier_ld20_dspll_init(unsigned long reg_base); + +#endif /* MACH_PLL_H */ diff --git a/arch/arm/mach-uniphier/dram/ddrphy-ld20-regs.h b/arch/arm/mach-uniphier/dram/ddrphy-ld20-regs.h index b1b4cb0d94..02b3aaba5a 100644 --- a/arch/arm/mach-uniphier/dram/ddrphy-ld20-regs.h +++ b/arch/arm/mach-uniphier/dram/ddrphy-ld20-regs.h @@ -1,41 +1,55 @@ /* * Copyright (C) 2016 Socionext Inc. + * + * SPDX-License-Identifier: GPL-2.0+ */ #ifndef _DDRPHY_LD20_REGS_H #define _DDRPHY_LD20_REGS_H -#define PHY_SCL_DATA_0 0x00000104 -#define PHY_SCL_DATA_1 0x00000108 -#define PHY_SCL_LATENCY 0x0000010C -#define PHY_SCL_START 0x00000100 -#define PHY_SCL_CONFIG_1 0x00000118 -#define PHY_SCL_CONFIG_2 0x0000011C -#define PHY_PAD_CTRL 0x00000120 -#define PHY_DLL_RECALIB 0x00000124 -#define PHY_DLL_ADRCTRL 0x00000128 -#define PHY_LANE_SEL 0x0000012C -#define PHY_DLL_TRIM_1 0x00000130 -#define PHY_DLL_TRIM_2 0x00000134 -#define PHY_DLL_TRIM_3 0x00000138 -#define PHY_SCL_MAIN_CLK_DELTA 0x00000140 -#define PHY_WRLVL_AUTOINC_TRIM 0x0000014C -#define PHY_WRLVL_DYN_ODT 0x00000150 -#define PHY_WRLVL_ON_OFF 0x00000154 -#define PHY_UNQ_ANALOG_DLL_1 0x0000015C -#define PHY_DLL_INCR_TRIM_1 0x00000164 -#define PHY_DLL_INCR_TRIM_3 0x00000168 -#define PHY_SCL_CONFIG_3 0x0000016C -#define PHY_UNIQUIFY_TSMC_IO_1 0x00000170 -#define PHY_SCL_START_ADDR 0x00000188 -#define PHY_DSCL_CNT 0x0000019C -#define PHY_DLL_TRIM_CLK 0x000001A4 -#define PHY_DYNAMIC_BIT_LVL 0x000001AC -#define PHY_SCL_WINDOW_TRIM 0x000001B4 -#define PHY_DISABLE_GATING_FOR_SCL 0x000001B8 -#define PHY_SCL_CONFIG_4 0x000001BC -#define PHY_DYNAMIC_WRITE_BIT_LVL 0x000001C0 -#define PHY_VREF_TRAINING 0x000001C8 -#define PHY_SCL_GATE_TIMING 0x000001E0 +#define PHY_REG_SHIFT 2 + +#define PHY_SCL_START (0x40 << (PHY_REG_SHIFT)) +#define PHY_SCL_DATA_0 (0x41 << (PHY_REG_SHIFT)) +#define PHY_SCL_DATA_1 (0x42 << (PHY_REG_SHIFT)) +#define PHY_SCL_LATENCY (0x43 << (PHY_REG_SHIFT)) +#define PHY_SCL_CONFIG_1 (0x46 << (PHY_REG_SHIFT)) +#define PHY_SCL_CONFIG_2 (0x47 << (PHY_REG_SHIFT)) +#define PHY_PAD_CTRL (0x48 << (PHY_REG_SHIFT)) +#define PHY_DLL_RECALIB (0x49 << (PHY_REG_SHIFT)) +#define PHY_DLL_ADRCTRL (0x4A << (PHY_REG_SHIFT)) +#define PHY_LANE_SEL (0x4B << (PHY_REG_SHIFT)) +#define PHY_DLL_TRIM_1 (0x4C << (PHY_REG_SHIFT)) +#define PHY_DLL_TRIM_2 (0x4D << (PHY_REG_SHIFT)) +#define PHY_DLL_TRIM_3 (0x4E << (PHY_REG_SHIFT)) +#define PHY_SCL_MAIN_CLK_DELTA (0x50 << (PHY_REG_SHIFT)) +#define PHY_WRLVL_AUTOINC_TRIM (0x53 << (PHY_REG_SHIFT)) +#define PHY_WRLVL_DYN_ODT (0x54 << (PHY_REG_SHIFT)) +#define PHY_WRLVL_ON_OFF (0x55 << (PHY_REG_SHIFT)) +#define PHY_UNQ_ANALOG_DLL_1 (0x57 << (PHY_REG_SHIFT)) +#define PHY_UNQ_ANALOG_DLL_2 (0x58 << (PHY_REG_SHIFT)) +#define PHY_DLL_INCR_TRIM_1 (0x59 << (PHY_REG_SHIFT)) +#define PHY_DLL_INCR_TRIM_3 (0x5A << (PHY_REG_SHIFT)) +#define PHY_SCL_CONFIG_3 (0x5B << (PHY_REG_SHIFT)) +#define PHY_UNIQUIFY_TSMC_IO_1 (0x5C << (PHY_REG_SHIFT)) +#define PHY_SCL_START_ADDR (0x62 << (PHY_REG_SHIFT)) +#define PHY_IP_DQ_DQS_BITWISE_TRIM (0x65 << (PHY_REG_SHIFT)) +#define PHY_DSCL_CNT (0x67 << (PHY_REG_SHIFT)) +#define PHY_OP_DQ_DM_DQS_BITWISE_TRIM (0x68 << (PHY_REG_SHIFT)) +#define PHY_DLL_TRIM_CLK (0x69 << (PHY_REG_SHIFT)) +#define PHY_DYNAMIC_BIT_LVL (0x6B << (PHY_REG_SHIFT)) +#define PHY_SCL_WINDOW_TRIM (0x6D << (PHY_REG_SHIFT)) +#define PHY_DISABLE_GATING_FOR_SCL (0x6E << (PHY_REG_SHIFT)) +#define PHY_SCL_CONFIG_4 (0x6F << (PHY_REG_SHIFT)) +#define PHY_DYNAMIC_WRITE_BIT_LVL (0x70 << (PHY_REG_SHIFT)) +#define PHY_VREF_TRAINING (0x72 << (PHY_REG_SHIFT)) +#define PHY_SCL_GATE_TIMING (0x78 << (PHY_REG_SHIFT)) + +/* MASK */ +#define MSK_OP_DQ_DM_DQS_BITWISE_TRIM 0x0000007F +#define MSK_IP_DQ_DQS_BITWISE_TRIM 0x0000007F +#define MSK_OVERRIDE 0x00000080 + +#define PHY_BITLVL_DLY_WIDTH 6 #endif /* _DDRPHY_LD20_REGS_H */ diff --git a/arch/arm/mach-uniphier/dram/umc-ld20.c b/arch/arm/mach-uniphier/dram/umc-ld20.c index 186a398a60..1fdd119a3f 100644 --- a/arch/arm/mach-uniphier/dram/umc-ld20.c +++ b/arch/arm/mach-uniphier/dram/umc-ld20.c @@ -1,7 +1,7 @@ /* * Copyright (C) 2016 Socionext Inc. * - * based on commit f7a4c9efe333fb1536efa86f9e96dc0ee109fedd of Diag + * based on commit a3c28918e86ad57127cf07bf8b32950cab20c03c of Diag * * SPDX-License-Identifier: GPL-2.0+ */ @@ -18,6 +18,7 @@ #include "umc64-regs.h" #define DRAM_CH_NR 3 +#define CONFIG_DDR_FREQ 1866 enum dram_freq { DRAM_FREQ_1866M, @@ -30,6 +31,268 @@ enum dram_size { DRAM_SZ_NR, }; +enum dram_board { /* board type */ + DRAM_BOARD_LD20_REF, /* LD20 reference */ + DRAM_BOARD_LD20_GLOBAL, /* LD20 TV */ + DRAM_BOARD_LD21_REF, /* LD21 reference */ + DRAM_BOARD_LD21_GLOBAL, /* LD21 TV */ + DRAM_BOARD_NR, +}; + +#define MSK_PHY_LANE_SEL 0x000000FF +#define MSK_BIT_SEL 0x00000F00 +#define MSK_DLL_MAS_DLY 0xFF000000 +#define MSK_MAS_DLY 0x7F000000 +#define MSK_DLLS_TRIM_CLK 0x000000FF + +#define PHY_DLL_MAS_DLY_WIDTH 8 +#define PHY_SLV_DLY_WIDTH 6 + +static void ddrphy_maskwritel(u32 data, u32 mask, void *addr) +{ + u32 value; + + value = (readl(addr) & ~mask) | (data & mask); + writel(value, addr); +} + +static u32 ddrphy_maskreadl(u32 mask, void *addr) +{ + return readl(addr) & mask; +} + +/* set phy_lane_sel.phy_lane_sel */ +static void ddrphy_set_phy_lane_sel(int val, void __iomem *phy_base) +{ + ddrphy_maskwritel(val, MSK_PHY_LANE_SEL, phy_base + PHY_LANE_SEL); +} + +/* set phy_lane_sel.bit_sel */ +static void ddrphy_set_bit_sel(int bit, void __iomem *phy_base) +{ + ddrphy_maskwritel(bit << 8, MSK_BIT_SEL, phy_base + PHY_LANE_SEL); +} + +/* Calculating step for PUB-byte */ +static int ddrphy_hpstep(int delay, void __iomem *phy_base) +{ + int mdl, freq; + + freq = CONFIG_DDR_FREQ; /* FIXME */ + mdl = ddrphy_maskreadl(MSK_DLL_MAS_DLY, phy_base + PHY_DLL_ADRCTRL) >> 24; + + return DIV_ROUND_CLOSEST(freq * delay * mdl, 2 * 1000000); +} + +static void ddrphy_set_dll_trim_clk(int delay_ckoffset, void __iomem *phy_base) +{ + u8 ck_step; /* ckoffset_step for clock */ + u32 ck_step_all; + + /* CK-Offset */ + if (delay_ckoffset >= 0) { + /* shift + direction */ + ck_step = min(ddrphy_hpstep(delay_ckoffset, phy_base), 127); + ck_step_all = ((0x1<<(PHY_SLV_DLY_WIDTH + 1))|ck_step); + } else{ + /* shift - direction */ + ck_step = min(ddrphy_hpstep(-1*delay_ckoffset, phy_base), 127); + ck_step_all = ck_step; + } + + ddrphy_set_phy_lane_sel(0, phy_base); + ddrphy_maskwritel(ck_step_all, MSK_DLLS_TRIM_CLK, phy_base + PHY_DLL_TRIM_CLK); +} + +static void ddrphy_set_dll_recalib(int delay_qoffset, u32 recalib_cnt, + u8 disable_recalib, u8 ctr_start_val, + void __iomem *phy_base) +{ + u8 dlls_trim_adrctrl_ma, incr_dly_adrctrl_ma; /* qoffset_step and flag for inc/dec */ + u32 recalib_all; /* all fields of register dll_recalib */ + + /* Q-Offset */ + if (delay_qoffset >= 0) { + dlls_trim_adrctrl_ma = min(ddrphy_hpstep(delay_qoffset, phy_base), 63); + incr_dly_adrctrl_ma = 0x1; + } else { + dlls_trim_adrctrl_ma = min(ddrphy_hpstep(-1*delay_qoffset, phy_base), 63); + incr_dly_adrctrl_ma = 0x0; + } + + recalib_all = ((ctr_start_val & 0xf) << 28) | + (incr_dly_adrctrl_ma << 27) | + ((disable_recalib & 0x1) << 26) | + ((recalib_cnt & 0x3ffff) << 8) | + (dlls_trim_adrctrl_ma & 0x3f); + + /* write value for all bits other than bit[7:6] */ + ddrphy_maskwritel(recalib_all, ~0xc0, phy_base + PHY_DLL_RECALIB); +} + +static void ddrphy_set_dll_adrctrl(int delay_qoffset, u8 override_adrctrl, + void __iomem *phy_base) +{ + u8 dlls_trim_adrctrl, incr_dly_adrctrl; /* qoffset_step for clock */ + u32 adrctrl_all; + + if (delay_qoffset >= 0) { + dlls_trim_adrctrl = min(ddrphy_hpstep(delay_qoffset, phy_base), 63); + incr_dly_adrctrl = 0x1; + } else { + dlls_trim_adrctrl = min(ddrphy_hpstep(-delay_qoffset, phy_base), 63); + incr_dly_adrctrl = 0x0; + } + + adrctrl_all = (incr_dly_adrctrl << 9) | + ((override_adrctrl & 0x1) << 8) | + dlls_trim_adrctrl; + + ddrphy_maskwritel(adrctrl_all, 0x33f, phy_base + PHY_DLL_ADRCTRL); +} + +/* dio */ +static int dio_adrctrl_0[DRAM_BOARD_NR][DRAM_CH_NR] = { + {268-262, 268-263, 268-378}, /* LD20 reference */ + {268-262, 268-263, 268-378}, /* LD20 TV */ + {268-212, 268-268, 0}, /* LD21 reference */ + {268-212, 268-268, 0}, /* LD21 TV */ +}; +static int dio_dlltrimclk_0[DRAM_BOARD_NR][DRAM_CH_NR] = { + {268, 268, 268}, /* LD20 reference */ + {268, 268, 268}, /* LD20 TV */ + {268, 268+252, 0}, /* LD21 reference */ + {268, 268+202, 0}, /* LD21 TV */ +}; +static int dio_dllrecalib_0[DRAM_BOARD_NR][DRAM_CH_NR] = { + {268-378, 268-263, 268-378}, /* LD20 reference */ + {268-378, 268-263, 268-378}, /* LD20 TV */ + {268-212, 268-536, 0}, /* LD21 reference */ + {268-212, 268-536, 0}, /* LD21 TV */ +}; + +static u32 dio_phy_pad_ctrl[DRAM_BOARD_NR][DRAM_CH_NR] = { + {0x50B840B1, 0x50B840B1, 0x50B840B1}, /* LD20 reference */ + {0x50BB40B1, 0x50BB40B1, 0x50BB40B1}, /* LD20 TV */ + {0x50BB40B4, 0x50B840B1, 0x50BB40B1}, /* LD21 reference */ + {0x50BB40B4, 0x50B840B1, 0x50BB40B1}, /* LD21 TV */ +}; + +static u32 dio_scl_gate_timing[DRAM_CH_NR] = {0x00000140, 0x00000180, 0x00000140}; + +static int dio_op_dq_shift_val[DRAM_BOARD_NR][DRAM_CH_NR][32] = { + { /* LD20 reference */ + { + 2, 1, 0, 1, 2, 1, 1, 1, 2, 1, 1, 2, 1, 1, 1, 1, + 1, 2, 1, 1, 1, 2, 1, 1, 2, 2, 0, 1, 1, 2, 2, 1, + }, + { + 1, 1, 0, 1, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 0, 0, 1, 1, 0, 0, 0, 1, 1, 1, 2, 1, 2, 1, + }, + { + 2, 2, 0, 2, 1, 1, 2, 1, 1, 1, 0, 1, 1, -1, 1, 1, + 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 0, 2, 2, 1, 2, + }, + }, + { /* LD20 TV */ + { + 2, 1, 0, 1, 2, 1, 1, 1, 2, 1, 1, 2, 1, 1, 1, 1, + 1, 2, 1, 1, 1, 2, 1, 1, 2, 2, 0, 1, 1, 2, 2, 1, + }, + { + 1, 1, 0, 1, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 0, 0, 1, 1, 0, 0, 0, 1, 1, 1, 2, 1, 2, 1, + }, + { + 2, 2, 0, 2, 1, 1, 2, 1, 1, 1, 0, 1, 1, -1, 1, 1, + 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 0, 2, 2, 1, 2, + }, + }, + { /* LD21 reference */ + { + 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 0, 2, + 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1, + }, + { 1, 0, 2, 1, 1, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, + 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 0, + }, + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + }, + }, + { /* LD21 TV */ + { + 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 0, 2, + 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1, + }, + { 1, 0, 2, 1, 1, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, + 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 0, + }, + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + }, + }, +}; +static int dio_ip_dq_shift_val[DRAM_BOARD_NR][DRAM_CH_NR][32] = { + { /* LD20 reference */ + { + 3, 3, 3, 2, 3, 2, 0, 2, 2, 3, 3, 1, 2, 2, 2, 2, + 2, 2, 2, 2, 0, 1, 1, 1, 2, 2, 2, 2, 3, 0, 2, 2, + }, + { + 2, 2, 1, 1, -1, 1, 1, 1, 2, 0, 2, 2, 2, 1, 0, 2, + 2, 1, 2, 1, 0, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, + }, + { + 2, 2, 3, 2, 1, 2, 2, 2, 2, 3, 4, 2, 3, 4, 3, 3, + 2, 2, 1, 2, 1, 1, 1, 1, 2, 2, 2, 2, 1, 2, 2, 1, + }, + }, + { /* LD20 TV */ + { + 3, 3, 3, 2, 3, 2, 0, 2, 2, 3, 3, 1, 2, 2, 2, 2, + 2, 2, 2, 2, 0, 1, 1, 1, 2, 2, 2, 2, 3, 0, 2, 2, + }, + { + 2, 2, 1, 1, -1, 1, 1, 1, 2, 0, 2, 2, 2, 1, 0, 2, + 2, 1, 2, 1, 0, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, + }, + { + 2, 2, 3, 2, 1, 2, 2, 2, 2, 3, 4, 2, 3, 4, 3, 3, + 2, 2, 1, 2, 1, 1, 1, 1, 2, 2, 2, 2, 1, 2, 2, 1, + }, + }, + { /* LD21 reference */ + { + 2, 2, 2, 2, 1, 2, 2, 2, 2, 3, 3, 2, 2, 2, 2, 2, + 2, 1, 2, 2, 1, 1, 1, 1, 2, 2, 2, 3, 1, 2, 2, 2, + }, + { + 3, 4, 4, 1, 0, 1, 1, 1, 1, 2, 1, 2, 2, 3, 3, 2, + 1, 0, 2, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1, + }, + { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + }, + }, + { /* LD21 TV */ + { + 2, 2, 2, 2, 1, 2, 2, 2, 2, 3, 3, 2, 2, 2, 2, 2, + 2, 1, 2, 2, 1, 1, 1, 1, 2, 2, 2, 3, 1, 2, 2, 2, + }, + { + 3, 4, 4, 1, 0, 1, 1, 1, 1, 2, 1, 2, 2, 3, 3, 2, + 1, 0, 2, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1, + }, + { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + }, + }, +}; + /* umc */ static u32 umc_initctla[DRAM_FREQ_NR] = {0x71016D11}; static u32 umc_initctlb[DRAM_FREQ_NR] = {0x07E390AC}; @@ -37,15 +300,24 @@ static u32 umc_initctlc[DRAM_FREQ_NR] = {0x00FF00FF}; static u32 umc_drmmr0[DRAM_FREQ_NR] = {0x00000114}; static u32 umc_drmmr2[DRAM_FREQ_NR] = {0x000002a0}; -static u32 umc_memconf0a[DRAM_FREQ_NR] = {0x00000801}; -static u32 umc_memconf0b[DRAM_FREQ_NR] = {0x00000130}; -static u32 umc_memconfch[DRAM_FREQ_NR] = {0x00033803}; - +static u32 umc_memconf0a[DRAM_FREQ_NR][DRAM_SZ_NR] = { + /* 256MB 512MB */ + {0x00000601, 0x00000801}, /* 1866 MHz */ +}; +static u32 umc_memconf0b[DRAM_FREQ_NR][DRAM_SZ_NR] = { + /* 256MB 512MB */ + {0x00000120, 0x00000130}, /* 1866 MHz */ +}; +static u32 umc_memconfch[DRAM_FREQ_NR][DRAM_SZ_NR] = { + /* 256MB 512MB */ + {0x00033603, 0x00033803}, /* 1866 MHz */ +}; static u32 umc_cmdctla[DRAM_FREQ_NR] = {0x060D0D20}; static u32 umc_cmdctlb[DRAM_FREQ_NR] = {0x2D211C08}; static u32 umc_cmdctlc[DRAM_FREQ_NR] = {0x00150C04}; static u32 umc_cmdctle[DRAM_FREQ_NR][DRAM_SZ_NR] = { - {0x0049071D, 0x0078071D}, + /* 256MB 512MB */ + {0x0049071D, 0x0078071D}, /* 1866 MHz */ }; static u32 umc_rdatactl_d0[DRAM_FREQ_NR] = {0x00000610}; @@ -61,12 +333,22 @@ static u32 umc_directbusctrla[DRAM_CH_NR] = { 0x00000000, 0x00000001, 0x00000001 }; +/* polling function for PHY Init Complete */ +static void ddrphy_init_complete(void __iomem *dc_base) +{ + /* Wait for PHY Init Complete */ + while (!(readl(dc_base + UMC_DFISTCTLC) & BIT(0))) + cpu_relax(); +} + /* DDR PHY */ -static void ddrphy_init(void __iomem *phy_base, enum dram_freq freq) +static void ddrphy_init(void __iomem *phy_base, void __iomem *dc_base, + enum dram_freq freq, enum dram_board board, int ch) { - writel(0x00000001, phy_base + PHY_UNIQUIFY_TSMC_IO_1); - while ((readl(phy_base + PHY_UNIQUIFY_TSMC_IO_1) & BIT(1))) + writel(0x0C001001, phy_base + PHY_UNIQUIFY_TSMC_IO_1); + while (!(readl(phy_base + PHY_UNIQUIFY_TSMC_IO_1) & BIT(1))) cpu_relax(); + writel(0x0C001000, phy_base + PHY_UNIQUIFY_TSMC_IO_1); writel(0x00000000, phy_base + PHY_DLL_INCR_TRIM_3); writel(0x00000000, phy_base + PHY_DLL_INCR_TRIM_1); @@ -84,14 +366,14 @@ static void ddrphy_init(void __iomem *phy_base, enum dram_freq freq) writel(0x0000000a, phy_base + PHY_DLL_TRIM_3); writel(0x00000001, phy_base + PHY_SCL_WINDOW_TRIM); writel(0x00000000, phy_base + PHY_UNQ_ANALOG_DLL_1); - writel(0x50bb40b1, phy_base + PHY_PAD_CTRL); + writel(dio_phy_pad_ctrl[board][ch], phy_base + PHY_PAD_CTRL); writel(0x00000070, phy_base + PHY_VREF_TRAINING); writel(0x01000075, phy_base + PHY_SCL_CONFIG_1); writel(0x00000501, phy_base + PHY_SCL_CONFIG_2); writel(0x00000000, phy_base + PHY_SCL_CONFIG_3); writel(0x000261c0, phy_base + PHY_DYNAMIC_WRITE_BIT_LVL); writel(0x00000000, phy_base + PHY_SCL_CONFIG_4); - writel(0x000000a0, phy_base + PHY_SCL_GATE_TIMING); + writel(dio_scl_gate_timing[ch], phy_base + PHY_SCL_GATE_TIMING); writel(0x02a000a0, phy_base + PHY_WRLVL_DYN_ODT); writel(0x00840004, phy_base + PHY_WRLVL_ON_OFF); writel(0x0000020d, phy_base + PHY_DLL_ADRCTRL); @@ -99,30 +381,96 @@ static void ddrphy_init(void __iomem *phy_base, enum dram_freq freq) writel(0x0000008d, phy_base + PHY_DLL_TRIM_CLK); writel(0xa800100d, phy_base + PHY_DLL_RECALIB); writel(0x00005076, phy_base + PHY_SCL_LATENCY); + + ddrphy_init_complete(dc_base); + + ddrphy_set_dll_adrctrl(dio_adrctrl_0[board][ch], 0, phy_base); + ddrphy_set_dll_trim_clk(dio_dlltrimclk_0[board][ch], phy_base); + ddrphy_set_dll_recalib(dio_dllrecalib_0[board][ch], 0x10, 0, 0xa, + phy_base); +} + +static void ddrphy_shift_dq(u32 reg_mask, u32 reg_addr, int shift_val, + void __iomem *phy_base) +{ + u32 reg_val; + int dq_val; + + reg_val = ddrphy_maskreadl(reg_mask, phy_base + reg_addr) & 0x7f; + dq_val = reg_val & 0x3f; + + if ((reg_val & 0x40) == 0x00) + dq_val = -1 * dq_val; + + /* value shift*/ + dq_val = dq_val + shift_val; + + if (dq_val >= 0) + reg_val = 0x40 + (dq_val & 0x3f); + else + reg_val = ((-1 * dq_val) & 0x3f); + + ddrphy_maskwritel(reg_val, reg_mask, phy_base + reg_addr); } -static int ddrphy_training(void __iomem *phy_base) +static void ddrphy_shift(void __iomem *phy_base, enum dram_board board, int ch) +{ + u32 dx, bit; + + /* set override = 1 */ + ddrphy_maskwritel(MSK_OVERRIDE, MSK_OVERRIDE, + phy_base + PHY_OP_DQ_DM_DQS_BITWISE_TRIM); + ddrphy_maskwritel(MSK_OVERRIDE, MSK_OVERRIDE, + phy_base + PHY_IP_DQ_DQS_BITWISE_TRIM); + + for (dx = 0; dx < 4; dx++) { + /* set byte to PHY_LANE_SEL.phy_lane_sel= dx * (PHY_BITLVL_DLY_WIDTH+1) */ + ddrphy_set_phy_lane_sel(dx * (PHY_BITLVL_DLY_WIDTH + 1), + phy_base); + + for (bit = 0; bit < 8; bit++) { + ddrphy_set_bit_sel(bit, phy_base); + + /* shift write reg value*/ + ddrphy_shift_dq(MSK_OP_DQ_DM_DQS_BITWISE_TRIM, + PHY_OP_DQ_DM_DQS_BITWISE_TRIM, + dio_op_dq_shift_val[board][ch][dx * 8 + bit], + phy_base); + /* shift read reg value */ + ddrphy_shift_dq(MSK_IP_DQ_DQS_BITWISE_TRIM, + PHY_IP_DQ_DQS_BITWISE_TRIM, + dio_ip_dq_shift_val[board][ch][dx * 8 + bit], + phy_base); + } + + } + ddrphy_set_phy_lane_sel(0, phy_base); + ddrphy_set_bit_sel(0, phy_base); +} + +static int ddrphy_training(void __iomem *phy_base, enum dram_board board, + int ch) { writel(0x0000000f, phy_base + PHY_WRLVL_AUTOINC_TRIM); writel(0x00010000, phy_base + PHY_DLL_TRIM_2); writel(0x50000000, phy_base + PHY_SCL_START); - while ((readl(phy_base + PHY_SCL_START) & BIT(28))) + while (readl(phy_base + PHY_SCL_START) & BIT(28)) cpu_relax(); writel(0x00000000, phy_base + PHY_DISABLE_GATING_FOR_SCL); writel(0xff00ff00, phy_base + PHY_SCL_DATA_0); writel(0xff00ff00, phy_base + PHY_SCL_DATA_1); - writel(0x00080000, phy_base + PHY_SCL_START_ADDR); + writel(0xFBF8FFFF, phy_base + PHY_SCL_START_ADDR); writel(0x11000000, phy_base + PHY_SCL_START); - while ((readl(phy_base + PHY_SCL_START) & BIT(28))) + while (readl(phy_base + PHY_SCL_START) & BIT(28)) cpu_relax(); - writel(0x00000000, phy_base + PHY_SCL_START_ADDR); + writel(0xFBF0FFFF, phy_base + PHY_SCL_START_ADDR); writel(0x30500000, phy_base + PHY_SCL_START); - while ((readl(phy_base + PHY_SCL_START) & BIT(28))) + while (readl(phy_base + PHY_SCL_START) & BIT(28)) cpu_relax(); writel(0x00000001, phy_base + PHY_DISABLE_GATING_FOR_SCL); @@ -131,16 +479,22 @@ static int ddrphy_training(void __iomem *phy_base) writel(0xf10e4a56, phy_base + PHY_SCL_DATA_1); writel(0x11000000, phy_base + PHY_SCL_START); - while ((readl(phy_base + PHY_SCL_START) & BIT(28))) + while (readl(phy_base + PHY_SCL_START) & BIT(28)) cpu_relax(); writel(0x34000000, phy_base + PHY_SCL_START); - while ((readl(phy_base + PHY_SCL_START) & BIT(28))) + while (readl(phy_base + PHY_SCL_START) & BIT(28)) cpu_relax(); writel(0x00000003, phy_base + PHY_DISABLE_GATING_FOR_SCL); + writel(0x000261c0, phy_base + PHY_DYNAMIC_WRITE_BIT_LVL); + writel(0x00003270, phy_base + PHY_DYNAMIC_BIT_LVL); + writel(0x011BD0C4, phy_base + PHY_DSCL_CNT); + + /* shift ip_dq, op_dq trim */ + ddrphy_shift(phy_base, board, ch); return 0; } @@ -164,10 +518,6 @@ static int umc_dc_init(void __iomem *dc_base, enum dram_freq freq, return -EINVAL; } - /* Wait for PHY Init Complete */ - while (!(readl(dc_base + UMC_DFISTCTLC) & BIT(0))) - cpu_relax(); - writel(0x00000001, dc_base + UMC_DFICSOVRRD); writel(0x00000000, dc_base + UMC_DFITURNOFF); @@ -180,9 +530,9 @@ static int umc_dc_init(void __iomem *dc_base, enum dram_freq freq, writel(umc_drmmr2[freq], dc_base + UMC_DRMMR2); writel(0x00000000, dc_base + UMC_DRMMR3); - writel(umc_memconf0a[freq], dc_base + UMC_MEMCONF0A); - writel(umc_memconf0b[freq], dc_base + UMC_MEMCONF0B); - writel(umc_memconfch[freq], dc_base + UMC_MEMCONFCH); + writel(umc_memconf0a[freq][size_e], dc_base + UMC_MEMCONF0A); + writel(umc_memconf0b[freq][size_e], dc_base + UMC_MEMCONF0B); + writel(umc_memconfch[freq][size_e], dc_base + UMC_MEMCONFCH); writel(0x00000008, dc_base + UMC_MEMMAPSET); writel(umc_cmdctla[freq], dc_base + UMC_CMDCTLA); @@ -227,7 +577,8 @@ static int umc_dc_init(void __iomem *dc_base, enum dram_freq freq, } static int umc_ch_init(void __iomem *umc_ch_base, void __iomem *phy_ch_base, - enum dram_freq freq, unsigned long size, int ch) + enum dram_freq freq, enum dram_board board, + unsigned long size, int ch) { void __iomem *dc_base = umc_ch_base + 0x00011000; void __iomem *phy_base = phy_ch_base; @@ -240,13 +591,13 @@ static int umc_ch_init(void __iomem *umc_ch_base, void __iomem *phy_ch_base, writel(UMC_DIOCTLA_CTL_NRST | UMC_DIOCTLA_CFG_NRST, dc_base + UMC_DIOCTLA); - ddrphy_init(phy_base, freq); + ddrphy_init(phy_base, dc_base, freq, board, ch); ret = umc_dc_init(dc_base, freq, size, ch); if (ret) return ret; - ret = ddrphy_training(phy_base); + ret = ddrphy_training(phy_base, board, ch); if (ret) return ret; @@ -274,6 +625,7 @@ int uniphier_ld20_umc_init(const struct uniphier_board_data *bd) void __iomem *umc_ch_base = (void __iomem *)0x5b800000; void __iomem *phy_ch_base = (void __iomem *)0x6e200000; enum dram_freq freq; + enum dram_board board; int ch, ret; switch (bd->dram_freq) { @@ -285,11 +637,30 @@ int uniphier_ld20_umc_init(const struct uniphier_board_data *bd) return -EINVAL; } + switch (UNIPHIER_BD_BOARD_GET_TYPE(bd->flags)) { + case UNIPHIER_BD_BOARD_LD20_REF: + board = DRAM_BOARD_LD20_REF; + break; + case UNIPHIER_BD_BOARD_LD20_GLOBAL: + board = DRAM_BOARD_LD20_GLOBAL; + break; + case UNIPHIER_BD_BOARD_LD21_REF: + board = DRAM_BOARD_LD21_REF; + break; + case UNIPHIER_BD_BOARD_LD21_GLOBAL: + board = DRAM_BOARD_LD21_GLOBAL; + break; + default: + pr_err("unsupported board type %d\n", + UNIPHIER_BD_BOARD_GET_TYPE(bd->flags)); + return -EINVAL; + } + for (ch = 0; ch < bd->dram_nr_ch; ch++) { unsigned long size = bd->dram_ch[ch].size; unsigned int width = bd->dram_ch[ch].width; - ret = umc_ch_init(umc_ch_base, phy_ch_base, freq, + ret = umc_ch_init(umc_ch_base, phy_ch_base, freq, board, size / (width / 16), ch); if (ret) { pr_err("failed to initialize UMC ch%d\n", ch); diff --git a/arch/arm/mach-uniphier/early-clk/Makefile b/arch/arm/mach-uniphier/early-clk/Makefile deleted file mode 100644 index 755a3618b5..0000000000 --- a/arch/arm/mach-uniphier/early-clk/Makefile +++ /dev/null @@ -1,13 +0,0 @@ -# -# SPDX-License-Identifier: GPL-2.0+ -# - -obj-$(CONFIG_ARCH_UNIPHIER_SLD3) += early-clk-ld4.o -obj-$(CONFIG_ARCH_UNIPHIER_LD4) += early-clk-ld4.o -obj-$(CONFIG_ARCH_UNIPHIER_PRO4) += early-clk-ld4.o -obj-$(CONFIG_ARCH_UNIPHIER_SLD8) += early-clk-ld4.o -obj-$(CONFIG_ARCH_UNIPHIER_PRO5) += early-clk-pro5.o -obj-$(CONFIG_ARCH_UNIPHIER_PXS2) += early-clk-pxs2.o -obj-$(CONFIG_ARCH_UNIPHIER_LD6B) += early-clk-pxs2.o -obj-$(CONFIG_ARCH_UNIPHIER_LD11) += early-clk-ld11.o -obj-$(CONFIG_ARCH_UNIPHIER_LD20) += early-clk-ld20.o diff --git a/arch/arm/mach-uniphier/early-pinctrl/Makefile b/arch/arm/mach-uniphier/early-pinctrl/Makefile deleted file mode 100644 index 7177a8cf8f..0000000000 --- a/arch/arm/mach-uniphier/early-pinctrl/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -# -# SPDX-License-Identifier: GPL-2.0+ -# - -obj-$(CONFIG_ARCH_UNIPHIER_SLD3) += early-pinctrl-sld3.o -obj-$(CONFIG_ARCH_UNIPHIER_LD11) += early-pinctrl-ld20.o -obj-$(CONFIG_ARCH_UNIPHIER_LD20) += early-pinctrl-ld20.o diff --git a/arch/arm/mach-uniphier/early-pinctrl/early-pinctrl-ld20.c b/arch/arm/mach-uniphier/early-pinctrl/early-pinctrl-ld20.c deleted file mode 100644 index 537deaf232..0000000000 --- a/arch/arm/mach-uniphier/early-pinctrl/early-pinctrl-ld20.c +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright (C) 2016 Masahiro Yamada <yamada.masahiro@socionext.com> - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#include "../init.h" -#include "../sg-regs.h" - -int uniphier_ld20_early_pin_init(const struct uniphier_board_data *bd) -{ - /* Comment format: PAD Name -> Function Name */ - sg_set_pinsel(0, 0, 8, 4); /* XECS1 -> XECS1 */ - sg_set_pinsel(1, 0, 8, 4); /* ERXW -> ERXW */ - sg_set_pinsel(2, 0, 8, 4); /* XERWE1 -> XERWE1 */ - sg_set_pinsel(6, 2, 8, 4); /* XNFRE -> XERWE0 */ - sg_set_pinsel(7, 2, 8, 4); /* XNFWE -> ES0 */ - sg_set_pinsel(8, 2, 8, 4); /* NFALE -> ES1 */ - sg_set_pinsel(9, 2, 8, 4); /* NFCLE -> ES2 */ - sg_set_pinsel(10, 2, 8, 4); /* NFD0 -> ED0 */ - sg_set_pinsel(11, 2, 8, 4); /* NFD1 -> ED1 */ - sg_set_pinsel(12, 2, 8, 4); /* NFD2 -> ED2 */ - sg_set_pinsel(13, 2, 8, 4); /* NFD3 -> ED3 */ - sg_set_pinsel(14, 2, 8, 4); /* NFD4 -> ED4 */ - sg_set_pinsel(15, 2, 8, 4); /* NFD5 -> ED5 */ - sg_set_pinsel(16, 2, 8, 4); /* NFD6 -> ED6 */ - sg_set_pinsel(17, 2, 8, 4); /* NFD7 -> ED7 */ - sg_set_iectrl_range(0, 2); - sg_set_iectrl_range(6, 17); - - return 0; -} diff --git a/arch/arm/mach-uniphier/early-pinctrl/early-pinctrl-sld3.c b/arch/arm/mach-uniphier/early-pinctrl/early-pinctrl-sld3.c deleted file mode 100644 index 6c5d58f856..0000000000 --- a/arch/arm/mach-uniphier/early-pinctrl/early-pinctrl-sld3.c +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Copyright (C) 2011-2015 Masahiro Yamada <yamada.masahiro@socionext.com> - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#include "../init.h" -#include "../sg-regs.h" - -int uniphier_sld3_early_pin_init(const struct uniphier_board_data *bd) -{ - /* Comment format: PAD Name -> Function Name */ - -#ifdef CONFIG_UNIPHIER_SERIAL - sg_set_pinsel(63, 0, 4, 4); /* RXD0 */ - sg_set_pinsel(64, 1, 4, 4); /* TXD0 */ - - sg_set_pinsel(65, 0, 4, 4); /* RXD1 */ - sg_set_pinsel(66, 1, 4, 4); /* TXD1 */ - - sg_set_pinsel(96, 2, 4, 4); /* RXD2 */ - sg_set_pinsel(102, 2, 4, 4); /* TXD2 */ -#endif - - sg_set_pinsel(99, 1, 4, 4); /* GPIO26 -> EA24 */ - - return 0; -} diff --git a/arch/arm/mach-uniphier/init.h b/arch/arm/mach-uniphier/init.h index db80074fc9..4e3bee1cd3 100644 --- a/arch/arm/mach-uniphier/init.h +++ b/arch/arm/mach-uniphier/init.h @@ -23,9 +23,17 @@ struct uniphier_board_data { unsigned int dram_nr_ch; struct uniphier_dram_ch dram_ch[UNIPHIER_MAX_NR_DRAM_CH]; unsigned int flags; -#define UNIPHIER_BD_DDR3PLUS BIT(2) -#define UNIPHIER_BD_PACKAGE_LD21 1 -#define UNIPHIER_BD_PACKAGE_TYPE(f) ((f) & 0x3) + +#define UNIPHIER_BD_DPLL_SSC_GET_RATE(f) (((f) >> 8) & 0x3) +#define UNIPHIER_BD_DPLL_SSC_RATE(r) (((r) & 0x3) << 8) + +#define UNIPHIER_BD_DDR3PLUS BIT(2) + +#define UNIPHIER_BD_BOARD_GET_TYPE(f) ((f) & 0x3) +#define UNIPHIER_BD_BOARD_LD20_REF 0 /* LD20 reference */ +#define UNIPHIER_BD_BOARD_LD20_GLOBAL 1 /* LD20 TV Set */ +#define UNIPHIER_BD_BOARD_LD21_REF 2 /* LD21 reference */ +#define UNIPHIER_BD_BOARD_LD21_GLOBAL 3 /* LD21 TV Set */ }; const struct uniphier_board_data *uniphier_get_board_param(void); @@ -75,13 +83,12 @@ int memconf_init(const struct uniphier_board_data *bd); int uniphier_sld3_memconf_init(const struct uniphier_board_data *bd); int uniphier_pxs2_memconf_init(const struct uniphier_board_data *bd); -int uniphier_sld3_pll_init(const struct uniphier_board_data *bd); -int uniphier_ld4_pll_init(const struct uniphier_board_data *bd); -int uniphier_pro4_pll_init(const struct uniphier_board_data *bd); -int uniphier_sld8_pll_init(const struct uniphier_board_data *bd); - -int uniphier_sld3_enable_dpll_ssc(const struct uniphier_board_data *bd); -int uniphier_ld4_enable_dpll_ssc(const struct uniphier_board_data *bd); +int uniphier_sld3_dpll_init(const struct uniphier_board_data *bd); +int uniphier_ld4_dpll_init(const struct uniphier_board_data *bd); +int uniphier_pro4_dpll_init(const struct uniphier_board_data *bd); +int uniphier_sld8_dpll_init(const struct uniphier_board_data *bd); +int uniphier_ld11_dpll_init(const struct uniphier_board_data *bd); +int uniphier_ld20_dpll_init(const struct uniphier_board_data *bd); int uniphier_ld4_early_clk_init(const struct uniphier_board_data *bd); int uniphier_pro5_early_clk_init(const struct uniphier_board_data *bd); @@ -89,9 +96,6 @@ int uniphier_pxs2_early_clk_init(const struct uniphier_board_data *bd); int uniphier_ld11_early_clk_init(const struct uniphier_board_data *bd); int uniphier_ld20_early_clk_init(const struct uniphier_board_data *bd); -int uniphier_sld3_early_pin_init(const struct uniphier_board_data *bd); -int uniphier_ld20_early_pin_init(const struct uniphier_board_data *bd); - int uniphier_ld4_umc_init(const struct uniphier_board_data *bd); int uniphier_pro4_umc_init(const struct uniphier_board_data *bd); int uniphier_sld8_umc_init(const struct uniphier_board_data *bd); @@ -99,14 +103,11 @@ int uniphier_pxs2_umc_init(const struct uniphier_board_data *bd); int uniphier_ld20_umc_init(const struct uniphier_board_data *bd); int uniphier_ld11_umc_init(const struct uniphier_board_data *bd); -void uniphier_sld3_pin_init(void); -void uniphier_ld4_pin_init(void); -void uniphier_pro4_pin_init(void); -void uniphier_sld8_pin_init(void); -void uniphier_pro5_pin_init(void); -void uniphier_pxs2_pin_init(void); -void uniphier_ld6b_pin_init(void); -void uniphier_ld20_pin_init(void); +void uniphier_sld3_pll_init(void); +void uniphier_ld4_pll_init(void); +void uniphier_pro4_pll_init(void); +void uniphier_ld11_pll_init(void); +int uniphier_ld20_pll_init(const struct uniphier_board_data *bd); void uniphier_ld4_clk_init(void); void uniphier_pro4_clk_init(void); @@ -115,6 +116,8 @@ void uniphier_pxs2_clk_init(void); void uniphier_ld11_clk_init(void); void uniphier_ld20_clk_init(void); +int uniphier_pin_init(const char *pinconfig_name); +void uniphier_smp_kick_all_cpus(void); void cci500_init(int nr_slaves); #define pr_err(fmt, args...) printf(fmt, ##args) diff --git a/arch/arm/mach-uniphier/init/init-ld11.c b/arch/arm/mach-uniphier/init/init-ld11.c index de2dc62b5d..e324c94700 100644 --- a/arch/arm/mach-uniphier/init/init-ld11.c +++ b/arch/arm/mach-uniphier/init/init-ld11.c @@ -15,7 +15,7 @@ int uniphier_ld11_init(const struct uniphier_board_data *bd) { uniphier_sbc_init_savepin(bd); uniphier_pxs2_sbc_init(bd); - uniphier_ld20_early_pin_init(bd); + uniphier_pin_init("system_bus_grp"); support_card_reset(); @@ -31,12 +31,14 @@ int uniphier_ld11_init(const struct uniphier_board_data *bd) led_puts("L2"); - led_puts("L3"); - #ifdef CONFIG_SPL_SERIAL_SUPPORT preloader_console_init(); #endif + led_puts("L3"); + + uniphier_ld11_dpll_init(bd); + led_puts("L4"); { diff --git a/arch/arm/mach-uniphier/init/init-ld20.c b/arch/arm/mach-uniphier/init/init-ld20.c index 7f66053e1f..cb05421252 100644 --- a/arch/arm/mach-uniphier/init/init-ld20.c +++ b/arch/arm/mach-uniphier/init/init-ld20.c @@ -1,5 +1,6 @@ /* - * Copyright (C) 2016 Masahiro Yamada <yamada.masahiro@socionext.com> + * Copyright (C) 2016 Socionext Inc. + * Author: Masahiro Yamada <yamada.masahiro@socionext.com> * * SPDX-License-Identifier: GPL-2.0+ */ @@ -14,7 +15,7 @@ int uniphier_ld20_init(const struct uniphier_board_data *bd) { uniphier_sbc_init_savepin(bd); uniphier_pxs2_sbc_init(bd); - uniphier_ld20_early_pin_init(bd); + uniphier_pin_init("system_bus_grp"); support_card_reset(); @@ -31,12 +32,14 @@ int uniphier_ld20_init(const struct uniphier_board_data *bd) led_puts("L2"); - led_puts("L3"); - #ifdef CONFIG_SPL_SERIAL_SUPPORT preloader_console_init(); #endif + led_puts("L3"); + + uniphier_ld20_dpll_init(bd); + led_puts("L4"); { diff --git a/arch/arm/mach-uniphier/init/init-ld4.c b/arch/arm/mach-uniphier/init/init-ld4.c index b1c9b5dcd6..2f4c60dd71 100644 --- a/arch/arm/mach-uniphier/init/init-ld4.c +++ b/arch/arm/mach-uniphier/init/init-ld4.c @@ -1,5 +1,7 @@ /* - * Copyright (C) 2013-2015 Masahiro Yamada <yamada.masahiro@socionext.com> + * Copyright (C) 2013-2015 Panasonic Corporation + * Copyright (C) 2015-2016 Socionext Inc. + * Author: Masahiro Yamada <yamada.masahiro@socionext.com> * * SPDX-License-Identifier: GPL-2.0+ */ @@ -19,7 +21,7 @@ int uniphier_ld4_init(const struct uniphier_board_data *bd) support_card_reset(); - uniphier_ld4_pll_init(bd); + uniphier_ld4_dpll_init(bd); support_card_init(); @@ -53,9 +55,5 @@ int uniphier_ld4_init(const struct uniphier_board_data *bd) led_puts("L5"); - uniphier_ld4_enable_dpll_ssc(bd); - - led_puts("L6"); - return 0; } diff --git a/arch/arm/mach-uniphier/init/init-pro4.c b/arch/arm/mach-uniphier/init/init-pro4.c index 3528d84e8d..2825150198 100644 --- a/arch/arm/mach-uniphier/init/init-pro4.c +++ b/arch/arm/mach-uniphier/init/init-pro4.c @@ -1,5 +1,7 @@ /* - * Copyright (C) 2013-2015 Masahiro Yamada <yamada.masahiro@socionext.com> + * Copyright (C) 2013-2015 Panasonic Corporation + * Copyright (C) 2015-2016 Socionext Inc. + * Author: Masahiro Yamada <yamada.masahiro@socionext.com> * * SPDX-License-Identifier: GPL-2.0+ */ @@ -16,7 +18,7 @@ int uniphier_pro4_init(const struct uniphier_board_data *bd) support_card_reset(); - uniphier_pro4_pll_init(bd); + uniphier_pro4_dpll_init(bd); support_card_init(); @@ -50,9 +52,5 @@ int uniphier_pro4_init(const struct uniphier_board_data *bd) led_puts("L5"); - uniphier_ld4_enable_dpll_ssc(bd); - - led_puts("L6"); - return 0; } diff --git a/arch/arm/mach-uniphier/init/init-sld3.c b/arch/arm/mach-uniphier/init/init-sld3.c index 50fcbb09b8..ee3245c846 100644 --- a/arch/arm/mach-uniphier/init/init-sld3.c +++ b/arch/arm/mach-uniphier/init/init-sld3.c @@ -1,5 +1,7 @@ /* - * Copyright (C) 2013-2015 Masahiro Yamada <yamada.masahiro@socionext.com> + * Copyright (C) 2013-2015 Panasonic Corporation + * Copyright (C) 2015-2016 Socionext Inc. + * Author: Masahiro Yamada <yamada.masahiro@socionext.com> * * SPDX-License-Identifier: GPL-2.0+ */ @@ -16,11 +18,9 @@ int uniphier_sld3_init(const struct uniphier_board_data *bd) uniphier_sbc_init_admulti(bd); - uniphier_sld3_early_pin_init(bd); - support_card_reset(); - uniphier_sld3_pll_init(bd); + uniphier_sld3_dpll_init(bd); support_card_init(); @@ -45,9 +45,5 @@ int uniphier_sld3_init(const struct uniphier_board_data *bd) led_puts("L5"); - uniphier_sld3_enable_dpll_ssc(bd); - - led_puts("L6"); - return 0; } diff --git a/arch/arm/mach-uniphier/init/init-sld8.c b/arch/arm/mach-uniphier/init/init-sld8.c index 07c6d60ad1..82d036b73b 100644 --- a/arch/arm/mach-uniphier/init/init-sld8.c +++ b/arch/arm/mach-uniphier/init/init-sld8.c @@ -1,5 +1,7 @@ /* - * Copyright (C) 2013-2015 Masahiro Yamada <yamada.masahiro@socionext.com> + * Copyright (C) 2013-2015 Panasonic Corporation + * Copyright (C) 2015-2016 Socionext Inc. + * Author: Masahiro Yamada <yamada.masahiro@socionext.com> * * SPDX-License-Identifier: GPL-2.0+ */ @@ -19,7 +21,7 @@ int uniphier_sld8_init(const struct uniphier_board_data *bd) support_card_reset(); - uniphier_sld8_pll_init(bd); + uniphier_sld8_dpll_init(bd); support_card_init(); @@ -53,9 +55,5 @@ int uniphier_sld8_init(const struct uniphier_board_data *bd) led_puts("L5"); - uniphier_ld4_enable_dpll_ssc(bd); - - led_puts("L6"); - return 0; } diff --git a/arch/arm/mach-uniphier/micro-support-card.c b/arch/arm/mach-uniphier/micro-support-card.c index 6987d1e0f8..04e6558e9b 100644 --- a/arch/arm/mach-uniphier/micro-support-card.c +++ b/arch/arm/mach-uniphier/micro-support-card.c @@ -49,7 +49,7 @@ static int support_card_show_revision(void) return 0; } -int check_support_card(void) +int checkboard(void) { printf("SC: Micro Support Card "); return support_card_show_revision(); diff --git a/arch/arm/mach-uniphier/micro-support-card.h b/arch/arm/mach-uniphier/micro-support-card.h index 5da0ada726..4dae60312f 100644 --- a/arch/arm/mach-uniphier/micro-support-card.h +++ b/arch/arm/mach-uniphier/micro-support-card.h @@ -1,17 +1,18 @@ /* - * Copyright (C) 2012-2015 Masahiro Yamada <yamada.masahiro@socionext.com> + * Copyright (C) 2012-2014 Panasonic Corporation + * Copyright (C) 2015-2016 Socionext Inc. + * Author: Masahiro Yamada <yamada.masahiro@socionext.com> * * SPDX-License-Identifier: GPL-2.0+ */ -#ifndef ARCH_BOARD_H -#define ARCH_BOARD_H +#ifndef MICRO_SUPPORT_CARD_H +#define MICRO_SUPPORT_CARD_H #if defined(CONFIG_MICRO_SUPPORT_CARD) void support_card_reset(void); void support_card_init(void); void support_card_late_init(void); -int check_support_card(void); void led_puts(const char *s); #else static inline void support_card_reset(void) @@ -26,14 +27,9 @@ static inline void support_card_late_init(void) { } -static inline int check_support_card(void) -{ - return 0; -} - static inline void led_puts(const char *s) { } #endif -#endif /* ARCH_BOARD_H */ +#endif /* MICRO_SUPPORT_CARD_H */ diff --git a/arch/arm/mach-uniphier/pinctrl-glue.c b/arch/arm/mach-uniphier/pinctrl-glue.c new file mode 100644 index 0000000000..48549e313b --- /dev/null +++ b/arch/arm/mach-uniphier/pinctrl-glue.c @@ -0,0 +1,32 @@ +/* + * Copyright (C) 2016 Socionext Inc. + * Author: Masahiro Yamada <yamada.masahiro@socionext.com> + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include <linux/err.h> +#include <dm/device.h> +#include <dm/pinctrl.h> +#include <dm/uclass.h> + +#include "init.h" + +int uniphier_pin_init(const char *pinconfig_name) +{ + struct udevice *pctldev, *config, *next; + int ret; + + ret = uclass_first_device(UCLASS_PINCTRL, &pctldev); + if (ret) + return ret; + + device_foreach_child_safe(config, next, pctldev) { + if (strcmp(config->name, pinconfig_name)) + continue; + + return pinctrl_generic_set_state(pctldev, config); + } + + return -ENODEV; +} diff --git a/arch/arm/mach-uniphier/pinctrl/Makefile b/arch/arm/mach-uniphier/pinctrl/Makefile deleted file mode 100644 index 7f4d9f76a8..0000000000 --- a/arch/arm/mach-uniphier/pinctrl/Makefile +++ /dev/null @@ -1,13 +0,0 @@ -# -# SPDX-License-Identifier: GPL-2.0+ -# - -obj-$(CONFIG_ARCH_UNIPHIER_SLD3) += pinctrl-sld3.o -obj-$(CONFIG_ARCH_UNIPHIER_LD4) += pinctrl-ld4.o -obj-$(CONFIG_ARCH_UNIPHIER_PRO4) += pinctrl-pro4.o -obj-$(CONFIG_ARCH_UNIPHIER_SLD8) += pinctrl-sld8.o -obj-$(CONFIG_ARCH_UNIPHIER_PRO5) += pinctrl-pro5.o -obj-$(CONFIG_ARCH_UNIPHIER_PXS2) += pinctrl-pxs2.o -obj-$(CONFIG_ARCH_UNIPHIER_LD6B) += pinctrl-ld6b.o -obj-$(CONFIG_ARCH_UNIPHIER_LD11) += pinctrl-ld20.o -obj-$(CONFIG_ARCH_UNIPHIER_LD20) += pinctrl-ld20.o diff --git a/arch/arm/mach-uniphier/pinctrl/pinctrl-ld20.c b/arch/arm/mach-uniphier/pinctrl/pinctrl-ld20.c deleted file mode 100644 index 645b90151c..0000000000 --- a/arch/arm/mach-uniphier/pinctrl/pinctrl-ld20.c +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright (C) 2016 Masahiro Yamada <yamada.masahiro@socionext.com> - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#include <linux/io.h> - -#include "../init.h" -#include "../sg-regs.h" - -void uniphier_ld20_pin_init(void) -{ - /* Comment format: PAD Name -> Function Name */ - -#ifdef CONFIG_NAND_DENALI - sg_set_pinsel(3, 0, 8, 4); /* XNFWP -> XNFWP */ - sg_set_pinsel(4, 0, 8, 4); /* XNFCE0 -> XNFCE0 */ - sg_set_pinsel(5, 0, 8, 4); /* NFRYBY0 -> NFRYBY0 */ - sg_set_pinsel(6, 0, 8, 4); /* XNFRE -> XNFRE */ - sg_set_pinsel(7, 0, 8, 4); /* XNFWE -> XNFWE */ - sg_set_pinsel(8, 0, 8, 4); /* NFALE -> NFALE */ - sg_set_pinsel(9, 0, 8, 4); /* NFCLE -> NFCLE */ - sg_set_pinsel(10, 0, 8, 4); /* NFD0 -> NFD0 */ - sg_set_pinsel(11, 0, 8, 4); /* NFD1 -> NFD1 */ - sg_set_pinsel(12, 0, 8, 4); /* NFD2 -> NFD2 */ - sg_set_pinsel(13, 0, 8, 4); /* NFD3 -> NFD3 */ - sg_set_pinsel(14, 0, 8, 4); /* NFD4 -> NFD4 */ - sg_set_pinsel(15, 0, 8, 4); /* NFD5 -> NFD5 */ - sg_set_pinsel(16, 0, 8, 4); /* NFD6 -> NFD6 */ - sg_set_pinsel(17, 0, 8, 4); /* NFD7 -> NFD7 */ - sg_set_iectrl_range(3, 17); -#endif - -#ifdef CONFIG_USB_XHCI_UNIPHIER - sg_set_pinsel(46, 0, 8, 4); /* USB0VBUS -> USB0VBUS */ - sg_set_pinsel(47, 0, 8, 4); /* USB0OD -> USB0OD */ - sg_set_pinsel(48, 0, 8, 4); /* USB1VBUS -> USB1VBUS */ - sg_set_pinsel(49, 0, 8, 4); /* USB1OD -> USB1OD */ - sg_set_pinsel(50, 0, 8, 4); /* USB2VBUS -> USB2VBUS */ - sg_set_pinsel(51, 0, 8, 4); /* USB2OD -> USB2OD */ - sg_set_pinsel(52, 0, 8, 4); /* USB3VBUS -> USB3VBUS */ - sg_set_pinsel(53, 0, 8, 4); /* USB3OD -> USB3OD */ - sg_set_iectrl_range(46, 53); -#endif - - sg_set_pinsel(149, 14, 8, 4); /* XIRQ0 -> XIRQ0 */ - sg_set_iectrl(149); - sg_set_pinsel(153, 14, 8, 4); /* XIRQ4 -> XIRQ4 */ - sg_set_iectrl(153); -} diff --git a/arch/arm/mach-uniphier/pinctrl/pinctrl-ld4.c b/arch/arm/mach-uniphier/pinctrl/pinctrl-ld4.c deleted file mode 100644 index 625d40c450..0000000000 --- a/arch/arm/mach-uniphier/pinctrl/pinctrl-ld4.c +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (C) 2011-2015 Masahiro Yamada <yamada.masahiro@socionext.com> - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#include <linux/io.h> - -#include "../init.h" -#include "../sg-regs.h" - -void uniphier_ld4_pin_init(void) -{ - u32 tmp; - - /* Comment format: PAD Name -> Function Name */ - -#ifdef CONFIG_NAND_DENALI - sg_set_pinsel(158, 0, 8, 4); /* XNFRE -> XNFRE_GB */ - sg_set_pinsel(159, 0, 8, 4); /* XNFWE -> XNFWE_GB */ - sg_set_pinsel(160, 0, 8, 4); /* XFALE -> NFALE_GB */ - sg_set_pinsel(161, 0, 8, 4); /* XFCLE -> NFCLE_GB */ - sg_set_pinsel(162, 0, 8, 4); /* XNFWP -> XFNWP_GB */ - sg_set_pinsel(163, 0, 8, 4); /* XNFCE0 -> XNFCE0_GB */ - sg_set_pinsel(164, 0, 8, 4); /* NANDRYBY0 -> NANDRYBY0_GB */ - sg_set_pinsel(22, 0, 8, 4); /* MMCCLK -> XFNCE1_GB */ - sg_set_pinsel(23, 0, 8, 4); /* MMCCMD -> NANDRYBY1_GB */ - sg_set_pinsel(24, 0, 8, 4); /* MMCDAT0 -> NFD0_GB */ - sg_set_pinsel(25, 0, 8, 4); /* MMCDAT1 -> NFD1_GB */ - sg_set_pinsel(26, 0, 8, 4); /* MMCDAT2 -> NFD2_GB */ - sg_set_pinsel(27, 0, 8, 4); /* MMCDAT3 -> NFD3_GB */ - sg_set_pinsel(28, 0, 8, 4); /* MMCDAT4 -> NFD4_GB */ - sg_set_pinsel(29, 0, 8, 4); /* MMCDAT5 -> NFD5_GB */ - sg_set_pinsel(30, 0, 8, 4); /* MMCDAT6 -> NFD6_GB */ - sg_set_pinsel(31, 0, 8, 4); /* MMCDAT7 -> NFD7_GB */ -#endif - - tmp = readl(SG_IECTRL); - tmp |= 0x41; - writel(tmp, SG_IECTRL); -} diff --git a/arch/arm/mach-uniphier/pinctrl/pinctrl-ld6b.c b/arch/arm/mach-uniphier/pinctrl/pinctrl-ld6b.c deleted file mode 100644 index 913722b256..0000000000 --- a/arch/arm/mach-uniphier/pinctrl/pinctrl-ld6b.c +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Copyright (C) 2015 Masahiro Yamada <yamada.masahiro@socionext.com> - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#include <linux/io.h> - -#include "../init.h" -#include "../sg-regs.h" - -void uniphier_ld6b_pin_init(void) -{ - /* Comment format: PAD Name -> Function Name */ - -#ifdef CONFIG_NAND_DENALI - sg_set_pinsel(30, 0, 8, 4); /* XNFRE -> XNFRE */ - sg_set_pinsel(31, 0, 8, 4); /* XNFWE -> XNFWE */ - sg_set_pinsel(32, 0, 8, 4); /* NFALE -> NFALE */ - sg_set_pinsel(33, 0, 8, 4); /* NFCLE -> NFCLE */ - sg_set_pinsel(34, 0, 8, 4); /* XNFWP -> XNFWP */ - sg_set_pinsel(35, 0, 8, 4); /* XNFCE0 -> XNFCE0 */ - sg_set_pinsel(36, 0, 8, 4); /* NRYBY0 -> NRYBY0 */ - sg_set_pinsel(37, 0, 8, 4); /* XNFCE1 -> NRYBY1 */ - sg_set_pinsel(38, 0, 8, 4); /* NRYBY1 -> XNFCE1 */ - sg_set_pinsel(39, 0, 8, 4); /* NFD0 -> NFD0 */ - sg_set_pinsel(40, 0, 8, 4); /* NFD1 -> NFD1 */ - sg_set_pinsel(41, 0, 8, 4); /* NFD2 -> NFD2 */ - sg_set_pinsel(42, 0, 8, 4); /* NFD3 -> NFD3 */ - sg_set_pinsel(43, 0, 8, 4); /* NFD4 -> NFD4 */ - sg_set_pinsel(44, 0, 8, 4); /* NFD5 -> NFD5 */ - sg_set_pinsel(45, 0, 8, 4); /* NFD6 -> NFD6 */ - sg_set_pinsel(46, 0, 8, 4); /* NFD7 -> NFD7 */ -#endif - -#ifdef CONFIG_USB_XHCI_UNIPHIER - sg_set_pinsel(56, 0, 8, 4); /* USB0VBUS -> USB0VBUS */ - sg_set_pinsel(57, 0, 8, 4); /* USB0OD -> USB0OD */ - sg_set_pinsel(58, 0, 8, 4); /* USB1VBUS -> USB1VBUS */ - sg_set_pinsel(59, 0, 8, 4); /* USB1OD -> USB1OD */ - sg_set_pinsel(60, 0, 8, 4); /* USB2VBUS -> USB2VBUS */ - sg_set_pinsel(61, 0, 8, 4); /* USB2OD -> USB2OD */ - sg_set_pinsel(62, 0, 8, 4); /* USB3VBUS -> USB3VBUS */ - sg_set_pinsel(63, 0, 8, 4); /* USB3OD -> USB3OD */ -#endif -} diff --git a/arch/arm/mach-uniphier/pinctrl/pinctrl-pro4.c b/arch/arm/mach-uniphier/pinctrl/pinctrl-pro4.c deleted file mode 100644 index 3796491c59..0000000000 --- a/arch/arm/mach-uniphier/pinctrl/pinctrl-pro4.c +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (C) 2011-2015 Masahiro Yamada <yamada.masahiro@socionext.com> - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#include <linux/io.h> - -#include "../init.h" -#include "../sg-regs.h" - -void uniphier_pro4_pin_init(void) -{ - /* Comment format: PAD Name -> Function Name */ - -#ifdef CONFIG_NAND_DENALI - sg_set_pinsel(40, 0, 4, 8); /* NFD0 -> NFD0 */ - sg_set_pinsel(41, 0, 4, 8); /* NFD1 -> NFD1 */ - sg_set_pinsel(42, 0, 4, 8); /* NFD2 -> NFD2 */ - sg_set_pinsel(43, 0, 4, 8); /* NFD3 -> NFD3 */ - sg_set_pinsel(44, 0, 4, 8); /* NFD4 -> NFD4 */ - sg_set_pinsel(45, 0, 4, 8); /* NFD5 -> NFD5 */ - sg_set_pinsel(46, 0, 4, 8); /* NFD6 -> NFD6 */ - sg_set_pinsel(47, 0, 4, 8); /* NFD7 -> NFD7 */ - sg_set_pinsel(48, 0, 4, 8); /* NFALE -> NFALE */ - sg_set_pinsel(49, 0, 4, 8); /* NFCLE -> NFCLE */ - sg_set_pinsel(50, 0, 4, 8); /* XNFRE -> XNFRE */ - sg_set_pinsel(51, 0, 4, 8); /* XNFWE -> XNFWE */ - sg_set_pinsel(52, 0, 4, 8); /* XNFWP -> XNFWP */ - sg_set_pinsel(53, 0, 4, 8); /* XNFCE0 -> XNFCE0 */ - sg_set_pinsel(54, 0, 4, 8); /* NRYBY0 -> NRYBY0 */ - /* sg_set_pinsel(131, 1, 4, 8); */ /* RXD2 -> NRYBY1 */ - /* sg_set_pinsel(132, 1, 4, 8); */ /* TXD2 -> XNFCE1 */ -#endif - -#ifdef CONFIG_USB_XHCI_UNIPHIER - sg_set_pinsel(180, 0, 4, 8); /* USB0VBUS -> USB0VBUS */ - sg_set_pinsel(181, 0, 4, 8); /* USB0OD -> USB0OD */ - sg_set_pinsel(182, 0, 4, 8); /* USB1VBUS -> USB1VBUS */ - sg_set_pinsel(183, 0, 4, 8); /* USB1OD -> USB1OD */ -#endif - - writel(1, SG_LOADPINCTRL); -} diff --git a/arch/arm/mach-uniphier/pinctrl/pinctrl-pro5.c b/arch/arm/mach-uniphier/pinctrl/pinctrl-pro5.c deleted file mode 100644 index 32ba923480..0000000000 --- a/arch/arm/mach-uniphier/pinctrl/pinctrl-pro5.c +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (C) 2015 Masahiro Yamada <yamada.masahiro@socionext.com> - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#include <linux/io.h> - -#include "../init.h" -#include "../sg-regs.h" - -void uniphier_pro5_pin_init(void) -{ - /* Comment format: PAD Name -> Function Name */ - -#ifdef CONFIG_NAND_DENALI - sg_set_pinsel(19, 0, 4, 8); /* XNFRE -> XNFRE */ - sg_set_pinsel(20, 0, 4, 8); /* XNFWE -> XNFWE */ - sg_set_pinsel(21, 0, 4, 8); /* NFALE -> NFALE */ - sg_set_pinsel(22, 0, 4, 8); /* NFCLE -> NFCLE */ - sg_set_pinsel(23, 0, 4, 8); /* XNFWP -> XNFWP */ - sg_set_pinsel(24, 0, 4, 8); /* XNFCE0 -> XNFCE0 */ - sg_set_pinsel(25, 0, 4, 8); /* NRYBY0 -> NRYBY0 */ - sg_set_pinsel(26, 0, 4, 8); /* XNFCE1 -> XNFCE1 */ - sg_set_pinsel(27, 0, 4, 8); /* NRYBY1 -> NRYBY1 */ - sg_set_pinsel(28, 0, 4, 8); /* NFD0 -> NFD0 */ - sg_set_pinsel(29, 0, 4, 8); /* NFD1 -> NFD1 */ - sg_set_pinsel(30, 0, 4, 8); /* NFD2 -> NFD2 */ - sg_set_pinsel(31, 0, 4, 8); /* NFD3 -> NFD3 */ - sg_set_pinsel(32, 0, 4, 8); /* NFD4 -> NFD4 */ - sg_set_pinsel(33, 0, 4, 8); /* NFD5 -> NFD5 */ - sg_set_pinsel(34, 0, 4, 8); /* NFD6 -> NFD6 */ - sg_set_pinsel(35, 0, 4, 8); /* NFD7 -> NFD7 */ -#endif - -#ifdef CONFIG_USB_XHCI_UNIPHIER - sg_set_pinsel(124, 0, 4, 8); /* USB0VBUS -> USB0VBUS */ - sg_set_pinsel(125, 0, 4, 8); /* USB0OD -> USB0OD */ - sg_set_pinsel(126, 0, 4, 8); /* USB1VBUS -> USB1VBUS */ - sg_set_pinsel(127, 0, 4, 8); /* USB1OD -> USB1OD */ -#endif - - writel(1, SG_LOADPINCTRL); -} diff --git a/arch/arm/mach-uniphier/pinctrl/pinctrl-pxs2.c b/arch/arm/mach-uniphier/pinctrl/pinctrl-pxs2.c deleted file mode 100644 index 2d62ab3d88..0000000000 --- a/arch/arm/mach-uniphier/pinctrl/pinctrl-pxs2.c +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Copyright (C) 2015 Masahiro Yamada <yamada.masahiro@socionext.com> - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#include <linux/io.h> - -#include "../init.h" -#include "../sg-regs.h" - -void uniphier_pxs2_pin_init(void) -{ - /* Comment format: PAD Name -> Function Name */ - -#ifdef CONFIG_NAND_DENALI - sg_set_pinsel(30, 8, 8, 4); /* XNFRE -> XNFRE */ - sg_set_pinsel(31, 8, 8, 4); /* XNFWE -> XNFWE */ - sg_set_pinsel(32, 8, 8, 4); /* NFALE -> NFALE */ - sg_set_pinsel(33, 8, 8, 4); /* NFCLE -> NFCLE */ - sg_set_pinsel(34, 8, 8, 4); /* XNFWP -> XNFWP */ - sg_set_pinsel(35, 8, 8, 4); /* XNFCE0 -> XNFCE0 */ - sg_set_pinsel(36, 8, 8, 4); /* NRYBY0 -> NRYBY0 */ - sg_set_pinsel(37, 8, 8, 4); /* XNFCE1 -> NRYBY1 */ - sg_set_pinsel(38, 8, 8, 4); /* NRYBY1 -> XNFCE1 */ - sg_set_pinsel(39, 8, 8, 4); /* NFD0 -> NFD0 */ - sg_set_pinsel(40, 8, 8, 4); /* NFD1 -> NFD1 */ - sg_set_pinsel(41, 8, 8, 4); /* NFD2 -> NFD2 */ - sg_set_pinsel(42, 8, 8, 4); /* NFD3 -> NFD3 */ - sg_set_pinsel(43, 8, 8, 4); /* NFD4 -> NFD4 */ - sg_set_pinsel(44, 8, 8, 4); /* NFD5 -> NFD5 */ - sg_set_pinsel(45, 8, 8, 4); /* NFD6 -> NFD6 */ - sg_set_pinsel(46, 8, 8, 4); /* NFD7 -> NFD7 */ -#endif - -#ifdef CONFIG_USB_XHCI_UNIPHIER - sg_set_pinsel(56, 8, 8, 4); /* USB0VBUS -> USB0VBUS */ - sg_set_pinsel(57, 8, 8, 4); /* USB0OD -> USB0OD */ - sg_set_pinsel(58, 8, 8, 4); /* USB1VBUS -> USB1VBUS */ - sg_set_pinsel(59, 8, 8, 4); /* USB1OD -> USB1OD */ - sg_set_pinsel(60, 8, 8, 4); /* USB2VBUS -> USB2VBUS */ - sg_set_pinsel(61, 8, 8, 4); /* USB2OD -> USB2OD */ - sg_set_pinsel(62, 8, 8, 4); /* USB3VBUS -> USB3VBUS */ - sg_set_pinsel(63, 8, 8, 4); /* USB3OD -> USB3OD */ -#endif -} diff --git a/arch/arm/mach-uniphier/pinctrl/pinctrl-sld3.c b/arch/arm/mach-uniphier/pinctrl/pinctrl-sld3.c deleted file mode 100644 index 62edc4929a..0000000000 --- a/arch/arm/mach-uniphier/pinctrl/pinctrl-sld3.c +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Copyright (C) 2011-2015 Masahiro Yamada <yamada.masahiro@socionext.com> - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#include "../init.h" -#include "../sg-regs.h" - -void uniphier_sld3_pin_init(void) -{ -#ifdef CONFIG_USB_EHCI - sg_set_pinsel(13, 0, 4, 4); /* USB0OC */ - sg_set_pinsel(14, 1, 4, 4); /* USB0VBUS */ - - sg_set_pinsel(15, 0, 4, 4); /* USB1OC */ - sg_set_pinsel(16, 1, 4, 4); /* USB1VBUS */ - - sg_set_pinsel(17, 0, 4, 4); /* USB2OC */ - sg_set_pinsel(18, 1, 4, 4); /* USB2VBUS */ - - sg_set_pinsel(19, 0, 4, 4); /* USB3OC */ - sg_set_pinsel(20, 1, 4, 4); /* USB3VBUS */ -#endif - -#ifdef CONFIG_NAND_DENALI - sg_set_pinsel(38, 1, 4, 4); /* NFALE_GB, NFCLE_GB */ - sg_set_pinsel(39, 1, 4, 4); /* XNFRYBY0_GB */ - sg_set_pinsel(40, 1, 4, 4); /* XNFCE0_GB, XNFRE_GB, XNFWE_GB, XNFWP_GB */ - sg_set_pinsel(41, 1, 4, 4); /* XNFRYBY1_GB, XNFCE1_GB */ - sg_set_pinsel(58, 1, 4, 4); /* NFD[0-3]_GB */ - sg_set_pinsel(59, 1, 4, 4); /* NFD[4-7]_GB */ -#endif - -#ifdef CONFIG_MMC_UNIPHIER - /* eMMC */ - sg_set_pinsel(55, 1, 4, 4); /* XERST */ - sg_set_pinsel(56, 1, 4, 4); /* MMCDAT[0-3] */ - sg_set_pinsel(57, 1, 4, 4); /* MMCDAT[4-7] */ - sg_set_pinsel(60, 1, 4, 4); /* MMCCLK, MMCCMD */ - - /* SD card */ - sg_set_pinsel(42, 1, 4, 4); /* SD1CLK, SD1CMD, SD1DAT[0-3] */ - sg_set_pinsel(43, 1, 4, 4); /* SD1CD */ - sg_set_pinsel(44, 1, 4, 4); /* SD1WP */ - sg_set_pinsel(45, 1, 4, 4); /* SDVTCG */ -#endif -} diff --git a/arch/arm/mach-uniphier/pinctrl/pinctrl-sld8.c b/arch/arm/mach-uniphier/pinctrl/pinctrl-sld8.c deleted file mode 100644 index 1c97c8b49f..0000000000 --- a/arch/arm/mach-uniphier/pinctrl/pinctrl-sld8.c +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (C) 2011-2015 Masahiro Yamada <yamada.masahiro@socionext.com> - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#include <linux/io.h> - -#include "../init.h" -#include "../sg-regs.h" - -void uniphier_sld8_pin_init(void) -{ - /* Comment format: PAD Name -> Function Name */ - -#ifdef CONFIG_NAND_DENALI - sg_set_pinsel(15, 0, 8, 4); /* XNFRE_GB -> XNFRE_GB */ - sg_set_pinsel(16, 0, 8, 4); /* XNFWE_GB -> XNFWE_GB */ - sg_set_pinsel(17, 0, 8, 4); /* XFALE_GB -> NFALE_GB */ - sg_set_pinsel(18, 0, 8, 4); /* XFCLE_GB -> NFCLE_GB */ - sg_set_pinsel(19, 0, 8, 4); /* XNFWP_GB -> XFNWP_GB */ - sg_set_pinsel(20, 0, 8, 4); /* XNFCE0_GB -> XNFCE0_GB */ - sg_set_pinsel(21, 0, 8, 4); /* NANDRYBY0_GB -> NANDRYBY0_GB */ - sg_set_pinsel(22, 0, 8, 4); /* XFNCE1_GB -> XFNCE1_GB */ - sg_set_pinsel(23, 0, 8, 4); /* NANDRYBY1_GB -> NANDRYBY1_GB */ - sg_set_pinsel(24, 0, 8, 4); /* NFD0_GB -> NFD0_GB */ - sg_set_pinsel(25, 0, 8, 4); /* NFD1_GB -> NFD1_GB */ - sg_set_pinsel(26, 0, 8, 4); /* NFD2_GB -> NFD2_GB */ - sg_set_pinsel(27, 0, 8, 4); /* NFD3_GB -> NFD3_GB */ - sg_set_pinsel(28, 0, 8, 4); /* NFD4_GB -> NFD4_GB */ - sg_set_pinsel(29, 0, 8, 4); /* NFD5_GB -> NFD5_GB */ - sg_set_pinsel(30, 0, 8, 4); /* NFD6_GB -> NFD6_GB */ - sg_set_pinsel(31, 0, 8, 4); /* NFD7_GB -> NFD7_GB */ -#endif -} diff --git a/arch/arm/mach-uniphier/pll/Makefile b/arch/arm/mach-uniphier/pll/Makefile deleted file mode 100644 index 63f169ccc3..0000000000 --- a/arch/arm/mach-uniphier/pll/Makefile +++ /dev/null @@ -1,8 +0,0 @@ -# -# SPDX-License-Identifier: GPL-2.0+ -# - -obj-$(CONFIG_ARCH_UNIPHIER_SLD3) += pll-init-sld3.o pll-spectrum-sld3.o -obj-$(CONFIG_ARCH_UNIPHIER_LD4) += pll-init-ld4.o pll-spectrum-ld4.o -obj-$(CONFIG_ARCH_UNIPHIER_PRO4) += pll-init-pro4.o pll-spectrum-ld4.o -obj-$(CONFIG_ARCH_UNIPHIER_SLD8) += pll-init-sld8.o pll-spectrum-ld4.o diff --git a/arch/arm/mach-uniphier/pll/pll-init-sld8.c b/arch/arm/mach-uniphier/pll/pll-init-sld8.c deleted file mode 100644 index b26106eb1e..0000000000 --- a/arch/arm/mach-uniphier/pll/pll-init-sld8.c +++ /dev/null @@ -1,205 +0,0 @@ -/* - * Copyright (C) 2011-2015 Masahiro Yamada <yamada.masahiro@socionext.com> - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#include <common.h> -#include <linux/io.h> - -#include "../init.h" -#include "../sc-regs.h" -#include "../sg-regs.h" - -static void dpll_init(void) -{ - u32 tmp; - /* - * Set DPLL SSC parameters for DPLLCTRL3 - * [23] DIVN_TEST 0x1 - * [22:16] DIVN 0x50 - * [10] FREFSEL_TEST 0x1 - * [9:8] FREFSEL 0x2 - * [4] ICPD_TEST 0x1 - * [3:0] ICPD 0xb - */ - tmp = readl(SC_DPLLCTRL3); - tmp &= ~0x00ff0717; - tmp |= 0x00d0061b; - writel(tmp, SC_DPLLCTRL3); - - /* - * Set DPLL SSC parameters for DPLLCTRL - * <-1%> <-2%> - * [29:20] SSC_UPCNT 132 (0x084) 132 (0x084) - * [14:0] SSC_dK 6335(0x18bf) 12710(0x31a6) - */ - tmp = readl(SC_DPLLCTRL); - tmp &= ~0x3ff07fff; -#ifdef CONFIG_DPLL_SSC_RATE_1PER - tmp |= 0x084018bf; -#else - tmp |= 0x084031a6; -#endif - writel(tmp, SC_DPLLCTRL); - - /* - * Set DPLL SSC parameters for DPLLCTRL2 - * [31:29] SSC_STEP 0 - * [27] SSC_REG_REF 1 - * [26:20] SSC_M 79 (0x4f) - * [19:0] SSC_K 964689 (0xeb851) - */ - tmp = readl(SC_DPLLCTRL2); - tmp &= ~0xefffffff; - tmp |= 0x0cfeb851; - writel(tmp, SC_DPLLCTRL2); -} - -static void upll_init(void) -{ - u32 tmp, clk_mode_upll, clk_mode_axosel; - - tmp = readl(SG_PINMON0); - clk_mode_upll = tmp & SG_PINMON0_CLK_MODE_UPLLSRC_MASK; - clk_mode_axosel = tmp & SG_PINMON0_CLK_MODE_AXOSEL_MASK; - - /* set 0 to SNRT(UPLLCTRL.bit28) and K_LD(UPLLCTRL.bit[27]) */ - tmp = readl(SC_UPLLCTRL); - tmp &= ~0x18000000; - writel(tmp, SC_UPLLCTRL); - - if (clk_mode_upll == SG_PINMON0_CLK_MODE_UPLLSRC_DEFAULT) { - if (clk_mode_axosel == SG_PINMON0_CLK_MODE_AXOSEL_25000KHZ_U || - clk_mode_axosel == SG_PINMON0_CLK_MODE_AXOSEL_25000KHZ_A) { - /* AXO: 25MHz */ - tmp &= ~0x07ffffff; - tmp |= 0x0228f5c0; - } else { - /* AXO: default 24.576MHz */ - tmp &= ~0x07ffffff; - tmp |= 0x02328000; - } - } - - writel(tmp, SC_UPLLCTRL); - - /* set 1 to K_LD(UPLLCTRL.bit[27]) */ - tmp |= 0x08000000; - writel(tmp, SC_UPLLCTRL); - - /* wait 10 usec */ - udelay(10); - - /* set 1 to SNRT(UPLLCTRL.bit[28]) */ - tmp |= 0x10000000; - writel(tmp, SC_UPLLCTRL); -} - -static void vpll_init(void) -{ - u32 tmp, clk_mode_axosel; - - tmp = readl(SG_PINMON0); - clk_mode_axosel = tmp & SG_PINMON0_CLK_MODE_AXOSEL_MASK; - - /* set 1 to VPLA27WP and VPLA27WP */ - tmp = readl(SC_VPLL27ACTRL); - tmp |= 0x00000001; - writel(tmp, SC_VPLL27ACTRL); - tmp = readl(SC_VPLL27BCTRL); - tmp |= 0x00000001; - writel(tmp, SC_VPLL27BCTRL); - - /* Set 0 to VPLA_K_LD and VPLB_K_LD */ - tmp = readl(SC_VPLL27ACTRL3); - tmp &= ~0x10000000; - writel(tmp, SC_VPLL27ACTRL3); - tmp = readl(SC_VPLL27BCTRL3); - tmp &= ~0x10000000; - writel(tmp, SC_VPLL27BCTRL3); - - /* Set 0 to VPLA_SNRST and VPLB_SNRST */ - tmp = readl(SC_VPLL27ACTRL2); - tmp &= ~0x10000000; - writel(tmp, SC_VPLL27ACTRL2); - tmp = readl(SC_VPLL27BCTRL2); - tmp &= ~0x10000000; - writel(tmp, SC_VPLL27BCTRL2); - - /* Set 0x20 to VPLA_SNRST and VPLB_SNRST */ - tmp = readl(SC_VPLL27ACTRL2); - tmp &= ~0x0000007f; - tmp |= 0x00000020; - writel(tmp, SC_VPLL27ACTRL2); - tmp = readl(SC_VPLL27BCTRL2); - tmp &= ~0x0000007f; - tmp |= 0x00000020; - writel(tmp, SC_VPLL27BCTRL2); - - if (clk_mode_axosel == SG_PINMON0_CLK_MODE_AXOSEL_25000KHZ_U || - clk_mode_axosel == SG_PINMON0_CLK_MODE_AXOSEL_25000KHZ_A) { - /* AXO: 25MHz */ - tmp = readl(SC_VPLL27ACTRL3); - tmp &= ~0x000fffff; - tmp |= 0x00066664; - writel(tmp, SC_VPLL27ACTRL3); - tmp = readl(SC_VPLL27BCTRL3); - tmp &= ~0x000fffff; - tmp |= 0x00066664; - writel(tmp, SC_VPLL27BCTRL3); - } else { - /* AXO: default 24.576MHz */ - tmp = readl(SC_VPLL27ACTRL3); - tmp &= ~0x000fffff; - tmp |= 0x000f5800; - writel(tmp, SC_VPLL27ACTRL3); - tmp = readl(SC_VPLL27BCTRL3); - tmp &= ~0x000fffff; - tmp |= 0x000f5800; - writel(tmp, SC_VPLL27BCTRL3); - } - - /* Set 1 to VPLA_K_LD and VPLB_K_LD */ - tmp = readl(SC_VPLL27ACTRL3); - tmp |= 0x10000000; - writel(tmp, SC_VPLL27ACTRL3); - tmp = readl(SC_VPLL27BCTRL3); - tmp |= 0x10000000; - writel(tmp, SC_VPLL27BCTRL3); - - /* wait 10 usec */ - udelay(10); - - /* Set 0 to VPLA_SNRST and VPLB_SNRST */ - tmp = readl(SC_VPLL27ACTRL2); - tmp |= 0x10000000; - writel(tmp, SC_VPLL27ACTRL2); - tmp = readl(SC_VPLL27BCTRL2); - tmp |= 0x10000000; - writel(tmp, SC_VPLL27BCTRL2); - - /* set 0 to VPLA27WP and VPLA27WP */ - tmp = readl(SC_VPLL27ACTRL); - tmp &= ~0x00000001; - writel(tmp, SC_VPLL27ACTRL); - tmp = readl(SC_VPLL27BCTRL); - tmp |= ~0x00000001; - writel(tmp, SC_VPLL27BCTRL); -} - -int uniphier_sld8_pll_init(const struct uniphier_board_data *bd) -{ - dpll_init(); - upll_init(); - vpll_init(); - - /* - * Wait 500 usec until dpll get stable - * We wait 10 usec in upll_init() and vpll_init() - * so 20 usec can be saved here. - */ - udelay(480); - - return 0; -} diff --git a/arch/arm/mach-uniphier/pll/pll-spectrum-ld4.c b/arch/arm/mach-uniphier/pll/pll-spectrum-ld4.c deleted file mode 100644 index dc97697fe4..0000000000 --- a/arch/arm/mach-uniphier/pll/pll-spectrum-ld4.c +++ /dev/null @@ -1,21 +0,0 @@ -/* - * Copyright (C) 2011-2015 Masahiro Yamada <yamada.masahiro@socionext.com> - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#include <linux/io.h> - -#include "../init.h" -#include "../sc-regs.h" - -int uniphier_ld4_enable_dpll_ssc(const struct uniphier_board_data *bd) -{ - u32 tmp; - - tmp = readl(SC_DPLLCTRL); - tmp |= SC_DPLLCTRL_SSC_EN; - writel(tmp, SC_DPLLCTRL); - - return 0; -} diff --git a/arch/arm/mach-uniphier/pll/pll-spectrum-sld3.c b/arch/arm/mach-uniphier/pll/pll-spectrum-sld3.c deleted file mode 100644 index ff09a92005..0000000000 --- a/arch/arm/mach-uniphier/pll/pll-spectrum-sld3.c +++ /dev/null @@ -1,22 +0,0 @@ -/* - * Copyright (C) 2011-2015 Masahiro Yamada <yamada.masahiro@socionext.com> - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#include <common.h> -#include <linux/io.h> - -#include "../init.h" -#include "../sc-regs.h" - -int uniphier_sld3_enable_dpll_ssc(const struct uniphier_board_data *bd) -{ - u32 tmp; - - tmp = readl(SC_DPLLCTRL); - tmp |= SC_DPLLCTRL_SSC_EN; - writel(tmp, SC_DPLLCTRL); - - return 0; -} diff --git a/arch/arm/mach-uniphier/print_misc_info.c b/arch/arm/mach-uniphier/print_misc_info.c deleted file mode 100644 index 695b7aeeb3..0000000000 --- a/arch/arm/mach-uniphier/print_misc_info.c +++ /dev/null @@ -1,12 +0,0 @@ -/* - * Copyright (C) 2015 Masahiro Yamada <yamada.masahiro@socionext.com> - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#include "micro-support-card.h" - -int misc_init_f(void) -{ - return check_support_card(); -} diff --git a/arch/arm/mach-uniphier/sc64-regs.h b/arch/arm/mach-uniphier/sc64-regs.h index ef02830a1e..780fdd176f 100644 --- a/arch/arm/mach-uniphier/sc64-regs.h +++ b/arch/arm/mach-uniphier/sc64-regs.h @@ -1,7 +1,8 @@ /* * UniPhier SC (System Control) block registers for ARMv8 SoCs * - * Copyright (C) 2016 Masahiro Yamada <yamada.masahiro@socionext.com> + * Copyright (C) 2016 Socionext Inc. + * Author: Masahiro Yamada <yamada.masahiro@socionext.com> * * SPDX-License-Identifier: GPL-2.0+ */ @@ -11,6 +12,27 @@ #define SC_BASE_ADDR 0x61840000 +/* PLL type: SSC */ +#define SC_CPLLCTRL (SC_BASE_ADDR | 0x1400) /* LD11/20: CPU/ARM */ +#define SC_SPLLCTRL (SC_BASE_ADDR | 0x1410) /* LD11/20: misc */ +#define SC_SPLL2CTRL (SC_BASE_ADDR | 0x1420) /* LD20: IPP */ +#define SC_MPLLCTRL (SC_BASE_ADDR | 0x1430) /* LD11/20: Video codec */ +#define SC_VSPLLCTRL (SC_BASE_ADDR | 0x1440) /* LD11 */ +#define SC_VPPLLCTRL (SC_BASE_ADDR | 0x1440) /* LD20: VPE etc. */ +#define SC_GPPLLCTRL (SC_BASE_ADDR | 0x1450) /* LD20: GPU/Mali */ +#define SC_DPLLCTRL (SC_BASE_ADDR | 0x1460) /* LD11: DDR memory */ +#define SC_DPLL0CTRL (SC_BASE_ADDR | 0x1460) /* LD20: DDR memory 0 */ +#define SC_DPLL1CTRL (SC_BASE_ADDR | 0x1470) /* LD20: DDR memory 1 */ +#define SC_DPLL2CTRL (SC_BASE_ADDR | 0x1480) /* LD20: DDR memory 2 */ + +/* PLL type: VPLL27 */ +#define SC_VPLL27FCTRL (SC_BASE_ADDR | 0x1500) +#define SC_VPLL27ACTRL (SC_BASE_ADDR | 0x1520) + +/* PLL type: DSPLL */ +#define SC_VPLL8KCTRL (SC_BASE_ADDR | 0x1540) +#define SC_A2PLLCTRL (SC_BASE_ADDR | 0x15C0) + #define SC_RSTCTRL (SC_BASE_ADDR | 0x2000) #define SC_RSTCTRL3 (SC_BASE_ADDR | 0x2008) #define SC_RSTCTRL4 (SC_BASE_ADDR | 0x200c) @@ -41,4 +63,12 @@ #define SC_CLKCTRL7_UMC31 (1 << 1) #define SC_CLKCTRL7_UMC30 (1 << 0) +#define SC_CA72_GEARST (SC_BASE_ADDR | 0x8080) +#define SC_CA72_GEARSET (SC_BASE_ADDR | 0x8084) +#define SC_CA72_GEARUPD (SC_BASE_ADDR | 0x8088) +#define SC_CA53_GEARST (SC_BASE_ADDR | 0x8080) +#define SC_CA53_GEARSET (SC_BASE_ADDR | 0x8084) +#define SC_CA53_GEARUPD (SC_BASE_ADDR | 0x8088) +#define SC_CA_GEARUPD (1 << 0) + #endif /* SC64_REGS_H */ diff --git a/arch/arm/mach-zynq/Kconfig b/arch/arm/mach-zynq/Kconfig index a98232097b..a1175eea6e 100644 --- a/arch/arm/mach-zynq/Kconfig +++ b/arch/arm/mach-zynq/Kconfig @@ -1,5 +1,29 @@ if ARCH_ZYNQ +config SPL_FAT_SUPPORT + default y + +config SPL_LIBCOMMON_SUPPORT + default y + +config SPL_LIBDISK_SUPPORT + default y + +config SPL_LIBGENERIC_SUPPORT + default y + +config SPL_MMC_SUPPORT + default y if ZYNQ_SDHCI + +config SPL_SERIAL_SUPPORT + default y + +config SPL_SPI_FLASH_SUPPORT + default y if ZYNQ_QSPI + +config SPL_SPI_SUPPORT + default y if ZYNQ_QSPI + config SYS_BOARD default "zynq" diff --git a/arch/arm/mach-zynq/cpu.c b/arch/arm/mach-zynq/cpu.c index 914b1feb68..ba9171ebe9 100644 --- a/arch/arm/mach-zynq/cpu.c +++ b/arch/arm/mach-zynq/cpu.c @@ -43,12 +43,8 @@ int arch_cpu_init(void) unsigned int zynq_get_silicon_version(void) { - unsigned int ver; - - ver = (readl(&devcfg_base->mctrl) & - ZYNQ_SILICON_VER_MASK) >> ZYNQ_SILICON_VER_SHIFT; - - return ver; + return (readl(&devcfg_base->mctrl) & ZYNQ_SILICON_VER_MASK) + >> ZYNQ_SILICON_VER_SHIFT; } void reset_cpu(ulong addr) diff --git a/arch/avr32/cpu/interrupts.c b/arch/avr32/cpu/interrupts.c index 4a03e19e33..de202207ce 100644 --- a/arch/avr32/cpu/interrupts.c +++ b/arch/avr32/cpu/interrupts.c @@ -6,7 +6,7 @@ #include <common.h> #include <div64.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/processor.h> #include <asm/sysreg.h> diff --git a/arch/avr32/include/asm/errno.h b/arch/avr32/include/asm/errno.h deleted file mode 100644 index 4c82b503d9..0000000000 --- a/arch/avr32/include/asm/errno.h +++ /dev/null @@ -1 +0,0 @@ -#include <asm-generic/errno.h> diff --git a/arch/blackfin/cpu/gpio.c b/arch/blackfin/cpu/gpio.c index 4b4cf93c2d..81b709028f 100644 --- a/arch/blackfin/cpu/gpio.c +++ b/arch/blackfin/cpu/gpio.c @@ -8,7 +8,7 @@ */ #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/portmux.h> diff --git a/arch/blackfin/cpu/interrupts.c b/arch/blackfin/cpu/interrupts.c index 45c92c3d3e..abb7dc1d1d 100644 --- a/arch/blackfin/cpu/interrupts.c +++ b/arch/blackfin/cpu/interrupts.c @@ -47,10 +47,7 @@ unsigned long long get_ticks(void) */ ulong get_tbclk(void) { - ulong tbclk; - - tbclk = CONFIG_SYS_HZ; - return tbclk; + return CONFIG_SYS_HZ; } void enable_interrupts(void) diff --git a/arch/blackfin/include/asm/errno.h b/arch/blackfin/include/asm/errno.h deleted file mode 100644 index 4c82b503d9..0000000000 --- a/arch/blackfin/include/asm/errno.h +++ /dev/null @@ -1 +0,0 @@ -#include <asm-generic/errno.h> diff --git a/arch/m68k/cpu/mcf5227x/start.S b/arch/m68k/cpu/mcf5227x/start.S index b5d51bdee7..1bd914e950 100644 --- a/arch/m68k/cpu/mcf5227x/start.S +++ b/arch/m68k/cpu/mcf5227x/start.S @@ -10,10 +10,6 @@ #include "version.h" #include <asm/cache.h> -#ifndef CONFIG_IDENT_STRING -#define CONFIG_IDENT_STRING "" -#endif - #define _START _start #define _FAULT _fault diff --git a/arch/m68k/cpu/mcf523x/start.S b/arch/m68k/cpu/mcf523x/start.S index c4f608230d..8533108860 100644 --- a/arch/m68k/cpu/mcf523x/start.S +++ b/arch/m68k/cpu/mcf523x/start.S @@ -10,10 +10,6 @@ #include "version.h" #include <asm/cache.h> -#ifndef CONFIG_IDENT_STRING -#define CONFIG_IDENT_STRING "" -#endif - #define _START _start #define _FAULT _fault diff --git a/arch/m68k/cpu/mcf52x2/start.S b/arch/m68k/cpu/mcf52x2/start.S index 9837c41894..ab199b1e5b 100644 --- a/arch/m68k/cpu/mcf52x2/start.S +++ b/arch/m68k/cpu/mcf52x2/start.S @@ -10,10 +10,6 @@ #include "version.h" #include <asm/cache.h> -#ifndef CONFIG_IDENT_STRING -#define CONFIG_IDENT_STRING "" -#endif - #define _START _start #define _FAULT _fault diff --git a/arch/m68k/cpu/mcf530x/start.S b/arch/m68k/cpu/mcf530x/start.S index da41c9af34..536daa441e 100644 --- a/arch/m68k/cpu/mcf530x/start.S +++ b/arch/m68k/cpu/mcf530x/start.S @@ -10,10 +10,6 @@ #include "version.h" #include <asm/cache.h> -#ifndef CONFIG_IDENT_STRING -#define CONFIG_IDENT_STRING "" -#endif - #define _START _start #define _FAULT _fault diff --git a/arch/m68k/cpu/mcf532x/start.S b/arch/m68k/cpu/mcf532x/start.S index 302fca5245..467864361d 100644 --- a/arch/m68k/cpu/mcf532x/start.S +++ b/arch/m68k/cpu/mcf532x/start.S @@ -13,10 +13,6 @@ #include "version.h" #include <asm/cache.h> -#ifndef CONFIG_IDENT_STRING -#define CONFIG_IDENT_STRING "" -#endif - #define _START _start #define _FAULT _fault diff --git a/arch/m68k/cpu/mcf5445x/start.S b/arch/m68k/cpu/mcf5445x/start.S index bc48ca0f5b..0487d84a2f 100644 --- a/arch/m68k/cpu/mcf5445x/start.S +++ b/arch/m68k/cpu/mcf5445x/start.S @@ -15,10 +15,6 @@ #include "version.h" #include <asm/cache.h> -#ifndef CONFIG_IDENT_STRING -#define CONFIG_IDENT_STRING "" -#endif - #define _START _start #define _FAULT _fault diff --git a/arch/m68k/cpu/mcf547x_8x/start.S b/arch/m68k/cpu/mcf547x_8x/start.S index fecf253d4b..2296f9a523 100644 --- a/arch/m68k/cpu/mcf547x_8x/start.S +++ b/arch/m68k/cpu/mcf547x_8x/start.S @@ -10,10 +10,6 @@ #include "version.h" #include <asm/cache.h> -#ifndef CONFIG_IDENT_STRING -#define CONFIG_IDENT_STRING "" -#endif - #define _START _start #define _FAULT _fault diff --git a/arch/m68k/include/asm/errno.h b/arch/m68k/include/asm/errno.h deleted file mode 100644 index 4c82b503d9..0000000000 --- a/arch/m68k/include/asm/errno.h +++ /dev/null @@ -1 +0,0 @@ -#include <asm-generic/errno.h> diff --git a/arch/m68k/lib/time.c b/arch/m68k/lib/time.c index 31633543e0..cb90c83f4e 100644 --- a/arch/m68k/lib/time.c +++ b/arch/m68k/lib/time.c @@ -192,7 +192,5 @@ unsigned long usec2ticks(unsigned long usec) */ ulong get_tbclk(void) { - ulong tbclk; - tbclk = CONFIG_SYS_HZ; - return tbclk; + return CONFIG_SYS_HZ; } diff --git a/arch/microblaze/include/asm/errno.h b/arch/microblaze/include/asm/errno.h deleted file mode 100644 index 4c82b503d9..0000000000 --- a/arch/microblaze/include/asm/errno.h +++ /dev/null @@ -1 +0,0 @@ -#include <asm-generic/errno.h> diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig index 21066f0fda..097ad587c1 100644 --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig @@ -26,6 +26,8 @@ config TARGET_MALTA select DM select DM_SERIAL select DYNAMIC_IO_PORT_BASE + select MIPS_CM + select MIPS_L2_CACHE select OF_CONTROL select OF_ISA_BUS select SUPPORTS_BIG_ENDIAN @@ -73,10 +75,43 @@ config MACH_PIC32 select OF_CONTROL select DM +config TARGET_BOSTON + bool "Support Boston" + select DM + select DM_SERIAL + select OF_CONTROL + select MIPS_CM + select MIPS_L1_CACHE_SHIFT_6 + select MIPS_L2_CACHE + select SUPPORTS_BIG_ENDIAN + select SUPPORTS_LITTLE_ENDIAN + select SUPPORTS_CPU_MIPS32_R1 + select SUPPORTS_CPU_MIPS32_R2 + select SUPPORTS_CPU_MIPS32_R6 + select SUPPORTS_CPU_MIPS64_R1 + select SUPPORTS_CPU_MIPS64_R2 + select SUPPORTS_CPU_MIPS64_R6 + +config TARGET_XILFPGA + bool "Support Imagination Xilfpga" + select OF_CONTROL + select DM + select DM_SERIAL + select DM_GPIO + select DM_ETH + select SUPPORTS_LITTLE_ENDIAN + select SUPPORTS_CPU_MIPS32_R1 + select SUPPORTS_CPU_MIPS32_R2 + select MIPS_L1_CACHE_SHIFT_4 + help + This supports IMGTEC MIPSfpga platform + endchoice source "board/dbau1x00/Kconfig" +source "board/imgtec/boston/Kconfig" source "board/imgtec/malta/Kconfig" +source "board/imgtec/xilfpga/Kconfig" source "board/micronas/vct/Kconfig" source "board/pb1x00/Kconfig" source "board/qemu-mips/Kconfig" @@ -300,9 +335,31 @@ config MIPS_L1_CACHE_SHIFT default "4" if MIPS_L1_CACHE_SHIFT_4 default "5" +config MIPS_L2_CACHE + bool + help + Select this if your system includes an L2 cache and you want U-Boot + to initialise & maintain it. + config DYNAMIC_IO_PORT_BASE bool +config MIPS_CM + bool + help + Select this if your system contains a MIPS Coherence Manager and you + wish U-Boot to configure it or make use of it to retrieve system + information such as cache configuration. + +config MIPS_CM_BASE + hex + default 0x1fbf8000 + help + The physical base address at which to map the MIPS Coherence Manager + Global Configuration Registers (GCRs). This should be set such that + the GCRs occupy a region of the physical address space which is + otherwise unused, or at minimum that software doesn't need to access. + endif endmenu diff --git a/arch/mips/cpu/Makefile b/arch/mips/cpu/Makefile index fc6b455c68..429fd3a50c 100644 --- a/arch/mips/cpu/Makefile +++ b/arch/mips/cpu/Makefile @@ -7,3 +7,5 @@ extra-y = start.o obj-y += time.o obj-y += interrupts.o obj-y += cpu.o + +obj-$(CONFIG_MIPS_CM) += cm_init.o diff --git a/arch/mips/cpu/cm_init.S b/arch/mips/cpu/cm_init.S new file mode 100644 index 0000000000..ddcaa4947f --- /dev/null +++ b/arch/mips/cpu/cm_init.S @@ -0,0 +1,45 @@ +/* + * MIPS Coherence Manager (CM) Initialisation + * + * Copyright (c) 2016 Imagination Technologies Ltd. + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include <asm/addrspace.h> +#include <asm/asm.h> +#include <asm/cm.h> +#include <asm/mipsregs.h> +#include <asm/regdef.h> + +LEAF(mips_cm_map) + /* Config3 must exist for a CM to be present */ + mfc0 t0, CP0_CONFIG, 1 + bgez t0, 2f + mfc0 t0, CP0_CONFIG, 2 + bgez t0, 2f + + /* Check Config3.CMGCR to determine CM presence */ + mfc0 t0, CP0_CONFIG, 3 + and t0, t0, MIPS_CONF3_CMGCR + beqz t0, 2f + + /* Find the current physical GCR base address */ +1: MFC0 t0, CP0_CMGCRBASE + PTR_SLL t0, t0, 4 + + /* If the GCRs are where we want, we're done */ + PTR_LI t1, CONFIG_MIPS_CM_BASE + beq t0, t1, 2f + + /* Move the GCRs to our configured base address */ + PTR_LI t2, CKSEG1 + PTR_ADDU t0, t0, t2 + sw zero, GCR_BASE_UPPER(t0) + sw t1, GCR_BASE(t0) + + /* Re-check the GCR base */ + b 1b + +2: jr ra + END(mips_cm_map) diff --git a/arch/mips/cpu/cpu.c b/arch/mips/cpu/cpu.c index 391feb3250..1b919ed822 100644 --- a/arch/mips/cpu/cpu.c +++ b/arch/mips/cpu/cpu.c @@ -8,6 +8,7 @@ #include <common.h> #include <command.h> #include <linux/compiler.h> +#include <asm/cache.h> #include <asm/mipsregs.h> #include <asm/reboot.h> @@ -35,3 +36,9 @@ void write_one_tlb(int index, u32 pagemask, u32 hi, u32 low0, u32 low1) write_c0_index(index); tlb_write_indexed(); } + +int arch_cpu_init(void) +{ + mips_cache_probe(); + return 0; +} diff --git a/arch/mips/cpu/start.S b/arch/mips/cpu/start.S index fc6dd66aa6..3f0fc12547 100644 --- a/arch/mips/cpu/start.S +++ b/arch/mips/cpu/start.S @@ -12,10 +12,6 @@ #include <asm/regdef.h> #include <asm/mipsregs.h> -#ifndef CONFIG_SYS_MIPS_CACHE_MODE -#define CONFIG_SYS_MIPS_CACHE_MODE CONF_CM_CACHABLE_NONCOHERENT -#endif - #ifndef CONFIG_SYS_INIT_SP_ADDR #define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_SDRAM_BASE + \ CONFIG_SYS_INIT_SP_OFFSET) @@ -112,9 +108,28 @@ ENTRY(_start) .align 4 reset: +#if __mips_isa_rev >= 6 + mfc0 t0, CP0_CONFIG, 5 + and t0, t0, MIPS_CONF5_VP + beqz t0, 1f + nop + + b 2f + mfc0 t0, CP0_GLOBALNUMBER +#endif + +1: mfc0 t0, CP0_EBASE + and t0, t0, EBASE_CPUNUM + + /* Hang if this isn't the first CPU in the system */ +2: beqz t0, 4f + nop +3: wait + b 3b + nop /* Clear watch registers */ - MTC0 zero, CP0_WATCHLO +4: MTC0 zero, CP0_WATCHLO mtc0 zero, CP0_WATCHHI /* WP(Watch Pending), SW0/1 should be cleared */ @@ -127,9 +142,11 @@ reset: mtc0 zero, CP0_COMPARE #ifndef CONFIG_SKIP_LOWLEVEL_INIT - /* CONFIG0 register */ - li t0, CONF_CM_UNCACHED + mfc0 t0, CP0_CONFIG + and t0, t0, MIPS_CONF_IMPL + or t0, t0, CONF_CM_UNCACHED mtc0 t0, CP0_CONFIG + ehb #endif /* @@ -144,20 +161,31 @@ reset: 1: PTR_L gp, 0(ra) +#ifdef CONFIG_MIPS_CM + PTR_LA t9, mips_cm_map + jalr t9 + nop +#endif + #ifndef CONFIG_SKIP_LOWLEVEL_INIT +# ifdef CONFIG_SYS_MIPS_CACHE_INIT_RAM_LOAD /* Initialize any external memory */ PTR_LA t9, lowlevel_init jalr t9 nop +# endif /* Initialize caches... */ PTR_LA t9, mips_cache_reset jalr t9 nop - /* ... and enable them */ - li t0, CONFIG_SYS_MIPS_CACHE_MODE - mtc0 t0, CP0_CONFIG +# ifndef CONFIG_SYS_MIPS_CACHE_INIT_RAM_LOAD + /* Initialize any external memory */ + PTR_LA t9, lowlevel_init + jalr t9 + nop +# endif #endif /* Set up temporary stack */ @@ -214,12 +242,9 @@ ENTRY(relocate_code) PTR_LI t0, CONFIG_SYS_MONITOR_BASE PTR_SUB s1, s2, t0 # s1 <-- relocation offset - PTR_LA t3, in_ram - PTR_L t2, -(3 * PTRSIZE)(t3) # t2 <-- __image_copy_end + PTR_LA t2, __image_copy_end move t1, a2 - PTR_ADD gp, s1 # adjust gp - /* * t0 = source address * t1 = target address @@ -232,32 +257,14 @@ ENTRY(relocate_code) blt t0, t2, 1b PTR_ADDU t1, PTRSIZE - /* If caches were enabled, we would have to flush them here. */ - PTR_SUB a1, t1, s2 # a1 <-- size - PTR_LA t9, flush_cache - jalr t9 - move a0, s2 # a0 <-- destination address - - /* Jump to where we've relocated ourselves */ - PTR_ADDIU t0, s2, in_ram - _start - jr t0 - nop - - PTR __rel_dyn_end - PTR __rel_dyn_start - PTR __image_copy_end - PTR _GLOBAL_OFFSET_TABLE_ - PTR num_got_entries - -in_ram: /* * Now we want to update GOT. * * GOT[0] is reserved. GOT[1] is also reserved for the dynamic object * generated by GNU ld. Skip these reserved entries from relocation. */ - PTR_L t3, -(1 * PTRSIZE)(t0) # t3 <-- num_got_entries - PTR_L t8, -(2 * PTRSIZE)(t0) # t8 <-- _GLOBAL_OFFSET_TABLE_ + PTR_LA t3, num_got_entries + PTR_LA t8, _GLOBAL_OFFSET_TABLE_ PTR_ADD t8, s1 # t8 now holds relocated _G_O_T_ PTR_ADDIU t8, t8, 2 * PTRSIZE # skipping first two entries PTR_LI t2, 2 @@ -272,8 +279,8 @@ in_ram: PTR_ADDIU t8, PTRSIZE /* Update dynamic relocations */ - PTR_L t1, -(4 * PTRSIZE)(t0) # t1 <-- __rel_dyn_start - PTR_L t2, -(5 * PTRSIZE)(t0) # t2 <-- __rel_dyn_end + PTR_LA t1, __rel_dyn_start + PTR_LA t2, __rel_dyn_end b 2f # skip first reserved entry PTR_ADDIU t1, 2 * PTRSIZE @@ -298,6 +305,20 @@ in_ram: PTR_ADDIU t1, 2 * PTRSIZE # each rel.dyn entry is 2*PTRSIZE bytes /* + * Flush caches to ensure our newly modified instructions are visible + * to the instruction cache. We're still running with the old GOT, so + * apply the reloc offset to the start address. + */ + PTR_LA a0, __text_start + PTR_LA a1, __text_end + PTR_SUB a1, a1, a0 + PTR_LA t9, flush_cache + jalr t9 + PTR_ADD a0, s1 + + PTR_ADD gp, s1 # adjust gp + + /* * Clear BSS * * GOT is now relocated. Thus __bss_start and __bss_end can be diff --git a/arch/mips/cpu/u-boot.lds b/arch/mips/cpu/u-boot.lds index 7d71c11ae4..0129c99611 100644 --- a/arch/mips/cpu/u-boot.lds +++ b/arch/mips/cpu/u-boot.lds @@ -19,7 +19,9 @@ SECTIONS . = ALIGN(4); .text : { + __text_start = .; *(.text*) + __text_end = .; } . = ALIGN(4); diff --git a/arch/mips/dts/Makefile b/arch/mips/dts/Makefile index 2f04d73b83..30fcc2b91e 100644 --- a/arch/mips/dts/Makefile +++ b/arch/mips/dts/Makefile @@ -4,8 +4,10 @@ dtb-$(CONFIG_TARGET_AP121) += ap121.dtb dtb-$(CONFIG_TARGET_AP143) += ap143.dtb +dtb-$(CONFIG_TARGET_BOSTON) += img,boston.dtb dtb-$(CONFIG_TARGET_MALTA) += mti,malta.dtb dtb-$(CONFIG_TARGET_PIC32MZDASK) += pic32mzda_sk.dtb +dtb-$(CONFIG_TARGET_XILFPGA) += nexys4ddr.dtb dtb-$(CONFIG_BOARD_TPLINK_WDR4300) += tplink_wdr4300.dtb targets += $(dtb-y) diff --git a/arch/mips/dts/img,boston.dts b/arch/mips/dts/img,boston.dts new file mode 100644 index 0000000000..1d4eeda4e8 --- /dev/null +++ b/arch/mips/dts/img,boston.dts @@ -0,0 +1,222 @@ +/dts-v1/; + +#include <dt-bindings/clock/boston-clock.h> +#include <dt-bindings/gpio/gpio.h> +#include <dt-bindings/interrupt-controller/irq.h> +#include <dt-bindings/interrupt-controller/mips-gic.h> + +/ { + #address-cells = <1>; + #size-cells = <1>; + compatible = "img,boston"; + + chosen { + stdout-path = &uart0; + }; + + cpus { + #address-cells = <1>; + #size-cells = <0>; + + cpu@0 { + device_type = "cpu"; + compatible = "img,mips"; + reg = <0>; + clocks = <&clk_boston BOSTON_CLK_CPU>; + }; + }; + + memory@0 { + device_type = "memory"; + reg = <0x00000000 0x10000000>; + }; + + gic: interrupt-controller { + compatible = "mti,gic"; + + interrupt-controller; + #interrupt-cells = <3>; + + timer { + compatible = "mti,gic-timer"; + interrupts = <GIC_LOCAL 1 IRQ_TYPE_NONE>; + clocks = <&clk_boston BOSTON_CLK_CPU>; + }; + }; + + pci0: pci@10000000 { + status = "disabled"; + compatible = "xlnx,axi-pcie-host-1.00.a"; + device_type = "pci"; + reg = <0x10000000 0x2000000>; + + #address-cells = <3>; + #size-cells = <2>; + #interrupt-cells = <1>; + + interrupt-parent = <&gic>; + interrupts = <GIC_SHARED 2 IRQ_TYPE_LEVEL_HIGH>; + + ranges = <0x02000000 0 0x40000000 + 0x40000000 0 0x40000000>; + + interrupt-map-mask = <0 0 0 7>; + interrupt-map = <0 0 0 1 &pci0_intc 0>, + <0 0 0 2 &pci0_intc 1>, + <0 0 0 3 &pci0_intc 2>, + <0 0 0 4 &pci0_intc 3>; + + pci0_intc: interrupt-controller { + interrupt-controller; + #address-cells = <0>; + #interrupt-cells = <1>; + }; + }; + + pci1: pci@12000000 { + status = "disabled"; + compatible = "xlnx,axi-pcie-host-1.00.a"; + device_type = "pci"; + reg = <0x12000000 0x2000000>; + + #address-cells = <3>; + #size-cells = <2>; + #interrupt-cells = <1>; + + interrupt-parent = <&gic>; + interrupts = <GIC_SHARED 1 IRQ_TYPE_LEVEL_HIGH>; + + ranges = <0x02000000 0 0x20000000 + 0x20000000 0 0x20000000>; + + interrupt-map-mask = <0 0 0 7>; + interrupt-map = <0 0 0 1 &pci1_intc 0>, + <0 0 0 2 &pci1_intc 1>, + <0 0 0 3 &pci1_intc 2>, + <0 0 0 4 &pci1_intc 3>; + + pci1_intc: interrupt-controller { + interrupt-controller; + #address-cells = <0>; + #interrupt-cells = <1>; + }; + }; + + pci2: pci@14000000 { + compatible = "xlnx,axi-pcie-host-1.00.a"; + device_type = "pci"; + reg = <0x14000000 0x2000000>; + + #address-cells = <3>; + #size-cells = <2>; + #interrupt-cells = <1>; + + interrupt-parent = <&gic>; + interrupts = <GIC_SHARED 0 IRQ_TYPE_LEVEL_HIGH>; + + ranges = <0x02000000 0 0x16000000 + 0x16000000 0 0x100000>; + + interrupt-map-mask = <0 0 0 7>; + interrupt-map = <0 0 0 1 &pci2_intc 0>, + <0 0 0 2 &pci2_intc 1>, + <0 0 0 3 &pci2_intc 2>, + <0 0 0 4 &pci2_intc 3>; + + pci2_intc: interrupt-controller { + interrupt-controller; + #address-cells = <0>; + #interrupt-cells = <1>; + }; + + pci2_root@0,0,0 { + compatible = "pci10ee,7021"; + reg = <0x00000000 0 0 0 0>; + + #address-cells = <3>; + #size-cells = <2>; + #interrupt-cells = <1>; + + eg20t_bridge@1,0,0 { + compatible = "pci8086,8800"; + reg = <0x00010000 0 0 0 0>; + + #address-cells = <3>; + #size-cells = <2>; + #interrupt-cells = <1>; + + eg20t_mac@2,0,1 { + compatible = "pci8086,8802"; + reg = <0x00020100 0 0 0 0>; + phy-reset-gpios = <&eg20t_gpio 6 GPIO_ACTIVE_LOW>; + }; + + eg20t_gpio: eg20t_gpio@2,0,2 { + compatible = "pci8086,8803"; + reg = <0x00020200 0 0 0 0>; + + gpio-controller; + #gpio-cells = <2>; + }; + + eg20t_i2c@2,12,2 { + compatible = "pci8086,8817"; + reg = <0x00026200 0 0 0 0>; + + #address-cells = <1>; + #size-cells = <0>; + + rtc@0x68 { + compatible = "st,m41t81s"; + reg = <0x68>; + }; + }; + }; + }; + }; + + plat_regs: system-controller@17ffd000 { + compatible = "img,boston-platform-regs", "syscon"; + reg = <0x17ffd000 0x1000>; + u-boot,dm-pre-reloc; + }; + + clk_boston: clock { + compatible = "img,boston-clock"; + #clock-cells = <1>; + regmap = <&plat_regs>; + u-boot,dm-pre-reloc; + }; + + reboot: syscon-reboot { + compatible = "syscon-reboot"; + regmap = <&plat_regs>; + offset = <0x10>; + mask = <0x10>; + }; + + uart0: uart@17ffe000 { + compatible = "ns16550a"; + reg = <0x17ffe000 0x1000>; + reg-shift = <2>; + reg-io-width = <4>; + + interrupt-parent = <&gic>; + interrupts = <GIC_SHARED 3 IRQ_TYPE_LEVEL_HIGH>; + + clocks = <&clk_boston BOSTON_CLK_SYS>; + + u-boot,dm-pre-reloc; + }; + + lcd: lcd@17fff000 { + compatible = "img,boston-lcd"; + reg = <0x17fff000 0x8>; + }; + + flash@18000000 { + compatible = "cfi-flash"; + reg = <0x18000000 0x8000000>; + bank-width = <2>; + }; +}; diff --git a/arch/mips/dts/microAptiv.dtsi b/arch/mips/dts/microAptiv.dtsi new file mode 100644 index 0000000000..81d518e757 --- /dev/null +++ b/arch/mips/dts/microAptiv.dtsi @@ -0,0 +1,21 @@ +/ { + #address-cells = <1>; + #size-cells = <1>; + compatible = "img,xilfpga"; + + cpus { + #address-cells = <1>; + #size-cells = <0>; + cpu@0 { + device_type = "cpu"; + compatible = "mips,m14Kc"; + clocks = <&ext>; + reg = <0>; + }; + }; + + ext: ext { + compatible = "fixed-clock"; + #clock-cells = <0>; + }; +}; diff --git a/arch/mips/dts/nexys4ddr.dts b/arch/mips/dts/nexys4ddr.dts new file mode 100644 index 0000000000..e254ab1eaa --- /dev/null +++ b/arch/mips/dts/nexys4ddr.dts @@ -0,0 +1,62 @@ +/dts-v1/; + +#include "microAptiv.dtsi" + +/ { + compatible = "digilent,nexys4ddr"; + + memory { + device_type = "memory"; + reg = <0x0 0x08000000>; + }; + + cpuintc: interrupt-controller@0 { + #address-cells = <0>; + #interrupt-cells = <1>; + interrupt-controller; + compatible = "mti,cpu-interrupt-controller"; + }; + + aliases { + console = &axi_uart16550; + }; + + axi_ethernetlite: ethernet@10e00000 { + compatible = "xlnx,xps-ethernetlite-1.00.a"; + device_type = "network"; + local-mac-address = [08 86 4C 0D F7 09]; + phy-handle = <&phy0>; + reg = <0x10e00000 0x10000>; + xlnx,duplex = <0x1>; + xlnx,include-global-buffers = <0x1>; + xlnx,include-internal-loopback = <0x0>; + xlnx,include-mdio = <0x1>; + xlnx,instance = "axi_ethernetlite_inst"; + xlnx,rx-ping-pong = <0x1>; + xlnx,s-axi-id-width = <0x1>; + xlnx,tx-ping-pong = <0x1>; + xlnx,use-internal = <0x0>; + mdio { + #address-cells = <1>; + #size-cells = <0>; + phy0: phy@1 { + compatible = <0x0007c0f0 0xfffffff0>; + device_type = "ethernet-phy"; + reg = <1>; + } ; + } ; + } ; + + + axi_uart16550: serial@10400000 { + compatible = "ns16550a"; + reg = <0x10400000 0x10000>; + + reg-shift = <2>; + reg-offset = <0x1000>; + + clock-frequency = <50000000>; + + }; +}; + diff --git a/arch/mips/include/asm/cache.h b/arch/mips/include/asm/cache.h index 0cea581e5d..669c362a52 100644 --- a/arch/mips/include/asm/cache.h +++ b/arch/mips/include/asm/cache.h @@ -19,4 +19,13 @@ */ #define CONFIG_SYS_CACHELINE_SIZE ARCH_DMA_MINALIGN +/** + * mips_cache_probe() - Probe the properties of the caches + * + * Call this to probe the properties such as line sizes of the caches + * present in the system, if any. This must be done before cache maintenance + * functions such as flush_cache may be called. + */ +void mips_cache_probe(void); + #endif /* __MIPS_CACHE_H__ */ diff --git a/arch/mips/include/asm/cm.h b/arch/mips/include/asm/cm.h new file mode 100644 index 0000000000..b9ab0c65e6 --- /dev/null +++ b/arch/mips/include/asm/cm.h @@ -0,0 +1,62 @@ +/* + * MIPS Coherence Manager (CM) Register Definitions + * + * Copyright (c) 2016 Imagination Technologies Ltd. + * + * SPDX-License-Identifier: GPL-2.0+ + */ +#ifndef __MIPS_ASM_CM_H__ +#define __MIPS_ASM_CM_H__ + +/* Global Control Register (GCR) offsets */ +#define GCR_BASE 0x0008 +#define GCR_BASE_UPPER 0x000c +#define GCR_REV 0x0030 +#define GCR_L2_CONFIG 0x0130 +#define GCR_L2_TAG_ADDR 0x0600 +#define GCR_L2_TAG_ADDR_UPPER 0x0604 +#define GCR_L2_TAG_STATE 0x0608 +#define GCR_L2_TAG_STATE_UPPER 0x060c +#define GCR_L2_DATA 0x0610 +#define GCR_L2_DATA_UPPER 0x0614 +#define GCR_Cx_COHERENCE 0x2008 + +/* GCR_REV CM versions */ +#define GCR_REV_CM3 0x0800 + +/* GCR_L2_CONFIG fields */ +#define GCR_L2_CONFIG_ASSOC_SHIFT 0 +#define GCR_L2_CONFIG_ASSOC_BITS 8 +#define GCR_L2_CONFIG_LINESZ_SHIFT 8 +#define GCR_L2_CONFIG_LINESZ_BITS 4 +#define GCR_L2_CONFIG_SETSZ_SHIFT 12 +#define GCR_L2_CONFIG_SETSZ_BITS 4 +#define GCR_L2_CONFIG_BYPASS (1 << 20) + +/* GCR_Cx_COHERENCE */ +#define GCR_Cx_COHERENCE_DOM_EN (0xff << 0) +#define GCR_Cx_COHERENCE_EN (0x1 << 0) + +#ifndef __ASSEMBLY__ + +#include <asm/io.h> + +static inline void *mips_cm_base(void) +{ + return (void *)CKSEG1ADDR(CONFIG_MIPS_CM_BASE); +} + +static inline unsigned long mips_cm_l2_line_size(void) +{ + unsigned long l2conf, line_sz; + + l2conf = __raw_readl(mips_cm_base() + GCR_L2_CONFIG); + + line_sz = l2conf >> GCR_L2_CONFIG_LINESZ_SHIFT; + line_sz &= GENMASK(GCR_L2_CONFIG_LINESZ_BITS - 1, 0); + return line_sz ? (2 << line_sz) : 0; +} + +#endif /* !__ASSEMBLY__ */ + +#endif /* __MIPS_ASM_CM_H__ */ diff --git a/arch/mips/include/asm/errno.h b/arch/mips/include/asm/errno.h deleted file mode 100644 index 4c82b503d9..0000000000 --- a/arch/mips/include/asm/errno.h +++ /dev/null @@ -1 +0,0 @@ -#include <asm-generic/errno.h> diff --git a/arch/mips/include/asm/global_data.h b/arch/mips/include/asm/global_data.h index 37f8ed52e6..0078bbe1b8 100644 --- a/arch/mips/include/asm/global_data.h +++ b/arch/mips/include/asm/global_data.h @@ -21,6 +21,13 @@ struct arch_global_data { unsigned long rev; unsigned long ver; #endif +#ifdef CONFIG_SYS_CACHE_SIZE_AUTO + unsigned short l1i_line_size; + unsigned short l1d_line_size; +#endif +#ifdef CONFIG_MIPS_L2_CACHE + unsigned short l2_line_size; +#endif }; #include <asm-generic/global_data.h> diff --git a/arch/mips/include/asm/mipsregs.h b/arch/mips/include/asm/mipsregs.h index 3185dc7abf..9ab506361e 100644 --- a/arch/mips/include/asm/mipsregs.h +++ b/arch/mips/include/asm/mipsregs.h @@ -39,6 +39,7 @@ #define CP0_ENTRYLO0 $2 #define CP0_ENTRYLO1 $3 #define CP0_CONF $3 +#define CP0_GLOBALNUMBER $3, 1 #define CP0_CONTEXT $4 #define CP0_PAGEMASK $5 #define CP0_WIRED $6 @@ -361,6 +362,11 @@ #define CAUSEF_BD (_ULCAST_(1) << 31) /* + * Bits in the coprocessor 0 EBase register. + */ +#define EBASE_CPUNUM 0x3ff + +/* * Bits in the coprocessor 0 config register. */ /* Generic bits. */ @@ -450,6 +456,7 @@ #define MIPS_CONF_MT_FTLB (_ULCAST_(4) << 7) #define MIPS_CONF_AR (_ULCAST_(7) << 10) #define MIPS_CONF_AT (_ULCAST_(3) << 13) +#define MIPS_CONF_IMPL (_ULCAST_(0x1ff) << 16) #define MIPS_CONF_M (_ULCAST_(1) << 31) /* @@ -484,9 +491,13 @@ #define MIPS_CONF1_TLBS_SIZE (6) #define MIPS_CONF1_TLBS (_ULCAST_(63) << MIPS_CONF1_TLBS_SHIFT) +#define MIPS_CONF2_SA_SHF 0 #define MIPS_CONF2_SA (_ULCAST_(15) << 0) +#define MIPS_CONF2_SL_SHF 4 #define MIPS_CONF2_SL (_ULCAST_(15) << 4) +#define MIPS_CONF2_SS_SHF 8 #define MIPS_CONF2_SS (_ULCAST_(15) << 8) +#define MIPS_CONF2_L2B (_ULCAST_(1) << 12) #define MIPS_CONF2_SU (_ULCAST_(15) << 12) #define MIPS_CONF2_TA (_ULCAST_(15) << 16) #define MIPS_CONF2_TL (_ULCAST_(15) << 20) @@ -548,8 +559,10 @@ #define MIPS_CONF5_MRP (_ULCAST_(1) << 3) #define MIPS_CONF5_LLB (_ULCAST_(1) << 4) #define MIPS_CONF5_MVH (_ULCAST_(1) << 5) +#define MIPS_CONF5_VP (_ULCAST_(1) << 7) #define MIPS_CONF5_FRE (_ULCAST_(1) << 8) #define MIPS_CONF5_UFE (_ULCAST_(1) << 9) +#define MIPS_CONF5_L2C (_ULCAST_(1) << 10) #define MIPS_CONF5_MSAEN (_ULCAST_(1) << 27) #define MIPS_CONF5_EVA (_ULCAST_(1) << 28) #define MIPS_CONF5_CV (_ULCAST_(1) << 29) diff --git a/arch/mips/lib/cache.c b/arch/mips/lib/cache.c index db81953f86..bd14ba6ea7 100644 --- a/arch/mips/lib/cache.c +++ b/arch/mips/lib/cache.c @@ -7,34 +7,85 @@ #include <common.h> #include <asm/cacheops.h> +#include <asm/cm.h> #include <asm/mipsregs.h> -static inline unsigned long icache_line_size(void) +DECLARE_GLOBAL_DATA_PTR; + +static void probe_l2(void) { - unsigned long conf1, il; +#ifdef CONFIG_MIPS_L2_CACHE + unsigned long conf2, sl; + bool l2c = false; + + if (!(read_c0_config1() & MIPS_CONF_M)) + return; - if (!config_enabled(CONFIG_SYS_CACHE_SIZE_AUTO)) - return CONFIG_SYS_ICACHE_LINE_SIZE; + conf2 = read_c0_config2(); + + if (__mips_isa_rev >= 6) { + l2c = conf2 & MIPS_CONF_M; + if (l2c) + l2c = read_c0_config3() & MIPS_CONF_M; + if (l2c) + l2c = read_c0_config4() & MIPS_CONF_M; + if (l2c) + l2c = read_c0_config5() & MIPS_CONF5_L2C; + } + + if (l2c && config_enabled(CONFIG_MIPS_CM)) { + gd->arch.l2_line_size = mips_cm_l2_line_size(); + } else if (l2c) { + /* We don't know how to retrieve L2 config on this system */ + BUG(); + } else { + sl = (conf2 & MIPS_CONF2_SL) >> MIPS_CONF2_SL_SHF; + gd->arch.l2_line_size = sl ? (2 << sl) : 0; + } +#endif +} + +void mips_cache_probe(void) +{ +#ifdef CONFIG_SYS_CACHE_SIZE_AUTO + unsigned long conf1, il, dl; conf1 = read_c0_config1(); + il = (conf1 & MIPS_CONF1_IL) >> MIPS_CONF1_IL_SHF; - if (!il) - return 0; - return 2 << il; + dl = (conf1 & MIPS_CONF1_DL) >> MIPS_CONF1_DL_SHF; + + gd->arch.l1i_line_size = il ? (2 << il) : 0; + gd->arch.l1d_line_size = dl ? (2 << dl) : 0; +#endif + probe_l2(); } -static inline unsigned long dcache_line_size(void) +static inline unsigned long icache_line_size(void) { - unsigned long conf1, dl; +#ifdef CONFIG_SYS_CACHE_SIZE_AUTO + return gd->arch.l1i_line_size; +#else + return CONFIG_SYS_ICACHE_LINE_SIZE; +#endif +} - if (!config_enabled(CONFIG_SYS_CACHE_SIZE_AUTO)) - return CONFIG_SYS_DCACHE_LINE_SIZE; +static inline unsigned long dcache_line_size(void) +{ +#ifdef CONFIG_SYS_CACHE_SIZE_AUTO + return gd->arch.l1d_line_size; +#else + return CONFIG_SYS_DCACHE_LINE_SIZE; +#endif +} - conf1 = read_c0_config1(); - dl = (conf1 & MIPS_CONF1_DL) >> MIPS_CONF1_DL_SHF; - if (!dl) - return 0; - return 2 << dl; +static inline unsigned long scache_line_size(void) +{ +#ifdef CONFIG_MIPS_L2_CACHE + return gd->arch.l2_line_size; +#else + return 0; +#endif } #define cache_loop(start, end, lsize, ops...) do { \ @@ -53,12 +104,13 @@ void flush_cache(ulong start_addr, ulong size) { unsigned long ilsize = icache_line_size(); unsigned long dlsize = dcache_line_size(); + unsigned long slsize = scache_line_size(); /* aend will be miscalculated when size is zero, so we return here */ if (size == 0) return; - if (ilsize == dlsize) { + if ((ilsize == dlsize) && !slsize) { /* flush I-cache & D-cache simultaneously */ cache_loop(start_addr, start_addr + size, ilsize, HIT_WRITEBACK_INV_D, HIT_INVALIDATE_I); @@ -68,6 +120,11 @@ void flush_cache(ulong start_addr, ulong size) /* flush D-cache */ cache_loop(start_addr, start_addr + size, dlsize, HIT_WRITEBACK_INV_D); + /* flush L2 cache */ + if (slsize) + cache_loop(start_addr, start_addr + size, slsize, + HIT_WRITEBACK_INV_SD); + /* flush I-cache */ cache_loop(start_addr, start_addr + size, ilsize, HIT_INVALIDATE_I); } @@ -75,21 +132,31 @@ void flush_cache(ulong start_addr, ulong size) void flush_dcache_range(ulong start_addr, ulong stop) { unsigned long lsize = dcache_line_size(); + unsigned long slsize = scache_line_size(); /* aend will be miscalculated when size is zero, so we return here */ if (start_addr == stop) return; cache_loop(start_addr, stop, lsize, HIT_WRITEBACK_INV_D); + + /* flush L2 cache */ + if (slsize) + cache_loop(start_addr, stop, slsize, HIT_WRITEBACK_INV_SD); } void invalidate_dcache_range(ulong start_addr, ulong stop) { unsigned long lsize = dcache_line_size(); + unsigned long slsize = scache_line_size(); /* aend will be miscalculated when size is zero, so we return here */ if (start_addr == stop) return; + /* invalidate L2 cache */ + if (slsize) + cache_loop(start_addr, stop, slsize, HIT_INVALIDATE_SD); + cache_loop(start_addr, stop, lsize, HIT_INVALIDATE_D); } diff --git a/arch/mips/lib/cache_init.S b/arch/mips/lib/cache_init.S index bc8ab27b58..698a5afdee 100644 --- a/arch/mips/lib/cache_init.S +++ b/arch/mips/lib/cache_init.S @@ -13,6 +13,7 @@ #include <asm/mipsregs.h> #include <asm/addrspace.h> #include <asm/cacheops.h> +#include <asm/cm.h> #ifndef CONFIG_SYS_MIPS_CACHE_MODE #define CONFIG_SYS_MIPS_CACHE_MODE CONF_CM_CACHABLE_NONCOHERENT @@ -95,22 +96,147 @@ * with good parity is available. This routine will initialise an area of * memory starting at location zero to be used as a source of parity. * + * Note that this function does not follow the standard calling convention & + * may clobber typically callee-saved registers. + * * RETURNS: N/A * */ +#define R_RETURN s0 +#define R_IC_SIZE s1 +#define R_IC_LINE s2 +#define R_DC_SIZE s3 +#define R_DC_LINE s4 +#define R_L2_SIZE s5 +#define R_L2_LINE s6 +#define R_L2_BYPASSED s7 +#define R_L2_L2C t8 LEAF(mips_cache_reset) + move R_RETURN, ra + +#ifdef CONFIG_MIPS_L2_CACHE + /* + * For there to be an L2 present, Config2 must be present. If it isn't + * then we proceed knowing there's no L2 cache. + */ + move R_L2_SIZE, zero + move R_L2_LINE, zero + move R_L2_BYPASSED, zero + move R_L2_L2C, zero + mfc0 t0, CP0_CONFIG, 1 + bgez t0, l2_probe_done + + /* + * From MIPSr6 onwards the L2 cache configuration might not be reported + * by Config2. The Config5.L2C bit indicates whether this is the case, + * and if it is then we need knowledge of where else to look. For cores + * from Imagination Technologies this is a CM GCR. + */ +# if __mips_isa_rev >= 6 + /* Check that Config5 exists */ + mfc0 t0, CP0_CONFIG, 2 + bgez t0, l2_probe_cop0 + mfc0 t0, CP0_CONFIG, 3 + bgez t0, l2_probe_cop0 + mfc0 t0, CP0_CONFIG, 4 + bgez t0, l2_probe_cop0 + + /* Check Config5.L2C is set */ + mfc0 t0, CP0_CONFIG, 5 + and R_L2_L2C, t0, MIPS_CONF5_L2C + beqz R_L2_L2C, l2_probe_cop0 + + /* Config5.L2C is set */ +# ifdef CONFIG_MIPS_CM + /* The CM will provide L2 configuration */ + PTR_LI t0, CKSEG1ADDR(CONFIG_MIPS_CM_BASE) + lw t1, GCR_L2_CONFIG(t0) + bgez t1, l2_probe_done + + ext R_L2_LINE, t1, \ + GCR_L2_CONFIG_LINESZ_SHIFT, GCR_L2_CONFIG_LINESZ_BITS + beqz R_L2_LINE, l2_probe_done + li t2, 2 + sllv R_L2_LINE, t2, R_L2_LINE + + ext t2, t1, GCR_L2_CONFIG_ASSOC_SHIFT, GCR_L2_CONFIG_ASSOC_BITS + addiu t2, t2, 1 + mul R_L2_SIZE, R_L2_LINE, t2 + + ext t2, t1, GCR_L2_CONFIG_SETSZ_SHIFT, GCR_L2_CONFIG_SETSZ_BITS + sllv R_L2_SIZE, R_L2_SIZE, t2 + li t2, 64 + mul R_L2_SIZE, R_L2_SIZE, t2 + + /* Bypass the L2 cache so that we can init the L1s early */ + or t1, t1, GCR_L2_CONFIG_BYPASS + sw t1, GCR_L2_CONFIG(t0) + sync + li R_L2_BYPASSED, 1 + + /* Zero the L2 tag registers */ + sw zero, GCR_L2_TAG_ADDR(t0) + sw zero, GCR_L2_TAG_ADDR_UPPER(t0) + sw zero, GCR_L2_TAG_STATE(t0) + sw zero, GCR_L2_TAG_STATE_UPPER(t0) + sw zero, GCR_L2_DATA(t0) + sw zero, GCR_L2_DATA_UPPER(t0) + sync +# else + /* We don't know how to retrieve L2 configuration on this system */ +# endif + b l2_probe_done +# endif + + /* + * For pre-r6 systems, or r6 systems with Config5.L2C==0, probe the L2 + * cache configuration from the cop0 Config2 register. + */ +l2_probe_cop0: + mfc0 t0, CP0_CONFIG, 2 + + srl R_L2_LINE, t0, MIPS_CONF2_SL_SHF + andi R_L2_LINE, R_L2_LINE, MIPS_CONF2_SL >> MIPS_CONF2_SL_SHF + beqz R_L2_LINE, l2_probe_done + li t1, 2 + sllv R_L2_LINE, t1, R_L2_LINE + + srl t1, t0, MIPS_CONF2_SA_SHF + andi t1, t1, MIPS_CONF2_SA >> MIPS_CONF2_SA_SHF + addiu t1, t1, 1 + mul R_L2_SIZE, R_L2_LINE, t1 + + srl t1, t0, MIPS_CONF2_SS_SHF + andi t1, t1, MIPS_CONF2_SS >> MIPS_CONF2_SS_SHF + sllv R_L2_SIZE, R_L2_SIZE, t1 + li t1, 64 + mul R_L2_SIZE, R_L2_SIZE, t1 + + /* Attempt to bypass the L2 so that we can init the L1s early */ + or t0, t0, MIPS_CONF2_L2B + mtc0 t0, CP0_CONFIG, 2 + ehb + mfc0 t0, CP0_CONFIG, 2 + and R_L2_BYPASSED, t0, MIPS_CONF2_L2B + + /* Zero the L2 tag registers */ + mtc0 zero, CP0_TAGLO, 4 + ehb +l2_probe_done: +#endif + #ifndef CONFIG_SYS_CACHE_SIZE_AUTO - li t2, CONFIG_SYS_ICACHE_SIZE - li t8, CONFIG_SYS_ICACHE_LINE_SIZE + li R_IC_SIZE, CONFIG_SYS_ICACHE_SIZE + li R_IC_LINE, CONFIG_SYS_ICACHE_LINE_SIZE #else - l1_info t2, t8, MIPS_CONF1_IA_SHF + l1_info R_IC_SIZE, R_IC_LINE, MIPS_CONF1_IA_SHF #endif #ifndef CONFIG_SYS_CACHE_SIZE_AUTO - li t3, CONFIG_SYS_DCACHE_SIZE - li t9, CONFIG_SYS_DCACHE_LINE_SIZE + li R_DC_SIZE, CONFIG_SYS_DCACHE_SIZE + li R_DC_LINE, CONFIG_SYS_DCACHE_LINE_SIZE #else - l1_info t3, t9, MIPS_CONF1_DA_SHF + l1_info R_DC_SIZE, R_DC_LINE, MIPS_CONF1_DA_SHF #endif #ifdef CONFIG_SYS_MIPS_CACHE_INIT_RAM_LOAD @@ -123,9 +249,9 @@ LEAF(mips_cache_reset) li v0, CONFIG_SYS_DCACHE_SIZE #endif #else - move v0, t2 - sltu t1, t2, t3 - movn v0, t3, t1 + move v0, R_IC_SIZE + sltu t1, R_IC_SIZE, R_DC_SIZE + movn v0, R_DC_SIZE, t1 #endif /* * Now clear that much memory starting from zero. @@ -138,13 +264,36 @@ LEAF(mips_cache_reset) #endif /* CONFIG_SYS_MIPS_CACHE_INIT_RAM_LOAD */ +#ifdef CONFIG_MIPS_L2_CACHE + /* + * If the L2 is bypassed, init the L1 first so that we can execute the + * rest of the cache initialisation using the L1 instruction cache. + */ + bnez R_L2_BYPASSED, l1_init + +l2_init: + PTR_LI t0, INDEX_BASE + PTR_ADDU t1, t0, R_L2_SIZE +1: cache INDEX_STORE_TAG_SD, 0(t0) + PTR_ADDU t0, t0, R_L2_LINE + bne t0, t1, 1b + + /* + * If the L2 was bypassed then we already initialised the L1s before + * the L2, so we are now done. + */ + bnez R_L2_BYPASSED, l2_unbypass +#endif + /* * The TagLo registers used depend upon the CPU implementation, but the * architecture requires that it is safe for software to write to both * TagLo selects 0 & 2 covering supported cases. */ +l1_init: mtc0 zero, CP0_TAGLO mtc0 zero, CP0_TAGLO, 2 + ehb /* * The caches are probably in an indeterminate state, so we force good @@ -158,40 +307,122 @@ LEAF(mips_cache_reset) /* * Initialize the I-cache first, */ - blez t2, 1f + blez R_IC_SIZE, 1f PTR_LI t0, INDEX_BASE - PTR_ADDU t1, t0, t2 + PTR_ADDU t1, t0, R_IC_SIZE /* clear tag to invalidate */ - cache_loop t0, t1, t8, INDEX_STORE_TAG_I + cache_loop t0, t1, R_IC_LINE, INDEX_STORE_TAG_I #ifdef CONFIG_SYS_MIPS_CACHE_INIT_RAM_LOAD /* fill once, so data field parity is correct */ PTR_LI t0, INDEX_BASE - cache_loop t0, t1, t8, FILL + cache_loop t0, t1, R_IC_LINE, FILL /* invalidate again - prudent but not strictly neccessary */ PTR_LI t0, INDEX_BASE - cache_loop t0, t1, t8, INDEX_STORE_TAG_I + cache_loop t0, t1, R_IC_LINE, INDEX_STORE_TAG_I +#endif + + /* Enable use of the I-cache by setting Config.K0 */ + sync + mfc0 t0, CP0_CONFIG + li t1, CONFIG_SYS_MIPS_CACHE_MODE +#if __mips_isa_rev >= 2 + ins t0, t1, 0, 3 +#else + ori t0, t0, CONF_CM_CMASK + xori t0, t0, CONF_CM_CMASK + or t0, t0, t1 #endif + mtc0 t0, CP0_CONFIG /* * then initialize D-cache. */ -1: blez t3, 3f +1: blez R_DC_SIZE, 3f PTR_LI t0, INDEX_BASE - PTR_ADDU t1, t0, t3 + PTR_ADDU t1, t0, R_DC_SIZE /* clear all tags */ - cache_loop t0, t1, t9, INDEX_STORE_TAG_D + cache_loop t0, t1, R_DC_LINE, INDEX_STORE_TAG_D #ifdef CONFIG_SYS_MIPS_CACHE_INIT_RAM_LOAD /* load from each line (in cached space) */ PTR_LI t0, INDEX_BASE 2: LONG_L zero, 0(t0) - PTR_ADDU t0, t9 + PTR_ADDU t0, R_DC_LINE bne t0, t1, 2b /* clear all tags */ PTR_LI t0, INDEX_BASE - cache_loop t0, t1, t9, INDEX_STORE_TAG_D + cache_loop t0, t1, R_DC_LINE, INDEX_STORE_TAG_D #endif +3: + +#ifdef CONFIG_MIPS_L2_CACHE + /* If the L2 isn't bypassed then we're done */ + beqz R_L2_BYPASSED, return + + /* The L2 is bypassed - go initialise it */ + b l2_init -3: jr ra +l2_unbypass: +# if __mips_isa_rev >= 6 + beqz R_L2_L2C, 1f + + li t0, CKSEG1ADDR(CONFIG_MIPS_CM_BASE) + lw t1, GCR_L2_CONFIG(t0) + xor t1, t1, GCR_L2_CONFIG_BYPASS + sw t1, GCR_L2_CONFIG(t0) + sync + ehb + b 2f +# endif +1: mfc0 t0, CP0_CONFIG, 2 + xor t0, t0, MIPS_CONF2_L2B + mtc0 t0, CP0_CONFIG, 2 + ehb + +2: +# ifdef CONFIG_MIPS_CM + /* Config3 must exist for a CM to be present */ + mfc0 t0, CP0_CONFIG, 1 + bgez t0, 2f + mfc0 t0, CP0_CONFIG, 2 + bgez t0, 2f + + /* Check Config3.CMGCR to determine CM presence */ + mfc0 t0, CP0_CONFIG, 3 + and t0, t0, MIPS_CONF3_CMGCR + beqz t0, 2f + + /* Change Config.K0 to a coherent CCA */ + mfc0 t0, CP0_CONFIG + li t1, CONF_CM_CACHABLE_COW +#if __mips_isa_rev >= 2 + ins t0, t1, 0, 3 +#else + ori t0, t0, CONF_CM_CMASK + xori t0, t0, CONF_CM_CMASK + or t0, t0, t1 +#endif + mtc0 t0, CP0_CONFIG + + /* + * Join the coherent domain such that the caches of this core are kept + * coherent with those of other cores. + */ + PTR_LI t0, CKSEG1ADDR(CONFIG_MIPS_CM_BASE) + lw t1, GCR_REV(t0) + li t2, GCR_REV_CM3 + li t3, GCR_Cx_COHERENCE_EN + bge t1, t2, 1f + li t3, GCR_Cx_COHERENCE_DOM_EN +1: sw t3, GCR_Cx_COHERENCE(t0) + ehb +2: +# endif +#endif + +return: + /* Ensure all cache operations complete before returning */ + sync + jr ra END(mips_cache_reset) /* diff --git a/arch/mips/mach-ath79/cpu.c b/arch/mips/mach-ath79/cpu.c index 5756a06d50..4ef5092478 100644 --- a/arch/mips/mach-ath79/cpu.c +++ b/arch/mips/mach-ath79/cpu.c @@ -46,7 +46,7 @@ static const struct ath79_soc_desc desc[] = { {ATH79_SOC_QCA9561, "9561", REV_ID_MAJOR_QCA9561, 0}, }; -int arch_cpu_init(void) +int mach_cpu_init(void) { void __iomem *base; enum ath79_soc_type soc = ATH79_SOC_UNKNOWN; diff --git a/arch/mips/mach-ath79/reset.c b/arch/mips/mach-ath79/reset.c index 073a179baf..0593ec4a1b 100644 --- a/arch/mips/mach-ath79/reset.c +++ b/arch/mips/mach-ath79/reset.c @@ -5,7 +5,7 @@ */ #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/addrspace.h> #include <asm/types.h> diff --git a/arch/nds32/include/asm/errno.h b/arch/nds32/include/asm/errno.h deleted file mode 100644 index 4c82b503d9..0000000000 --- a/arch/nds32/include/asm/errno.h +++ /dev/null @@ -1 +0,0 @@ -#include <asm-generic/errno.h> diff --git a/arch/nios2/include/asm/errno.h b/arch/nios2/include/asm/errno.h deleted file mode 100644 index 4c82b503d9..0000000000 --- a/arch/nios2/include/asm/errno.h +++ /dev/null @@ -1 +0,0 @@ -#include <asm-generic/errno.h> diff --git a/arch/openrisc/include/asm/errno.h b/arch/openrisc/include/asm/errno.h deleted file mode 100644 index 4c82b503d9..0000000000 --- a/arch/openrisc/include/asm/errno.h +++ /dev/null @@ -1 +0,0 @@ -#include <asm-generic/errno.h> diff --git a/arch/powerpc/cpu/mpc512x/cpu.c b/arch/powerpc/cpu/mpc512x/cpu.c index 8508e8db40..4ee91e16f9 100644 --- a/arch/powerpc/cpu/mpc512x/cpu.c +++ b/arch/powerpc/cpu/mpc512x/cpu.c @@ -95,11 +95,7 @@ do_reset (cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[]) */ unsigned long get_tbclk (void) { - ulong tbclk; - - tbclk = (gd->bus_clk + 3L) / 4L; - - return tbclk; + return (gd->bus_clk + 3L) / 4L; } diff --git a/arch/powerpc/cpu/mpc512x/start.S b/arch/powerpc/cpu/mpc512x/start.S index 6c331d1031..471d401d49 100644 --- a/arch/powerpc/cpu/mpc512x/start.S +++ b/arch/powerpc/cpu/mpc512x/start.S @@ -15,9 +15,6 @@ #include <asm-offsets.h> #include <config.h> -#ifndef CONFIG_IDENT_STRING -#define CONFIG_IDENT_STRING "MPC512X" -#endif #include <version.h> #define CONFIG_521X 1 /* needed for Linux kernel header files*/ diff --git a/arch/powerpc/cpu/mpc83xx/cpu.c b/arch/powerpc/cpu/mpc83xx/cpu.c index 38093097e4..c87f0fdd29 100644 --- a/arch/powerpc/cpu/mpc83xx/cpu.c +++ b/arch/powerpc/cpu/mpc83xx/cpu.c @@ -173,11 +173,7 @@ do_reset (cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[]) unsigned long get_tbclk(void) { - ulong tbclk; - - tbclk = (gd->bus_clk + 3L) / 4L; - - return tbclk; + return (gd->bus_clk + 3L) / 4L; } diff --git a/arch/powerpc/cpu/mpc83xx/qe_io.c b/arch/powerpc/cpu/mpc83xx/qe_io.c index 106704d65d..14406af6b0 100644 --- a/arch/powerpc/cpu/mpc83xx/qe_io.c +++ b/arch/powerpc/cpu/mpc83xx/qe_io.c @@ -7,10 +7,10 @@ * SPDX-License-Identifier: GPL-2.0+ */ -#include "common.h" -#include "asm/errno.h" -#include "asm/io.h" -#include "asm/immap_83xx.h" +#include <common.h> +#include <linux/errno.h> +#include <asm/io.h> +#include <asm/immap_83xx.h> #define NUM_OF_PINS 32 void qe_config_iopin(u8 port, u8 pin, int dir, int open_drain, int assign) diff --git a/arch/powerpc/cpu/mpc83xx/start.S b/arch/powerpc/cpu/mpc83xx/start.S index 9bd86d82d6..0001687703 100644 --- a/arch/powerpc/cpu/mpc83xx/start.S +++ b/arch/powerpc/cpu/mpc83xx/start.S @@ -14,9 +14,6 @@ #include <asm-offsets.h> #include <config.h> #include <mpc83xx.h> -#ifndef CONFIG_IDENT_STRING -#define CONFIG_IDENT_STRING "MPC83XX" -#endif #include <version.h> #define CONFIG_83XX 1 /* needed for Linux kernel header files*/ diff --git a/arch/powerpc/cpu/mpc85xx/fsl_corenet2_serdes.c b/arch/powerpc/cpu/mpc85xx/fsl_corenet2_serdes.c index ebc9b817ff..810ddb0867 100644 --- a/arch/powerpc/cpu/mpc85xx/fsl_corenet2_serdes.c +++ b/arch/powerpc/cpu/mpc85xx/fsl_corenet2_serdes.c @@ -10,7 +10,7 @@ #include <asm/io.h> #include <asm/processor.h> #include <asm/fsl_law.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <fsl_errata.h> #include "fsl_corenet2_serdes.h" diff --git a/arch/powerpc/cpu/mpc85xx/fsl_corenet_serdes.c b/arch/powerpc/cpu/mpc85xx/fsl_corenet_serdes.c index 85739e93a4..72d5e3007d 100644 --- a/arch/powerpc/cpu/mpc85xx/fsl_corenet_serdes.c +++ b/arch/powerpc/cpu/mpc85xx/fsl_corenet_serdes.c @@ -13,7 +13,7 @@ #include <asm/io.h> #include <asm/processor.h> #include <asm/fsl_law.h> -#include <asm/errno.h> +#include <linux/errno.h> #include "fsl_corenet_serdes.h" /* diff --git a/arch/powerpc/cpu/mpc85xx/qe_io.c b/arch/powerpc/cpu/mpc85xx/qe_io.c index d2825ec36e..49e82a2773 100644 --- a/arch/powerpc/cpu/mpc85xx/qe_io.c +++ b/arch/powerpc/cpu/mpc85xx/qe_io.c @@ -7,10 +7,10 @@ * SPDX-License-Identifier: GPL-2.0+ */ -#include "common.h" -#include "asm/errno.h" -#include "asm/io.h" -#include "asm/immap_85xx.h" +#include <common.h> +#include <linux/errno.h> +#include <asm/io.h> +#include <asm/immap_85xx.h> #if defined(CONFIG_QE) && !defined(CONFIG_U_QE) #define NUM_OF_PINS 32 diff --git a/arch/powerpc/cpu/mpc8xxx/srio.c b/arch/powerpc/cpu/mpc8xxx/srio.c index 0ab9aac4a8..e17e20181f 100644 --- a/arch/powerpc/cpu/mpc8xxx/srio.c +++ b/arch/powerpc/cpu/mpc8xxx/srio.c @@ -9,7 +9,7 @@ #include <asm/fsl_law.h> #include <asm/fsl_serdes.h> #include <asm/fsl_srio.h> -#include <asm/errno.h> +#include <linux/errno.h> #ifdef CONFIG_SRIO_PCIE_BOOT_MASTER #define SRIO_PORT_ACCEPT_ALL 0x10000001 diff --git a/arch/powerpc/cpu/ppc4xx/4xx_pci.c b/arch/powerpc/cpu/ppc4xx/4xx_pci.c index 30e6c65805..bfe48a2ad3 100644 --- a/arch/powerpc/cpu/ppc4xx/4xx_pci.c +++ b/arch/powerpc/cpu/ppc4xx/4xx_pci.c @@ -118,7 +118,8 @@ void pci_405gp_init(struct pci_controller *hose) #endif unsigned long ptmla[2] = {CONFIG_SYS_PCI_PTM1LA, CONFIG_SYS_PCI_PTM2LA}; unsigned long ptmms[2] = {CONFIG_SYS_PCI_PTM1MS, CONFIG_SYS_PCI_PTM2MS}; -#if defined(CONFIG_PIP405) || defined (CONFIG_MIP405) +#if defined(CONFIG_PIP405) || defined(CONFIG_TARGET_MIP405) \ + || defined(CONFIG_TARGET_MIP405T) unsigned long pmmla[3] = {0x80000000, 0xA0000000, 0}; unsigned long pmmma[3] = {0xE0000001, 0xE0000001, 0}; unsigned long pmmpcila[3] = {0x80000000, 0x00000000, 0}; @@ -408,7 +409,8 @@ void pci_405gp_setup_vga(struct pci_controller *hose, pci_dev_t dev, pci_hose_write_config_dword(hose, dev, PCI_COMMAND, cmdstat); } -#if !(defined(CONFIG_PIP405) || defined (CONFIG_MIP405)) +#if !(defined(CONFIG_PIP405) || defined(CONFIG_TARGET_MIP405) \ + || defined(CONFIG_TARGET_MIP405T)) /* *As is these functs get called out of flash Not a horrible diff --git a/arch/powerpc/cpu/ppc4xx/4xx_pcie.c b/arch/powerpc/cpu/ppc4xx/4xx_pcie.c index f0f3462efd..a616365aa5 100644 --- a/arch/powerpc/cpu/ppc4xx/4xx_pcie.c +++ b/arch/powerpc/cpu/ppc4xx/4xx_pcie.c @@ -18,7 +18,7 @@ #include <asm/ppc4xx.h> #include <asm/processor.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #if (defined(CONFIG_440SPE) || defined(CONFIG_405EX) || \ defined(CONFIG_460EX) || defined(CONFIG_460GT)) && \ diff --git a/arch/powerpc/cpu/ppc4xx/Kconfig b/arch/powerpc/cpu/ppc4xx/Kconfig index 92a330dc63..a6066efe81 100644 --- a/arch/powerpc/cpu/ppc4xx/Kconfig +++ b/arch/powerpc/cpu/ppc4xx/Kconfig @@ -104,6 +104,9 @@ config TARGET_ICON config TARGET_MIP405 bool "Support MIP405" +config TARGET_MIP405T + bool "Support MIP405T" + config TARGET_PIP405 bool "Support PIP405" diff --git a/arch/powerpc/cpu/ppc4xx/resetvec.S b/arch/powerpc/cpu/ppc4xx/resetvec.S index b3308bd6ae..a42d91fc3a 100644 --- a/arch/powerpc/cpu/ppc4xx/resetvec.S +++ b/arch/powerpc/cpu/ppc4xx/resetvec.S @@ -4,7 +4,8 @@ #if defined(CONFIG_440) b _start_440 #else -#if defined(CONFIG_BOOT_PCI) && defined(CONFIG_MIP405) +#if defined(CONFIG_BOOT_PCI) && (defined(CONFIG_TARGET_MIP405) \ + || defined(CONFIG_TARGET_MIP405T)) b _start_pci #else b _start diff --git a/arch/powerpc/include/asm/errno.h b/arch/powerpc/include/asm/errno.h deleted file mode 100644 index 4c82b503d9..0000000000 --- a/arch/powerpc/include/asm/errno.h +++ /dev/null @@ -1 +0,0 @@ -#include <asm-generic/errno.h> diff --git a/arch/powerpc/include/asm/fsl_secure_boot.h b/arch/powerpc/include/asm/fsl_secure_boot.h index 2e937f0364..f9154d3b40 100644 --- a/arch/powerpc/include/asm/fsl_secure_boot.h +++ b/arch/powerpc/include/asm/fsl_secure_boot.h @@ -79,13 +79,7 @@ #endif /* #ifdef CONFIG_SECURE_BOOT */ #ifdef CONFIG_CHAIN_OF_TRUST - #ifdef CONFIG_SPL_BUILD -#define CONFIG_SPL_DM 1 -#define CONFIG_SPL_CRYPTO_SUPPORT -#define CONFIG_SPL_HASH_SUPPORT -#define CONFIG_SPL_RSA -#define CONFIG_SPL_DRIVERS_MISC_SUPPORT /* * PPAACT and SPAACT table for PAMU must be placed on DDR after DDR init * due to space crunch on CPC and thus malloc will not work. diff --git a/arch/powerpc/lib/ppcstring.S b/arch/powerpc/lib/ppcstring.S index 56bb3b824e..4f601087ed 100644 --- a/arch/powerpc/lib/ppcstring.S +++ b/arch/powerpc/lib/ppcstring.S @@ -6,7 +6,7 @@ * SPDX-License-Identifier: GPL-2.0+ */ #include <ppc_asm.tmpl> -#include <asm/errno.h> +#include <linux/errno.h> .globl strcpy strcpy: diff --git a/arch/sandbox/include/asm/errno.h b/arch/sandbox/include/asm/errno.h deleted file mode 100644 index 4c82b503d9..0000000000 --- a/arch/sandbox/include/asm/errno.h +++ /dev/null @@ -1 +0,0 @@ -#include <asm-generic/errno.h> diff --git a/arch/sh/include/asm/errno.h b/arch/sh/include/asm/errno.h deleted file mode 100644 index 4c82b503d9..0000000000 --- a/arch/sh/include/asm/errno.h +++ /dev/null @@ -1 +0,0 @@ -#include <asm-generic/errno.h> diff --git a/arch/sparc/include/asm/errno.h b/arch/sparc/include/asm/errno.h deleted file mode 100644 index 4c82b503d9..0000000000 --- a/arch/sparc/include/asm/errno.h +++ /dev/null @@ -1 +0,0 @@ -#include <asm-generic/errno.h> diff --git a/arch/x86/cpu/baytrail/valleyview.c b/arch/x86/cpu/baytrail/valleyview.c index b31f24e262..b312d9f9fb 100644 --- a/arch/x86/cpu/baytrail/valleyview.c +++ b/arch/x86/cpu/baytrail/valleyview.c @@ -25,15 +25,9 @@ int cpu_mmc_init(bd_t *bis) #ifndef CONFIG_EFI_APP int arch_cpu_init(void) { - int ret; - post_code(POST_CPU_INIT); - ret = x86_cpu_init_f(); - if (ret) - return ret; - - return 0; + return x86_cpu_init_f(); } int arch_misc_init(void) diff --git a/arch/x86/cpu/ivybridge/ivybridge.c b/arch/x86/cpu/ivybridge/ivybridge.c index c770b53c08..e817eb9cc2 100644 --- a/arch/x86/cpu/ivybridge/ivybridge.c +++ b/arch/x86/cpu/ivybridge/ivybridge.c @@ -10,13 +10,7 @@ int arch_cpu_init(void) { - int ret; - post_code(POST_CPU_INIT); - ret = x86_cpu_init_f(); - if (ret) - return ret; - - return 0; + return x86_cpu_init_f(); } diff --git a/arch/x86/cpu/qemu/qemu.c b/arch/x86/cpu/qemu/qemu.c index 680e558ee8..c3092f2b9f 100644 --- a/arch/x86/cpu/qemu/qemu.c +++ b/arch/x86/cpu/qemu/qemu.c @@ -139,15 +139,9 @@ static void qemu_chipset_init(void) int arch_cpu_init(void) { - int ret; - post_code(POST_CPU_INIT); - ret = x86_cpu_init_f(); - if (ret) - return ret; - - return 0; + return x86_cpu_init_f(); } #ifndef CONFIG_EFI_STUB diff --git a/arch/x86/cpu/queensbay/tnc.c b/arch/x86/cpu/queensbay/tnc.c index b226e4c5fd..f307c622c8 100644 --- a/arch/x86/cpu/queensbay/tnc.c +++ b/arch/x86/cpu/queensbay/tnc.c @@ -94,15 +94,9 @@ static int __maybe_unused disable_igd(void) int arch_cpu_init(void) { - int ret; - post_code(POST_CPU_INIT); - ret = x86_cpu_init_f(); - if (ret) - return ret; - - return 0; + return x86_cpu_init_f(); } int arch_early_init_r(void) diff --git a/arch/x86/include/asm/errno.h b/arch/x86/include/asm/errno.h deleted file mode 100644 index 4c82b503d9..0000000000 --- a/arch/x86/include/asm/errno.h +++ /dev/null @@ -1 +0,0 @@ -#include <asm-generic/errno.h> diff --git a/arch/x86/include/asm/msr.h b/arch/x86/include/asm/msr.h index c480920d25..8e8d4439e2 100644 --- a/arch/x86/include/asm/msr.h +++ b/arch/x86/include/asm/msr.h @@ -22,7 +22,7 @@ #ifdef __KERNEL__ -#include <asm/errno.h> +#include <linux/errno.h> struct msr { union { diff --git a/arch/x86/lib/init_helpers.c b/arch/x86/lib/init_helpers.c index 82fd5c3577..bac671d549 100644 --- a/arch/x86/lib/init_helpers.c +++ b/arch/x86/lib/init_helpers.c @@ -6,7 +6,7 @@ */ #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/mtrr.h> DECLARE_GLOBAL_DATA_PTR; diff --git a/arch/xtensa/include/asm/errno.h b/arch/xtensa/include/asm/errno.h deleted file mode 100644 index 4c82b503d9..0000000000 --- a/arch/xtensa/include/asm/errno.h +++ /dev/null @@ -1 +0,0 @@ -#include <asm-generic/errno.h> diff --git a/arch/xtensa/lib/time.c b/arch/xtensa/lib/time.c index 1332072ffe..915eb5185b 100644 --- a/arch/xtensa/lib/time.c +++ b/arch/xtensa/lib/time.c @@ -104,10 +104,7 @@ unsigned long long get_ticks(void) */ ulong get_tbclk(void) { - ulong tbclk; - - tbclk = CONFIG_SYS_HZ; - return tbclk; + return CONFIG_SYS_HZ; } #if XCHAL_HAVE_CCOUNT diff --git a/board/Barix/ipam390/ipam390.c b/board/Barix/ipam390/ipam390.c index 6ce8960bbd..9747f32904 100644 --- a/board/Barix/ipam390/ipam390.c +++ b/board/Barix/ipam390/ipam390.c @@ -25,7 +25,7 @@ #include <asm/arch/pinmux_defs.h> #include <asm/io.h> #include <asm/arch/davinci_misc.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <hwconfig.h> #include <bootstage.h> diff --git a/board/CarMediaLab/flea3/flea3.c b/board/CarMediaLab/flea3/flea3.c index 7f5cfc806b..2463077475 100644 --- a/board/CarMediaLab/flea3/flea3.c +++ b/board/CarMediaLab/flea3/flea3.c @@ -10,7 +10,7 @@ #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/imx-regs.h> #include <asm/arch/crm_regs.h> #include <asm/arch/iomux-mx35.h> diff --git a/board/Marvell/db-88f6820-amc/MAINTAINERS b/board/Marvell/db-88f6820-amc/MAINTAINERS new file mode 100644 index 0000000000..abf5b7efdc --- /dev/null +++ b/board/Marvell/db-88f6820-amc/MAINTAINERS @@ -0,0 +1,6 @@ +DB_88F6820_AMC BOARD +M: Chris Packham <chris.packham@alliedtelesis.co.nz> +S: Maintained +F: board/Marvell/db-88f6820-amc/ +F: include/configs/db-88f6820-amc.h +F: configs/db-88f6820-amc_defconfig diff --git a/board/Marvell/db-88f6820-amc/Makefile b/board/Marvell/db-88f6820-amc/Makefile new file mode 100644 index 0000000000..79e1a75f4c --- /dev/null +++ b/board/Marvell/db-88f6820-amc/Makefile @@ -0,0 +1,7 @@ +# +# Copyright (C) 2015 Stefan Roese <sr@denx.de> +# +# SPDX-License-Identifier: GPL-2.0+ +# + +obj-y := db-88f6820-amc.o diff --git a/board/Marvell/db-88f6820-amc/db-88f6820-amc.c b/board/Marvell/db-88f6820-amc/db-88f6820-amc.c new file mode 100644 index 0000000000..cade99c8d7 --- /dev/null +++ b/board/Marvell/db-88f6820-amc/db-88f6820-amc.c @@ -0,0 +1,129 @@ +/* + * Copyright (C) 2015 Stefan Roese <sr@denx.de> + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include <common.h> +#include <i2c.h> +#include <miiphy.h> +#include <netdev.h> +#include <asm/io.h> +#include <asm/arch/cpu.h> +#include <asm/arch/soc.h> + +#include "../drivers/ddr/marvell/a38x/ddr3_a38x_topology.h" +#include <../serdes/a38x/high_speed_env_spec.h> + +DECLARE_GLOBAL_DATA_PTR; + +#define ETH_PHY_CTRL_REG 0 +#define ETH_PHY_CTRL_POWER_DOWN_BIT 11 +#define ETH_PHY_CTRL_POWER_DOWN_MASK (1 << ETH_PHY_CTRL_POWER_DOWN_BIT) + +/* + * Those values and defines are taken from the Marvell U-Boot version + * "u-boot-2013.01-2016_T1.0.eng_drop_v10" + */ +#define DB_AMC_88F68XX_GPP_OUT_ENA_LOW \ + (~(BIT(29))) +#define DB_AMC_88F68XX_GPP_OUT_ENA_MID \ + (~(BIT(12) | BIT(17) | BIT(18) | BIT(20) | BIT(21))) +#define DB_AMC_88F68XX_GPP_OUT_VAL_LOW (BIT(29)) +#define DB_AMC_88F68XX_GPP_OUT_VAL_MID 0x0 +#define DB_AMC_88F68XX_GPP_OUT_VAL_HIGH 0x0 +#define DB_AMC_88F68XX_GPP_POL_LOW 0x0 +#define DB_AMC_88F68XX_GPP_POL_MID 0x0 + +static struct serdes_map board_serdes_map[] = { + {PEX0, SERDES_SPEED_5_GBPS, PEX_ROOT_COMPLEX_X1, 0, 0}, + {DEFAULT_SERDES, SERDES_SPEED_5_GBPS, SERDES_DEFAULT_MODE, 0, 0}, + {DEFAULT_SERDES, SERDES_SPEED_5_GBPS, SERDES_DEFAULT_MODE, 0, 0}, + {DEFAULT_SERDES, SERDES_SPEED_5_GBPS, SERDES_DEFAULT_MODE, 0, 0}, + {SGMII1, SERDES_SPEED_1_25_GBPS, SERDES_DEFAULT_MODE, 0, 0}, + {SGMII2, SERDES_SPEED_1_25_GBPS, SERDES_DEFAULT_MODE, 0, 0} +}; + +int hws_board_topology_load(struct serdes_map **serdes_map_array, u8 *count) +{ + *serdes_map_array = board_serdes_map; + *count = ARRAY_SIZE(board_serdes_map); + return 0; +} + +/* + * Define the DDR layout / topology here in the board file. This will + * be used by the DDR3 init code in the SPL U-Boot version to configure + * the DDR3 controller. + */ +static struct hws_topology_map board_topology_map = { + 0x1, /* active interfaces */ + /* cs_mask, mirror, dqs_swap, ck_swap X PUPs */ + { { { {0x1, 0, 0, 0}, + {0x1, 0, 0, 0}, + {0x1, 0, 0, 0}, + {0x1, 0, 0, 0}, + {0x1, 0, 0, 0} }, + SPEED_BIN_DDR_1866L, /* speed_bin */ + BUS_WIDTH_8, /* memory_width */ + MEM_4G, /* mem_size */ + DDR_FREQ_800, /* frequency */ + 0, 0, /* cas_l cas_wl */ + HWS_TEMP_LOW} }, /* temperature */ + 5, /* Num Of Bus Per Interface*/ + BUS_MASK_32BIT /* Busses mask */ +}; + +struct hws_topology_map *ddr3_get_topology_map(void) +{ + /* Return the board topology as defined in the board code */ + return &board_topology_map; +} + +int board_early_init_f(void) +{ + /* Configure MPP */ + writel(0x11111111, MVEBU_MPP_BASE + 0x00); + writel(0x11111111, MVEBU_MPP_BASE + 0x04); + writel(0x55066011, MVEBU_MPP_BASE + 0x08); + writel(0x05055550, MVEBU_MPP_BASE + 0x0c); + writel(0x05055555, MVEBU_MPP_BASE + 0x10); + writel(0x01106565, MVEBU_MPP_BASE + 0x14); + writel(0x40000000, MVEBU_MPP_BASE + 0x18); + writel(0x00004444, MVEBU_MPP_BASE + 0x1c); + + /* Set GPP Out value */ + writel(DB_AMC_88F68XX_GPP_OUT_VAL_LOW, MVEBU_GPIO0_BASE + 0x00); + writel(DB_AMC_88F68XX_GPP_OUT_VAL_MID, MVEBU_GPIO1_BASE + 0x00); + + /* Set GPP Polarity */ + writel(DB_AMC_88F68XX_GPP_POL_LOW, MVEBU_GPIO0_BASE + 0x0c); + writel(DB_AMC_88F68XX_GPP_POL_MID, MVEBU_GPIO1_BASE + 0x0c); + + /* Set GPP Out Enable */ + writel(DB_AMC_88F68XX_GPP_OUT_ENA_LOW, MVEBU_GPIO0_BASE + 0x04); + writel(DB_AMC_88F68XX_GPP_OUT_ENA_MID, MVEBU_GPIO1_BASE + 0x04); + + return 0; +} + +int board_init(void) +{ + /* adress of boot parameters */ + gd->bd->bi_boot_params = mvebu_sdram_bar(0) + 0x100; + + return 0; +} + +int checkboard(void) +{ + puts("Board: Marvell DB-88F6820-AMC\n"); + + return 0; +} + +int board_eth_init(bd_t *bis) +{ + cpu_eth_init(bis); /* Built in controller(s) come first */ + return pci_eth_init(bis); +} diff --git a/board/Marvell/db-88f6820-amc/kwbimage.cfg b/board/Marvell/db-88f6820-amc/kwbimage.cfg new file mode 100644 index 0000000000..1f748db37c --- /dev/null +++ b/board/Marvell/db-88f6820-amc/kwbimage.cfg @@ -0,0 +1,12 @@ +# +# Copyright (C) 2014 Stefan Roese <sr@denx.de> +# + +# Armada XP uses version 1 image format +VERSION 1 + +# Boot Media configurations +BOOT_FROM spi + +# Binary Header (bin_hdr) with DDR3 training code +BINARY spl/u-boot-spl-dtb.bin 0000005b 00000068 diff --git a/board/advantech/dms-ba16/dms-ba16.c b/board/advantech/dms-ba16/dms-ba16.c index f0f1976597..20750fb0ce 100644 --- a/board/advantech/dms-ba16/dms-ba16.c +++ b/board/advantech/dms-ba16/dms-ba16.c @@ -10,7 +10,7 @@ #include <asm/arch/imx-regs.h> #include <asm/arch/iomux.h> #include <asm/arch/mx6-pins.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/imx-common/mxc_i2c.h> #include <asm/imx-common/iomux-v3.h> diff --git a/board/amcc/bamboo/bamboo.c b/board/amcc/bamboo/bamboo.c index c8d09636ab..2838f9a1ed 100644 --- a/board/amcc/bamboo/bamboo.c +++ b/board/amcc/bamboo/bamboo.c @@ -438,11 +438,7 @@ int checkboard(void) phys_size_t initdram (int board_type) { - long dram_size; - - dram_size = spd_sdram(); - - return dram_size; + return spd_sdram(); } /*----------------------------------------------------------------------------+ diff --git a/board/amcc/bubinga/bubinga.c b/board/amcc/bubinga/bubinga.c index 5c1e0717a5..9043de62d3 100644 --- a/board/amcc/bubinga/bubinga.c +++ b/board/amcc/bubinga/bubinga.c @@ -57,8 +57,5 @@ int checkboard(void) ------------------------------------------------------------------------- */ phys_size_t initdram(int board_type) { - long int ret; - - ret = spd_sdram(); - return ret; + return spd_sdram(); } diff --git a/board/amcc/canyonlands/canyonlands.c b/board/amcc/canyonlands/canyonlands.c index dc2e3ba3a0..6ea004c214 100644 --- a/board/amcc/canyonlands/canyonlands.c +++ b/board/amcc/canyonlands/canyonlands.c @@ -15,7 +15,7 @@ #include <asm/mmu.h> #include <asm/4xx_pcie.h> #include <asm/ppc4xx-gpio.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <usb.h> extern flash_info_t flash_info[CONFIG_SYS_MAX_FLASH_BANKS]; /* info for FLASH chips */ @@ -63,11 +63,7 @@ u32 ddr_clktr(u32 default_val) { */ static inline int board_fpga_read(int offset) { - int data; - - data = in_8((void *)(CONFIG_SYS_FPGA_BASE + offset)); - - return data; + return in_8((void *)(CONFIG_SYS_FPGA_BASE + offset)); } static inline void board_fpga_write(int offset, int data) diff --git a/board/amcc/katmai/katmai.c b/board/amcc/katmai/katmai.c index 6ae340ba16..7582d40ad1 100644 --- a/board/amcc/katmai/katmai.c +++ b/board/amcc/katmai/katmai.c @@ -15,7 +15,7 @@ #include <asm/io.h> #include <asm/ppc4xx-gpio.h> #include <asm/4xx_pcie.h> -#include <asm/errno.h> +#include <linux/errno.h> DECLARE_GLOBAL_DATA_PTR; diff --git a/board/amcc/kilauea/kilauea.c b/board/amcc/kilauea/kilauea.c index abfaa1eee0..29372178f3 100644 --- a/board/amcc/kilauea/kilauea.c +++ b/board/amcc/kilauea/kilauea.c @@ -12,7 +12,7 @@ #include <fdt_support.h> #include <asm/processor.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #if defined(CONFIG_PCI) #include <pci.h> diff --git a/board/amcc/makalu/makalu.c b/board/amcc/makalu/makalu.c index a6ad2a1ba6..2194942cd5 100644 --- a/board/amcc/makalu/makalu.c +++ b/board/amcc/makalu/makalu.c @@ -13,7 +13,7 @@ #include <asm/ppc4xx-gpio.h> #include <asm/io.h> #include <fdt_support.h> -#include <asm/errno.h> +#include <linux/errno.h> #if defined(CONFIG_PCI) #include <pci.h> diff --git a/board/amcc/yucca/yucca.c b/board/amcc/yucca/yucca.c index c0445ef226..8ee38516b8 100644 --- a/board/amcc/yucca/yucca.c +++ b/board/amcc/yucca/yucca.c @@ -16,7 +16,7 @@ #include <asm/processor.h> #include <asm/io.h> #include <asm/4xx_pcie.h> -#include <asm/errno.h> +#include <linux/errno.h> #include "yucca.h" diff --git a/board/aristainetos/aristainetos-v1.c b/board/aristainetos/aristainetos-v1.c index b8fed2e3fd..94e2b8a360 100644 --- a/board/aristainetos/aristainetos-v1.c +++ b/board/aristainetos/aristainetos-v1.c @@ -14,7 +14,7 @@ #include <asm/arch/imx-regs.h> #include <asm/arch/iomux.h> #include <asm/arch/mx6-pins.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/imx-common/iomux-v3.h> #include <asm/imx-common/boot_mode.h> diff --git a/board/aristainetos/aristainetos-v2.c b/board/aristainetos/aristainetos-v2.c index fa4b4d2c15..4cd184ed74 100644 --- a/board/aristainetos/aristainetos-v2.c +++ b/board/aristainetos/aristainetos-v2.c @@ -14,7 +14,7 @@ #include <asm/arch/imx-regs.h> #include <asm/arch/iomux.h> #include <asm/arch/mx6-pins.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/imx-common/iomux-v3.h> #include <asm/imx-common/boot_mode.h> diff --git a/board/aristainetos/aristainetos.c b/board/aristainetos/aristainetos.c index d1e6850636..b7c65ca7f8 100644 --- a/board/aristainetos/aristainetos.c +++ b/board/aristainetos/aristainetos.c @@ -14,7 +14,7 @@ #include <asm/arch/imx-regs.h> #include <asm/arch/iomux.h> #include <asm/arch/mx6-pins.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/imx-common/iomux-v3.h> #include <asm/imx-common/boot_mode.h> diff --git a/board/armadeus/apf27/apf27.c b/board/armadeus/apf27/apf27.c index 30e720d167..29995ea760 100644 --- a/board/armadeus/apf27/apf27.c +++ b/board/armadeus/apf27/apf27.c @@ -16,7 +16,7 @@ #include <asm/arch/imx-regs.h> #include <asm/arch/gpio.h> #include <asm/gpio.h> -#include <asm/errno.h> +#include <linux/errno.h> #include "apf27.h" #include "crc.h" #include "fpga.h" diff --git a/board/boundary/nitrogen6x/nitrogen6x.c b/board/boundary/nitrogen6x/nitrogen6x.c index a3a56ca202..ab8b2be19b 100644 --- a/board/boundary/nitrogen6x/nitrogen6x.c +++ b/board/boundary/nitrogen6x/nitrogen6x.c @@ -13,7 +13,7 @@ #include <asm/arch/sys_proto.h> #include <malloc.h> #include <asm/arch/mx6-pins.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/imx-common/iomux-v3.h> #include <asm/imx-common/mxc_i2c.h> diff --git a/board/compulab/cm_t35/cm_t35.c b/board/compulab/cm_t35/cm_t35.c index 189d903b6e..484651b8c4 100644 --- a/board/compulab/cm_t35/cm_t35.c +++ b/board/compulab/cm_t35/cm_t35.c @@ -24,7 +24,7 @@ #include <linux/compiler.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/mem.h> #include <asm/arch/mux.h> #include <asm/arch/mmc_host_def.h> diff --git a/board/compulab/common/common.h b/board/compulab/common/common.h index 8f38b79fb0..759ec31317 100644 --- a/board/compulab/common/common.h +++ b/board/compulab/common/common.h @@ -9,7 +9,7 @@ #ifndef _CL_COMMON_ #define _CL_COMMON_ -#include <asm/errno.h> +#include <linux/errno.h> void cl_print_pcb_info(void); diff --git a/board/compulab/common/omap3_smc911x.c b/board/compulab/common/omap3_smc911x.c index 4561661987..858ced829b 100644 --- a/board/compulab/common/omap3_smc911x.c +++ b/board/compulab/common/omap3_smc911x.c @@ -10,7 +10,7 @@ #include <netdev.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/cpu.h> #include <asm/arch/mem.h> #include <asm/arch/sys_proto.h> diff --git a/board/corscience/tricorder/tricorder-eeprom.c b/board/corscience/tricorder/tricorder-eeprom.c index 340a009c89..aeacd6a253 100644 --- a/board/corscience/tricorder/tricorder-eeprom.c +++ b/board/corscience/tricorder/tricorder-eeprom.c @@ -190,13 +190,8 @@ int do_tricorder_eeprom(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) if (argc == 3) { ulong dev_addr = simple_strtoul(argv[2], NULL, 16); - if (strcmp(argv[1], "read") == 0) { - int rcode; - - rcode = tricorder_eeprom_read(dev_addr); - - return rcode; - } + if (strcmp(argv[1], "read") == 0) + return tricorder_eeprom_read(dev_addr); } else if (argc == 6 || argc == 7) { ulong dev_addr = simple_strtoul(argv[2], NULL, 16); char *name = argv[3]; @@ -207,14 +202,9 @@ int do_tricorder_eeprom(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) if (argc == 7) interface = argv[6]; - if (strcmp(argv[1], "write") == 0) { - int rcode; - - rcode = tricorder_eeprom_write(dev_addr, name, version, - serial, interface); - - return rcode; - } + if (strcmp(argv[1], "write") == 0) + return tricorder_eeprom_write(dev_addr, name, version, + serial, interface); } return CMD_RET_USAGE; diff --git a/board/davinci/da8xxevm/da850evm.c b/board/davinci/da8xxevm/da850evm.c index b82385a918..50223f4e22 100644 --- a/board/davinci/da8xxevm/da850evm.c +++ b/board/davinci/da8xxevm/da850evm.c @@ -21,7 +21,7 @@ #include <asm/arch/pinmux_defs.h> #include <asm/io.h> #include <asm/arch/davinci_misc.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <hwconfig.h> #ifdef CONFIG_DAVINCI_MMC diff --git a/board/davinci/da8xxevm/omapl138_lcdk.c b/board/davinci/da8xxevm/omapl138_lcdk.c index f69aeb6d13..9783b2a0bc 100644 --- a/board/davinci/da8xxevm/omapl138_lcdk.c +++ b/board/davinci/da8xxevm/omapl138_lcdk.c @@ -18,7 +18,7 @@ #include <asm/arch/hardware.h> #include <asm/ti-common/davinci_nand.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/davinci_misc.h> #ifdef CONFIG_DAVINCI_MMC #include <mmc.h> diff --git a/board/denx/m53evk/m53evk.c b/board/denx/m53evk/m53evk.c index 934f009c09..ef63bbd10a 100644 --- a/board/denx/m53evk/m53evk.c +++ b/board/denx/m53evk/m53evk.c @@ -15,7 +15,7 @@ #include <asm/arch/iomux-mx53.h> #include <asm/imx-common/mx5_video.h> #include <asm/spl.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <netdev.h> #include <i2c.h> #include <mmc.h> diff --git a/board/el/el6x/el6x.c b/board/el/el6x/el6x.c index 7856b84341..5b60654991 100644 --- a/board/el/el6x/el6x.c +++ b/board/el/el6x/el6x.c @@ -10,7 +10,7 @@ #include <asm/arch/imx-regs.h> #include <asm/arch/iomux.h> #include <asm/arch/mx6-pins.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/imx-common/mxc_i2c.h> #include <asm/imx-common/iomux-v3.h> diff --git a/board/embest/mx6boards/mx6boards.c b/board/embest/mx6boards/mx6boards.c index ad7a8cfbb8..95cdaeb071 100644 --- a/board/embest/mx6boards/mx6boards.c +++ b/board/embest/mx6boards/mx6boards.c @@ -18,7 +18,7 @@ #include <asm/arch/imx-regs.h> #include <asm/arch/iomux.h> #include <asm/arch/mx6-pins.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/imx-common/iomux-v3.h> #include <asm/imx-common/boot_mode.h> diff --git a/board/esd/common/lcd.c b/board/esd/common/lcd.c index 22a59e4483..29421fce2e 100644 --- a/board/esd/common/lcd.c +++ b/board/esd/common/lcd.c @@ -8,7 +8,7 @@ * SPDX-License-Identifier: GPL-2.0+ */ -#include "asm/io.h" +#include <asm/io.h> #include "lcd.h" diff --git a/board/freescale/b4860qds/b4860qds.c b/board/freescale/b4860qds/b4860qds.c index e582abbaef..1642a7d1ae 100644 --- a/board/freescale/b4860qds/b4860qds.c +++ b/board/freescale/b4860qds/b4860qds.c @@ -11,7 +11,7 @@ #include <linux/compiler.h> #include <asm/mmu.h> #include <asm/processor.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/cache.h> #include <asm/immap_85xx.h> #include <asm/fsl_law.h> diff --git a/board/freescale/common/zm7300.c b/board/freescale/common/zm7300.c index be5953ad2d..a6c3e699b8 100644 --- a/board/freescale/common/zm7300.c +++ b/board/freescale/common/zm7300.c @@ -140,9 +140,7 @@ int dpm_wrp(u8 r, u8 d) /* Uses the DPM command RRP */ u8 zm_read(uchar reg) { - u8 d; - d = dpm_rrp(reg); - return d; + return dpm_rrp(reg); } /* ZM_write -- diff --git a/board/freescale/mx35pdk/mx35pdk.c b/board/freescale/mx35pdk/mx35pdk.c index 12467a9ada..fb0ab77445 100644 --- a/board/freescale/mx35pdk/mx35pdk.c +++ b/board/freescale/mx35pdk/mx35pdk.c @@ -8,7 +8,7 @@ #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/imx-regs.h> #include <asm/arch/crm_regs.h> #include <asm/arch/clock.h> diff --git a/board/freescale/mx51evk/mx51evk.c b/board/freescale/mx51evk/mx51evk.c index 2ea5346dba..df25be8e6c 100644 --- a/board/freescale/mx51evk/mx51evk.c +++ b/board/freescale/mx51evk/mx51evk.c @@ -9,7 +9,7 @@ #include <asm/gpio.h> #include <asm/arch/imx-regs.h> #include <asm/arch/iomux-mx51.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/sys_proto.h> #include <asm/arch/crm_regs.h> #include <asm/arch/clock.h> diff --git a/board/freescale/mx53ard/mx53ard.c b/board/freescale/mx53ard/mx53ard.c index 8ba27288e3..a6e46b92f9 100644 --- a/board/freescale/mx53ard/mx53ard.c +++ b/board/freescale/mx53ard/mx53ard.c @@ -11,7 +11,7 @@ #include <asm/arch/crm_regs.h> #include <asm/arch/clock.h> #include <asm/arch/iomux-mx53.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <netdev.h> #include <mmc.h> #include <fsl_esdhc.h> diff --git a/board/freescale/mx53evk/mx53evk.c b/board/freescale/mx53evk/mx53evk.c index 6ee6d73ed2..db28942603 100644 --- a/board/freescale/mx53evk/mx53evk.c +++ b/board/freescale/mx53evk/mx53evk.c @@ -11,7 +11,7 @@ #include <asm/arch/crm_regs.h> #include <asm/arch/clock.h> #include <asm/arch/iomux-mx53.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/imx-common/boot_mode.h> #include <netdev.h> #include <i2c.h> diff --git a/board/freescale/mx53loco/mx53loco.c b/board/freescale/mx53loco/mx53loco.c index 1298788624..9e1072f4b1 100644 --- a/board/freescale/mx53loco/mx53loco.c +++ b/board/freescale/mx53loco/mx53loco.c @@ -13,7 +13,7 @@ #include <asm/arch/clock.h> #include <asm/arch/iomux-mx53.h> #include <asm/arch/clock.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/imx-common/mx5_video.h> #include <netdev.h> #include <i2c.h> diff --git a/board/freescale/mx53smd/mx53smd.c b/board/freescale/mx53smd/mx53smd.c index 0963fd7b43..938c611ef8 100644 --- a/board/freescale/mx53smd/mx53smd.c +++ b/board/freescale/mx53smd/mx53smd.c @@ -11,7 +11,7 @@ #include <asm/arch/crm_regs.h> #include <asm/arch/clock.h> #include <asm/arch/iomux-mx53.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <netdev.h> #include <mmc.h> #include <fsl_esdhc.h> diff --git a/board/freescale/mx6qarm2/mx6qarm2.c b/board/freescale/mx6qarm2/mx6qarm2.c index 5aae72148f..7f8eca3346 100644 --- a/board/freescale/mx6qarm2/mx6qarm2.c +++ b/board/freescale/mx6qarm2/mx6qarm2.c @@ -9,7 +9,7 @@ #include <asm/arch/imx-regs.h> #include <asm/arch/mx6-pins.h> #include <asm/arch/clock.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/imx-common/iomux-v3.h> #include <mmc.h> diff --git a/board/freescale/mx6qsabreauto/mx6qsabreauto.c b/board/freescale/mx6qsabreauto/mx6qsabreauto.c index a3ed4cd466..5fca4d11e0 100644 --- a/board/freescale/mx6qsabreauto/mx6qsabreauto.c +++ b/board/freescale/mx6qsabreauto/mx6qsabreauto.c @@ -12,7 +12,7 @@ #include <asm/arch/imx-regs.h> #include <asm/arch/iomux.h> #include <asm/arch/mx6-pins.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/imx-common/iomux-v3.h> #include <asm/imx-common/mxc_i2c.h> diff --git a/board/freescale/mx6sabresd/mx6sabresd.c b/board/freescale/mx6sabresd/mx6sabresd.c index f836ecbf27..0e9b506c5d 100644 --- a/board/freescale/mx6sabresd/mx6sabresd.c +++ b/board/freescale/mx6sabresd/mx6sabresd.c @@ -10,7 +10,7 @@ #include <asm/arch/imx-regs.h> #include <asm/arch/iomux.h> #include <asm/arch/mx6-pins.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/imx-common/mxc_i2c.h> #include <asm/imx-common/iomux-v3.h> diff --git a/board/gateworks/gw_ventana/gsc.c b/board/gateworks/gw_ventana/gsc.c index 2ca6d5c765..613a275a8f 100644 --- a/board/gateworks/gw_ventana/gsc.c +++ b/board/gateworks/gw_ventana/gsc.c @@ -6,7 +6,7 @@ * SPDX-License-Identifier: GPL-2.0+ */ -#include <asm/errno.h> +#include <linux/errno.h> #include <common.h> #include <i2c.h> #include <linux/ctype.h> diff --git a/board/gdsys/405ex/io64.c b/board/gdsys/405ex/io64.c index 848cdde5e6..0a7baaa9db 100644 --- a/board/gdsys/405ex/io64.c +++ b/board/gdsys/405ex/io64.c @@ -15,7 +15,7 @@ #include <fdt_support.h> #include <asm/processor.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/ppc4xx-gpio.h> #include <flash.h> diff --git a/board/ge/bx50v3/bx50v3.c b/board/ge/bx50v3/bx50v3.c index e9729f88e5..7e62aef07e 100644 --- a/board/ge/bx50v3/bx50v3.c +++ b/board/ge/bx50v3/bx50v3.c @@ -10,7 +10,7 @@ #include <asm/arch/imx-regs.h> #include <asm/arch/iomux.h> #include <asm/arch/mx6-pins.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/imx-common/mxc_i2c.h> #include <asm/imx-common/iomux-v3.h> diff --git a/board/htkw/mcx/mcx.c b/board/htkw/mcx/mcx.c index 4330cf0ddb..5ef383d971 100644 --- a/board/htkw/mcx/mcx.c +++ b/board/htkw/mcx/mcx.c @@ -17,7 +17,7 @@ #include <asm/omap_gpio.h> #include <asm/arch/dss.h> #include <asm/arch/clock.h> -#include "errno.h" +#include <errno.h> #include <i2c.h> #ifdef CONFIG_USB_EHCI #include <usb.h> diff --git a/board/imgtec/boston/Kconfig b/board/imgtec/boston/Kconfig new file mode 100644 index 0000000000..ab76a3c626 --- /dev/null +++ b/board/imgtec/boston/Kconfig @@ -0,0 +1,16 @@ +if TARGET_BOSTON + +config SYS_BOARD + default "boston" + +config SYS_VENDOR + default "imgtec" + +config SYS_CONFIG_NAME + default "boston" + +config SYS_TEXT_BASE + default 0x9fc00000 if 32BIT + default 0xffffffff9fc00000 if 64BIT + +endif diff --git a/board/imgtec/boston/MAINTAINERS b/board/imgtec/boston/MAINTAINERS new file mode 100644 index 0000000000..30dd481a26 --- /dev/null +++ b/board/imgtec/boston/MAINTAINERS @@ -0,0 +1,6 @@ +BOSTON BOARD +M: Paul Burton <paul.burton@imgtec.com> +S: Maintained +F: board/imgtec/boston/ +F: include/configs/boston.h +F: configs/boston_defconfig diff --git a/board/imgtec/boston/Makefile b/board/imgtec/boston/Makefile new file mode 100644 index 0000000000..deda457f3c --- /dev/null +++ b/board/imgtec/boston/Makefile @@ -0,0 +1,9 @@ +# +# Copyright (C) 2016 Imagination Technologies +# +# SPDX-License-Identifier: GPL-2.0 +# + +obj-y += checkboard.o +obj-y += ddr.o +obj-y += lowlevel_init.o diff --git a/board/imgtec/boston/boston-lcd.h b/board/imgtec/boston/boston-lcd.h new file mode 100644 index 0000000000..9f5c1b9005 --- /dev/null +++ b/board/imgtec/boston/boston-lcd.h @@ -0,0 +1,21 @@ +/* + * Copyright (C) 2016 Imagination Technologies + * + * SPDX-License-Identifier: GPL-2.0 + */ + +#ifndef __BOARD_BOSTON_LCD_H__ +#define __BOARD_BOSTON_LCD_H__ + +/** + * lowlevel_display() - Display a message on Boston's LCD + * @msg: The string to display + * + * Display the string @msg on the 7 character LCD display of the Boston board. + * This is typically used for debug or to present some form of status + * indication to the user, allowing faults to be identified when things go + * wrong early enough that the UART isn't up. + */ +void lowlevel_display(const char msg[static 8]); + +#endif /* __BOARD_BOSTON_LCD_H__ */ diff --git a/board/imgtec/boston/boston-regs.h b/board/imgtec/boston/boston-regs.h new file mode 100644 index 0000000000..b9dfbb4763 --- /dev/null +++ b/board/imgtec/boston/boston-regs.h @@ -0,0 +1,26 @@ +/* + * Copyright (C) 2016 Imagination Technologies + * + * SPDX-License-Identifier: GPL-2.0 + */ + +#ifndef __BOARD_BOSTON_REGS_H__ +#define __BOARD_BOSTON_REGS_H__ + +#include <asm/addrspace.h> + +#define BOSTON_PLAT_BASE CKSEG1ADDR(0x17ffd000) +#define BOSTON_LCD_BASE CKSEG1ADDR(0x17fff000) + +/* + * Platform Register Definitions + */ +#define BOSTON_PLAT_CORE_CL (BOSTON_PLAT_BASE + 0x04) + +#define BOSTON_PLAT_DDR3STAT (BOSTON_PLAT_BASE + 0x14) +# define BOSTON_PLAT_DDR3STAT_CALIB (1 << 2) + +#define BOSTON_PLAT_DDRCONF0 (BOSTON_PLAT_BASE + 0x38) +# define BOSTON_PLAT_DDRCONF0_SIZE (0xf << 0) + +#endif /* __BOARD_BOSTON_REGS_H__ */ diff --git a/board/imgtec/boston/checkboard.c b/board/imgtec/boston/checkboard.c new file mode 100644 index 0000000000..93eae7f603 --- /dev/null +++ b/board/imgtec/boston/checkboard.c @@ -0,0 +1,30 @@ +/* + * Copyright (C) 2016 Imagination Technologies + * + * SPDX-License-Identifier: GPL-2.0 + */ + +#include <common.h> + +#include <asm/io.h> +#include <asm/mipsregs.h> + +#include "boston-lcd.h" +#include "boston-regs.h" + +int checkboard(void) +{ + u32 changelist; + + lowlevel_display("U-boot "); + + printf("Board: MIPS Boston\n"); + + printf("CPU: 0x%08x", read_c0_prid()); + changelist = __raw_readl((uint32_t *)BOSTON_PLAT_CORE_CL); + if (changelist > 1) + printf(" cl%x", changelist); + putc('\n'); + + return 0; +} diff --git a/board/imgtec/boston/ddr.c b/board/imgtec/boston/ddr.c new file mode 100644 index 0000000000..ceffef61ef --- /dev/null +++ b/board/imgtec/boston/ddr.c @@ -0,0 +1,30 @@ +/* + * Copyright (C) 2016 Imagination Technologies + * + * SPDX-License-Identifier: GPL-2.0 + */ + +#include <common.h> + +#include <asm/io.h> + +#include "boston-regs.h" + +phys_size_t initdram(int board_type) +{ + u32 ddrconf0 = __raw_readl((uint32_t *)BOSTON_PLAT_DDRCONF0); + + return (phys_size_t)(ddrconf0 & BOSTON_PLAT_DDRCONF0_SIZE) << 30; +} + +ulong board_get_usable_ram_top(ulong total_size) +{ + DECLARE_GLOBAL_DATA_PTR; + + if (gd->ram_top < CONFIG_SYS_SDRAM_BASE) { + /* 2GB wrapped around to 0 */ + return CKSEG0ADDR(256 << 20); + } + + return min_t(unsigned long, gd->ram_top, CKSEG0ADDR(256 << 20)); +} diff --git a/board/imgtec/boston/lowlevel_init.S b/board/imgtec/boston/lowlevel_init.S new file mode 100644 index 0000000000..0c01aa981d --- /dev/null +++ b/board/imgtec/boston/lowlevel_init.S @@ -0,0 +1,56 @@ +/* + * Copyright (C) 2016 Imagination Technologies + * + * SPDX-License-Identifier: GPL-2.0 + */ + +#include <config.h> + +#include <asm/addrspace.h> +#include <asm/asm.h> +#include <asm/mipsregs.h> +#include <asm/regdef.h> + +#include "boston-regs.h" + +.data + +msg_ddr_cal: .ascii "DDR Cal " +msg_ddr_ok: .ascii "DDR OK " + +.text + +LEAF(lowlevel_init) + move s0, ra + + PTR_LA a0, msg_ddr_cal + bal lowlevel_display + + PTR_LI t0, BOSTON_PLAT_DDR3STAT +1: lw t1, 0(t0) + andi t1, t1, BOSTON_PLAT_DDR3STAT_CALIB + beqz t1, 1b + + PTR_LA a0, msg_ddr_ok + bal lowlevel_display + + move v0, zero + jr s0 + END(lowlevel_init) + +LEAF(lowlevel_display) + .set push + .set noat + PTR_LI AT, BOSTON_LCD_BASE +#ifdef CONFIG_64BIT + ld k1, 0(a0) + sd k1, 0(AT) +#else + lw k1, 0(a0) + sw k1, 0(AT) + lw k1, 4(a0) + sw k1, 4(AT) +#endif + .set pop +1: jr ra + END(lowlevel_display) diff --git a/board/imgtec/malta/lowlevel_init.S b/board/imgtec/malta/lowlevel_init.S index 3d48cdc1f4..6df4d9f719 100644 --- a/board/imgtec/malta/lowlevel_init.S +++ b/board/imgtec/malta/lowlevel_init.S @@ -28,12 +28,6 @@ .globl lowlevel_init lowlevel_init: - /* disable any L2 cache for now */ - sync - mfc0 t0, CP0_CONFIG, 2 - ori t0, t0, 0x1 << 12 - mtc0 t0, CP0_CONFIG, 2 - /* detect the core card */ PTR_LI t0, CKSEG1ADDR(MALTA_REVISION) lw t0, 0(t0) diff --git a/board/imgtec/xilfpga/Kconfig b/board/imgtec/xilfpga/Kconfig new file mode 100644 index 0000000000..b0782780f6 --- /dev/null +++ b/board/imgtec/xilfpga/Kconfig @@ -0,0 +1,15 @@ +if TARGET_XILFPGA + +config SYS_BOARD + default "xilfpga" + +config SYS_VENDOR + default "imgtec" + +config SYS_CONFIG_NAME + default "imgtec_xilfpga" + +config SYS_TEXT_BASE + default 0x80C00000 + +endif diff --git a/board/imgtec/xilfpga/MAINTAINERS b/board/imgtec/xilfpga/MAINTAINERS new file mode 100644 index 0000000000..aa045325ea --- /dev/null +++ b/board/imgtec/xilfpga/MAINTAINERS @@ -0,0 +1,6 @@ +XILFPGA BOARD +M: Zubair Lutfullah Kakakhel <Zubair.Kakakhel@imgtec.com> +S: Maintained +F: board/imgtec/xilfpga +F: include/configs/xilfpga.h +F: configs/imgtec_xilfpga_defconfig diff --git a/board/imgtec/xilfpga/Makefile b/board/imgtec/xilfpga/Makefile new file mode 100644 index 0000000000..9aaf9ce263 --- /dev/null +++ b/board/imgtec/xilfpga/Makefile @@ -0,0 +1,7 @@ +# +# Copyright (C) 2016, Imagination Technologies Ltd. +# Zubair Lutfullah Kakakhel <Zubair.Kakakhel@imgtec.com> +# +# SPDX-License-Identifier: GPL-2.0+ +# +obj-y := xilfpga.o diff --git a/board/imgtec/xilfpga/README b/board/imgtec/xilfpga/README new file mode 100644 index 0000000000..ac19d485d4 --- /dev/null +++ b/board/imgtec/xilfpga/README @@ -0,0 +1,55 @@ +/* + * Copyright (C) 2016, Imagination Technologies Ltd. + * + * Zubair Lutfullah Kakakhel, Zubair.Kakakhel@imgtec.com + */ + +MIPSfpga +======================================= + +MIPSfpga is an FPGA based development platform by Imagination Technologies +As we are dealing with a MIPS core instantiated on an FPGA, specifications +are fluid and can be varied in RTL. + +The example project provided by IMGTEC runs on the Nexys4DDR board by +Digilent powered by the ARTIX-7 FPGA by Xilinx. Relevant details about +the example project and the Nexys4DDR board: + +- microAptiv UP core m14Kc +- 50MHz clock speed +- 128Mbyte DDR RAM at 0x0000_0000 +- 8Kbyte RAM at 0x1000_0000 +- axi_intc at 0x1020_0000 +- axi_uart16550 at 0x1040_0000 +- axi_gpio at 0x1060_0000 +- axi_i2c at 0x10A0_0000 +- custom_gpio at 0x10C0_0000 +- axi_ethernetlite at 0x10E0_0000 +- 8Kbyte BootRAM at 0x1FC0_0000 +- 16Mbyte QPI at 0x1D00_0000 + +Boot protocol: +-------------- + +The BootRAM is a writeable "RAM" in FPGA at 0x1FC0_0000. +This is for easy reprogrammibility via JTAG. + +DDR initialization is already handled by a HW IP block. + +When the example project bitstream is loaded, the cpu_reset button +needs to be pressed. + +The bootram initializes the cache and axi_uart +Then checks if there is anything non 0xffff_ffff at location 0x1D40_0000 + +If there is, then that is considered as u-boot. u-boot is copied from +0x1D40_0000 to memory and the bootram jumps into u-boot code. + +At this point, the board is ready to load the Linux kernel + buildroot initramfs + +This can be done in multiple ways: + +1- JTAG load the binary and jump into it. +2- Load kernel stored in the QSPI flash at 0x1D80_0000 +3- Load uImage via tftp. Ethernet works in u-boot. + e.g. env set server ip 192.168.154.45; dhcp uImage; bootm diff --git a/board/imgtec/xilfpga/xilfpga.c b/board/imgtec/xilfpga/xilfpga.c new file mode 100644 index 0000000000..77a1952c93 --- /dev/null +++ b/board/imgtec/xilfpga/xilfpga.c @@ -0,0 +1,20 @@ +/* + * Imagination Technologies MIPSfpga platform code + * + * Copyright (C) 2016, Imagination Technologies Ltd. + * + * Zubair Lutfullah Kakakhel <Zubair.Kakakhel@imgtec.com> + * + * SPDX-License-Identifier: GPL-2.0+ + * + */ + +#include <common.h> + +/* initialize the DDR Controller and PHY */ +phys_size_t initdram(int board_type) +{ + /* MIG IP block is smart and doesn't need SW + * to do any init */ + return CONFIG_SYS_SDRAM_SIZE; /* in bytes */ +} diff --git a/board/inversepath/usbarmory/usbarmory.c b/board/inversepath/usbarmory/usbarmory.c index c875e786a4..2f6bc3ae09 100644 --- a/board/inversepath/usbarmory/usbarmory.c +++ b/board/inversepath/usbarmory/usbarmory.c @@ -15,7 +15,7 @@ #include <asm/arch/crm_regs.h> #include <asm/arch/clock.h> #include <asm/arch/iomux-mx53.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <i2c.h> #include <mmc.h> #include <fsl_esdhc.h> diff --git a/board/keymile/km_arm/fpga_config.c b/board/keymile/km_arm/fpga_config.c index 51a3cfe647..6f8d69606d 100644 --- a/board/keymile/km_arm/fpga_config.c +++ b/board/keymile/km_arm/fpga_config.c @@ -7,7 +7,7 @@ #include <common.h> #include <i2c.h> -#include <asm/errno.h> +#include <linux/errno.h> /* GPIO Pin from kirkwood connected to PROGRAM_B pin of the xilinx FPGA */ #define KM_XLX_PROGRAM_B_PIN 39 diff --git a/board/keymile/kmp204x/pci.c b/board/keymile/kmp204x/pci.c index 2b0b054a11..b827e43a7a 100644 --- a/board/keymile/kmp204x/pci.c +++ b/board/keymile/kmp204x/pci.c @@ -14,7 +14,7 @@ #include <libfdt.h> #include <fdt_support.h> #include <asm/fsl_serdes.h> -#include <asm/errno.h> +#include <linux/errno.h> #include "kmp204x.h" diff --git a/board/kosagi/novena/novena.c b/board/kosagi/novena/novena.c index b3159d3a95..f6972c2d14 100644 --- a/board/kosagi/novena/novena.c +++ b/board/kosagi/novena/novena.c @@ -7,7 +7,7 @@ */ #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/io.h> #include <asm/arch/clock.h> diff --git a/board/kosagi/novena/video.c b/board/kosagi/novena/video.c index 3bb1b7180b..a4c1222a11 100644 --- a/board/kosagi/novena/video.c +++ b/board/kosagi/novena/video.c @@ -11,7 +11,7 @@ */ #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/io.h> #include <asm/arch/clock.h> diff --git a/board/lego/ev3/legoev3.c b/board/lego/ev3/legoev3.c index a791b97f8f..d757d978cf 100644 --- a/board/lego/ev3/legoev3.c +++ b/board/lego/ev3/legoev3.c @@ -23,7 +23,7 @@ #include <asm/arch/pinmux_defs.h> #include <asm/io.h> #include <asm/arch/davinci_misc.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <hwconfig.h> #ifdef CONFIG_DAVINCI_MMC diff --git a/board/logicpd/am3517evm/am3517evm.c b/board/logicpd/am3517evm/am3517evm.c index 1f1e5aedb0..a6aff4e6df 100644 --- a/board/logicpd/am3517evm/am3517evm.c +++ b/board/logicpd/am3517evm/am3517evm.c @@ -21,7 +21,7 @@ #include <asm/arch/mmc_host_def.h> #include <asm/arch/musb.h> #include <asm/mach-types.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <linux/usb/ch9.h> #include <linux/usb/gadget.h> diff --git a/board/logicpd/omap3som/omap3logic.c b/board/logicpd/omap3som/omap3logic.c index c2bb730e97..3ddeb4647a 100644 --- a/board/logicpd/omap3som/omap3logic.c +++ b/board/logicpd/omap3som/omap3logic.c @@ -28,7 +28,7 @@ #include <asm/mach-types.h> #include <linux/mtd/nand.h> #include <asm/omap_musb.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <linux/usb/ch9.h> #include <linux/usb/gadget.h> #include <linux/usb/musb.h> diff --git a/board/micronas/vct/dcgu.c b/board/micronas/vct/dcgu.c index 20ee3ac71e..562c827b2d 100644 --- a/board/micronas/vct/dcgu.c +++ b/board/micronas/vct/dcgu.c @@ -8,7 +8,7 @@ */ #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include "vct.h" diff --git a/board/micronas/vct/scc.c b/board/micronas/vct/scc.c index 40f8ecd748..0d33cc4c28 100644 --- a/board/micronas/vct/scc.c +++ b/board/micronas/vct/scc.c @@ -7,7 +7,7 @@ */ #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include "vct.h" diff --git a/board/mosaixtech/icon/icon.c b/board/mosaixtech/icon/icon.c index e3fb1e63fe..1795464d86 100644 --- a/board/mosaixtech/icon/icon.c +++ b/board/mosaixtech/icon/icon.c @@ -15,7 +15,7 @@ #include <asm/io.h> #include <asm/ppc4xx-gpio.h> #include <asm/4xx_pcie.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/mmu.h> DECLARE_GLOBAL_DATA_PTR; diff --git a/board/mpl/common/common_util.c b/board/mpl/common/common_util.c index 226217570c..3c110fad15 100644 --- a/board/mpl/common/common_util.c +++ b/board/mpl/common/common_util.c @@ -20,7 +20,7 @@ #include "../pip405/pip405.h" #include <asm/4xx_pci.h> #endif -#ifdef CONFIG_MIP405 +#if defined(CONFIG_TARGET_MIP405) || defined(CONFIG_TARGET_MIP405T) #include "../mip405/mip405.h" #include <asm/4xx_pci.h> #endif @@ -36,7 +36,8 @@ extern int mem_test(ulong start, ulong ramsize, int quiet); #define I2C_BACKUP_ADDR 0x7C00 /* 0x200 bytes for backup */ #define IMAGE_SIZE CONFIG_SYS_MONITOR_LEN /* ugly, but it works for now */ -#if defined(CONFIG_PIP405) || defined(CONFIG_MIP405) +#if defined(CONFIG_PIP405) || defined(CONFIG_TARGET_MIP405) \ + || defined(CONFIG_TARGET_MIP405T) /*----------------------------------------------------------------------- * On PIP/MIP405 we have 3 (4) possible boot mode * @@ -116,7 +117,7 @@ void setup_cs_reloc(void) mtdcr(EBC0_CFGDATA, FLASH_CR_B); } } -#endif /* #if defined(CONFIG_PIP405) || defined(CONFIG_MIP405) */ +#endif /* #if defined(CONFIG_PIP405) || defined(CONFIG_TARGET_MIP405) */ #ifdef CONFIG_SYS_UPDATE_FLASH_SIZE /* adjust flash start and protection info */ @@ -190,12 +191,11 @@ mpl_prg(uchar *src, ulong size) #if defined(CONFIG_PATI) int start_sect; #endif -#if defined(CONFIG_PIP405) || defined(CONFIG_MIP405) || defined(CONFIG_PATI) +#if defined(CONFIG_PIP405) || defined(CONFIG_TARGET_MIP405) \ + || defined(CONFIG_TARGET_MIP405T) || defined(CONFIG_PATI) char *copystr = (char *)src; ulong *magic = (ulong *)src; -#endif -#if defined(CONFIG_PIP405) || defined(CONFIG_MIP405) || defined(CONFIG_PATI) if (uimage_to_cpu (magic[0]) != IH_MAGIC) { puts("Bad Magic number\n"); return -1; @@ -241,7 +241,7 @@ mpl_prg(uchar *src, ulong size) return (1); } -#else /* #if !defined(CONFIG_PATI */ +#else /* #if !defined(CONFIG_PATI) */ start = FIRM_START; start_sect = -1; @@ -701,7 +701,7 @@ void video_get_info_str (int line_number, char *info) strcpy(buf,"### No HW ID - assuming PIP405"); } #endif -#ifdef CONFIG_MIP405 +#if defined(CONFIG_TARGET_MIP405) || defined(CONFIG_TARGET_MIP405T) if (!s || strncmp (s, "MIP405", 6)) { strcpy(buf,"### No HW ID - assuming MIP405"); } diff --git a/board/mpl/common/common_util.h b/board/mpl/common/common_util.h index e81ee35eb8..22f5c2e6d8 100644 --- a/board/mpl/common/common_util.h +++ b/board/mpl/common/common_util.h @@ -17,12 +17,10 @@ extern flash_info_t flash_info[]; /* info for FLASH chips */ void get_backup_values(backup_t *buf); -#if defined(CONFIG_PIP405) || defined(CONFIG_MIP405) #define BOOT_MPS 0x01 #define BOOT_PCI 0x02 int get_boot_mode(void); void setup_cs_reloc(void); -#endif void check_env(void); #if defined(CONFIG_CMD_DOC) diff --git a/board/mpl/common/pci_parts.h b/board/mpl/common/pci_parts.h index 4193e9233c..75e8cae6d7 100644 --- a/board/mpl/common/pci_parts.h +++ b/board/mpl/common/pci_parts.h @@ -91,7 +91,7 @@ static struct pci_pip405_config_entry piix4_isa_bridge_f0[] = { static struct pci_pip405_config_entry piix4_ide_cntrl_f1[] = { {PCI_CFG_PIIX4_BMIBA, 0x0001000, 4}, /* set BMI to a valid address */ {PCI_COMMAND, 0x0001, 2}, /* enable IO access */ -#if !defined(CONFIG_MIP405T) +#if !defined(CONFIG_TARGET_MIP405T) {PCI_CFG_PIIX4_IDETIM, 0x80008000, 4}, /* enable Both IDE channels */ #else {PCI_CFG_PIIX4_IDETIM, 0x00008000, 4}, /* enable IDE channel0 */ @@ -101,7 +101,7 @@ static struct pci_pip405_config_entry piix4_ide_cntrl_f1[] = { /* PIIX4 USB Controller Function 2 */ static struct pci_pip405_config_entry piix4_usb_cntrl_f2[] = { -#if !defined(CONFIG_MIP405T) +#if !defined(CONFIG_TARGET_MIP405T) {PCI_INTERRUPT_LINE, 31, 1}, /* Int vector = 31 */ {PCI_BASE_ADDRESS_4, 0x0000E001, 4}, /* Set IO Address to 0xe000 to 0xe01F */ {PCI_LATENCY_TIMER, 0x80, 1}, /* Latency Timer 0x80 */ diff --git a/board/mpl/mip405/Kconfig b/board/mpl/mip405/Kconfig index 48ba91a529..e003a43d57 100644 --- a/board/mpl/mip405/Kconfig +++ b/board/mpl/mip405/Kconfig @@ -1,4 +1,4 @@ -if TARGET_MIP405 +if TARGET_MIP405 || TARGET_MIP405T config SYS_BOARD default "mip405" @@ -9,4 +9,9 @@ config SYS_VENDOR config SYS_CONFIG_NAME default "MIP405" +config ISO_STRING + string + default "MEV-10082-001" if TARGET_MIP405T + default "MEV-10072-001" if TARGET_MIP405 + endif diff --git a/board/mpl/mip405/mip405.c b/board/mpl/mip405/mip405.c index 4a0d6966a6..8b9892b868 100644 --- a/board/mpl/mip405/mip405.c +++ b/board/mpl/mip405/mip405.c @@ -92,7 +92,7 @@ typedef struct { unsigned char sz; /* log binary => Size = (4MByte<<sz) 5 = 128, 4 = 64, 3 = 32, 2 = 16, 1=8 */ unsigned char ecc; /* if true, ecc is enabled */ } sdram_t; -#if defined(CONFIG_MIP405T) +#if defined(CONFIG_TARGET_MIP405T) const sdram_t sdram_table[] = { { 0x0F, /* MIP405T Rev A, 64MByte -1 Board */ 3, /* Case Latenty = 3 */ @@ -168,7 +168,7 @@ const sdram_t sdram_table[] = { 0xff, 0xff } }; -#endif /*CONFIG_MIP405T */ +#endif /*CONFIG_TARGET_MIP405T */ void SDRAM_err (const char *s) { #ifndef SDRAM_DEBUG @@ -262,7 +262,7 @@ int init_sdram (void) #endif /* check board */ bc = in8 (PLD_PART_REG); -#if defined(CONFIG_MIP405T) +#if defined(CONFIG_TARGET_MIP405T) if((bc & 0x80)==0) SDRAM_err ("U-Boot configured for a MIP405T not for a MIP405!!!\n"); #else @@ -543,7 +543,7 @@ void ide_set_reset (int idereset) void get_pcbrev_var(unsigned char *pcbrev, unsigned char *var) { -#if !defined(CONFIG_MIP405T) +#if !defined(CONFIG_TARGET_MIP405T) unsigned char bc,rc,tmp; int i; @@ -575,7 +575,7 @@ void get_pcbrev_var(unsigned char *pcbrev, unsigned char *var) * Check Board Identity: */ /* serial String: "MIP405_1000" OR "MIP405T_1000" */ -#if !defined(CONFIG_MIP405T) +#if !defined(CONFIG_TARGET_MIP405T) #define BOARD_NAME "MIP405" #else #define BOARD_NAME "MIP405T" @@ -777,7 +777,7 @@ void print_mip405_info (void) (cfg >> 1) & 0x1, (cfg >> 2) & 0x1, (cfg >> 3) & 0x1); printf ("User LED %s\n", (com_mode & 0x4) ? "on" : "off"); printf ("UART Clocks %d\n", (com_mode >> 4) & 0x3); -#if !defined(CONFIG_MIP405T) +#if !defined(CONFIG_TARGET_MIP405T) printf ("User Config Switch %d %d %d %d %d %d %d %d\n", (ext) & 0x1, (ext >> 1) & 0x1, (ext >> 2) & 0x1, (ext >> 3) & 0x1, (ext >> 4) & 0x1, (ext >> 5) & 0x1, @@ -793,7 +793,7 @@ void print_mip405_info (void) printf ("IDE Reset %s\n", (ext & 0x01) ? "asserted" : "not asserted"); printf ("IRQs:\n"); printf (" PIIX INTR: %s\n", (irq_reg & 0x80) ? "inactive" : "active"); -#if !defined(CONFIG_MIP405T) +#if !defined(CONFIG_TARGET_MIP405T) printf (" UART0 IRQ: %s\n", (irq_reg & 0x40) ? "inactive" : "active"); printf (" UART1 IRQ: %s\n", (irq_reg & 0x20) ? "inactive" : "active"); #endif diff --git a/board/mpl/pati/Kconfig b/board/mpl/pati/Kconfig index b141da3984..0eeaf7096b 100644 --- a/board/mpl/pati/Kconfig +++ b/board/mpl/pati/Kconfig @@ -9,4 +9,7 @@ config SYS_VENDOR config SYS_CONFIG_NAME default "PATI" +config ISO_STRING + string + default "MEV-10084-001" endif diff --git a/board/mpl/pati/pati.h b/board/mpl/pati/pati.h index 2600bba101..93a5918252 100644 --- a/board/mpl/pati/pati.h +++ b/board/mpl/pati/pati.h @@ -201,9 +201,8 @@ #define PCI_VENDOR_ID_MPL 0x18E6 #define PCI_DEVICE_ID_PATI 0x00DA -#if defined(CONFIG_MIP405) +#if defined(CONFIG_TARGET_MIP405) || defined(CONFIG_TARGET_MIP405T) #define PATI_FIRMWARE_START_OFFSET 0x00300000 -#define PATI_ISO_STRING "MEV-10084-001" #endif #define PATI_ENDIAN_MODE 0x3E diff --git a/board/mpl/pip405/Kconfig b/board/mpl/pip405/Kconfig index f485367410..e7ae6af836 100644 --- a/board/mpl/pip405/Kconfig +++ b/board/mpl/pip405/Kconfig @@ -9,4 +9,7 @@ config SYS_VENDOR config SYS_CONFIG_NAME default "PIP405" +config ISO_STRING + string + default "MEV-10066-001" endif diff --git a/board/phytec/pcm058/pcm058.c b/board/phytec/pcm058/pcm058.c index 4e2122f6f9..c3607daf46 100644 --- a/board/phytec/pcm058/pcm058.c +++ b/board/phytec/pcm058/pcm058.c @@ -22,7 +22,7 @@ #include <asm/imx-common/boot_mode.h> #include <asm/imx-common/mxc_i2c.h> #include <asm/imx-common/spi.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <mmc.h> #include <i2c.h> diff --git a/board/renesas/alt/alt.c b/board/renesas/alt/alt.c index a1a26a6d82..b35b6a3ad1 100644 --- a/board/renesas/alt/alt.c +++ b/board/renesas/alt/alt.c @@ -13,7 +13,7 @@ #include <asm/processor.h> #include <asm/mach-types.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/sys_proto.h> #include <asm/gpio.h> #include <asm/arch/rmobile.h> diff --git a/board/renesas/blanche/blanche.c b/board/renesas/blanche/blanche.c index b2e2e3b080..1372050449 100644 --- a/board/renesas/blanche/blanche.c +++ b/board/renesas/blanche/blanche.c @@ -15,7 +15,7 @@ #include <asm/processor.h> #include <asm/mach-types.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/sys_proto.h> #include <asm/gpio.h> #include <asm/arch/rmobile.h> diff --git a/board/renesas/gose/gose.c b/board/renesas/gose/gose.c index 3a8bf862d5..359f95e264 100644 --- a/board/renesas/gose/gose.c +++ b/board/renesas/gose/gose.c @@ -13,7 +13,7 @@ #include <asm/processor.h> #include <asm/mach-types.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/sys_proto.h> #include <asm/gpio.h> #include <asm/arch/rmobile.h> diff --git a/board/renesas/koelsch/koelsch.c b/board/renesas/koelsch/koelsch.c index b741e2e186..dd62145ac9 100644 --- a/board/renesas/koelsch/koelsch.c +++ b/board/renesas/koelsch/koelsch.c @@ -14,7 +14,7 @@ #include <asm/processor.h> #include <asm/mach-types.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/sys_proto.h> #include <asm/gpio.h> #include <asm/arch/rmobile.h> diff --git a/board/renesas/lager/lager.c b/board/renesas/lager/lager.c index 6fed2f9796..2ada816006 100644 --- a/board/renesas/lager/lager.c +++ b/board/renesas/lager/lager.c @@ -16,7 +16,7 @@ #include <asm/processor.h> #include <asm/mach-types.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/sys_proto.h> #include <asm/gpio.h> #include <asm/arch/rmobile.h> diff --git a/board/renesas/porter/porter.c b/board/renesas/porter/porter.c index f6467ee2d9..926a657511 100644 --- a/board/renesas/porter/porter.c +++ b/board/renesas/porter/porter.c @@ -14,7 +14,7 @@ #include <asm/processor.h> #include <asm/mach-types.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/sys_proto.h> #include <asm/gpio.h> #include <asm/arch/rmobile.h> diff --git a/board/renesas/salvator-x/salvator-x.c b/board/renesas/salvator-x/salvator-x.c index 47242c60dd..0164306b52 100644 --- a/board/renesas/salvator-x/salvator-x.c +++ b/board/renesas/salvator-x/salvator-x.c @@ -16,7 +16,7 @@ #include <asm/processor.h> #include <asm/mach-types.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/sys_proto.h> #include <asm/gpio.h> #include <asm/arch/gpio.h> diff --git a/board/renesas/silk/silk.c b/board/renesas/silk/silk.c index 4ec3f92ca3..e13a38f5ea 100644 --- a/board/renesas/silk/silk.c +++ b/board/renesas/silk/silk.c @@ -14,7 +14,7 @@ #include <asm/processor.h> #include <asm/mach-types.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/sys_proto.h> #include <asm/gpio.h> #include <asm/arch/rmobile.h> diff --git a/board/renesas/stout/stout.c b/board/renesas/stout/stout.c index 672a730f07..fe8dd3d952 100644 --- a/board/renesas/stout/stout.c +++ b/board/renesas/stout/stout.c @@ -17,7 +17,7 @@ #include <asm/processor.h> #include <asm/mach-types.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/sys_proto.h> #include <asm/gpio.h> #include <asm/arch/rmobile.h> diff --git a/board/rockchip/evb_rk3399/evb-rk3399.c b/board/rockchip/evb_rk3399/evb-rk3399.c index cb2d97dfb9..2580b389ac 100644 --- a/board/rockchip/evb_rk3399/evb-rk3399.c +++ b/board/rockchip/evb_rk3399/evb-rk3399.c @@ -4,12 +4,54 @@ * SPDX-License-Identifier: GPL-2.0+ */ #include <common.h> -#include <asm/armv8/mmu.h> +#include <dm.h> +#include <dm/pinctrl.h> +#include <asm/arch/periph.h> +#include <power/regulator.h> DECLARE_GLOBAL_DATA_PTR; int board_init(void) { + struct udevice *pinctrl, *regulator; + int ret; + + /* + * The PWM do not have decicated interrupt number in dts and can + * not get periph_id by pinctrl framework, so let's init them here. + * The PWM2 and PWM3 are for pwm regulater. + */ + ret = uclass_get_device(UCLASS_PINCTRL, 0, &pinctrl); + if (ret) { + debug("%s: Cannot find pinctrl device\n", __func__); + goto out; + } + + ret = pinctrl_request_noflags(pinctrl, PERIPH_ID_PWM2); + if (ret) { + debug("%s PWM2 pinctrl init fail!\n", __func__); + goto out; + } + + ret = pinctrl_request_noflags(pinctrl, PERIPH_ID_PWM3); + if (ret) { + debug("%s PWM3 pinctrl init fail!\n", __func__); + goto out; + } + + ret = regulator_get_by_platname("vcc5v0_host", ®ulator); + if (ret) { + debug("%s vcc5v0_host init fail! ret %d\n", __func__, ret); + goto out; + } + + ret = regulator_set_enable(regulator, true); + if (ret) { + debug("%s vcc5v0-host-en set fail!\n", __func__); + goto out; + } + +out: return 0; } diff --git a/board/samsung/goni/goni.c b/board/samsung/goni/goni.c index 1600568193..e8329bba6c 100644 --- a/board/samsung/goni/goni.c +++ b/board/samsung/goni/goni.c @@ -45,17 +45,11 @@ void i2c_init_board(void) int power_init_board(void) { - int ret; - /* * For PMIC the I2C bus is named as I2C5, but it is connected * to logical I2C adapter 0 */ - ret = pmic_init(I2C_0); - if (ret) - return ret; - - return 0; + return pmic_init(I2C_0); } int dram_init(void) diff --git a/board/sandbox/README.sandbox b/board/sandbox/README.sandbox index ed820d338e..02d8ab3d09 100644 --- a/board/sandbox/README.sandbox +++ b/board/sandbox/README.sandbox @@ -320,6 +320,25 @@ CONFIG_SPI_IDLE_VAL The idle value on the SPI bus +Block Device Emulation +---------------------- + +U-Boot can use raw disk images for block device emulation. To e.g. list +the contents of the root directory on the second partion of the image +"disk.raw", you can use the following commands: + +=>host bind 0 ./disk.raw +=>ls host 0:2 + +A disk image can be created using the following commands: + +$> truncate -s 1200M ./disk.raw +$> echo -e "label: gpt\n,64M,U\n,,L" | /usr/sbin/sfdisk ./disk.raw +$> lodev=`sudo losetup -P -f --show ./disk.raw` +$> sudo mkfs.vfat -n EFI -v ${lodev}p1 +$> sudo mkfs.ext4 -L ROOT -v ${lodev}p2 + + Writing Sandbox Drivers ----------------------- diff --git a/board/seco/common/mx6.c b/board/seco/common/mx6.c index 2f14f59f3c..c4abc1dc1d 100644 --- a/board/seco/common/mx6.c +++ b/board/seco/common/mx6.c @@ -12,7 +12,7 @@ #include <asm/arch/imx-regs.h> #include <asm/arch/iomux.h> #include <asm/arch/mx6-pins.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/imx-common/iomux-v3.h> #include <asm/imx-common/boot_mode.h> diff --git a/board/seco/mx6quq7/mx6quq7.c b/board/seco/mx6quq7/mx6quq7.c index 08566fcb8d..341e7274f1 100644 --- a/board/seco/mx6quq7/mx6quq7.c +++ b/board/seco/mx6quq7/mx6quq7.c @@ -12,7 +12,7 @@ #include <asm/arch/imx-regs.h> #include <asm/arch/iomux.h> #include <asm/arch/mx6-pins.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/imx-common/iomux-v3.h> #include <asm/imx-common/boot_mode.h> diff --git a/board/socrates/nand.c b/board/socrates/nand.c index a67d812c81..c7483fe0e6 100644 --- a/board/socrates/nand.c +++ b/board/socrates/nand.c @@ -9,7 +9,7 @@ #if defined(CONFIG_SYS_NAND_BASE) #include <nand.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> static int state; diff --git a/board/solidrun/mx6cuboxi/mx6cuboxi.c b/board/solidrun/mx6cuboxi/mx6cuboxi.c index 3a1ce240b8..285588d80a 100644 --- a/board/solidrun/mx6cuboxi/mx6cuboxi.c +++ b/board/solidrun/mx6cuboxi/mx6cuboxi.c @@ -19,7 +19,7 @@ #include <asm/arch/iomux.h> #include <asm/arch/mx6-pins.h> #include <asm/arch/mxc_hdmi.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/imx-common/iomux-v3.h> #include <asm/imx-common/video.h> diff --git a/board/sunxi/Kconfig b/board/sunxi/Kconfig index 68443c9931..b139d1c139 100644 --- a/board/sunxi/Kconfig +++ b/board/sunxi/Kconfig @@ -1,5 +1,29 @@ if ARCH_SUNXI +config IDENT_STRING + default " Allwinner Technology" + +config SPL_GPIO_SUPPORT + default y + +config SPL_LIBCOMMON_SUPPORT + default y + +config SPL_LIBDISK_SUPPORT + default y + +config SPL_LIBGENERIC_SUPPORT + default y + +config SPL_MMC_SUPPORT + default y + +config SPL_POWER_SUPPORT + default y + +config SPL_SERIAL_SUPPORT + default y + # Note only one of these may be selected at a time! But hidden choices are # not supported by Kconfig config SUNXI_GEN_SUN4I diff --git a/board/sunxi/MAINTAINERS b/board/sunxi/MAINTAINERS index 6f13cf68df..f7129b7d53 100644 --- a/board/sunxi/MAINTAINERS +++ b/board/sunxi/MAINTAINERS @@ -217,6 +217,11 @@ M: Siarhei Siamashka <siarhei.siamashka@gmail.com> S: Maintained F: configs/MSI_Primo81_defconfig +NANOPI-NEO BOARD +M: Jelle van der Waa <jelle@vdwaa.nl> +S: Maintained +F: configs/nanopi_neo_defconfig + R16 EVB PARROT BOARD M: Quentin Schulz <quentin.schulz@free-electrons.com> S: Maintained diff --git a/board/sysam/amcore/amcore.c b/board/sysam/amcore/amcore.c index 42b7c23f06..b7217c56ec 100644 --- a/board/sysam/amcore/amcore.c +++ b/board/sysam/amcore/amcore.c @@ -1,7 +1,7 @@ /* * Board functions for Sysam AMCORE (MCF5307 based) board * - * (C) Copyright 2015 Angelo Dureghello <angelo@sysam.it> + * (C) Copyright 2016 Angelo Dureghello <angelo@sysam.it> * * SPDX-License-Identifier: GPL-2.0+ * @@ -11,6 +11,8 @@ #include <common.h> #include <asm/immap.h> #include <asm/io.h> +#include <dm.h> +#include <dm/platform_data/serial_coldfire.h> void init_lcd(void) { @@ -99,3 +101,14 @@ phys_size_t initdram(int board_type) return get_ram_size(CONFIG_SYS_SDRAM_BASE, CONFIG_SYS_SDRAM_SIZE); } + +static struct coldfire_serial_platdata mcf5307_serial_plat = { + .base = CONFIG_SYS_UART_BASE, + .port = 0, + .baudrate = CONFIG_BAUDRATE, +}; + +U_BOOT_DEVICE(coldfire_serial) = { + .name = "serial_coldfire", + .platdata = &mcf5307_serial_plat, +}; diff --git a/board/tbs/tbs2910/tbs2910.c b/board/tbs/tbs2910/tbs2910.c index f784459d8e..0d9d17ae54 100644 --- a/board/tbs/tbs2910/tbs2910.c +++ b/board/tbs/tbs2910/tbs2910.c @@ -8,7 +8,7 @@ #include <asm/arch/imx-regs.h> #include <asm/arch/iomux.h> #include <asm/arch/mx6-pins.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/imx-common/mxc_i2c.h> #include <asm/imx-common/iomux-v3.h> diff --git a/board/technologic/ts4800/ts4800.c b/board/technologic/ts4800/ts4800.c index 6ef15e10bf..eef6922b20 100644 --- a/board/technologic/ts4800/ts4800.c +++ b/board/technologic/ts4800/ts4800.c @@ -12,7 +12,7 @@ #include <asm/gpio.h> #include <asm/arch/imx-regs.h> #include <asm/arch/iomux-mx51.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/sys_proto.h> #include <asm/arch/crm_regs.h> #include <asm/arch/clock.h> diff --git a/board/theadorable/theadorable.c b/board/theadorable/theadorable.c index c1db28985a..d621682d07 100644 --- a/board/theadorable/theadorable.c +++ b/board/theadorable/theadorable.c @@ -126,6 +126,12 @@ MV_BIN_SERDES_CFG *board_serdes_cfg_get(u8 pex_mode) return &theadorable_serdes_cfg[0]; } +u8 board_sat_r_get(u8 dev_num, u8 reg) +{ + /* Bit 0 enables PCI 2.0 link capabilities instead of PCI 1.x */ + return 0x01; +} + int board_early_init_f(void) { /* Configure MPP */ diff --git a/board/ti/am335x/Kconfig b/board/ti/am335x/Kconfig index 97374bdc12..a84e91b3dc 100644 --- a/board/ti/am335x/Kconfig +++ b/board/ti/am335x/Kconfig @@ -1,5 +1,14 @@ if TARGET_AM335X_EVM +config SPL_ENV_SUPPORT + default y + +config SPL_WATCHDOG_SUPPORT + default y + +config SPL_YMODEM_SUPPORT + default y + config SYS_BOARD default "am335x" diff --git a/board/ti/am43xx/board.c b/board/ti/am43xx/board.c index 27c311ee9d..f04a06e0d5 100644 --- a/board/ti/am43xx/board.c +++ b/board/ti/am43xx/board.c @@ -10,7 +10,7 @@ #include <common.h> #include <i2c.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <spl.h> #include <usb.h> #include <asm/omap_sec_common.h> diff --git a/board/ti/beagle/beagle.c b/board/ti/beagle/beagle.c index 0ed4f52771..cfdab3e342 100644 --- a/board/ti/beagle/beagle.c +++ b/board/ti/beagle/beagle.c @@ -29,7 +29,7 @@ #include <asm/gpio.h> #include <asm/mach-types.h> #include <asm/omap_musb.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <linux/usb/ch9.h> #include <linux/usb/gadget.h> #include <linux/usb/musb.h> diff --git a/board/ti/common/Kconfig b/board/ti/common/Kconfig index adf73abc93..4980a04714 100644 --- a/board/ti/common/Kconfig +++ b/board/ti/common/Kconfig @@ -1,5 +1,41 @@ +config SPL_ENV_SUPPORT + default y + config TI_I2C_BOARD_DETECT bool "Support for Board detection for TI platforms" help Support for detection board information on Texas Instrument's Evaluation Boards which have I2C based EEPROM detection + +config SPL_EXT_SUPPORT + default y + +config SPL_FAT_SUPPORT + default y + +config SPL_GPIO_SUPPORT + default y + +config SPL_I2C_SUPPORT + default y + +config SPL_LIBCOMMON_SUPPORT + default y + +config SPL_LIBDISK_SUPPORT + default y + +config SPL_LIBGENERIC_SUPPORT + default y + +config SPL_MMC_SUPPORT + default y + +config SPL_NAND_SUPPORT + default y + +config SPL_POWER_SUPPORT + default y + +config SPL_SERIAL_SUPPORT + default y diff --git a/board/ti/omap5_uevm/evm.c b/board/ti/omap5_uevm/evm.c index 50da4109bb..b5d5ba9bdf 100644 --- a/board/ti/omap5_uevm/evm.c +++ b/board/ti/omap5_uevm/evm.c @@ -245,10 +245,7 @@ int ehci_hcd_init(int index, enum usb_init_type init, int ehci_hcd_stop(void) { - int ret; - - ret = omap_ehci_hcd_stop(); - return ret; + return omap_ehci_hcd_stop(); } void usb_hub_reset_devices(int port) diff --git a/board/tqc/tqma6/tqma6.c b/board/tqc/tqma6/tqma6.c index 7fc57da132..c8fc95d52b 100644 --- a/board/tqc/tqma6/tqma6.c +++ b/board/tqc/tqma6/tqma6.c @@ -13,7 +13,7 @@ #include <asm/arch/imx-regs.h> #include <asm/arch/iomux.h> #include <asm/arch/sys_proto.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/io.h> #include <asm/imx-common/mxc_i2c.h> diff --git a/board/tqc/tqma6/tqma6_mba6.c b/board/tqc/tqma6/tqma6_mba6.c index e58b71402b..4db1a0bb7d 100644 --- a/board/tqc/tqma6/tqma6_mba6.c +++ b/board/tqc/tqma6/tqma6_mba6.c @@ -14,7 +14,7 @@ #include <asm/arch/imx-regs.h> #include <asm/arch/iomux.h> #include <asm/arch/sys_proto.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/imx-common/mxc_i2c.h> diff --git a/board/tqc/tqma6/tqma6_wru4.c b/board/tqc/tqma6/tqma6_wru4.c index c9a7ab7ea9..2bbb614e4f 100644 --- a/board/tqc/tqma6/tqma6_wru4.c +++ b/board/tqc/tqma6/tqma6_wru4.c @@ -16,7 +16,7 @@ #include <asm/arch/imx-regs.h> #include <asm/arch/iomux.h> #include <asm/arch/sys_proto.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/imx-common/boot_mode.h> #include <asm/imx-common/mxc_i2c.h> diff --git a/board/udoo/udoo.c b/board/udoo/udoo.c index a574a2fcec..eb7ab657ec 100644 --- a/board/udoo/udoo.c +++ b/board/udoo/udoo.c @@ -11,7 +11,7 @@ #include <asm/arch/iomux.h> #include <malloc.h> #include <asm/arch/mx6-pins.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/imx-common/iomux-v3.h> #include <asm/imx-common/sata.h> diff --git a/board/udoo/udoo_spl.c b/board/udoo/udoo_spl.c index 592e69b0d7..f24d21e2bf 100644 --- a/board/udoo/udoo_spl.c +++ b/board/udoo/udoo_spl.c @@ -10,7 +10,7 @@ #include <asm/arch/imx-regs.h> #include <asm/arch/iomux.h> #include <asm/arch/mx6-pins.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/imx-common/iomux-v3.h> #include <asm/imx-common/video.h> diff --git a/board/wandboard/spl.c b/board/wandboard/spl.c index 085095c646..c513b22d82 100644 --- a/board/wandboard/spl.c +++ b/board/wandboard/spl.c @@ -9,7 +9,7 @@ #include <asm/arch/imx-regs.h> #include <asm/arch/iomux.h> #include <asm/arch/mx6-pins.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/imx-common/iomux-v3.h> #include <asm/imx-common/video.h> diff --git a/board/woodburn/woodburn.c b/board/woodburn/woodburn.c index 3da61a4c3d..972e74eaf3 100644 --- a/board/woodburn/woodburn.c +++ b/board/woodburn/woodburn.c @@ -8,7 +8,7 @@ #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/imx-regs.h> #include <asm/arch/crm_regs.h> #include <asm/arch/clock.h> diff --git a/board/xilinx/zynqmp/zynqmp.c b/board/xilinx/zynqmp/zynqmp.c index 0c5d997931..566b5e8d2a 100644 --- a/board/xilinx/zynqmp/zynqmp.c +++ b/board/xilinx/zynqmp/zynqmp.c @@ -16,14 +16,114 @@ #include <asm/io.h> #include <usb.h> #include <dwc3-uboot.h> +#include <zynqmppl.h> #include <i2c.h> +#include <g_dnl.h> DECLARE_GLOBAL_DATA_PTR; +#if defined(CONFIG_FPGA) && defined(CONFIG_FPGA_ZYNQMPPL) && \ + !defined(CONFIG_SPL_BUILD) +static xilinx_desc zynqmppl = XILINX_ZYNQMP_DESC; + +static const struct { + uint32_t id; + char *name; +} zynqmp_devices[] = { + { + .id = 0x10, + .name = "3eg", + }, + { + .id = 0x11, + .name = "2eg", + }, + { + .id = 0x20, + .name = "5ev", + }, + { + .id = 0x21, + .name = "4ev", + }, + { + .id = 0x30, + .name = "7ev", + }, + { + .id = 0x38, + .name = "9eg", + }, + { + .id = 0x39, + .name = "6eg", + }, + { + .id = 0x40, + .name = "11eg", + }, + { + .id = 0x50, + .name = "15eg", + }, + { + .id = 0x58, + .name = "19eg", + }, + { + .id = 0x59, + .name = "17eg", + }, +}; + +static int chip_id(void) +{ + struct pt_regs regs; + regs.regs[0] = ZYNQMP_SIP_SVC_CSU_DMA_CHIPID; + regs.regs[1] = 0; + regs.regs[2] = 0; + regs.regs[3] = 0; + + smc_call(®s); + + return regs.regs[0]; +} + +static char *zynqmp_get_silicon_idcode_name(void) +{ + uint32_t i, id; + + id = chip_id(); + for (i = 0; i < ARRAY_SIZE(zynqmp_devices); i++) { + if (zynqmp_devices[i].id == id) + return zynqmp_devices[i].name; + } + return "unknown"; +} +#endif + +#define ZYNQMP_VERSION_SIZE 9 + int board_init(void) { printf("EL Level:\tEL%d\n", current_el()); +#if defined(CONFIG_FPGA) && defined(CONFIG_FPGA_ZYNQMPPL) && \ + !defined(CONFIG_SPL_BUILD) || (defined(CONFIG_SPL_FPGA_SUPPORT) && \ + defined(CONFIG_SPL_BUILD)) + if (current_el() != 3) { + static char version[ZYNQMP_VERSION_SIZE]; + + strncat(version, "xczu", ZYNQMP_VERSION_SIZE); + zynqmppl.name = strncat(version, + zynqmp_get_silicon_idcode_name(), + ZYNQMP_VERSION_SIZE); + printf("Chip ID:\t%s\n", zynqmppl.name); + fpga_init(); + fpga_add(fpga_xilinx, &zynqmppl); + } +#endif + return 0; } @@ -228,6 +328,10 @@ int board_late_init(void) puts("Bootmode: "); switch (bootmode) { + case USB_MODE: + puts("USB_MODE\n"); + mode = "usb"; + break; case JTAG_MODE: puts("JTAG_MODE\n"); mode = "pxe dhcp"; @@ -283,22 +387,38 @@ int checkboard(void) } #ifdef CONFIG_USB_DWC3 -static struct dwc3_device dwc3_device_data = { +static struct dwc3_device dwc3_device_data0 = { .maximum_speed = USB_SPEED_HIGH, .base = ZYNQMP_USB0_XHCI_BASEADDR, .dr_mode = USB_DR_MODE_PERIPHERAL, .index = 0, }; -int usb_gadget_handle_interrupts(void) +static struct dwc3_device dwc3_device_data1 = { + .maximum_speed = USB_SPEED_HIGH, + .base = ZYNQMP_USB1_XHCI_BASEADDR, + .dr_mode = USB_DR_MODE_PERIPHERAL, + .index = 1, +}; + +int usb_gadget_handle_interrupts(int index) { - dwc3_uboot_handle_interrupt(0); + dwc3_uboot_handle_interrupt(index); return 0; } int board_usb_init(int index, enum usb_init_type init) { - return dwc3_uboot_init(&dwc3_device_data); + debug("%s: index %x\n", __func__, index); + + switch (index) { + case 0: + return dwc3_uboot_init(&dwc3_device_data0); + case 1: + return dwc3_uboot_init(&dwc3_device_data1); + }; + + return -1; } int board_usb_cleanup(int index, enum usb_init_type init) diff --git a/cmd/Kconfig b/cmd/Kconfig index d28da54ed6..9ed7976f58 100644 --- a/cmd/Kconfig +++ b/cmd/Kconfig @@ -705,4 +705,16 @@ config CMD_FS_GENERIC fs types. endmenu +config CMD_UBI + tristate "Enable UBI - Unsorted block images commands" + select CRC32 + select MTD_UBI + help + UBI is a software layer above MTD layer which admits use of LVM-like + logical volumes on top of MTD devices, hides some complexities of + flash chips like wear and bad blocks and provides some other useful + capabilities. Please, consult the MTD web site for more details + (www.linux-mtd.infradead.org). Activate this option if you want + to use U-Boot UBI commands. + endmenu @@ -126,7 +126,7 @@ static int do_fat_fswrite(cmd_tbl_t *cmdtp, int flag, return 1; } addr = simple_strtoul(argv[3], NULL, 16); - count = simple_strtoul(argv[5], NULL, 16); + count = (argc <= 5) ? 0 : simple_strtoul(argv[5], NULL, 16); buf = map_sysmem(addr, count); ret = file_fat_write(argv[4], buf, 0, count, &size); @@ -145,7 +145,7 @@ static int do_fat_fswrite(cmd_tbl_t *cmdtp, int flag, U_BOOT_CMD( fatwrite, 6, 0, do_fat_fswrite, "write file into a dos filesystem", - "<interface> <dev[:part]> <addr> <filename> <bytes>\n" + "<interface> <dev[:part]> <addr> <filename> [<bytes>]\n" " - write file 'filename' from the address 'addr' in RAM\n" " to 'dev' on 'interface'" ); diff --git a/cmd/fuse.c b/cmd/fuse.c index 5998f9b2eb..2917d83faf 100644 --- a/cmd/fuse.c +++ b/cmd/fuse.c @@ -13,7 +13,7 @@ #include <command.h> #include <console.h> #include <fuse.h> -#include <asm/errno.h> +#include <linux/errno.h> static int strtou32(const char *str, unsigned int base, u32 *result) { diff --git a/cmd/host.c b/cmd/host.c index 8d84415301..515621b804 100644 --- a/cmd/host.c +++ b/cmd/host.c @@ -9,7 +9,7 @@ #include <fs.h> #include <part.h> #include <sandboxblockdev.h> -#include <asm/errno.h> +#include <linux/errno.h> static int host_curr_device = -1; @@ -25,6 +25,12 @@ static int do_host_ls(cmd_tbl_t *cmdtp, int flag, int argc, return do_ls(cmdtp, flag, argc, argv, FS_TYPE_SANDBOX); } +static int do_host_size(cmd_tbl_t *cmdtp, int flag, int argc, + char * const argv[]) +{ + return do_size(cmdtp, flag, argc, argv, FS_TYPE_SANDBOX); +} + static int do_host_save(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) { @@ -138,6 +144,7 @@ static cmd_tbl_t cmd_host_sub[] = { U_BOOT_CMD_MKENT(load, 7, 0, do_host_load, "", ""), U_BOOT_CMD_MKENT(ls, 3, 0, do_host_ls, "", ""), U_BOOT_CMD_MKENT(save, 6, 0, do_host_save, "", ""), + U_BOOT_CMD_MKENT(size, 3, 0, do_host_size, "", ""), U_BOOT_CMD_MKENT(bind, 3, 0, do_host_bind, "", ""), U_BOOT_CMD_MKENT(info, 3, 0, do_host_info, "", ""), U_BOOT_CMD_MKENT(dev, 0, 1, do_host_dev, "", ""), @@ -174,6 +181,7 @@ U_BOOT_CMD( "host ls hostfs - <filename> - list files on host\n" "host save hostfs - <addr> <filename> <bytes> [<offset>] - " "save a file to host\n" + "host size hostfs - <filename> - determine size of file on host" "host bind <dev> [<filename>] - bind \"host\" device to file\n" "host info [<dev>] - show device binding & info\n" "host dev [<dev>] - Set or retrieve the current host device\n" @@ -21,7 +21,7 @@ #include <linux/mtd/partitions.h> #include <linux/err.h> #include <ubi_uboot.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <jffs2/load_kernel.h> #undef ubi_msg diff --git a/common/Kconfig b/common/Kconfig index 63c4a67263..c69c1418c9 100644 --- a/common/Kconfig +++ b/common/Kconfig @@ -198,6 +198,11 @@ config CONSOLE_RECORD_IN_SIZE The buffer is allocated immediately after the malloc() region is ready. +config IDENT_STRING + string "Board specific string to be added to uboot version string" + help + This options adds the board specific name to u-boot version. + config SYS_NO_FLASH bool "Disable support for parallel NOR flash" default n @@ -213,3 +218,5 @@ config VERSION_VARIABLE version as printed by the "version" command. Any change to this variable will be reverted at the next reset. + +source "common/spl/Kconfig" diff --git a/common/Makefile b/common/Makefile index 21619b304d..9a9a065ad2 100644 --- a/common/Makefile +++ b/common/Makefile @@ -99,10 +99,16 @@ obj-$(CONFIG_SPL_USB_SUPPORT) += usb.o usb_hub.o obj-$(CONFIG_USB_STORAGE) += usb_storage.o endif # environment -ifdef CONFIG_SPL_ENV_SUPPORT +ifdef CONFIG_TPL_BUILD +obj-$(CONFIG_TPL_ENV_SUPPORT) += env_attr.o +obj-$(CONFIG_TPL_ENV_SUPPORT) += env_flags.o +obj-$(CONFIG_TPL_ENV_SUPPORT) += env_callback.o +else obj-$(CONFIG_SPL_ENV_SUPPORT) += env_attr.o obj-$(CONFIG_SPL_ENV_SUPPORT) += env_flags.o obj-$(CONFIG_SPL_ENV_SUPPORT) += env_callback.o +endif +ifneq ($(CONFIG_TPL_ENV_SUPPORT)$(CONFIG_SPL_ENV_SUPPORT),) obj-$(CONFIG_ENV_IS_NOWHERE) += env_nowhere.o obj-$(CONFIG_ENV_IS_IN_MMC) += env_mmc.o obj-$(CONFIG_ENV_IS_IN_FAT) += env_fat.o @@ -123,7 +129,11 @@ obj-$(CONFIG_SPD_EEPROM) += ddr_spd.o obj-$(CONFIG_HWCONFIG) += hwconfig.o obj-$(CONFIG_BOUNCE_BUFFER) += bouncebuf.o ifdef CONFIG_SPL_BUILD +ifdef CONFIG_TPL_BUILD +obj-$(CONFIG_TPL_SERIAL_SUPPORT) += console.o +else obj-$(CONFIG_SPL_SERIAL_SUPPORT) += console.o +endif else obj-y += console.o endif diff --git a/common/board_f.c b/common/board_f.c index da381dbd93..2c88595078 100644 --- a/common/board_f.c +++ b/common/board_f.c @@ -49,7 +49,7 @@ #include <trace.h> #include <video.h> #include <watchdog.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/sections.h> #if defined(CONFIG_X86) || defined(CONFIG_ARC) @@ -290,6 +290,11 @@ __weak int arch_cpu_init(void) return 0; } +__weak int mach_cpu_init(void) +{ + return 0; +} + #ifdef CONFIG_SANDBOX static int setup_ram_buf(void) { @@ -860,6 +865,7 @@ static init_fnc_t init_sequence_f[] = { x86_fsp_init, #endif arch_cpu_init, /* basic arch cpu dependent setup */ + mach_cpu_init, /* SoC/machine dependent CPU setup */ initf_dm, arch_cpu_init_dm, mark_bootstage, /* need timer, go after init dm */ diff --git a/common/hash.c b/common/hash.c index 41de4df536..b645298afc 100644 --- a/common/hash.c +++ b/common/hash.c @@ -17,7 +17,7 @@ #include <mapmem.h> #include <hw_sha.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #else #include "mkimage.h" #include <time.h> diff --git a/common/image-fdt.c b/common/image-fdt.c index d6ee225d40..3d23608c04 100644 --- a/common/image-fdt.c +++ b/common/image-fdt.c @@ -285,7 +285,7 @@ int boot_get_fdt(int flag, int argc, char * const argv[], uint8_t arch, fdt_noffset = fit_get_node_from_config(images, FIT_FDT_PROP, fdt_addr); - if (fdt_noffset == -ENOLINK) + if (fdt_noffset == -ENOENT) return 0; else if (fdt_noffset < 0) return 1; diff --git a/common/image-fit.c b/common/image-fit.c index 9ce68f1c21..1b0234a90c 100644 --- a/common/image-fit.c +++ b/common/image-fit.c @@ -1560,7 +1560,7 @@ int fit_get_node_from_config(bootm_headers_t *images, const char *prop_name, cfg_noffset = fit_conf_get_node(fit_hdr, images->fit_uname_cfg); if (cfg_noffset < 0) { debug("* %s: no such config\n", prop_name); - return -ENOENT; + return -EINVAL; } noffset = fit_conf_get_prop_node(fit_hdr, cfg_noffset, prop_name); diff --git a/common/image.c b/common/image.c index 7ad04ca19b..a5d19abfa9 100644 --- a/common/image.c +++ b/common/image.c @@ -38,7 +38,7 @@ #include <u-boot/md5.h> #include <u-boot/sha1.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #ifdef CONFIG_CMD_BDI @@ -1078,7 +1078,7 @@ int boot_get_ramdisk(int argc, char * const argv[], bootm_headers_t *images, rd_addr = map_to_sysmem(images->fit_hdr_os); rd_noffset = fit_get_node_from_config(images, FIT_RAMDISK_PROP, rd_addr); - if (rd_noffset == -ENOLINK) + if (rd_noffset == -ENOENT) return 0; else if (rd_noffset < 0) return 1; diff --git a/common/spl/Kconfig b/common/spl/Kconfig new file mode 100644 index 0000000000..2a8ddbc76b --- /dev/null +++ b/common/spl/Kconfig @@ -0,0 +1,545 @@ +menu "SPL / TPL" + +config SUPPORT_SPL + bool + +config SUPPORT_TPL + bool + +config SPL + bool + depends on SUPPORT_SPL + prompt "Enable SPL" + help + If you want to build SPL as well as the normal image, say Y. + +config SPL_SYS_MALLOC_SIMPLE + bool + depends on SPL + prompt "Only use malloc_simple functions in the SPL" + help + Say Y here to only use the *_simple malloc functions from + malloc_simple.c, rather then using the versions from dlmalloc.c; + this will make the SPL binary smaller at the cost of more heap + usage as the *_simple malloc functions do not re-use free-ed mem. + +config SPL_STACK_R + depends on SPL + bool "Enable SDRAM location for SPL stack" + help + SPL starts off execution in SRAM and thus typically has only a small + stack available. Since SPL sets up DRAM while in its board_init_f() + function, it is possible for the stack to move there before + board_init_r() is reached. This option enables a special SDRAM + location for the SPL stack. U-Boot SPL switches to this after + board_init_f() completes, and before board_init_r() starts. + +config SPL_STACK_R_ADDR + depends on SPL_STACK_R + hex "SDRAM location for SPL stack" + help + Specify the address in SDRAM for the SPL stack. This will be set up + before board_init_r() is called. + +config SPL_STACK_R_MALLOC_SIMPLE_LEN + depends on SPL_STACK_R && SPL_SYS_MALLOC_SIMPLE + hex "Size of malloc_simple heap after switching to DRAM SPL stack" + default 0x100000 + help + Specify the amount of the stack to use as memory pool for + malloc_simple after switching the stack to DRAM. This may be set + to give board_init_r() a larger heap then the initial heap in + SRAM which is limited to SYS_MALLOC_F_LEN bytes. + +config SPL_SEPARATE_BSS + depends on SPL + bool "BSS section is in a different memory region from text" + help + Some platforms need a large BSS region in SPL and can provide this + because RAM is already set up. In this case BSS can be moved to RAM. + This option should then be enabled so that the correct device tree + location is used. Normally we put the device tree at the end of BSS + but with this option enabled, it goes at _image_binary_end. + +config TPL + bool + depends on SPL && SUPPORT_TPL + prompt "Enable TPL" + help + If you want to build TPL as well as the normal image and SPL, say Y. + +config SPL_CRC32_SUPPORT + bool "Support CRC32" + depends on SPL_FIT + help + Enable this to support CRC32 in FIT images within SPL. This is a + 32-bit checksum value that can be used to verify images. This is + the least secure type of checksum, suitable for detected + accidental image corruption. For secure applications you should + consider SHA1 or SHA256. + +config SPL_MD5_SUPPORT + bool "Support MD5" + depends on SPL_FIT + help + Enable this to support MD5 in FIT images within SPL. An MD5 + checksum is a 128-bit hash value used to check that the image + contents have not been corrupted. Note that MD5 is not considered + secure as it is possible (with a brute-force attack) to adjust the + image while still retaining the same MD5 hash value. For secure + applications where images may be changed maliciously, you should + consider SHA1 or SHA256. + +config SPL_SHA1_SUPPORT + bool "Support SHA1" + depends on SPL_FIT + help + Enable this to support SHA1 in FIT images within SPL. A SHA1 + checksum is a 160-bit (20-byte) hash value used to check that the + image contents have not been corrupted or maliciously altered. + While SHA1 is fairly secure it is coming to the end of its life + due to the expanding computing power avaiable to brute-force + attacks. For more security, consider SHA256. + +config SPL_SHA256_SUPPORT + bool "Support SHA256" + depends on SPL_FIT + help + Enable this to support SHA256 in FIT images within SPL. A SHA256 + checksum is a 256-bit (32-byte) hash value used to check that the + image contents have not been corrupted. SHA256 is recommended for + use in secure applications since (as at 2016) there is no known + feasible attack that could produce a 'collision' with differing + input data. Use this for the highest security. Note that only the + SHA256 variant is supported: SHA512 and others are not currently + supported in U-Boot. + +config SPL_CRYPTO_SUPPORT + bool "Support crypto drivers" + depends on SPL + help + Enable crypto drivers in SPL. These drivers can be used to + accelerate secure boot processing in secure applications. Enable + this option to build the drivers in drivers/crypto as part of an + SPL build. + +config SPL_HASH_SUPPORT + bool "Support hashing drivers" + depends on SPL + help + Enable hashing drivers in SPL. These drivers can be used to + accelerate secure boot processing in secure applications. Enable + this option to build system-specific drivers for hash acceleration + as part of an SPL build. + +config SPL_DMA_SUPPORT + bool "Support DMA drivers" + depends on SPL + help + Enable DMA (direct-memory-access) drivers in SPL. These drivers + can be used to handle memory-to-peripheral data transfer without + the CPU moving the data. Enable this option to build the drivers + in drivers/dma as part of an SPL build. + +config SPL_DRIVERS_MISC_SUPPORT + bool "Support misc drivers" + depends on SPL + help + Enable miscellaneous drivers in SPL. These drivers perform various + tasks that don't fall nicely into other categories, Enable this + option to build the drivers in drivers/misc as part of an SPL + build, for those that support building in SPL (not all drivers do). + +config SPL_ENV_SUPPORT + bool "Support an environment" + depends on SPL + help + Enable environment support in SPL. The U-Boot environment provides + a number of settings (essentially name/value pairs) which can + control many aspects of U-Boot's operation. Normally this is not + needed in SPL as it has a much simpler task with less + configuration. But some boards use this to support 'Falcon' boot + on EXT2 and FAT, where SPL boots directly into Linux without + starting U-Boot first. Enabling this option will make getenv() + and setenv() available in SPL. + +config SPL_ETH_SUPPORT + bool "Support Ethernet" + depends on SPL_ENV_SUPPORT + help + Enable access to the network subsystem and associated Ethernet + drivers in SPL. This permits SPL to load U-Boot over an Ethernet + link rather than from an on-board peripheral. Environment support + is required since the network stack uses a number of environment + variables. See also SPL_NET_SUPPORT. + +config SPL_EXT_SUPPORT + bool "Support EXT filesystems" + depends on SPL + help + Enable support for EXT2/3/4 filesystems with SPL. This permits + U-Boot (or Linux in Falcon mode) to be loaded from an EXT + filesystem from within SPL. Support for the underlying block + device (e.g. MMC or USB) must be enabled separately. + +config SPL_FAT_SUPPORT + bool "Support FAT filesystems" + depends on SPL + help + Enable support for FAT and VFAT filesystems with SPL. This + permits U-Boot (or Linux in Falcon mode) to be loaded from a FAT + filesystem from within SPL. Support for the underlying block + device (e.g. MMC or USB) must be enabled separately. + +config SPL_FPGA_SUPPORT + bool "Support FPGAs" + depends on SPL + help + Enable support for FPGAs in SPL. Field-programmable Gate Arrays + provide software-configurable hardware which is typically used to + implement peripherals (such as UARTs, LCD displays, MMC) or + accelerate custom processing functions, such as image processing + or machine learning. Sometimes it is useful to program the FPGA + as early as possible during boot, and this option can enable that + within SPL. + +config SPL_GPIO_SUPPORT + bool "Support GPIO" + depends on SPL + help + Enable support for GPIOs (General-purpose Input/Output) in SPL. + GPIOs allow U-Boot to read the state of an input line (high or + low) and set the state of an output line. This can be used to + drive LEDs, control power to various system parts and read user + input. GPIOs can be useful in SPL to enable a 'sign-of-life' LED, + for example. Enable this option to build the drivers in + drivers/gpio as part of an SPL build. + +config SPL_I2C_SUPPORT + bool "Support I2C" + depends on SPL + help + Enable support for the I2C (Inter-Integrated Circuit) bus in SPL. + I2C works with a clock and data line which can be driven by a + one or more masters or slaves. It is a fairly complex bus but is + widely used as it only needs two lines for communication. Speeds of + 400kbps are typical but up to 3.4Mbps is supported by some + hardware. I2C can be useful in SPL to configure power management + ICs (PMICs) before raising the CPU clock speed, for example. + Enable this option to build the drivers in drivers/i2c as part of + an SPL build. + +config SPL_LIBCOMMON_SUPPORT + bool "Support common libraries" + depends on SPL + help + Enable support for common U-Boot libraries within SPL. These + libraries include common code to deal with U-Boot images, + environment and USB, for example. This option is enabled on many + boards. Enable this option to build the code in common/ as part of + an SPL build. + +config SPL_LIBDISK_SUPPORT + bool "Support disk paritions" + depends on SPL + help + Enable support for disk partitions within SPL. 'Disk' is something + of a misnomer as it includes non-spinning media such as flash (as + used in MMC and USB sticks). Partitions provide a way for a disk + to be split up into separate regions, with a partition table placed + at the start or end which describes the location and size of each + 'partition'. These partitions are typically uses as individual block + devices, typically with an EXT2 or FAT filesystem in each. This + option enables whatever partition support has been enabled in + U-Boot to also be used in SPL. It brings in the code in disk/. + +config SPL_LIBGENERIC_SUPPORT + bool "Support generic libraries" + depends on SPL + help + Enable support for generic U-Boot libraries within SPL. These + libraries include generic code to deal with device tree, hashing, + printf(), compression and the like. This option is enabled on many + boards. Enable this option to build the code in lib/ as part of an + SPL build. + +config SPL_MMC_SUPPORT + bool "Support MMC" + depends on SPL + help + Enable support for MMC (Multimedia Card) within SPL. This enables + the MMC protocol implementation and allows any enabled drivers to + be used within SPL. MMC can be used with or without disk partition + support depending on the application (SPL_LIBDISK_SUPPORT). Enable + this option to build the drivers in drivers/mmc as part of an SPL + build. + +config SPL_MPC8XXX_INIT_DDR_SUPPORT + bool "Support MPC8XXX DDR init" + depends on SPL + help + Enable support for DDR-SDRAM (double-data-rate synchronous dynamic + random-access memory) on the MPC8XXX family within SPL. This + allows DRAM to be set up before loading U-Boot into that DRAM, + where it can run. + +config SPL_MTD_SUPPORT + bool "Support MTD drivers" + depends on SPL + help + Enable support for MTD (Memory Technology Device) within SPL. MTD + provides a block interface over raw NAND and can also be used with + SPI flash. This allows SPL to load U-Boot from supported MTD + devices. See SPL_NAND_SUPPORT and SPL_ONENAND_SUPPORT for how + to enable specific MTD drivers. + +config SPL_MUSB_NEW_SUPPORT + bool "Support new Mentor Graphics USB" + depends on SPL + help + Enable support for Mentor Graphics USB in SPL. This is a new + driver used by some boards. Enable this option to build + the drivers in drivers/usb/musb-new as part of an SPL build. The + old drivers are in drivers/usb/musb. + +config SPL_NAND_SUPPORT + bool "Support NAND flash" + depends on SPL + help + Enable support for NAND (Negative AND) flash in SPL. NAND flash + can be used to allow SPL to load U-Boot from supported devices. + This enables the drivers in drivers/mtd/nand as part of an SPL + build. + +config SPL_NET_SUPPORT + bool "Support networking" + depends on SPL + help + Enable support for network devices (such as Ethernet) in SPL. + This permits SPL to load U-Boot over a network link rather than + from an on-board peripheral. Environment support is required since + the network stack uses a number of environment variables. See also + SPL_ETH_SUPPORT. + +if SPL_NET_SUPPORT +config SPL_NET_VCI_STRING + string "BOOTP Vendor Class Identifier string sent by SPL" + help + As defined by RFC 2132 the vendor class identifier field can be + sent by the client to identify the vendor type and configuration + of a client. This is often used in practice to allow for the DHCP + server to specify different files to load depending on if the ROM, + SPL or U-Boot itself makes the request +endif # if SPL_NET_SUPPORT + +config SPL_NO_CPU_SUPPORT + bool "Drop CPU code in SPL" + depends on SPL + help + This is specific to the ARM926EJ-S CPU. It disables the standard + start.S start-up code, presumably so that a replacement can be + used on that CPU. You should not enable it unless you know what + you are doing. + +config SPL_NOR_SUPPORT + bool "Support NOR flash" + depends on SPL + help + Enable support for loading U-Boot from memory-mapped NOR (Negative + OR) flash in SPL. NOR flash is slow to write but fast to read, and + a memory-mapped device makes it very easy to access. Loading from + NOR is typically achieved with just a memcpy(). + +config SPL_ONENAND_SUPPORT + bool "Support OneNAND flash" + depends on SPL + help + Enable support for OneNAND (Negative AND) flash in SPL. OneNAND is + a type of NAND flash and therefore can be used to allow SPL to + load U-Boot from supported devices. This enables the drivers in + drivers/mtd/onenand as part of an SPL build. + +config SPL_POST_MEM_SUPPORT + bool "Support POST drivers" + depends on SPL + help + Enable support for POST (Power-on Self Test) in SPL. POST is a + procedure that checks that the hardware (CPU or board) appears to + be functionally correctly. It is a sanity check that can be + performed before booting. This enables the drivers in post/drivers + as part of an SPL build. + +config SPL_POWER_SUPPORT + bool "Support power drivers" + depends on SPL + help + Enable support for power control in SPL. This includes support + for PMICs (Power-management Integrated Circuits) and some of the + features provided by PMICs. In particular, voltage regulators can + be used to enable/disable power and vary its voltage. That can be + useful in SPL to turn on boot peripherals and adjust CPU voltage + so that the clock speed can be increased. This enables the drivers + in drivers/power, drivers/power/pmic and drivers/power/regulator + as part of an SPL build. + +config SPL_SATA_SUPPORT + bool "Support loading from SATA" + depends on SPL + help + Enable support for SATA (Serial AT attachment) in SPL. This allows + use of SATA devices such as hard drives and flash drivers for + loading U-Boot. SATA is used in higher-end embedded systems and + can provide higher performance than MMC , at somewhat higher + expense and power consumption. This enables loading from SATA + using a configured device. + +config SPL_SERIAL_SUPPORT + bool "Support serial" + depends on SPL + help + Enable support for serial in SPL. This allows use of a serial UART + for displaying messages while SPL is running. It also brings in + printf() and panic() functions. This should normally be enabled + unless there are space reasons not to. Even then, consider + enabling USE_TINY_PRINTF which is a small printf() version. + +config SPL_SPI_FLASH_SUPPORT + bool "Support SPI flash drivers" + depends on SPL + help + Enable support for using SPI flash in SPL, and loading U-Boot from + SPI flash. SPI flash (Serial Peripheral Bus flash) is named after + the SPI bus that is used to connect it to a system. It is a simple + but fast bidirectional 4-wire bus (clock, chip select and two data + lines). This enables the drivers in drivers/mtd/spi as part of an + SPL build. This normally requires SPL_SPI_SUPPORT. + +config SPL_SPI_SUPPORT + bool "Support SPI drivers" + depends on SPL + help + Enable support for using SPI in SPL. This is used for connecting + to SPI flash for loading U-Boot. See SPL_SPI_FLASH_SUPPORT for + more details on that. The SPI driver provides the transport for + data between the SPI flash and the CPU. This option can be used to + enable SPI drivers that are needed for other purposes also, such + as a SPI PMIC. + +config SPL_USBETH_SUPPORT + bool "Support USB Ethernet drivers" + depends on SPL + help + Enable access to the USB network subsystem and associated + drivers in SPL. This permits SPL to load U-Boot over a + USB-connected Ethernet link (such as a USB Ethernet dongle) rather + than from an onboard peripheral. Environment support is required + since the network stack uses a number of environment variables. + See also SPL_NET_SUPPORT and SPL_ETH_SUPPORT. + +config SPL_USB_HOST_SUPPORT + bool "Support USB host drivers" + depends on SPL + help + Enable access to USB (Universal Serial Bus) host devices so that + SPL can load U-Boot from a connected USB peripheral, such as a USB + flash stick. While USB takes a little longer to start up than most + buses, it is very flexible since many different types of storage + device can be attached. This option enables the drivers in + drivers/usb/host as part of an SPL build. + +config SPL_USB_SUPPORT + bool "Support loading from USB" + depends on SPL_USB_HOST_SUPPORT + help + Enable support for USB devices in SPL. This allows use of USB + devices such as hard drives and flash drivers for loading U-Boot. + The actual drivers are enabled separately using the normal U-Boot + config options. This enables loading from USB using a configured + device. + +config SPL_WATCHDOG_SUPPORT + bool "Support watchdog drivers" + depends on SPL + help + Enable support for watchdog drivers in SPL. A watchdog is + typically a hardware peripheral which can reset the system when it + detects no activity for a while (such as a software crash). This + enables the drivers in drivers/watchdog as part of an SPL build. + +config SPL_YMODEM_SUPPORT + bool "Support loading using Ymodem" + depends on SPL + help + While loading from serial is slow it can be a useful backup when + there is no other option. The Ymodem protocol provides a reliable + means of transmitting U-Boot over a serial line for using in SPL, + with a checksum to ensure correctness. + +config TPL_ENV_SUPPORT + bool "Support an environment" + depends on TPL + help + Enable environment support in TPL. See SPL_ENV_SUPPORT for details. + +config TPL_I2C_SUPPORT + bool "Support I2C" + depends on TPL + help + Enable support for the I2C bus in SPL. See SPL_I2C_SUPPORT for + details. + +config TPL_LIBCOMMON_SUPPORT + bool "Support common libraries" + depends on TPL + help + Enable support for common U-Boot libraries within TPL. See + SPL_LIBCOMMON_SUPPORT for details. + +config TPL_LIBGENERIC_SUPPORT + bool "Support generic libraries" + depends on TPL + help + Enable support for generic U-Boot libraries within TPL. See + SPL_LIBGENERIC_SUPPORT for details. + +config TPL_MPC8XXX_INIT_DDR_SUPPORT + bool "Support MPC8XXX DDR init" + depends on TPL + help + Enable support for DDR-SDRAM on the MPC8XXX family within TPL. See + SPL_MPC8XXX_INIT_DDR_SUPPORT for details. + +config TPL_MMC_SUPPORT + bool "Support MMC" + depends on TPL + help + Enable support for MMC within TPL. See SPL_MMC_SUPPORT for details. + +config TPL_NAND_SUPPORT + bool "Support NAND flash" + depends on TPL + help + Enable support for NAND in SPL. See SPL_NAND_SUPPORT for details. + +config TPL_SERIAL_SUPPORT + bool "Support serial" + depends on TPL + help + Enable support for serial in SPL. See SPL_SERIAL_SUPPORT for + details. + +config TPL_SPI_FLASH_SUPPORT + bool "Support SPI flash drivers" + depends on TPL + help + Enable support for using SPI flash in SPL. See SPL_SPI_FLASH_SUPPORT + for details. + +config TPL_SPI_SUPPORT + bool "Support SPI drivers" + depends on TPL + help + Enable support for using SPI in SPL. See SPL_SPI_SUPPORT for + details. + +endmenu diff --git a/common/usb.c b/common/usb.c index b3ba487890..15e1e4c64e 100644 --- a/common/usb.c +++ b/common/usb.c @@ -557,12 +557,10 @@ int usb_clear_halt(struct usb_device *dev, int pipe) static int usb_get_descriptor(struct usb_device *dev, unsigned char type, unsigned char index, void *buf, int size) { - int res; - res = usb_control_msg(dev, usb_rcvctrlpipe(dev, 0), - USB_REQ_GET_DESCRIPTOR, USB_DIR_IN, - (type << 8) + index, 0, - buf, size, USB_CNTL_TIMEOUT); - return res; + return usb_control_msg(dev, usb_rcvctrlpipe(dev, 0), + USB_REQ_GET_DESCRIPTOR, USB_DIR_IN, + (type << 8) + index, 0, buf, size, + USB_CNTL_TIMEOUT); } /********************************************************************** @@ -612,14 +610,10 @@ int usb_get_configuration_no(struct usb_device *dev, int cfgno, */ static int usb_set_address(struct usb_device *dev) { - int res; - debug("set address %d\n", dev->devnum); - res = usb_control_msg(dev, usb_snddefctrl(dev), - USB_REQ_SET_ADDRESS, 0, - (dev->devnum), 0, - NULL, 0, USB_CNTL_TIMEOUT); - return res; + + return usb_control_msg(dev, usb_snddefctrl(dev), USB_REQ_SET_ADDRESS, + 0, (dev->devnum), 0, NULL, 0, USB_CNTL_TIMEOUT); } /******************************************************************** diff --git a/common/usb_kbd.c b/common/usb_kbd.c index 97f79f8eb8..a9872a6b5a 100644 --- a/common/usb_kbd.c +++ b/common/usb_kbd.c @@ -605,11 +605,8 @@ int usb_kbd_deregister(int force) static int usb_kbd_probe(struct udevice *dev) { struct usb_device *udev = dev_get_parent_priv(dev); - int ret; - - ret = probe_usb_keyboard(udev); - return ret; + return probe_usb_keyboard(udev); } static int usb_kbd_remove(struct udevice *dev) diff --git a/common/usb_storage.c b/common/usb_storage.c index 7e6e52d2ec..0345aa22ef 100644 --- a/common/usb_storage.c +++ b/common/usb_storage.c @@ -708,13 +708,10 @@ static int usb_stor_CBI_get_status(ccb *srb, struct us_data *us) /* clear a stall on an endpoint - special for BBB devices */ static int usb_stor_BBB_clear_endpt_stall(struct us_data *us, __u8 endpt) { - int result; - /* ENDPOINT_HALT = 0, so set value to 0 */ - result = usb_control_msg(us->pusb_dev, usb_sndctrlpipe(us->pusb_dev, 0), - USB_REQ_CLEAR_FEATURE, USB_RECIP_ENDPOINT, - 0, endpt, NULL, 0, USB_CNTL_TIMEOUT * 5); - return result; + return usb_control_msg(us->pusb_dev, usb_sndctrlpipe(us->pusb_dev, 0), + USB_REQ_CLEAR_FEATURE, USB_RECIP_ENDPOINT, 0, + endpt, NULL, 0, USB_CNTL_TIMEOUT * 5); } static int usb_stor_BBB_transport(ccb *srb, struct us_data *us) diff --git a/configs/A10-OLinuXino-Lime_defconfig b/configs/A10-OLinuXino-Lime_defconfig index 8cb7ac7bb1..04b720d264 100644 --- a/configs/A10-OLinuXino-Lime_defconfig +++ b/configs/A10-OLinuXino-Lime_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN4I=y CONFIG_DRAM_CLK=480 CONFIG_DRAM_EMR1=4 @@ -7,8 +8,8 @@ CONFIG_SYS_CLK_FREQ=912000000 CONFIG_MMC0_CD_PIN="PH1" CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-olinuxino-lime" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_EMAC,AHCI,SATAPWR=SUNXI_GPC(3)" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/A10s-OLinuXino-M_defconfig b/configs/A10s-OLinuXino-M_defconfig index 6a0d81530c..e2bebf827c 100644 --- a/configs/A10s-OLinuXino-M_defconfig +++ b/configs/A10s-OLinuXino-M_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN5I=y CONFIG_DRAM_CLK=432 CONFIG_MMC0_CD_PIN="PG1" @@ -8,8 +9,8 @@ CONFIG_MMC_SUNXI_SLOT_EXTRA=1 CONFIG_USB1_VBUS_PIN="PB10" CONFIG_DEFAULT_DEVICE_TREE="sun5i-a10s-olinuxino-micro" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_EMAC" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/A13-OLinuXinoM_defconfig b/configs/A13-OLinuXinoM_defconfig index a790856e00..361d90a701 100644 --- a/configs/A13-OLinuXinoM_defconfig +++ b/configs/A13-OLinuXinoM_defconfig @@ -12,8 +12,8 @@ CONFIG_VIDEO_LCD_POWER="PB10" CONFIG_VIDEO_LCD_BL_PWM="PB2" CONFIG_DEFAULT_DEVICE_TREE="sun5i-a13-olinuxino-micro" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=2" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/A13-OLinuXino_defconfig b/configs/A13-OLinuXino_defconfig index d12a3cc756..64109a61ca 100644 --- a/configs/A13-OLinuXino_defconfig +++ b/configs/A13-OLinuXino_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN5I=y CONFIG_DRAM_CLK=408 CONFIG_DRAM_EMR1=0 @@ -14,8 +15,8 @@ CONFIG_VIDEO_LCD_POWER="AXP0-0" CONFIG_VIDEO_LCD_BL_PWM="PB2" CONFIG_DEFAULT_DEVICE_TREE="sun5i-a13-olinuxino" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=2" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set CONFIG_CMD_DFU=y diff --git a/configs/A20-OLinuXino-Lime2_defconfig b/configs/A20-OLinuXino-Lime2_defconfig index cc5858ec68..54343de7f3 100644 --- a/configs/A20-OLinuXino-Lime2_defconfig +++ b/configs/A20-OLinuXino-Lime2_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN7I=y CONFIG_DRAM_CLK=480 CONFIG_MMC0_CD_PIN="PH1" @@ -7,13 +8,21 @@ CONFIG_USB0_VBUS_PIN="PC17" CONFIG_USB0_VBUS_DET="PH5" CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-olinuxino-lime2" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,AHCI,SATAPWR=SUNXI_GPC(3)" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set +CONFIG_CMD_DFU=y +CONFIG_CMD_USB_MASS_STORAGE=y # CONFIG_CMD_FPGA is not set CONFIG_RTL8211X_PHY_FORCE_MASTER=y CONFIG_ETH_DESIGNWARE=y CONFIG_AXP_ALDO3_VOLT=2800 CONFIG_AXP_ALDO4_VOLT=2800 CONFIG_USB_EHCI_HCD=y +CONFIG_USB_MUSB_GADGET=y +CONFIG_USB_GADGET=y +CONFIG_USB_GADGET_DOWNLOAD=y +CONFIG_G_DNL_MANUFACTURER="Allwinner Technology" +CONFIG_G_DNL_VENDOR_NUM=0x1f3a +CONFIG_G_DNL_PRODUCT_NUM=0x1010 diff --git a/configs/A20-OLinuXino-Lime_defconfig b/configs/A20-OLinuXino-Lime_defconfig index 7b0309c8cd..c4f6e1a9a2 100644 --- a/configs/A20-OLinuXino-Lime_defconfig +++ b/configs/A20-OLinuXino-Lime_defconfig @@ -1,12 +1,13 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN7I=y CONFIG_DRAM_CLK=480 CONFIG_MMC0_CD_PIN="PH1" CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-olinuxino-lime" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,AHCI,SATAPWR=SUNXI_GPC(3)" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/A20-OLinuXino_MICRO_defconfig b/configs/A20-OLinuXino_MICRO_defconfig index f121cabeb1..5809345fc5 100644 --- a/configs/A20-OLinuXino_MICRO_defconfig +++ b/configs/A20-OLinuXino_MICRO_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN7I=y CONFIG_DRAM_CLK=384 CONFIG_MMC0_CD_PIN="PH1" @@ -8,8 +9,8 @@ CONFIG_MMC_SUNXI_SLOT_EXTRA=3 CONFIG_VIDEO_VGA=y CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-olinuxino-micro" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,AHCI,SATAPWR=SUNXI_GPB(8)" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/A20-Olimex-SOM-EVB_defconfig b/configs/A20-Olimex-SOM-EVB_defconfig index 57609b384f..7a14a7b9b2 100644 --- a/configs/A20-Olimex-SOM-EVB_defconfig +++ b/configs/A20-Olimex-SOM-EVB_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN7I=y CONFIG_DRAM_CLK=480 CONFIG_MMC0_CD_PIN="PH1" @@ -10,8 +11,8 @@ CONFIG_USB0_VBUS_PIN="PB9" CONFIG_USB0_VBUS_DET="PH5" CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-olimex-som-evb" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,AHCI,SATAPWR=SUNXI_GPC(3)" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/Ainol_AW1_defconfig b/configs/Ainol_AW1_defconfig index fc1be7d819..46c5309341 100644 --- a/configs/Ainol_AW1_defconfig +++ b/configs/Ainol_AW1_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN7I=y CONFIG_DRAM_CLK=432 CONFIG_DRAM_ZQ=123 diff --git a/configs/Ampe_A76_defconfig b/configs/Ampe_A76_defconfig index 8262be5405..5020724aa8 100644 --- a/configs/Ampe_A76_defconfig +++ b/configs/Ampe_A76_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN5I=y CONFIG_DRAM_CLK=432 CONFIG_MMC0_CD_PIN="PG0" @@ -14,8 +15,8 @@ CONFIG_VIDEO_LCD_BL_EN="AXP0-1" CONFIG_VIDEO_LCD_BL_PWM="PB2" CONFIG_DEFAULT_DEVICE_TREE="sun5i-a13-ampe-a76" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=2" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/Auxtek-T003_defconfig b/configs/Auxtek-T003_defconfig index 44f3982f64..1e248a7624 100644 --- a/configs/Auxtek-T003_defconfig +++ b/configs/Auxtek-T003_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN5I=y CONFIG_DRAM_CLK=408 CONFIG_DRAM_EMR1=0 diff --git a/configs/Auxtek-T004_defconfig b/configs/Auxtek-T004_defconfig index 9d5365dce6..55f956e763 100644 --- a/configs/Auxtek-T004_defconfig +++ b/configs/Auxtek-T004_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN5I=y CONFIG_DRAM_CLK=432 CONFIG_USB1_VBUS_PIN="PG13" diff --git a/configs/B4420QDS_NAND_defconfig b/configs/B4420QDS_NAND_defconfig index cc3e9ecd0e..c192177cbd 100644 --- a/configs/B4420QDS_NAND_defconfig +++ b/configs/B4420QDS_NAND_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_B4860QDS=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_B4420,RAMBOOT_PBL,SPL_FSL_PBL,NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_SF=y diff --git a/configs/B4860QDS_NAND_defconfig b/configs/B4860QDS_NAND_defconfig index 7dbcb452da..d01baaaf9b 100644 --- a/configs/B4860QDS_NAND_defconfig +++ b/configs/B4860QDS_NAND_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_B4860QDS=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_B4860,RAMBOOT_PBL,SPL_FSL_PBL,NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_SF=y diff --git a/configs/B4860QDS_SECURE_BOOT_defconfig b/configs/B4860QDS_SECURE_BOOT_defconfig index c6e560d29c..75124a8b97 100644 --- a/configs/B4860QDS_SECURE_BOOT_defconfig +++ b/configs/B4860QDS_SECURE_BOOT_defconfig @@ -27,4 +27,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/BSC9131RDB_NAND_SYSCLK100_defconfig b/configs/BSC9131RDB_NAND_SYSCLK100_defconfig index b8b654e8b8..babcdd593e 100644 --- a/configs/BSC9131RDB_NAND_SYSCLK100_defconfig +++ b/configs/BSC9131RDB_NAND_SYSCLK100_defconfig @@ -1,13 +1,15 @@ CONFIG_PPC=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_BSC9131RDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="BSC9131RDB,NAND,SYS_CLK_100" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set diff --git a/configs/BSC9131RDB_NAND_defconfig b/configs/BSC9131RDB_NAND_defconfig index c05ad2aeb7..ad0062284b 100644 --- a/configs/BSC9131RDB_NAND_defconfig +++ b/configs/BSC9131RDB_NAND_defconfig @@ -1,13 +1,15 @@ CONFIG_PPC=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_BSC9131RDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="BSC9131RDB,NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set diff --git a/configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig b/configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig index 67dc545aed..e678144f20 100644 --- a/configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig +++ b/configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig @@ -28,4 +28,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/BSC9132QDS_NAND_DDRCLK100_defconfig b/configs/BSC9132QDS_NAND_DDRCLK100_defconfig index c4a824b55f..e6fde47b8d 100644 --- a/configs/BSC9132QDS_NAND_DDRCLK100_defconfig +++ b/configs/BSC9132QDS_NAND_DDRCLK100_defconfig @@ -1,13 +1,15 @@ CONFIG_PPC=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_BSC9132QDS=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,NAND,SYS_CLK_100_DDR_100" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig b/configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig index 3db7deadff..1d9b54174d 100644 --- a/configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig +++ b/configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig @@ -28,4 +28,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/BSC9132QDS_NAND_DDRCLK133_defconfig b/configs/BSC9132QDS_NAND_DDRCLK133_defconfig index 3c4e296fd9..235f304c1a 100644 --- a/configs/BSC9132QDS_NAND_DDRCLK133_defconfig +++ b/configs/BSC9132QDS_NAND_DDRCLK133_defconfig @@ -1,13 +1,15 @@ CONFIG_PPC=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_BSC9132QDS=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,NAND,SYS_CLK_100_DDR_133" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig b/configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig index bef3077555..f193c4b51c 100644 --- a/configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig +++ b/configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig @@ -28,4 +28,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig b/configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig index 7e54d778d1..74c3385c31 100644 --- a/configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig +++ b/configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig @@ -28,4 +28,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig b/configs/BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig index 9ecdff94c0..0bea345f38 100644 --- a/configs/BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig +++ b/configs/BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig @@ -28,4 +28,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig b/configs/BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig index 773322ccbd..d24f21626e 100644 --- a/configs/BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig +++ b/configs/BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig @@ -28,4 +28,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig b/configs/BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig index 3e7b651a63..06a1770c1c 100644 --- a/configs/BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig +++ b/configs/BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig @@ -28,4 +28,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig b/configs/BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig index 7442025f67..6f6f2dc787 100644 --- a/configs/BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig +++ b/configs/BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig @@ -28,4 +28,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/Bananapi_defconfig b/configs/Bananapi_defconfig index d9b1bd6ca4..366ef24735 100644 --- a/configs/Bananapi_defconfig +++ b/configs/Bananapi_defconfig @@ -1,13 +1,14 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN7I=y CONFIG_DRAM_CLK=432 CONFIG_VIDEO_COMPOSITE=y CONFIG_GMAC_TX_DELAY=3 CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-bananapi" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,MACPWR=SUNXI_GPH(23),AHCI" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/Bananapro_defconfig b/configs/Bananapro_defconfig index 496c20edd3..9b39124a40 100644 --- a/configs/Bananapro_defconfig +++ b/configs/Bananapro_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN7I=y CONFIG_DRAM_CLK=432 CONFIG_USB1_VBUS_PIN="PH0" @@ -8,8 +9,8 @@ CONFIG_VIDEO_COMPOSITE=y CONFIG_GMAC_TX_DELAY=3 CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-bananapro" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,MACPWR=SUNXI_GPH(23),AHCI" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/C29XPCIE_NAND_defconfig b/configs/C29XPCIE_NAND_defconfig index 7db345ed45..1c03d44d28 100644 --- a/configs/C29XPCIE_NAND_defconfig +++ b/configs/C29XPCIE_NAND_defconfig @@ -1,14 +1,23 @@ CONFIG_PPC=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_C29XPCIE=y -CONFIG_SPL=y -CONFIG_TPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="C29XPCIE,NAND" CONFIG_BOOTDELAY=-1 +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_TPL_ENV_SUPPORT=y +CONFIG_TPL_I2C_SUPPORT=y +CONFIG_TPL_LIBCOMMON_SUPPORT=y +CONFIG_TPL_LIBGENERIC_SUPPORT=y +CONFIG_TPL_MPC8XXX_INIT_DDR_SUPPORT=y +CONFIG_TPL_SERIAL_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_SF=y CONFIG_CMD_I2C=y diff --git a/configs/C29XPCIE_NOR_SECBOOT_defconfig b/configs/C29XPCIE_NOR_SECBOOT_defconfig index 1dbb8ad726..f93237318b 100644 --- a/configs/C29XPCIE_NOR_SECBOOT_defconfig +++ b/configs/C29XPCIE_NOR_SECBOOT_defconfig @@ -22,4 +22,5 @@ CONFIG_E1000=y CONFIG_SYS_NS16550=y CONFIG_FSL_ESPI=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig b/configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig index 407093cce5..7f4189e1e6 100644 --- a/configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig +++ b/configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig @@ -22,4 +22,5 @@ CONFIG_E1000=y CONFIG_SYS_NS16550=y CONFIG_FSL_ESPI=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/CHIP_defconfig b/configs/CHIP_defconfig index 19ae280dfb..296a0b57b0 100644 --- a/configs/CHIP_defconfig +++ b/configs/CHIP_defconfig @@ -1,13 +1,15 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y +# CONFIG_SPL_MMC_SUPPORT is not set CONFIG_MACH_SUN5I=y CONFIG_DRAM_TIMINGS_DDR3_800E_1066G_1333J=y # CONFIG_MMC is not set CONFIG_USB0_VBUS_PIN="PB10" CONFIG_VIDEO_COMPOSITE=y CONFIG_DEFAULT_DEVICE_TREE="sun5i-r8-chip" -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=2" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set CONFIG_CMD_DFU=y CONFIG_CMD_USB_MASS_STORAGE=y diff --git a/configs/CSQ_CS908_defconfig b/configs/CSQ_CS908_defconfig index 1cb010d7d5..448ce951a0 100644 --- a/configs/CSQ_CS908_defconfig +++ b/configs/CSQ_CS908_defconfig @@ -6,8 +6,8 @@ CONFIG_USB1_VBUS_PIN="" CONFIG_USB2_VBUS_PIN="" CONFIG_DEFAULT_DEVICE_TREE="sun6i-a31s-cs908" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/Chuwi_V7_CW0825_defconfig b/configs/Chuwi_V7_CW0825_defconfig index 3257aaea78..8507f73001 100644 --- a/configs/Chuwi_V7_CW0825_defconfig +++ b/configs/Chuwi_V7_CW0825_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN4I=y CONFIG_DRAM_CLK=408 CONFIG_DRAM_EMR1=4 diff --git a/configs/Colombus_defconfig b/configs/Colombus_defconfig index 2ce8cb1996..d8272c5dcf 100644 --- a/configs/Colombus_defconfig +++ b/configs/Colombus_defconfig @@ -16,8 +16,8 @@ CONFIG_VIDEO_LCD_PANEL_I2C_SCL="PA24" CONFIG_VIDEO_LCD_PANEL_EDP_4_LANE_1620M_VIA_ANX9804=y CONFIG_DEFAULT_DEVICE_TREE="sun6i-a31-colombus" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/Cubieboard2_defconfig b/configs/Cubieboard2_defconfig index 4b9d722bcc..ad6eb62a0b 100644 --- a/configs/Cubieboard2_defconfig +++ b/configs/Cubieboard2_defconfig @@ -1,12 +1,13 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN7I=y CONFIG_DRAM_CLK=480 CONFIG_MMC0_CD_PIN="PH1" CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-cubieboard2" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,AHCI,SATAPWR=SUNXI_GPB(8)" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/Cubieboard_defconfig b/configs/Cubieboard_defconfig index c88411585f..9b4f4838ee 100644 --- a/configs/Cubieboard_defconfig +++ b/configs/Cubieboard_defconfig @@ -1,12 +1,13 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN4I=y CONFIG_DRAM_CLK=480 CONFIG_MMC0_CD_PIN="PH1" CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-cubieboard" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_EMAC,AHCI,SATAPWR=SUNXI_GPB(8)" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/Cubietruck_defconfig b/configs/Cubietruck_defconfig index 4e25392a3b..9e44cf73d1 100644 --- a/configs/Cubietruck_defconfig +++ b/configs/Cubietruck_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN7I=y CONFIG_DRAM_CLK=432 CONFIG_MMC0_CD_PIN="PH1" @@ -10,8 +11,8 @@ CONFIG_VIDEO_VGA=y CONFIG_GMAC_TX_DELAY=1 CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-cubietruck" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,AHCI,SATAPWR=SUNXI_GPH(12)" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set CONFIG_CMD_DFU=y diff --git a/configs/Empire_electronix_d709_defconfig b/configs/Empire_electronix_d709_defconfig index 5f0176083d..831949a08b 100644 --- a/configs/Empire_electronix_d709_defconfig +++ b/configs/Empire_electronix_d709_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN5I=y CONFIG_DRAM_CLK=432 CONFIG_DRAM_EMR1=0 @@ -15,8 +16,8 @@ CONFIG_VIDEO_LCD_BL_EN="AXP0-1" CONFIG_VIDEO_LCD_BL_PWM="PB2" CONFIG_DEFAULT_DEVICE_TREE="sun5i-a13-empire-electronix-d709" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=2" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/Empire_electronix_m712_defconfig b/configs/Empire_electronix_m712_defconfig index 224098f26f..4b51380fc0 100644 --- a/configs/Empire_electronix_m712_defconfig +++ b/configs/Empire_electronix_m712_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN5I=y CONFIG_DRAM_CLK=408 CONFIG_MMC0_CD_PIN="PG0" @@ -14,8 +15,8 @@ CONFIG_VIDEO_LCD_BL_EN="AXP0-1" CONFIG_VIDEO_LCD_BL_PWM="PB2" CONFIG_DEFAULT_DEVICE_TREE="sun5i-a13-empire-electronix-m712" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=2" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/Hummingbird_A31_defconfig b/configs/Hummingbird_A31_defconfig index 3b0c439c4f..dc4133d081 100644 --- a/configs/Hummingbird_A31_defconfig +++ b/configs/Hummingbird_A31_defconfig @@ -8,8 +8,8 @@ CONFIG_VIDEO_VGA_VIA_LCD=y CONFIG_VIDEO_VGA_EXTERNAL_DAC_EN="PH25" CONFIG_DEFAULT_DEVICE_TREE="sun6i-a31-hummingbird" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/Hyundai_A7HD_defconfig b/configs/Hyundai_A7HD_defconfig index fef3685f2e..41cb87751b 100644 --- a/configs/Hyundai_A7HD_defconfig +++ b/configs/Hyundai_A7HD_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN4I=y CONFIG_DRAM_EMR1=4 CONFIG_USB0_VBUS_PIN="PB09" diff --git a/configs/Itead_Ibox_A20_defconfig b/configs/Itead_Ibox_A20_defconfig index cb6dfe4d10..1a8fad7d0f 100644 --- a/configs/Itead_Ibox_A20_defconfig +++ b/configs/Itead_Ibox_A20_defconfig @@ -1,12 +1,13 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN7I=y CONFIG_DRAM_CLK=480 CONFIG_MMC0_CD_PIN="PH1" CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-itead-ibox" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,AHCI,SATAPWR=SUNXI_GPB(8)" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/Lamobo_R1_defconfig b/configs/Lamobo_R1_defconfig index d2111c6b41..c2fc2b3f78 100644 --- a/configs/Lamobo_R1_defconfig +++ b/configs/Lamobo_R1_defconfig @@ -1,13 +1,14 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN7I=y CONFIG_DRAM_CLK=432 CONFIG_MMC0_CD_PIN="PH10" CONFIG_GMAC_TX_DELAY=4 CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-lamobo-r1" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,MACPWR=SUNXI_GPH(23),AHCI,SATAPWR=SUNXI_GPB(3)" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/Linksprite_pcDuino3_Nano_defconfig b/configs/Linksprite_pcDuino3_Nano_defconfig index 378abce94b..a916e5d88e 100644 --- a/configs/Linksprite_pcDuino3_Nano_defconfig +++ b/configs/Linksprite_pcDuino3_Nano_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN7I=y CONFIG_DRAM_CLK=408 CONFIG_DRAM_ZQ=122 @@ -7,8 +8,8 @@ CONFIG_USB1_VBUS_PIN="PH11" CONFIG_GMAC_TX_DELAY=3 CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-pcduino3-nano" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,AHCI,SATAPWR=SUNXI_GPH(2)" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/Linksprite_pcDuino3_defconfig b/configs/Linksprite_pcDuino3_defconfig index c3f0421e91..8eea214284 100644 --- a/configs/Linksprite_pcDuino3_defconfig +++ b/configs/Linksprite_pcDuino3_defconfig @@ -1,12 +1,13 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN7I=y CONFIG_DRAM_CLK=480 CONFIG_DRAM_ZQ=122 CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-pcduino3" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,AHCI,SATAPWR=SUNXI_GPH(2)" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/Linksprite_pcDuino_defconfig b/configs/Linksprite_pcDuino_defconfig index 9d8d3251e1..ab094a6553 100644 --- a/configs/Linksprite_pcDuino_defconfig +++ b/configs/Linksprite_pcDuino_defconfig @@ -1,12 +1,13 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN4I=y CONFIG_USB1_VBUS_PIN="" CONFIG_USB2_VBUS_PIN="" CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-pcduino" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_EMAC" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/MIP405T_defconfig b/configs/MIP405T_defconfig index c9913ae3af..e5910cd3b1 100644 --- a/configs/MIP405T_defconfig +++ b/configs/MIP405T_defconfig @@ -1,7 +1,7 @@ CONFIG_PPC=y +CONFIG_IDENT_STRING="\n(c) 2003 by MPL AG Switzerland, MEV-10082-001 released" CONFIG_4xx=y -CONFIG_TARGET_MIP405=y -CONFIG_SYS_EXTRA_OPTIONS="MIP405T" +CONFIG_TARGET_MIP405T=y CONFIG_BOOTDELAY=5 CONFIG_HUSH_PARSER=y CONFIG_CMD_I2C=y diff --git a/configs/MIP405_defconfig b/configs/MIP405_defconfig index c32bdd399c..a38eac1109 100644 --- a/configs/MIP405_defconfig +++ b/configs/MIP405_defconfig @@ -1,4 +1,5 @@ CONFIG_PPC=y +CONFIG_IDENT_STRING="\n(c) 2003 by MPL AG Switzerland, MEV-10072-001 released" CONFIG_4xx=y CONFIG_TARGET_MIP405=y CONFIG_BOOTDELAY=5 diff --git a/configs/MK808C_defconfig b/configs/MK808C_defconfig index 49bb26a098..1e8f9db03a 100644 --- a/configs/MK808C_defconfig +++ b/configs/MK808C_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN7I=y CONFIG_DRAM_CLK=384 CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-mk808c" diff --git a/configs/MPC8313ERDB_NAND_33_defconfig b/configs/MPC8313ERDB_NAND_33_defconfig index efabb9a1eb..c64b4e8f0d 100644 --- a/configs/MPC8313ERDB_NAND_33_defconfig +++ b/configs/MPC8313ERDB_NAND_33_defconfig @@ -1,11 +1,13 @@ CONFIG_PPC=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_MPC83xx=y CONFIG_TARGET_MPC8313ERDB=y -CONFIG_SPL=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="SYS_33MHZ,NAND" CONFIG_BOOTDELAY=6 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_I2C=y CONFIG_CMD_GPIO=y diff --git a/configs/MPC8313ERDB_NAND_66_defconfig b/configs/MPC8313ERDB_NAND_66_defconfig index be0e274867..a97f6341a5 100644 --- a/configs/MPC8313ERDB_NAND_66_defconfig +++ b/configs/MPC8313ERDB_NAND_66_defconfig @@ -1,11 +1,13 @@ CONFIG_PPC=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_MPC83xx=y CONFIG_TARGET_MPC8313ERDB=y -CONFIG_SPL=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="SYS_66MHZ,NAND" CONFIG_BOOTDELAY=6 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_I2C=y CONFIG_CMD_GPIO=y diff --git a/configs/MSI_Primo73_defconfig b/configs/MSI_Primo73_defconfig index 555944479b..87fd3b93c2 100644 --- a/configs/MSI_Primo73_defconfig +++ b/configs/MSI_Primo73_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN7I=y CONFIG_DRAM_CLK=384 CONFIG_VIDEO_LCD_MODE="x:1024,y:600,depth:18,pclk_khz:60000,le:60,ri:160,up:13,lo:12,hs:100,vs:10,sync:3,vmode:0" diff --git a/configs/Marsboard_A10_defconfig b/configs/Marsboard_A10_defconfig index cef97946f9..b1d6b23c5b 100644 --- a/configs/Marsboard_A10_defconfig +++ b/configs/Marsboard_A10_defconfig @@ -3,8 +3,8 @@ CONFIG_ARCH_SUNXI=y CONFIG_MACH_SUN4I=y CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-marsboard" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_EMAC,AHCI" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/Mele_A1000G_quad_defconfig b/configs/Mele_A1000G_quad_defconfig index 2ac2596dce..4097e5bbe0 100644 --- a/configs/Mele_A1000G_quad_defconfig +++ b/configs/Mele_A1000G_quad_defconfig @@ -7,8 +7,8 @@ CONFIG_USB1_VBUS_PIN="PC27" CONFIG_USB2_VBUS_PIN="" CONFIG_DEFAULT_DEVICE_TREE="sun6i-a31-mele-a1000g-quad" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/Mele_A1000_defconfig b/configs/Mele_A1000_defconfig index f076e30b55..eae5ead73b 100644 --- a/configs/Mele_A1000_defconfig +++ b/configs/Mele_A1000_defconfig @@ -1,12 +1,13 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN4I=y CONFIG_VIDEO_VGA=y CONFIG_VIDEO_COMPOSITE=y CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-a1000" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_EMAC,MACPWR=SUNXI_GPH(15),AHCI" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/Mele_I7_defconfig b/configs/Mele_I7_defconfig index eccf372caa..eb3c74c55d 100644 --- a/configs/Mele_I7_defconfig +++ b/configs/Mele_I7_defconfig @@ -6,8 +6,8 @@ CONFIG_USB1_VBUS_PIN="PC27" CONFIG_USB2_VBUS_PIN="" CONFIG_DEFAULT_DEVICE_TREE="sun6i-a31-i7" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/Mele_M3_defconfig b/configs/Mele_M3_defconfig index d72dcc0311..037e768c64 100644 --- a/configs/Mele_M3_defconfig +++ b/configs/Mele_M3_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN7I=y CONFIG_DRAM_CLK=384 CONFIG_MMC0_CD_PIN="PH1" @@ -8,8 +9,8 @@ CONFIG_VIDEO_VGA=y CONFIG_VIDEO_COMPOSITE=y CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-m3" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/Mele_M5_defconfig b/configs/Mele_M5_defconfig index 0d1ba151e2..124dc22f5d 100644 --- a/configs/Mele_M5_defconfig +++ b/configs/Mele_M5_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN7I=y CONFIG_DRAM_CLK=432 CONFIG_DRAM_ZQ=122 @@ -7,8 +8,8 @@ CONFIG_MMC0_CD_PIN="PH1" CONFIG_VIDEO_COMPOSITE=y CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-m5" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,AHCI,STATUSLED=234" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/Mele_M9_defconfig b/configs/Mele_M9_defconfig index f0b4384239..c4e599351f 100644 --- a/configs/Mele_M9_defconfig +++ b/configs/Mele_M9_defconfig @@ -6,8 +6,8 @@ CONFIG_USB1_VBUS_PIN="PC27" CONFIG_USB2_VBUS_PIN="" CONFIG_DEFAULT_DEVICE_TREE="sun6i-a31-m9" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/Mini-X_defconfig b/configs/Mini-X_defconfig index 53f9bfe9cb..87fac822cc 100644 --- a/configs/Mini-X_defconfig +++ b/configs/Mini-X_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN4I=y CONFIG_USB0_VBUS_PIN="PB9" CONFIG_VIDEO_COMPOSITE=y diff --git a/configs/Orangepi_defconfig b/configs/Orangepi_defconfig index 00c671b12c..c3eaae2cb4 100644 --- a/configs/Orangepi_defconfig +++ b/configs/Orangepi_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN7I=y CONFIG_DRAM_CLK=432 CONFIG_USB1_VBUS_PIN="PH26" @@ -9,8 +10,8 @@ CONFIG_VIDEO_COMPOSITE=y CONFIG_GMAC_TX_DELAY=3 CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-orangepi" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,MACPWR=SUNXI_GPH(23),AHCI" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/Orangepi_mini_defconfig b/configs/Orangepi_mini_defconfig index a8652554e4..2903d8359e 100644 --- a/configs/Orangepi_mini_defconfig +++ b/configs/Orangepi_mini_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN7I=y CONFIG_DRAM_CLK=432 CONFIG_MMC0_CD_PIN="PH10" @@ -11,8 +12,8 @@ CONFIG_VIDEO_COMPOSITE=y CONFIG_GMAC_TX_DELAY=3 CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-orangepi-mini" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,MACPWR=SUNXI_GPH(23),AHCI" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig b/configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig index 003b33222d..864643c3c5 100644 --- a/configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig +++ b/configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig @@ -28,4 +28,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/P1010RDB-PA_36BIT_NAND_defconfig b/configs/P1010RDB-PA_36BIT_NAND_defconfig index 42dbec3b3b..fc14f50691 100644 --- a/configs/P1010RDB-PA_36BIT_NAND_defconfig +++ b/configs/P1010RDB-PA_36BIT_NAND_defconfig @@ -1,15 +1,24 @@ CONFIG_PPC=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1010RDB=y CONFIG_PHYS_64BIT=y -CONFIG_SPL=y -CONFIG_TPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_TPL_ENV_SUPPORT=y +CONFIG_TPL_I2C_SUPPORT=y +CONFIG_TPL_LIBCOMMON_SUPPORT=y +CONFIG_TPL_LIBGENERIC_SUPPORT=y +CONFIG_TPL_MPC8XXX_INIT_DDR_SUPPORT=y +CONFIG_TPL_SERIAL_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig b/configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig index 55f0765265..17dd94b8f3 100644 --- a/configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig +++ b/configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig @@ -28,4 +28,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/P1010RDB-PA_36BIT_SDCARD_defconfig b/configs/P1010RDB-PA_36BIT_SDCARD_defconfig index 34e7d8ffd2..400638309c 100644 --- a/configs/P1010RDB-PA_36BIT_SDCARD_defconfig +++ b/configs/P1010RDB-PA_36BIT_SDCARD_defconfig @@ -1,14 +1,22 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1010RDB=y CONFIG_PHYS_64BIT=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig b/configs/P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig index 63b9c31953..6ff1f501a7 100644 --- a/configs/P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig +++ b/configs/P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig @@ -28,4 +28,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig b/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig index 154c7907c6..94f15018c9 100644 --- a/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig +++ b/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig @@ -1,14 +1,23 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1010RDB=y CONFIG_PHYS_64BIT=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,SPIFLASH" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1010RDB-PA_NAND_SECBOOT_defconfig b/configs/P1010RDB-PA_NAND_SECBOOT_defconfig index 5f6d184bd2..911f607bbc 100644 --- a/configs/P1010RDB-PA_NAND_SECBOOT_defconfig +++ b/configs/P1010RDB-PA_NAND_SECBOOT_defconfig @@ -27,4 +27,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/P1010RDB-PA_NAND_defconfig b/configs/P1010RDB-PA_NAND_defconfig index 5bdcae013f..db003eff7b 100644 --- a/configs/P1010RDB-PA_NAND_defconfig +++ b/configs/P1010RDB-PA_NAND_defconfig @@ -1,14 +1,23 @@ CONFIG_PPC=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1010RDB=y -CONFIG_SPL=y -CONFIG_TPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_TPL_ENV_SUPPORT=y +CONFIG_TPL_I2C_SUPPORT=y +CONFIG_TPL_LIBCOMMON_SUPPORT=y +CONFIG_TPL_LIBGENERIC_SUPPORT=y +CONFIG_TPL_MPC8XXX_INIT_DDR_SUPPORT=y +CONFIG_TPL_SERIAL_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1010RDB-PA_NOR_SECBOOT_defconfig b/configs/P1010RDB-PA_NOR_SECBOOT_defconfig index e0dff127b5..9599528784 100644 --- a/configs/P1010RDB-PA_NOR_SECBOOT_defconfig +++ b/configs/P1010RDB-PA_NOR_SECBOOT_defconfig @@ -27,4 +27,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/P1010RDB-PA_SDCARD_defconfig b/configs/P1010RDB-PA_SDCARD_defconfig index eb96978903..d8d069eaf1 100644 --- a/configs/P1010RDB-PA_SDCARD_defconfig +++ b/configs/P1010RDB-PA_SDCARD_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1010RDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig b/configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig index f1a2705a06..7050462d7b 100644 --- a/configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig +++ b/configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig @@ -27,4 +27,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/P1010RDB-PA_SPIFLASH_defconfig b/configs/P1010RDB-PA_SPIFLASH_defconfig index 1cec61af1e..b8229fac3b 100644 --- a/configs/P1010RDB-PA_SPIFLASH_defconfig +++ b/configs/P1010RDB-PA_SPIFLASH_defconfig @@ -1,13 +1,22 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1010RDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,SPIFLASH" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig b/configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig index 4639c2ee14..55da2e409d 100644 --- a/configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig +++ b/configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig @@ -28,4 +28,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/P1010RDB-PB_36BIT_NAND_defconfig b/configs/P1010RDB-PB_36BIT_NAND_defconfig index 30563100f1..dd170a50a1 100644 --- a/configs/P1010RDB-PB_36BIT_NAND_defconfig +++ b/configs/P1010RDB-PB_36BIT_NAND_defconfig @@ -1,15 +1,24 @@ CONFIG_PPC=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1010RDB=y CONFIG_PHYS_64BIT=y -CONFIG_SPL=y -CONFIG_TPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_TPL_ENV_SUPPORT=y +CONFIG_TPL_I2C_SUPPORT=y +CONFIG_TPL_LIBCOMMON_SUPPORT=y +CONFIG_TPL_LIBGENERIC_SUPPORT=y +CONFIG_TPL_MPC8XXX_INIT_DDR_SUPPORT=y +CONFIG_TPL_SERIAL_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig b/configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig index b70ff00e67..166df053cc 100644 --- a/configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig +++ b/configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig @@ -28,4 +28,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/P1010RDB-PB_36BIT_SDCARD_defconfig b/configs/P1010RDB-PB_36BIT_SDCARD_defconfig index f4a9b37f64..b907459560 100644 --- a/configs/P1010RDB-PB_36BIT_SDCARD_defconfig +++ b/configs/P1010RDB-PB_36BIT_SDCARD_defconfig @@ -1,14 +1,22 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1010RDB=y CONFIG_PHYS_64BIT=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig b/configs/P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig index 5392e61186..f26fa72221 100644 --- a/configs/P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig +++ b/configs/P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig @@ -28,4 +28,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig b/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig index 9263b6892f..e87c9d6ae8 100644 --- a/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig +++ b/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig @@ -1,14 +1,23 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1010RDB=y CONFIG_PHYS_64BIT=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,SPIFLASH" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1010RDB-PB_NAND_SECBOOT_defconfig b/configs/P1010RDB-PB_NAND_SECBOOT_defconfig index 61d503db76..7fad176751 100644 --- a/configs/P1010RDB-PB_NAND_SECBOOT_defconfig +++ b/configs/P1010RDB-PB_NAND_SECBOOT_defconfig @@ -27,4 +27,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/P1010RDB-PB_NAND_defconfig b/configs/P1010RDB-PB_NAND_defconfig index f2aefddfd4..11f0866df5 100644 --- a/configs/P1010RDB-PB_NAND_defconfig +++ b/configs/P1010RDB-PB_NAND_defconfig @@ -1,14 +1,24 @@ CONFIG_PPC=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1010RDB=y -CONFIG_SPL=y -CONFIG_TPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_TPL_ENV_SUPPORT=y +CONFIG_TPL_I2C_SUPPORT=y +CONFIG_TPL_LIBCOMMON_SUPPORT=y +CONFIG_TPL_LIBGENERIC_SUPPORT=y +CONFIG_TPL_MPC8XXX_INIT_DDR_SUPPORT=y +CONFIG_TPL_NAND_SUPPORT=y +CONFIG_TPL_SERIAL_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1010RDB-PB_NOR_SECBOOT_defconfig b/configs/P1010RDB-PB_NOR_SECBOOT_defconfig index 899c8c83cf..6282ccb36d 100644 --- a/configs/P1010RDB-PB_NOR_SECBOOT_defconfig +++ b/configs/P1010RDB-PB_NOR_SECBOOT_defconfig @@ -27,4 +27,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/P1010RDB-PB_SDCARD_defconfig b/configs/P1010RDB-PB_SDCARD_defconfig index 3b17795820..613131a053 100644 --- a/configs/P1010RDB-PB_SDCARD_defconfig +++ b/configs/P1010RDB-PB_SDCARD_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1010RDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig b/configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig index 832d3aec3d..c2238d618a 100644 --- a/configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig +++ b/configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig @@ -27,4 +27,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/P1010RDB-PB_SPIFLASH_defconfig b/configs/P1010RDB-PB_SPIFLASH_defconfig index a6b53b9630..fb7334b566 100644 --- a/configs/P1010RDB-PB_SPIFLASH_defconfig +++ b/configs/P1010RDB-PB_SPIFLASH_defconfig @@ -1,13 +1,22 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1010RDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,SPIFLASH" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1020MBG-PC_36BIT_SDCARD_defconfig b/configs/P1020MBG-PC_36BIT_SDCARD_defconfig index 1af48fdb27..9858190deb 100644 --- a/configs/P1020MBG-PC_36BIT_SDCARD_defconfig +++ b/configs/P1020MBG-PC_36BIT_SDCARD_defconfig @@ -1,14 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y CONFIG_PHYS_64BIT=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1020MBG,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_I2C=y diff --git a/configs/P1020MBG-PC_SDCARD_defconfig b/configs/P1020MBG-PC_SDCARD_defconfig index f22730e66b..fe73db8769 100644 --- a/configs/P1020MBG-PC_SDCARD_defconfig +++ b/configs/P1020MBG-PC_SDCARD_defconfig @@ -1,13 +1,20 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1020MBG,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_I2C=y diff --git a/configs/P1020RDB-PC_36BIT_NAND_defconfig b/configs/P1020RDB-PC_36BIT_NAND_defconfig index b715c768af..ca98c3122a 100644 --- a/configs/P1020RDB-PC_36BIT_NAND_defconfig +++ b/configs/P1020RDB-PC_36BIT_NAND_defconfig @@ -1,15 +1,23 @@ CONFIG_PPC=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y CONFIG_PHYS_64BIT=y -CONFIG_SPL=y -CONFIG_TPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PC,NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_TPL_ENV_SUPPORT=y +CONFIG_TPL_I2C_SUPPORT=y +CONFIG_TPL_LIBCOMMON_SUPPORT=y +CONFIG_TPL_LIBGENERIC_SUPPORT=y +CONFIG_TPL_MPC8XXX_INIT_DDR_SUPPORT=y +CONFIG_TPL_SERIAL_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1020RDB-PC_36BIT_SDCARD_defconfig b/configs/P1020RDB-PC_36BIT_SDCARD_defconfig index 7951088b51..ffaca1e11d 100644 --- a/configs/P1020RDB-PC_36BIT_SDCARD_defconfig +++ b/configs/P1020RDB-PC_36BIT_SDCARD_defconfig @@ -1,14 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y CONFIG_PHYS_64BIT=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PC,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig b/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig index 0dba3b8d81..4caaad493c 100644 --- a/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig +++ b/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig @@ -1,14 +1,22 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y CONFIG_PHYS_64BIT=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PC,SPIFLASH" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1020RDB-PC_NAND_defconfig b/configs/P1020RDB-PC_NAND_defconfig index 8aebfd2bda..4dea4a1d0d 100644 --- a/configs/P1020RDB-PC_NAND_defconfig +++ b/configs/P1020RDB-PC_NAND_defconfig @@ -1,14 +1,22 @@ CONFIG_PPC=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y -CONFIG_SPL=y -CONFIG_TPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PC,NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_TPL_ENV_SUPPORT=y +CONFIG_TPL_I2C_SUPPORT=y +CONFIG_TPL_LIBCOMMON_SUPPORT=y +CONFIG_TPL_LIBGENERIC_SUPPORT=y +CONFIG_TPL_MPC8XXX_INIT_DDR_SUPPORT=y +CONFIG_TPL_SERIAL_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1020RDB-PC_SDCARD_defconfig b/configs/P1020RDB-PC_SDCARD_defconfig index 71d1d0e105..83fed219cf 100644 --- a/configs/P1020RDB-PC_SDCARD_defconfig +++ b/configs/P1020RDB-PC_SDCARD_defconfig @@ -1,13 +1,20 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PC,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1020RDB-PC_SPIFLASH_defconfig b/configs/P1020RDB-PC_SPIFLASH_defconfig index ec7f62f011..fa3b7f078b 100644 --- a/configs/P1020RDB-PC_SPIFLASH_defconfig +++ b/configs/P1020RDB-PC_SPIFLASH_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PC,SPIFLASH" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1020RDB-PD_NAND_defconfig b/configs/P1020RDB-PD_NAND_defconfig index 62d7e58b49..f2d8fe2124 100644 --- a/configs/P1020RDB-PD_NAND_defconfig +++ b/configs/P1020RDB-PD_NAND_defconfig @@ -1,14 +1,22 @@ CONFIG_PPC=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y -CONFIG_SPL=y -CONFIG_TPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PD,NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_TPL_ENV_SUPPORT=y +CONFIG_TPL_I2C_SUPPORT=y +CONFIG_TPL_LIBCOMMON_SUPPORT=y +CONFIG_TPL_LIBGENERIC_SUPPORT=y +CONFIG_TPL_MPC8XXX_INIT_DDR_SUPPORT=y +CONFIG_TPL_SERIAL_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1020RDB-PD_SDCARD_defconfig b/configs/P1020RDB-PD_SDCARD_defconfig index 4606ab558f..80516e0b50 100644 --- a/configs/P1020RDB-PD_SDCARD_defconfig +++ b/configs/P1020RDB-PD_SDCARD_defconfig @@ -1,13 +1,20 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PD,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1020RDB-PD_SPIFLASH_defconfig b/configs/P1020RDB-PD_SPIFLASH_defconfig index 8a4383c98c..6ac21e7042 100644 --- a/configs/P1020RDB-PD_SPIFLASH_defconfig +++ b/configs/P1020RDB-PD_SPIFLASH_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PD,SPIFLASH" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1020UTM-PC_36BIT_SDCARD_defconfig b/configs/P1020UTM-PC_36BIT_SDCARD_defconfig index bea36b55f9..1e7c60872e 100644 --- a/configs/P1020UTM-PC_36BIT_SDCARD_defconfig +++ b/configs/P1020UTM-PC_36BIT_SDCARD_defconfig @@ -1,14 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y CONFIG_PHYS_64BIT=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1020UTM,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_I2C=y diff --git a/configs/P1020UTM-PC_SDCARD_defconfig b/configs/P1020UTM-PC_SDCARD_defconfig index 94ba43df12..20353a7800 100644 --- a/configs/P1020UTM-PC_SDCARD_defconfig +++ b/configs/P1020UTM-PC_SDCARD_defconfig @@ -1,13 +1,20 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1020UTM,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_I2C=y diff --git a/configs/P1021RDB-PC_36BIT_NAND_defconfig b/configs/P1021RDB-PC_36BIT_NAND_defconfig index bc912d01d5..d06aa5732a 100644 --- a/configs/P1021RDB-PC_36BIT_NAND_defconfig +++ b/configs/P1021RDB-PC_36BIT_NAND_defconfig @@ -1,15 +1,23 @@ CONFIG_PPC=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y CONFIG_PHYS_64BIT=y -CONFIG_SPL=y -CONFIG_TPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1021RDB,NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_TPL_ENV_SUPPORT=y +CONFIG_TPL_I2C_SUPPORT=y +CONFIG_TPL_LIBCOMMON_SUPPORT=y +CONFIG_TPL_LIBGENERIC_SUPPORT=y +CONFIG_TPL_MPC8XXX_INIT_DDR_SUPPORT=y +CONFIG_TPL_SERIAL_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1021RDB-PC_36BIT_SDCARD_defconfig b/configs/P1021RDB-PC_36BIT_SDCARD_defconfig index eca4c599f1..98705dd359 100644 --- a/configs/P1021RDB-PC_36BIT_SDCARD_defconfig +++ b/configs/P1021RDB-PC_36BIT_SDCARD_defconfig @@ -1,14 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y CONFIG_PHYS_64BIT=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1021RDB,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig b/configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig index b1b57afa52..bc002af1a2 100644 --- a/configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig +++ b/configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig @@ -1,14 +1,22 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y CONFIG_PHYS_64BIT=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1021RDB,SPIFLASH" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1021RDB-PC_NAND_defconfig b/configs/P1021RDB-PC_NAND_defconfig index 139be5af01..ebfc053f21 100644 --- a/configs/P1021RDB-PC_NAND_defconfig +++ b/configs/P1021RDB-PC_NAND_defconfig @@ -1,14 +1,22 @@ CONFIG_PPC=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y -CONFIG_SPL=y -CONFIG_TPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1021RDB,NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_TPL_ENV_SUPPORT=y +CONFIG_TPL_I2C_SUPPORT=y +CONFIG_TPL_LIBCOMMON_SUPPORT=y +CONFIG_TPL_LIBGENERIC_SUPPORT=y +CONFIG_TPL_MPC8XXX_INIT_DDR_SUPPORT=y +CONFIG_TPL_SERIAL_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1021RDB-PC_SDCARD_defconfig b/configs/P1021RDB-PC_SDCARD_defconfig index 5891165c09..c9e4ed7608 100644 --- a/configs/P1021RDB-PC_SDCARD_defconfig +++ b/configs/P1021RDB-PC_SDCARD_defconfig @@ -1,13 +1,20 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1021RDB,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1021RDB-PC_SPIFLASH_defconfig b/configs/P1021RDB-PC_SPIFLASH_defconfig index e5be60e9f0..2fd40b76fd 100644 --- a/configs/P1021RDB-PC_SPIFLASH_defconfig +++ b/configs/P1021RDB-PC_SPIFLASH_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1021RDB,SPIFLASH" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1022DS_36BIT_NAND_defconfig b/configs/P1022DS_36BIT_NAND_defconfig index 8303305eed..3d63c8e19c 100644 --- a/configs/P1022DS_36BIT_NAND_defconfig +++ b/configs/P1022DS_36BIT_NAND_defconfig @@ -1,15 +1,23 @@ CONFIG_PPC=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1022DS=y CONFIG_PHYS_64BIT=y -CONFIG_SPL=y -CONFIG_TPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_TPL_ENV_SUPPORT=y +CONFIG_TPL_I2C_SUPPORT=y +CONFIG_TPL_LIBCOMMON_SUPPORT=y +CONFIG_TPL_LIBGENERIC_SUPPORT=y +CONFIG_TPL_MPC8XXX_INIT_DDR_SUPPORT=y +CONFIG_TPL_SERIAL_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1022DS_36BIT_SDCARD_defconfig b/configs/P1022DS_36BIT_SDCARD_defconfig index e365f1b5c7..19f0b0df82 100644 --- a/configs/P1022DS_36BIT_SDCARD_defconfig +++ b/configs/P1022DS_36BIT_SDCARD_defconfig @@ -1,14 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1022DS=y CONFIG_PHYS_64BIT=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1022DS_36BIT_SPIFLASH_defconfig b/configs/P1022DS_36BIT_SPIFLASH_defconfig index f0ea572167..fdf969dbf9 100644 --- a/configs/P1022DS_36BIT_SPIFLASH_defconfig +++ b/configs/P1022DS_36BIT_SPIFLASH_defconfig @@ -1,14 +1,22 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1022DS=y CONFIG_PHYS_64BIT=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="SPIFLASH" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1022DS_NAND_defconfig b/configs/P1022DS_NAND_defconfig index 4292b514ac..11efa4812b 100644 --- a/configs/P1022DS_NAND_defconfig +++ b/configs/P1022DS_NAND_defconfig @@ -1,14 +1,23 @@ CONFIG_PPC=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1022DS=y -CONFIG_SPL=y -CONFIG_TPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_TPL_ENV_SUPPORT=y +CONFIG_TPL_I2C_SUPPORT=y +CONFIG_TPL_LIBCOMMON_SUPPORT=y +CONFIG_TPL_LIBGENERIC_SUPPORT=y +CONFIG_TPL_MPC8XXX_INIT_DDR_SUPPORT=y +CONFIG_TPL_NAND_SUPPORT=y +CONFIG_TPL_SERIAL_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1022DS_SDCARD_defconfig b/configs/P1022DS_SDCARD_defconfig index 55fc15d681..1f1f62120c 100644 --- a/configs/P1022DS_SDCARD_defconfig +++ b/configs/P1022DS_SDCARD_defconfig @@ -1,13 +1,20 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1022DS=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1022DS_SPIFLASH_defconfig b/configs/P1022DS_SPIFLASH_defconfig index d921bd7ad7..60b4981b7e 100644 --- a/configs/P1022DS_SPIFLASH_defconfig +++ b/configs/P1022DS_SPIFLASH_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1022DS=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="SPIFLASH" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1024RDB_NAND_defconfig b/configs/P1024RDB_NAND_defconfig index 082aaa9f53..36d0867a0c 100644 --- a/configs/P1024RDB_NAND_defconfig +++ b/configs/P1024RDB_NAND_defconfig @@ -1,14 +1,22 @@ CONFIG_PPC=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y -CONFIG_SPL=y -CONFIG_TPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1024RDB,NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_TPL_ENV_SUPPORT=y +CONFIG_TPL_I2C_SUPPORT=y +CONFIG_TPL_LIBCOMMON_SUPPORT=y +CONFIG_TPL_LIBGENERIC_SUPPORT=y +CONFIG_TPL_MPC8XXX_INIT_DDR_SUPPORT=y +CONFIG_TPL_SERIAL_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1024RDB_SDCARD_defconfig b/configs/P1024RDB_SDCARD_defconfig index 529b9fd58b..9bbbae1915 100644 --- a/configs/P1024RDB_SDCARD_defconfig +++ b/configs/P1024RDB_SDCARD_defconfig @@ -1,13 +1,20 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1024RDB,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1024RDB_SPIFLASH_defconfig b/configs/P1024RDB_SPIFLASH_defconfig index ef7fb02fb5..837b0692c6 100644 --- a/configs/P1024RDB_SPIFLASH_defconfig +++ b/configs/P1024RDB_SPIFLASH_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1024RDB,SPIFLASH" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1025RDB_NAND_defconfig b/configs/P1025RDB_NAND_defconfig index 02d6d06f44..0cf5bd24c3 100644 --- a/configs/P1025RDB_NAND_defconfig +++ b/configs/P1025RDB_NAND_defconfig @@ -1,14 +1,23 @@ CONFIG_PPC=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y -CONFIG_SPL=y -CONFIG_TPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1025RDB,NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_TPL_ENV_SUPPORT=y +CONFIG_TPL_I2C_SUPPORT=y +CONFIG_TPL_LIBCOMMON_SUPPORT=y +CONFIG_TPL_LIBGENERIC_SUPPORT=y +CONFIG_TPL_MPC8XXX_INIT_DDR_SUPPORT=y +CONFIG_TPL_NAND_SUPPORT=y +CONFIG_TPL_SERIAL_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1025RDB_SDCARD_defconfig b/configs/P1025RDB_SDCARD_defconfig index b494a358dd..c9eda77588 100644 --- a/configs/P1025RDB_SDCARD_defconfig +++ b/configs/P1025RDB_SDCARD_defconfig @@ -1,13 +1,20 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1025RDB,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P1025RDB_SPIFLASH_defconfig b/configs/P1025RDB_SPIFLASH_defconfig index 3bae2a8034..a990a5e9e4 100644 --- a/configs/P1025RDB_SPIFLASH_defconfig +++ b/configs/P1025RDB_SPIFLASH_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P1025RDB,SPIFLASH" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P2020RDB-PC_36BIT_NAND_defconfig b/configs/P2020RDB-PC_36BIT_NAND_defconfig index 8b86e928b0..1661db21d2 100644 --- a/configs/P2020RDB-PC_36BIT_NAND_defconfig +++ b/configs/P2020RDB-PC_36BIT_NAND_defconfig @@ -1,15 +1,24 @@ CONFIG_PPC=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y CONFIG_PHYS_64BIT=y -CONFIG_SPL=y -CONFIG_TPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P2020RDB,NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_TPL_ENV_SUPPORT=y +CONFIG_TPL_I2C_SUPPORT=y +CONFIG_TPL_LIBCOMMON_SUPPORT=y +CONFIG_TPL_LIBGENERIC_SUPPORT=y +CONFIG_TPL_MPC8XXX_INIT_DDR_SUPPORT=y +CONFIG_TPL_NAND_SUPPORT=y +CONFIG_TPL_SERIAL_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P2020RDB-PC_36BIT_SDCARD_defconfig b/configs/P2020RDB-PC_36BIT_SDCARD_defconfig index e1d1b12377..220bafc2b6 100644 --- a/configs/P2020RDB-PC_36BIT_SDCARD_defconfig +++ b/configs/P2020RDB-PC_36BIT_SDCARD_defconfig @@ -1,14 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y CONFIG_PHYS_64BIT=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P2020RDB,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig b/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig index f4e3c6ec86..ebb89dde64 100644 --- a/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig +++ b/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig @@ -1,14 +1,22 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y CONFIG_PHYS_64BIT=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P2020RDB,SPIFLASH" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P2020RDB-PC_NAND_defconfig b/configs/P2020RDB-PC_NAND_defconfig index ebf61aaea1..4af6039ac9 100644 --- a/configs/P2020RDB-PC_NAND_defconfig +++ b/configs/P2020RDB-PC_NAND_defconfig @@ -1,14 +1,22 @@ CONFIG_PPC=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y -CONFIG_SPL=y -CONFIG_TPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P2020RDB,NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_TPL_ENV_SUPPORT=y +CONFIG_TPL_I2C_SUPPORT=y +CONFIG_TPL_LIBCOMMON_SUPPORT=y +CONFIG_TPL_LIBGENERIC_SUPPORT=y +CONFIG_TPL_MPC8XXX_INIT_DDR_SUPPORT=y +CONFIG_TPL_SERIAL_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P2020RDB-PC_SDCARD_defconfig b/configs/P2020RDB-PC_SDCARD_defconfig index 88f211f21d..fc8378b32c 100644 --- a/configs/P2020RDB-PC_SDCARD_defconfig +++ b/configs/P2020RDB-PC_SDCARD_defconfig @@ -1,13 +1,20 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P2020RDB,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P2020RDB-PC_SPIFLASH_defconfig b/configs/P2020RDB-PC_SPIFLASH_defconfig index cffbf4bd9c..754ef24c75 100644 --- a/configs/P2020RDB-PC_SPIFLASH_defconfig +++ b/configs/P2020RDB-PC_SPIFLASH_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_P1_P2_RDB_PC=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="P2020RDB,SPIFLASH" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/P2041RDB_SECURE_BOOT_defconfig b/configs/P2041RDB_SECURE_BOOT_defconfig index cc572ff056..295919a3d0 100644 --- a/configs/P2041RDB_SECURE_BOOT_defconfig +++ b/configs/P2041RDB_SECURE_BOOT_defconfig @@ -29,4 +29,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/P3041DS_NAND_SECURE_BOOT_defconfig b/configs/P3041DS_NAND_SECURE_BOOT_defconfig index c88b0e2997..a359708df6 100644 --- a/configs/P3041DS_NAND_SECURE_BOOT_defconfig +++ b/configs/P3041DS_NAND_SECURE_BOOT_defconfig @@ -29,4 +29,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/P3041DS_SECURE_BOOT_defconfig b/configs/P3041DS_SECURE_BOOT_defconfig index 6fdbbb6177..89108b569b 100644 --- a/configs/P3041DS_SECURE_BOOT_defconfig +++ b/configs/P3041DS_SECURE_BOOT_defconfig @@ -29,4 +29,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/P4080DS_SECURE_BOOT_defconfig b/configs/P4080DS_SECURE_BOOT_defconfig index 97d5da9b57..51b2bb58c3 100644 --- a/configs/P4080DS_SECURE_BOOT_defconfig +++ b/configs/P4080DS_SECURE_BOOT_defconfig @@ -29,4 +29,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/P5020DS_NAND_SECURE_BOOT_defconfig b/configs/P5020DS_NAND_SECURE_BOOT_defconfig index 04da20791a..d89326ceb2 100644 --- a/configs/P5020DS_NAND_SECURE_BOOT_defconfig +++ b/configs/P5020DS_NAND_SECURE_BOOT_defconfig @@ -29,4 +29,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/P5020DS_SECURE_BOOT_defconfig b/configs/P5020DS_SECURE_BOOT_defconfig index 313f95d37a..074d15960b 100644 --- a/configs/P5020DS_SECURE_BOOT_defconfig +++ b/configs/P5020DS_SECURE_BOOT_defconfig @@ -29,4 +29,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/P5040DS_NAND_SECURE_BOOT_defconfig b/configs/P5040DS_NAND_SECURE_BOOT_defconfig index 9d2f97f621..abe6de251b 100644 --- a/configs/P5040DS_NAND_SECURE_BOOT_defconfig +++ b/configs/P5040DS_NAND_SECURE_BOOT_defconfig @@ -29,4 +29,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/P5040DS_SECURE_BOOT_defconfig b/configs/P5040DS_SECURE_BOOT_defconfig index 68c1b3b02f..0b9b0d12c1 100644 --- a/configs/P5040DS_SECURE_BOOT_defconfig +++ b/configs/P5040DS_SECURE_BOOT_defconfig @@ -29,4 +29,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/PATI_defconfig b/configs/PATI_defconfig index 53fdfad6fe..80f077ada2 100644 --- a/configs/PATI_defconfig +++ b/configs/PATI_defconfig @@ -1,4 +1,5 @@ CONFIG_PPC=y +CONFIG_IDENT_STRING="\n(c) 2003 by MPL AG Switzerland, MEV-10084-001 released" CONFIG_5xx=y CONFIG_TARGET_PATI=y CONFIG_BOOTDELAY=5 diff --git a/configs/PIP405_defconfig b/configs/PIP405_defconfig index 8ed89a9883..87f2f31f6a 100644 --- a/configs/PIP405_defconfig +++ b/configs/PIP405_defconfig @@ -1,4 +1,5 @@ CONFIG_PPC=y +CONFIG_IDENT_STRING="\n(c) 2002 by MPL AG Switzerland, MEV-10066-001 released" CONFIG_4xx=y CONFIG_TARGET_PIP405=y CONFIG_BOOTDELAY=5 diff --git a/configs/PLU405_defconfig b/configs/PLU405_defconfig index e84a88e44b..f694f77509 100644 --- a/configs/PLU405_defconfig +++ b/configs/PLU405_defconfig @@ -14,6 +14,7 @@ CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_STORAGE=y diff --git a/configs/Sinlinx_SinA31s_defconfig b/configs/Sinlinx_SinA31s_defconfig index ae1f1e83aa..9ac89121bc 100644 --- a/configs/Sinlinx_SinA31s_defconfig +++ b/configs/Sinlinx_SinA31s_defconfig @@ -10,8 +10,8 @@ CONFIG_USB1_VBUS_PIN="" CONFIG_USB2_VBUS_PIN="" CONFIG_DEFAULT_DEVICE_TREE="sun6i-a31s-sina31s" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/Sinlinx_SinA33_defconfig b/configs/Sinlinx_SinA33_defconfig index 013c35e1a8..b41bf67965 100644 --- a/configs/Sinlinx_SinA33_defconfig +++ b/configs/Sinlinx_SinA33_defconfig @@ -3,9 +3,19 @@ CONFIG_ARCH_SUNXI=y CONFIG_MACH_SUN8I_A33=y CONFIG_DRAM_CLK=552 CONFIG_DRAM_ZQ=15291 +CONFIG_MMC0_CD_PIN="PB4" +CONFIG_USB0_ID_DET="PH8" CONFIG_DEFAULT_DEVICE_TREE="sun8i-a33-sinlinx-sina33" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set +CONFIG_CMD_DFU=y # CONFIG_CMD_FPGA is not set +CONFIG_USB_EHCI_HCD=y +CONFIG_USB_MUSB_GADGET=y +CONFIG_USB_GADGET=y +CONFIG_USB_GADGET_DOWNLOAD=y +CONFIG_G_DNL_MANUFACTURER="Allwinner Technology" +CONFIG_G_DNL_VENDOR_NUM=0x1f3a +CONFIG_G_DNL_PRODUCT_NUM=0x1010 diff --git a/configs/Sinovoip_BPI_M2_defconfig b/configs/Sinovoip_BPI_M2_defconfig index 181e1e29da..267aaf8ad1 100644 --- a/configs/Sinovoip_BPI_M2_defconfig +++ b/configs/Sinovoip_BPI_M2_defconfig @@ -6,8 +6,8 @@ CONFIG_USB1_VBUS_PIN="" CONFIG_USB2_VBUS_PIN="" CONFIG_DEFAULT_DEVICE_TREE="sun6i-a31s-sinovoip-bpi-m2" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/Sinovoip_BPI_M3_defconfig b/configs/Sinovoip_BPI_M3_defconfig index 77b0525e11..a9c7fc10d5 100644 --- a/configs/Sinovoip_BPI_M3_defconfig +++ b/configs/Sinovoip_BPI_M3_defconfig @@ -13,8 +13,8 @@ CONFIG_USB1_VBUS_PIN="PD24" CONFIG_AXP_GPIO=y CONFIG_DEFAULT_DEVICE_TREE="sun8i-a83t-sinovoip-bpi-m3" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SATAPWR=SUNXI_GPD(25)" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/T1023RDB_NAND_defconfig b/configs/T1023RDB_NAND_defconfig index 8e6eddaeae..b24d21b3ee 100644 --- a/configs/T1023RDB_NAND_defconfig +++ b/configs/T1023RDB_NAND_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T102XRDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T1023,T1023RDB,RAMBOOT_PBL,SPL_FSL_PBL,NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y # CONFIG_CMD_IMLS is not set CONFIG_CMD_GREPENV=y diff --git a/configs/T1023RDB_SDCARD_defconfig b/configs/T1023RDB_SDCARD_defconfig index 9bf1a6910d..7f84498007 100644 --- a/configs/T1023RDB_SDCARD_defconfig +++ b/configs/T1023RDB_SDCARD_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T102XRDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T1023,T1023RDB,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y # CONFIG_CMD_IMLS is not set CONFIG_CMD_GREPENV=y diff --git a/configs/T1023RDB_SECURE_BOOT_defconfig b/configs/T1023RDB_SECURE_BOOT_defconfig index 25dd68c5b2..fa538f3447 100644 --- a/configs/T1023RDB_SECURE_BOOT_defconfig +++ b/configs/T1023RDB_SECURE_BOOT_defconfig @@ -30,4 +30,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/T1023RDB_SPIFLASH_defconfig b/configs/T1023RDB_SPIFLASH_defconfig index 42f2906936..c75abbbf0f 100644 --- a/configs/T1023RDB_SPIFLASH_defconfig +++ b/configs/T1023RDB_SPIFLASH_defconfig @@ -1,13 +1,22 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T102XRDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T1023,T1023RDB,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y # CONFIG_CMD_IMLS is not set CONFIG_CMD_GREPENV=y diff --git a/configs/T1024QDS_DDR4_SECURE_BOOT_defconfig b/configs/T1024QDS_DDR4_SECURE_BOOT_defconfig index 2c6f6ad5f7..828bb9bbad 100644 --- a/configs/T1024QDS_DDR4_SECURE_BOOT_defconfig +++ b/configs/T1024QDS_DDR4_SECURE_BOOT_defconfig @@ -31,4 +31,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/T1024QDS_NAND_defconfig b/configs/T1024QDS_NAND_defconfig index 94ecedd5fa..7173342a45 100644 --- a/configs/T1024QDS_NAND_defconfig +++ b/configs/T1024QDS_NAND_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T102XQDS=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T1024,RAMBOOT_PBL,SPL_FSL_PBL,NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/T1024QDS_SDCARD_defconfig b/configs/T1024QDS_SDCARD_defconfig index 786e5fb8d3..a1c93aedab 100644 --- a/configs/T1024QDS_SDCARD_defconfig +++ b/configs/T1024QDS_SDCARD_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T102XQDS=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T1024,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/T1024QDS_SECURE_BOOT_defconfig b/configs/T1024QDS_SECURE_BOOT_defconfig index f50275089d..371d5f6216 100644 --- a/configs/T1024QDS_SECURE_BOOT_defconfig +++ b/configs/T1024QDS_SECURE_BOOT_defconfig @@ -31,4 +31,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/T1024QDS_SPIFLASH_defconfig b/configs/T1024QDS_SPIFLASH_defconfig index 4b1a22dcc4..f134850529 100644 --- a/configs/T1024QDS_SPIFLASH_defconfig +++ b/configs/T1024QDS_SPIFLASH_defconfig @@ -1,13 +1,22 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T102XQDS=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T1024,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/T1024RDB_NAND_defconfig b/configs/T1024RDB_NAND_defconfig index 2509db0a52..91beb24d9c 100644 --- a/configs/T1024RDB_NAND_defconfig +++ b/configs/T1024RDB_NAND_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T102XRDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T1024,T1024RDB,RAMBOOT_PBL,SPL_FSL_PBL,NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MEMTEST=y diff --git a/configs/T1024RDB_SDCARD_defconfig b/configs/T1024RDB_SDCARD_defconfig index e2e38af173..11aceb89bd 100644 --- a/configs/T1024RDB_SDCARD_defconfig +++ b/configs/T1024RDB_SDCARD_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T102XRDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T1024,T1024RDB,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MEMTEST=y diff --git a/configs/T1024RDB_SECURE_BOOT_defconfig b/configs/T1024RDB_SECURE_BOOT_defconfig index cb33280400..70961ec2ed 100644 --- a/configs/T1024RDB_SECURE_BOOT_defconfig +++ b/configs/T1024RDB_SECURE_BOOT_defconfig @@ -30,4 +30,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/T1024RDB_SPIFLASH_defconfig b/configs/T1024RDB_SPIFLASH_defconfig index f9dd8a0aab..09fe6c461e 100644 --- a/configs/T1024RDB_SPIFLASH_defconfig +++ b/configs/T1024RDB_SPIFLASH_defconfig @@ -1,13 +1,22 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T102XRDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T1024,T1024RDB,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MEMTEST=y diff --git a/configs/T1040D4RDB_NAND_defconfig b/configs/T1040D4RDB_NAND_defconfig index 2cd364b4e8..e9c7708921 100644 --- a/configs/T1040D4RDB_NAND_defconfig +++ b/configs/T1040D4RDB_NAND_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T104XRDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T1040,T1040D4RDB,RAMBOOT_PBL,SPL_FSL_PBL,NAND,T104XD4RDB,SYS_FSL_DDR4" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/T1040D4RDB_SDCARD_defconfig b/configs/T1040D4RDB_SDCARD_defconfig index 9e8e246123..098ef3bffe 100644 --- a/configs/T1040D4RDB_SDCARD_defconfig +++ b/configs/T1040D4RDB_SDCARD_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T104XRDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T1040,T1040D4RDB,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD,T104XD4RDB,SYS_FSL_DDR4" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/T1040D4RDB_SECURE_BOOT_defconfig b/configs/T1040D4RDB_SECURE_BOOT_defconfig index 87ab7e282b..d727450920 100644 --- a/configs/T1040D4RDB_SECURE_BOOT_defconfig +++ b/configs/T1040D4RDB_SECURE_BOOT_defconfig @@ -29,4 +29,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/T1040D4RDB_SPIFLASH_defconfig b/configs/T1040D4RDB_SPIFLASH_defconfig index 77ab8fb3ab..002346aec1 100644 --- a/configs/T1040D4RDB_SPIFLASH_defconfig +++ b/configs/T1040D4RDB_SPIFLASH_defconfig @@ -1,13 +1,22 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T104XRDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T1040,T1040D4RDB,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH,T104XD4RDB,SYS_FSL_DDR4" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/T1040QDS_SECURE_BOOT_defconfig b/configs/T1040QDS_SECURE_BOOT_defconfig index 1b4f654d1e..ae6aacfe6a 100644 --- a/configs/T1040QDS_SECURE_BOOT_defconfig +++ b/configs/T1040QDS_SECURE_BOOT_defconfig @@ -31,4 +31,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/T1040RDB_NAND_defconfig b/configs/T1040RDB_NAND_defconfig index 26bbd62eeb..9e5a409264 100644 --- a/configs/T1040RDB_NAND_defconfig +++ b/configs/T1040RDB_NAND_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T104XRDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T1040,T1040RDB,RAMBOOT_PBL,SPL_FSL_PBL,NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/T1040RDB_SDCARD_defconfig b/configs/T1040RDB_SDCARD_defconfig index e66db8eecf..a43304bad9 100644 --- a/configs/T1040RDB_SDCARD_defconfig +++ b/configs/T1040RDB_SDCARD_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T104XRDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T1040,T1040RDB,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/T1040RDB_SECURE_BOOT_defconfig b/configs/T1040RDB_SECURE_BOOT_defconfig index 43b0539f51..e0887ded2a 100644 --- a/configs/T1040RDB_SECURE_BOOT_defconfig +++ b/configs/T1040RDB_SECURE_BOOT_defconfig @@ -29,4 +29,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/T1040RDB_SPIFLASH_defconfig b/configs/T1040RDB_SPIFLASH_defconfig index f700359402..1782e0705b 100644 --- a/configs/T1040RDB_SPIFLASH_defconfig +++ b/configs/T1040RDB_SPIFLASH_defconfig @@ -1,13 +1,22 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T104XRDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T1040,T1040RDB,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/T1042D4RDB_NAND_defconfig b/configs/T1042D4RDB_NAND_defconfig index 0547eca02c..d2772fed97 100644 --- a/configs/T1042D4RDB_NAND_defconfig +++ b/configs/T1042D4RDB_NAND_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T104XRDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T1042,T1042D4RDB,RAMBOOT_PBL,SPL_FSL_PBL,NAND,T104XD4RDB,SYS_FSL_DDR4" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/T1042D4RDB_SDCARD_defconfig b/configs/T1042D4RDB_SDCARD_defconfig index cbd2f0d7e2..f8c5d45528 100644 --- a/configs/T1042D4RDB_SDCARD_defconfig +++ b/configs/T1042D4RDB_SDCARD_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T104XRDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T1042,T1042D4RDB,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD,T104XD4RDB,SYS_FSL_DDR4" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/T1042D4RDB_SECURE_BOOT_defconfig b/configs/T1042D4RDB_SECURE_BOOT_defconfig index 97a42db967..fa3c4120ed 100644 --- a/configs/T1042D4RDB_SECURE_BOOT_defconfig +++ b/configs/T1042D4RDB_SECURE_BOOT_defconfig @@ -29,4 +29,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/T1042D4RDB_SPIFLASH_defconfig b/configs/T1042D4RDB_SPIFLASH_defconfig index 319ebe2c6b..fca612237c 100644 --- a/configs/T1042D4RDB_SPIFLASH_defconfig +++ b/configs/T1042D4RDB_SPIFLASH_defconfig @@ -1,13 +1,22 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T104XRDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T1042,T1042D4RDB,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH,T104XD4RDB,SYS_FSL_DDR4" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/T1042RDB_PI_NAND_SECURE_BOOT_defconfig b/configs/T1042RDB_PI_NAND_SECURE_BOOT_defconfig index 93d0b9bd8f..aa02cec40a 100644 --- a/configs/T1042RDB_PI_NAND_SECURE_BOOT_defconfig +++ b/configs/T1042RDB_PI_NAND_SECURE_BOOT_defconfig @@ -1,13 +1,23 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T104XRDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T1042,T1042RDB_PI,RAMBOOT_PBL,SPL_FSL_PBL,NAND,SECURE_BOOT" CONFIG_BOOTDELAY=0 +CONFIG_SPL=y +CONFIG_SPL_CRYPTO_SUPPORT=y +CONFIG_SPL_HASH_SUPPORT=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y @@ -20,6 +30,7 @@ CONFIG_CMD_PING=y CONFIG_CMD_EXT2=y CONFIG_CMD_FAT=y CONFIG_DM=y +CONFIG_SPL_DM=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y CONFIG_NETDEVICES=y @@ -29,4 +40,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/T1042RDB_PI_NAND_defconfig b/configs/T1042RDB_PI_NAND_defconfig index 1a90e8dfc9..96985aca50 100644 --- a/configs/T1042RDB_PI_NAND_defconfig +++ b/configs/T1042RDB_PI_NAND_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T104XRDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T1042,T1042RDB_PI,RAMBOOT_PBL,SPL_FSL_PBL,NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/T1042RDB_PI_SDCARD_defconfig b/configs/T1042RDB_PI_SDCARD_defconfig index 9e0926ff95..fd5da571be 100644 --- a/configs/T1042RDB_PI_SDCARD_defconfig +++ b/configs/T1042RDB_PI_SDCARD_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T104XRDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T1042,T1042RDB_PI,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/T1042RDB_PI_SPIFLASH_defconfig b/configs/T1042RDB_PI_SPIFLASH_defconfig index 351808700d..bf41ff5263 100644 --- a/configs/T1042RDB_PI_SPIFLASH_defconfig +++ b/configs/T1042RDB_PI_SPIFLASH_defconfig @@ -1,13 +1,22 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T104XRDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T1042,T1042RDB_PI,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/T1042RDB_SECURE_BOOT_defconfig b/configs/T1042RDB_SECURE_BOOT_defconfig index c9d360cffc..1539c85e3e 100644 --- a/configs/T1042RDB_SECURE_BOOT_defconfig +++ b/configs/T1042RDB_SECURE_BOOT_defconfig @@ -29,4 +29,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/T2080QDS_NAND_defconfig b/configs/T2080QDS_NAND_defconfig index a0d709a829..e42dd6b123 100644 --- a/configs/T2080QDS_NAND_defconfig +++ b/configs/T2080QDS_NAND_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T208XQDS=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080,RAMBOOT_PBL,SPL_FSL_PBL,NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/T2080QDS_SDCARD_defconfig b/configs/T2080QDS_SDCARD_defconfig index 060144b3f7..70a996575c 100644 --- a/configs/T2080QDS_SDCARD_defconfig +++ b/configs/T2080QDS_SDCARD_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T208XQDS=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/T2080QDS_SECURE_BOOT_defconfig b/configs/T2080QDS_SECURE_BOOT_defconfig index f23fb9c54d..f6174e076f 100644 --- a/configs/T2080QDS_SECURE_BOOT_defconfig +++ b/configs/T2080QDS_SECURE_BOOT_defconfig @@ -31,4 +31,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/T2080QDS_SPIFLASH_defconfig b/configs/T2080QDS_SPIFLASH_defconfig index de35db3724..93b5ed6afc 100644 --- a/configs/T2080QDS_SPIFLASH_defconfig +++ b/configs/T2080QDS_SPIFLASH_defconfig @@ -1,13 +1,22 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T208XQDS=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/T2080RDB_NAND_defconfig b/configs/T2080RDB_NAND_defconfig index ca1b699e5e..5e17f3bd51 100644 --- a/configs/T2080RDB_NAND_defconfig +++ b/configs/T2080RDB_NAND_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T208XRDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080,RAMBOOT_PBL,SPL_FSL_PBL,NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MEMTEST=y CONFIG_CMD_MMC=y diff --git a/configs/T2080RDB_SDCARD_defconfig b/configs/T2080RDB_SDCARD_defconfig index 78aaa29f82..76dcaf977e 100644 --- a/configs/T2080RDB_SDCARD_defconfig +++ b/configs/T2080RDB_SDCARD_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T208XRDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MEMTEST=y CONFIG_CMD_MMC=y diff --git a/configs/T2080RDB_SECURE_BOOT_defconfig b/configs/T2080RDB_SECURE_BOOT_defconfig index a4a9285be2..0818d9ce23 100644 --- a/configs/T2080RDB_SECURE_BOOT_defconfig +++ b/configs/T2080RDB_SECURE_BOOT_defconfig @@ -29,4 +29,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/T2080RDB_SPIFLASH_defconfig b/configs/T2080RDB_SPIFLASH_defconfig index 5de5714f94..f33fd4e61a 100644 --- a/configs/T2080RDB_SPIFLASH_defconfig +++ b/configs/T2080RDB_SPIFLASH_defconfig @@ -1,13 +1,22 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T208XRDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MEMTEST=y CONFIG_CMD_MMC=y diff --git a/configs/T2081QDS_NAND_defconfig b/configs/T2081QDS_NAND_defconfig index 0b97fdbaf6..410d375b81 100644 --- a/configs/T2081QDS_NAND_defconfig +++ b/configs/T2081QDS_NAND_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T208XQDS=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T2081,RAMBOOT_PBL,SPL_FSL_PBL,NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/T2081QDS_SDCARD_defconfig b/configs/T2081QDS_SDCARD_defconfig index 9716886e00..a0f49d7002 100644 --- a/configs/T2081QDS_SDCARD_defconfig +++ b/configs/T2081QDS_SDCARD_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T208XQDS=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T2081,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/T2081QDS_SPIFLASH_defconfig b/configs/T2081QDS_SPIFLASH_defconfig index 21a7a05072..902566d79c 100644 --- a/configs/T2081QDS_SPIFLASH_defconfig +++ b/configs/T2081QDS_SPIFLASH_defconfig @@ -1,13 +1,22 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T208XQDS=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T2081,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/T4160QDS_NAND_defconfig b/configs/T4160QDS_NAND_defconfig index e5cd04c42e..5c981aa1ea 100644 --- a/configs/T4160QDS_NAND_defconfig +++ b/configs/T4160QDS_NAND_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T4240QDS=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T4160,RAMBOOT_PBL,SPL_FSL_PBL,NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/T4160QDS_SDCARD_defconfig b/configs/T4160QDS_SDCARD_defconfig index ee5902c75e..8c5d4ad3d5 100644 --- a/configs/T4160QDS_SDCARD_defconfig +++ b/configs/T4160QDS_SDCARD_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T4240QDS=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T4160,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/T4160QDS_SECURE_BOOT_defconfig b/configs/T4160QDS_SECURE_BOOT_defconfig index 1e32b640d6..70abd6eda4 100644 --- a/configs/T4160QDS_SECURE_BOOT_defconfig +++ b/configs/T4160QDS_SECURE_BOOT_defconfig @@ -29,4 +29,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/T4240QDS_NAND_defconfig b/configs/T4240QDS_NAND_defconfig index 4dea4fb60d..4cdbeb42db 100644 --- a/configs/T4240QDS_NAND_defconfig +++ b/configs/T4240QDS_NAND_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T4240QDS=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T4240,RAMBOOT_PBL,SPL_FSL_PBL,NAND" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/T4240QDS_SDCARD_defconfig b/configs/T4240QDS_SDCARD_defconfig index 1aa10357a4..8f8837c88e 100644 --- a/configs/T4240QDS_SDCARD_defconfig +++ b/configs/T4240QDS_SDCARD_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T4240QDS=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T4240,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/T4240QDS_SECURE_BOOT_defconfig b/configs/T4240QDS_SECURE_BOOT_defconfig index 26a57173b3..85ca4960b3 100644 --- a/configs/T4240QDS_SECURE_BOOT_defconfig +++ b/configs/T4240QDS_SECURE_BOOT_defconfig @@ -29,4 +29,5 @@ CONFIG_FSL_ESPI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/T4240RDB_SDCARD_defconfig b/configs/T4240RDB_SDCARD_defconfig index b1e4decf44..2104a95af5 100644 --- a/configs/T4240RDB_SDCARD_defconfig +++ b/configs/T4240RDB_SDCARD_defconfig @@ -1,13 +1,21 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MPC85xx=y CONFIG_TARGET_T4240RDB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="PPC_T4240,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/UTOO_P66_defconfig b/configs/UTOO_P66_defconfig index d36a5dccd0..205c9e2c97 100644 --- a/configs/UTOO_P66_defconfig +++ b/configs/UTOO_P66_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN5I=y CONFIG_DRAM_CLK=432 CONFIG_DRAM_EMR1=0 diff --git a/configs/VCMA9_defconfig b/configs/VCMA9_defconfig index 123562c89e..da568a167b 100644 --- a/configs/VCMA9_defconfig +++ b/configs/VCMA9_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_TARGET_VCMA9=y +CONFIG_IDENT_STRING="\n(c) 2003 - 2011 by MPL AG Switzerland, MEV-10080-001 unstable" CONFIG_BOOTDELAY=5 CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="VCMA9 # " @@ -10,5 +11,6 @@ CONFIG_CMD_DHCP=y CONFIG_CMD_PING=y CONFIG_CMD_CACHE=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_USB=y CONFIG_USB_STORAGE=y diff --git a/configs/Wexler_TAB7200_defconfig b/configs/Wexler_TAB7200_defconfig index 5f3d624292..ecde5db0c6 100644 --- a/configs/Wexler_TAB7200_defconfig +++ b/configs/Wexler_TAB7200_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN7I=y CONFIG_DRAM_CLK=384 CONFIG_USB0_VBUS_PIN="PB9" diff --git a/configs/Wits_Pro_A20_DKT_defconfig b/configs/Wits_Pro_A20_DKT_defconfig index bfc8cba7d3..d83cee7fbd 100644 --- a/configs/Wits_Pro_A20_DKT_defconfig +++ b/configs/Wits_Pro_A20_DKT_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN7I=y CONFIG_DRAM_CLK=384 CONFIG_VIDEO_VGA=y @@ -10,8 +11,8 @@ CONFIG_VIDEO_LCD_BL_PWM="PB2" CONFIG_VIDEO_LCD_PANEL_LVDS=y CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-wits-pro-a20-dkt" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,AHCI" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/Wobo_i5_defconfig b/configs/Wobo_i5_defconfig index 20382aeb4f..907afe5105 100644 --- a/configs/Wobo_i5_defconfig +++ b/configs/Wobo_i5_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN5I=y CONFIG_DRAM_CLK=432 CONFIG_MMC0_CD_PIN="PB3" diff --git a/configs/Yones_Toptech_BD1078_defconfig b/configs/Yones_Toptech_BD1078_defconfig index 65c1d8e28a..1e42a682cd 100644 --- a/configs/Yones_Toptech_BD1078_defconfig +++ b/configs/Yones_Toptech_BD1078_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN7I=y CONFIG_DRAM_CLK=408 CONFIG_MMC0_CD_PIN="PH1" diff --git a/configs/a3m071_defconfig b/configs/a3m071_defconfig index c62018369f..9e573a7b38 100644 --- a/configs/a3m071_defconfig +++ b/configs/a3m071_defconfig @@ -1,10 +1,15 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y CONFIG_MPC5xxx=y CONFIG_TARGET_A3M071=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_OF_BOARD_SETUP=y CONFIG_BOOTDELAY=3 +CONFIG_SPL=y +CONFIG_SPL_NOR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_LOOPW=y # CONFIG_CMD_SETEXPR is not set @@ -13,5 +18,6 @@ CONFIG_CMD_MII=y CONFIG_CMD_PING=y CONFIG_CMD_LINK_LOCAL=y CONFIG_CMD_CACHE=y +CONFIG_CMD_UBI=y CONFIG_LIB_RAND=y CONFIG_OF_LIBFDT=y diff --git a/configs/a4m2k_defconfig b/configs/a4m2k_defconfig index 61f7da7e7f..aa09bf5e64 100644 --- a/configs/a4m2k_defconfig +++ b/configs/a4m2k_defconfig @@ -1,11 +1,16 @@ CONFIG_PPC=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y CONFIG_MPC5xxx=y CONFIG_TARGET_A3M071=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_OF_BOARD_SETUP=y CONFIG_SYS_EXTRA_OPTIONS="A4M2K" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y +CONFIG_SPL_NOR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_LOOPW=y # CONFIG_CMD_SETEXPR is not set @@ -14,5 +19,6 @@ CONFIG_CMD_MII=y CONFIG_CMD_PING=y CONFIG_CMD_LINK_LOCAL=y CONFIG_CMD_CACHE=y +CONFIG_CMD_UBI=y CONFIG_LIB_RAND=y CONFIG_OF_LIBFDT=y diff --git a/configs/am335x_baltos_defconfig b/configs/am335x_baltos_defconfig index 9b0f7bc2ba..16cdea10a4 100644 --- a/configs/am335x_baltos_defconfig +++ b/configs/am335x_baltos_defconfig @@ -1,13 +1,27 @@ CONFIG_ARM=y CONFIG_TARGET_AM335X_BALTOS=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_POWER_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_SPL_STACK_R_ADDR=0x82000000 -CONFIG_SPL=y -CONFIG_SPL_STACK_R=y +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_SYS_EXTRA_OPTIONS="NAND" CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_STACK_R=y +CONFIG_SPL_MTD_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set @@ -27,6 +41,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_MUSB_HOST=y diff --git a/configs/am335x_boneblack_defconfig b/configs/am335x_boneblack_defconfig index b4e2a1c443..a3994f7bbd 100644 --- a/configs/am335x_boneblack_defconfig +++ b/configs/am335x_boneblack_defconfig @@ -1,11 +1,13 @@ CONFIG_ARM=y CONFIG_TARGET_AM335X_EVM=y +# CONFIG_SPL_NAND_SUPPORT is not set CONFIG_SPL_STACK_R_ADDR=0x82000000 -CONFIG_SPL=y -CONFIG_SPL_STACK_R=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="EMMC_BOOT" CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_STACK_R=y +CONFIG_SPL_MUSB_NEW_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_AUTOBOOT_KEYED=y CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n" diff --git a/configs/am335x_boneblack_vboot_defconfig b/configs/am335x_boneblack_vboot_defconfig index 2c124025c2..69ee177a86 100644 --- a/configs/am335x_boneblack_vboot_defconfig +++ b/configs/am335x_boneblack_vboot_defconfig @@ -1,14 +1,16 @@ CONFIG_ARM=y CONFIG_TARGET_AM335X_EVM=y +# CONFIG_SPL_NAND_SUPPORT is not set CONFIG_SPL_STACK_R_ADDR=0x82000000 CONFIG_DEFAULT_DEVICE_TREE="am335x-boneblack" -CONFIG_SPL=y -CONFIG_SPL_STACK_R=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_FIT_SIGNATURE=y CONFIG_SYS_EXTRA_OPTIONS="EMMC_BOOT,ENABLE_VBOOT" CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_STACK_R=y +CONFIG_SPL_MUSB_NEW_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_AUTOBOOT_KEYED=y CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n" diff --git a/configs/am335x_evm_defconfig b/configs/am335x_evm_defconfig index 65a90029ac..86ebf0f7f6 100644 --- a/configs/am335x_evm_defconfig +++ b/configs/am335x_evm_defconfig @@ -2,12 +2,14 @@ CONFIG_ARM=y CONFIG_TARGET_AM335X_EVM=y CONFIG_SPL_STACK_R_ADDR=0x82000000 CONFIG_DEFAULT_DEVICE_TREE="am335x-evm" -CONFIG_SPL=y -CONFIG_SPL_STACK_R=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="NAND" CONFIG_SPL_LOAD_FIT=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_STACK_R=y +CONFIG_SPL_MTD_SUPPORT=y +CONFIG_SPL_MUSB_NEW_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/am335x_evm_nor_defconfig b/configs/am335x_evm_nor_defconfig index 74577fac5d..1a467c3b7f 100644 --- a/configs/am335x_evm_nor_defconfig +++ b/configs/am335x_evm_nor_defconfig @@ -2,11 +2,13 @@ CONFIG_ARM=y CONFIG_TARGET_AM335X_EVM=y CONFIG_SPL_STACK_R_ADDR=0x82000000 CONFIG_NOR=y -CONFIG_SPL=y -CONFIG_SPL_STACK_R=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="NAND" CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_STACK_R=y +CONFIG_SPL_MTD_SUPPORT=y +CONFIG_SPL_MUSB_NEW_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/am335x_evm_spiboot_defconfig b/configs/am335x_evm_spiboot_defconfig index af4fac3210..00fa2aa7df 100644 --- a/configs/am335x_evm_spiboot_defconfig +++ b/configs/am335x_evm_spiboot_defconfig @@ -1,12 +1,16 @@ CONFIG_ARM=y CONFIG_TARGET_AM335X_EVM=y +# CONFIG_SPL_NAND_SUPPORT is not set +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_SPL_STACK_R_ADDR=0x82000000 -CONFIG_SPL=y -CONFIG_SPL_STACK_R=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="SPI_BOOT" CONFIG_SPI_BOOT=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_STACK_R=y +CONFIG_SPL_MUSB_NEW_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/am335x_evm_usbspl_defconfig b/configs/am335x_evm_usbspl_defconfig index f8f7c7e33d..9e10d5faee 100644 --- a/configs/am335x_evm_usbspl_defconfig +++ b/configs/am335x_evm_usbspl_defconfig @@ -1,11 +1,15 @@ CONFIG_ARM=y CONFIG_TARGET_AM335X_EVM=y CONFIG_SPL_STACK_R_ADDR=0x82000000 -CONFIG_SPL=y -CONFIG_SPL_STACK_R=y CONFIG_FIT=y -CONFIG_SYS_EXTRA_OPTIONS="NAND,SPL_USBETH_SUPPORT" +CONFIG_SYS_EXTRA_OPTIONS="NAND" CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_STACK_R=y +CONFIG_SPL_MTD_SUPPORT=y +CONFIG_SPL_MUSB_NEW_SUPPORT=y +CONFIG_SPL_NET_SUPPORT=y +CONFIG_SPL_USBETH_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/am335x_igep0033_defconfig b/configs/am335x_igep0033_defconfig index efa3a9c645..20888966c3 100644 --- a/configs/am335x_igep0033_defconfig +++ b/configs/am335x_igep0033_defconfig @@ -1,9 +1,23 @@ CONFIG_ARM=y CONFIG_TARGET_AM335X_IGEP0033=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_POWER_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_SPL_STACK_R_ADDR=0x82000000 +CONFIG_SPL_YMODEM_SUPPORT=y +CONFIG_VERSION_VARIABLE=y CONFIG_SPL=y CONFIG_SPL_STACK_R=y -CONFIG_VERSION_VARIABLE=y +CONFIG_SPL_MTD_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/am335x_shc_defconfig b/configs/am335x_shc_defconfig index be9a99ea35..0c241e002c 100644 --- a/configs/am335x_shc_defconfig +++ b/configs/am335x_shc_defconfig @@ -1,11 +1,23 @@ CONFIG_ARM=y CONFIG_TARGET_AM335X_SHC=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_POWER_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_SERIES=y CONFIG_SPL_STACK_R_ADDR=0x82000000 -CONFIG_SPL=y -CONFIG_SPL_STACK_R=y +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_FIT=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_STACK_R=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="U-Boot# " CONFIG_AUTOBOOT_KEYED=y diff --git a/configs/am335x_shc_ict_defconfig b/configs/am335x_shc_ict_defconfig index 8d6c8d9bed..084cc2824c 100644 --- a/configs/am335x_shc_ict_defconfig +++ b/configs/am335x_shc_ict_defconfig @@ -1,12 +1,24 @@ CONFIG_ARM=y CONFIG_TARGET_AM335X_SHC=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_POWER_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_SHC_ICT=y CONFIG_SERIES=y CONFIG_SPL_STACK_R_ADDR=0x82000000 -CONFIG_SPL=y -CONFIG_SPL_STACK_R=y +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_FIT=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_STACK_R=y CONFIG_SYS_PROMPT="U-Boot# " CONFIG_AUTOBOOT_KEYED=y CONFIG_AUTOBOOT_PROMPT="Enter 'shc' to enter prompt (times out) %d \nEnter 'noautoboot' to enter prompt without timeout\n" diff --git a/configs/am335x_shc_netboot_defconfig b/configs/am335x_shc_netboot_defconfig index 2e70a51f86..8cc40c80e5 100644 --- a/configs/am335x_shc_netboot_defconfig +++ b/configs/am335x_shc_netboot_defconfig @@ -1,12 +1,25 @@ CONFIG_ARM=y CONFIG_TARGET_AM335X_SHC=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_POWER_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_SHC_NETBOOT=y CONFIG_SERIES=y CONFIG_SPL_STACK_R_ADDR=0x82000000 -CONFIG_SPL=y -CONFIG_SPL_STACK_R=y +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_FIT=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_STACK_R=y CONFIG_SYS_PROMPT="U-Boot# " CONFIG_AUTOBOOT_KEYED=y CONFIG_AUTOBOOT_PROMPT="Enter 'shc' to enter prompt (times out) %d \nEnter 'noautoboot' to enter prompt without timeout\n" diff --git a/configs/am335x_shc_prompt_defconfig b/configs/am335x_shc_prompt_defconfig index 764fc9f23d..caa004a55b 100644 --- a/configs/am335x_shc_prompt_defconfig +++ b/configs/am335x_shc_prompt_defconfig @@ -1,11 +1,23 @@ CONFIG_ARM=y CONFIG_TARGET_AM335X_SHC=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_POWER_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_SERIES=y CONFIG_SPL_STACK_R_ADDR=0x82000000 -CONFIG_SPL=y -CONFIG_SPL_STACK_R=y +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_FIT=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_STACK_R=y CONFIG_AUTOBOOT_KEYED=y CONFIG_AUTOBOOT_PROMPT="Enter 'shc' to enter prompt (times out) %d \nEnter 'noautoboot' to enter prompt without timeout\n" CONFIG_AUTOBOOT_DELAY_STR="shc" diff --git a/configs/am335x_shc_sdboot_defconfig b/configs/am335x_shc_sdboot_defconfig index ba77c2d054..83041d9e1d 100644 --- a/configs/am335x_shc_sdboot_defconfig +++ b/configs/am335x_shc_sdboot_defconfig @@ -1,12 +1,24 @@ CONFIG_ARM=y CONFIG_TARGET_AM335X_SHC=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_POWER_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_SHC_SDBOOT=y CONFIG_SERIES=y CONFIG_SPL_STACK_R_ADDR=0x82000000 -CONFIG_SPL=y -CONFIG_SPL_STACK_R=y +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_FIT=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_STACK_R=y CONFIG_SYS_PROMPT="U-Boot# " CONFIG_AUTOBOOT_KEYED=y CONFIG_AUTOBOOT_PROMPT="Enter 'shc' to enter prompt (times out) %d \nEnter 'noautoboot' to enter prompt without timeout\n" diff --git a/configs/am335x_shc_sdboot_prompt_defconfig b/configs/am335x_shc_sdboot_prompt_defconfig index ba77c2d054..83041d9e1d 100644 --- a/configs/am335x_shc_sdboot_prompt_defconfig +++ b/configs/am335x_shc_sdboot_prompt_defconfig @@ -1,12 +1,24 @@ CONFIG_ARM=y CONFIG_TARGET_AM335X_SHC=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_POWER_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_SHC_SDBOOT=y CONFIG_SERIES=y CONFIG_SPL_STACK_R_ADDR=0x82000000 -CONFIG_SPL=y -CONFIG_SPL_STACK_R=y +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_FIT=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_STACK_R=y CONFIG_SYS_PROMPT="U-Boot# " CONFIG_AUTOBOOT_KEYED=y CONFIG_AUTOBOOT_PROMPT="Enter 'shc' to enter prompt (times out) %d \nEnter 'noautoboot' to enter prompt without timeout\n" diff --git a/configs/am335x_sl50_defconfig b/configs/am335x_sl50_defconfig index dae8f1b39a..92b5dc077c 100644 --- a/configs/am335x_sl50_defconfig +++ b/configs/am335x_sl50_defconfig @@ -1,11 +1,24 @@ CONFIG_ARM=y CONFIG_TARGET_AM335X_SL50=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_POWER_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_SPL_STACK_R_ADDR=0x82000000 -CONFIG_SPL=y -CONFIG_SPL_STACK_R=y +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="EMMC_BOOT" CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_STACK_R=y CONFIG_HUSH_PARSER=y # CONFIG_AUTOBOOT is not set CONFIG_CMD_BOOTZ=y diff --git a/configs/am3517_crane_defconfig b/configs/am3517_crane_defconfig index 339c487400..08902b8cf4 100644 --- a/configs/am3517_crane_defconfig +++ b/configs/am3517_crane_defconfig @@ -1,8 +1,10 @@ CONFIG_ARM=y CONFIG_OMAP34XX=y +# CONFIG_SPL_GPIO_SUPPORT is not set +# CONFIG_SPL_EXT_SUPPORT is not set CONFIG_TARGET_AM3517_CRANE=y -CONFIG_SPL=y CONFIG_BOOTDELAY=10 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="AM3517_CRANE # " # CONFIG_CMD_IMI is not set diff --git a/configs/am3517_evm_defconfig b/configs/am3517_evm_defconfig index d5a0e30afc..291f570ada 100644 --- a/configs/am3517_evm_defconfig +++ b/configs/am3517_evm_defconfig @@ -1,11 +1,14 @@ CONFIG_ARM=y CONFIG_OMAP34XX=y +# CONFIG_SPL_GPIO_SUPPORT is not set +# CONFIG_SPL_EXT_SUPPORT is not set CONFIG_TARGET_AM3517_EVM=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="NAND" CONFIG_BOOTDELAY=10 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_MTD_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="AM3517_EVM # " CONFIG_CMD_BOOTZ=y @@ -27,6 +30,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_MUSB_HOST=y diff --git a/configs/am43xx_evm_defconfig b/configs/am43xx_evm_defconfig index c465411be4..eb5b7fda7c 100644 --- a/configs/am43xx_evm_defconfig +++ b/configs/am43xx_evm_defconfig @@ -2,13 +2,15 @@ CONFIG_ARM=y CONFIG_AM43XX=y CONFIG_TARGET_AM43XX_EVM=y CONFIG_SPL_STACK_R_ADDR=0x82000000 +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="am437x-gp-evm" -CONFIG_SPL=y -CONFIG_SPL_STACK_R=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=1,NAND" CONFIG_SPL_LOAD_FIT=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_STACK_R=y +CONFIG_SPL_MTD_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/am43xx_evm_ethboot_defconfig b/configs/am43xx_evm_ethboot_defconfig index 8676f321c2..bea1d0c3d9 100644 --- a/configs/am43xx_evm_ethboot_defconfig +++ b/configs/am43xx_evm_ethboot_defconfig @@ -1,9 +1,14 @@ CONFIG_ARM=y CONFIG_AM43XX=y CONFIG_TARGET_AM43XX_EVM=y -CONFIG_SPL=y -CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,NAND,SPL_ETH_SUPPORT" +CONFIG_SPL_YMODEM_SUPPORT=y +CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,NAND" CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_ETH_SUPPORT=y +CONFIG_SPL_MTD_SUPPORT=y +CONFIG_SPL_NET_SUPPORT=y +CONFIG_SPL_NET_VCI_STRING="AM43xx U-Boot SPL" CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/am43xx_evm_usbhost_boot_defconfig b/configs/am43xx_evm_usbhost_boot_defconfig index d8a23c5102..efe8be3abd 100644 --- a/configs/am43xx_evm_usbhost_boot_defconfig +++ b/configs/am43xx_evm_usbhost_boot_defconfig @@ -3,13 +3,17 @@ CONFIG_AM43XX=y CONFIG_TARGET_AM43XX_EVM=y CONFIG_ISW_ENTRY_ADDR=0x40300350 CONFIG_SPL_STACK_R_ADDR=0x82000000 +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="am437x-gp-evm" -CONFIG_SPL=y -CONFIG_SPL_STACK_R=y CONFIG_FIT=y -CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,NAND,SPL_USB_HOST_SUPPORT" +CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,NAND" CONFIG_SPL_LOAD_FIT=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_STACK_R=y +CONFIG_SPL_MTD_SUPPORT=y +CONFIG_SPL_USB_HOST_SUPPORT=y +CONFIG_SPL_USB_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/am43xx_hs_evm_defconfig b/configs/am43xx_hs_evm_defconfig index 9494860d91..2a59a2b915 100644 --- a/configs/am43xx_hs_evm_defconfig +++ b/configs/am43xx_hs_evm_defconfig @@ -2,17 +2,19 @@ CONFIG_ARM=y CONFIG_AM43XX=y CONFIG_TI_SECURE_DEVICE=y CONFIG_TARGET_AM43XX_EVM=y -CONFIG_ISW_ENTRY_ADDR=0x403018e0 +CONFIG_ISW_ENTRY_ADDR=0x40302ae0 CONFIG_SPL_STACK_R_ADDR=0x82000000 +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="am437x-gp-evm" -CONFIG_SPL=y -CONFIG_SPL_STACK_R=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=1, NAND" CONFIG_SPL_LOAD_FIT=y CONFIG_SPL_FIT_IMAGE_POST_PROCESS=y CONFIG_FIT_IMAGE_POST_PROCESS=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_STACK_R=y +CONFIG_SPL_MTD_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/am57xx_evm_defconfig b/configs/am57xx_evm_defconfig index d49129d42a..27ea472790 100644 --- a/configs/am57xx_evm_defconfig +++ b/configs/am57xx_evm_defconfig @@ -1,14 +1,18 @@ CONFIG_ARM=y CONFIG_OMAP54XX=y +# CONFIG_SPL_NAND_SUPPORT is not set CONFIG_TARGET_AM57XX_EVM=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_SPL_STACK_R_ADDR=0x82000000 CONFIG_DEFAULT_DEVICE_TREE="am57xx-beagle-x15" -CONFIG_SPL=y -CONFIG_SPL_STACK_R=y CONFIG_FIT=y CONFIG_OF_BOARD_SETUP=y CONFIG_SPL_LOAD_FIT=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_STACK_R=y +CONFIG_SPL_DMA_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/am57xx_evm_nodt_defconfig b/configs/am57xx_evm_nodt_defconfig index 0066691e8d..608cc10d3b 100644 --- a/configs/am57xx_evm_nodt_defconfig +++ b/configs/am57xx_evm_nodt_defconfig @@ -1,8 +1,12 @@ CONFIG_ARM=y CONFIG_OMAP54XX=y +# CONFIG_SPL_NAND_SUPPORT is not set CONFIG_TARGET_AM57XX_EVM=y -CONFIG_SPL=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_DMA_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/am57xx_hs_evm_defconfig b/configs/am57xx_hs_evm_defconfig index 86f7373a0d..192997aa51 100644 --- a/configs/am57xx_hs_evm_defconfig +++ b/configs/am57xx_hs_evm_defconfig @@ -1,17 +1,21 @@ CONFIG_ARM=y CONFIG_OMAP54XX=y CONFIG_TI_SECURE_DEVICE=y +# CONFIG_SPL_NAND_SUPPORT is not set CONFIG_TARGET_AM57XX_EVM=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_SPL_STACK_R_ADDR=0x82000000 CONFIG_DEFAULT_DEVICE_TREE="am57xx-beagle-x15" -CONFIG_SPL=y -CONFIG_SPL_STACK_R=y CONFIG_FIT=y CONFIG_OF_BOARD_SETUP=y CONFIG_SPL_LOAD_FIT=y CONFIG_SPL_FIT_IMAGE_POST_PROCESS=y CONFIG_FIT_IMAGE_POST_PROCESS=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_STACK_R=y +CONFIG_SPL_DMA_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/amcore_defconfig b/configs/amcore_defconfig index 0361418d90..5cc512ce7a 100644 --- a/configs/amcore_defconfig +++ b/configs/amcore_defconfig @@ -3,6 +3,10 @@ CONFIG_TARGET_AMCORE=y CONFIG_SYS_TEXT_BASE=0xffc00000 CONFIG_BOOTDELAY=1 CONFIG_SYS_PROMPT="amcore $ " +CONFIG_DM=y +CONFIG_DM_SERIAL=y +CONFIG_SYS_MALLOC_F=y +CONFIG_SYS_MALLOC_F_LEN=0x800 # CONFIG_CMD_BOOTD is not set # CONFIG_CMD_XIMG is not set CONFIG_LOOPW=y diff --git a/configs/apf27_defconfig b/configs/apf27_defconfig index 3f24da93e1..a02e180d2f 100644 --- a/configs/apf27_defconfig +++ b/configs/apf27_defconfig @@ -1,8 +1,11 @@ CONFIG_ARM=y CONFIG_TARGET_APF27=y -CONFIG_SPL=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_IDENT_STRING=" apf27 patch 3.10" CONFIG_BOOTDELAY=5 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="BIOS> " # CONFIG_CMD_IMLS is not set @@ -17,4 +20,5 @@ CONFIG_CMD_DNS=y CONFIG_CMD_CACHE=y CONFIG_CMD_EXT2=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_OF_LIBFDT=y diff --git a/configs/apx4devkit_defconfig b/configs/apx4devkit_defconfig index 01d8190ffc..5b9c0afde7 100644 --- a/configs/apx4devkit_defconfig +++ b/configs/apx4devkit_defconfig @@ -1,8 +1,12 @@ CONFIG_ARM=y CONFIG_TARGET_APX4DEVKIT=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_BOOTDELAY=1 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set @@ -16,6 +20,7 @@ CONFIG_CMD_PING=y CONFIG_CMD_CACHE=y CONFIG_CMD_EXT2=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_OF_LIBFDT=y diff --git a/configs/aristainetos2_defconfig b/configs/aristainetos2_defconfig index 84e3bf6882..35d7e944f2 100644 --- a/configs/aristainetos2_defconfig +++ b/configs/aristainetos2_defconfig @@ -22,8 +22,11 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y +CONFIG_MTD_UBI_FASTMAP=y +CONFIG_MTD_UBI_FASTMAP_AUTOCONVERT=1 CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_OF_LIBFDT=y diff --git a/configs/aristainetos2b_defconfig b/configs/aristainetos2b_defconfig index 21765aa8bb..6b2c44dc12 100644 --- a/configs/aristainetos2b_defconfig +++ b/configs/aristainetos2b_defconfig @@ -22,8 +22,11 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y +CONFIG_MTD_UBI_FASTMAP=y +CONFIG_MTD_UBI_FASTMAP_AUTOCONVERT=1 CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_OF_LIBFDT=y diff --git a/configs/aristainetos_defconfig b/configs/aristainetos_defconfig index 1e6954e2a7..a06d9ee1d4 100644 --- a/configs/aristainetos_defconfig +++ b/configs/aristainetos_defconfig @@ -22,8 +22,11 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y +CONFIG_MTD_UBI_FASTMAP=y +CONFIG_MTD_UBI_FASTMAP_AUTOCONVERT=1 CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_OF_LIBFDT=y diff --git a/configs/arndale_defconfig b/configs/arndale_defconfig index 22e2cb6cb8..e04ff5b6a5 100644 --- a/configs/arndale_defconfig +++ b/configs/arndale_defconfig @@ -2,10 +2,11 @@ CONFIG_ARM=y CONFIG_ARCH_EXYNOS=y CONFIG_ARCH_EXYNOS5=y CONFIG_TARGET_ARNDALE=y +CONFIG_IDENT_STRING=" for ARNDALE" CONFIG_DEFAULT_DEVICE_TREE="exynos5250-arndale" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_BEST_MATCH=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="ARNDALE # " CONFIG_CMD_BOOTZ=y diff --git a/configs/aspenite_defconfig b/configs/aspenite_defconfig index 9ac66570cd..441e65fd73 100644 --- a/configs/aspenite_defconfig +++ b/configs/aspenite_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_TARGET_ASPENITE=y +CONFIG_IDENT_STRING="\nMarvell-Aspenite DB" CONFIG_BOOTDELAY=3 # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set diff --git a/configs/at91sam9m10g45ek_mmc_defconfig b/configs/at91sam9m10g45ek_mmc_defconfig index aaa27f1ddb..0aaa8886bf 100644 --- a/configs/at91sam9m10g45ek_mmc_defconfig +++ b/configs/at91sam9m10g45ek_mmc_defconfig @@ -1,9 +1,16 @@ CONFIG_ARM=y CONFIG_ARCH_AT91=y CONFIG_TARGET_AT91SAM9M10G45EK=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9M10G45,SYS_USE_MMC" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="U-Boot> " # CONFIG_CMD_BDI is not set diff --git a/configs/at91sam9m10g45ek_nandflash_defconfig b/configs/at91sam9m10g45ek_nandflash_defconfig index 4924ac5528..05140ac2da 100644 --- a/configs/at91sam9m10g45ek_nandflash_defconfig +++ b/configs/at91sam9m10g45ek_nandflash_defconfig @@ -1,9 +1,14 @@ CONFIG_ARM=y CONFIG_ARCH_AT91=y CONFIG_TARGET_AT91SAM9M10G45EK=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9M10G45,SYS_USE_NANDFLASH" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="U-Boot> " # CONFIG_CMD_BDI is not set diff --git a/configs/at91sam9n12ek_nandflash_defconfig b/configs/at91sam9n12ek_nandflash_defconfig index af86350874..15e19708b7 100644 --- a/configs/at91sam9n12ek_nandflash_defconfig +++ b/configs/at91sam9n12ek_nandflash_defconfig @@ -1,9 +1,14 @@ CONFIG_ARM=y CONFIG_ARCH_AT91=y CONFIG_TARGET_AT91SAM9N12EK=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9N12,SYS_USE_NANDFLASH" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="U-Boot> " CONFIG_CMD_BOOTZ=y diff --git a/configs/at91sam9n12ek_spiflash_defconfig b/configs/at91sam9n12ek_spiflash_defconfig index 1ddfbf53f5..ebed1dbce4 100644 --- a/configs/at91sam9n12ek_spiflash_defconfig +++ b/configs/at91sam9n12ek_spiflash_defconfig @@ -1,9 +1,15 @@ CONFIG_ARM=y CONFIG_ARCH_AT91=y CONFIG_TARGET_AT91SAM9N12EK=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9N12,SYS_USE_SPIFLASH" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="U-Boot> " CONFIG_CMD_BOOTZ=y diff --git a/configs/at91sam9x5ek_dataflash_defconfig b/configs/at91sam9x5ek_dataflash_defconfig index 6771f57dd8..beeb8cc063 100644 --- a/configs/at91sam9x5ek_dataflash_defconfig +++ b/configs/at91sam9x5ek_dataflash_defconfig @@ -17,6 +17,7 @@ CONFIG_CMD_USB=y CONFIG_CMD_DHCP=y CONFIG_CMD_PING=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_ATMEL=y CONFIG_USB=y diff --git a/configs/at91sam9x5ek_mmc_defconfig b/configs/at91sam9x5ek_mmc_defconfig index 7995c23fb4..eb88bbbf14 100644 --- a/configs/at91sam9x5ek_mmc_defconfig +++ b/configs/at91sam9x5ek_mmc_defconfig @@ -17,6 +17,7 @@ CONFIG_CMD_USB=y CONFIG_CMD_DHCP=y CONFIG_CMD_PING=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_ATMEL=y CONFIG_USB=y diff --git a/configs/at91sam9x5ek_nandflash_defconfig b/configs/at91sam9x5ek_nandflash_defconfig index 7a72bcfe79..4b28d745c2 100644 --- a/configs/at91sam9x5ek_nandflash_defconfig +++ b/configs/at91sam9x5ek_nandflash_defconfig @@ -1,9 +1,14 @@ CONFIG_ARM=y CONFIG_ARCH_AT91=y CONFIG_TARGET_AT91SAM9X5EK=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9X5,SYS_USE_NANDFLASH" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="U-Boot> " CONFIG_CMD_BOOTZ=y @@ -18,6 +23,7 @@ CONFIG_CMD_USB=y CONFIG_CMD_DHCP=y CONFIG_CMD_PING=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_ATMEL=y CONFIG_USB=y diff --git a/configs/at91sam9x5ek_spiflash_defconfig b/configs/at91sam9x5ek_spiflash_defconfig index b869db0cce..4a1ea42feb 100644 --- a/configs/at91sam9x5ek_spiflash_defconfig +++ b/configs/at91sam9x5ek_spiflash_defconfig @@ -1,9 +1,15 @@ CONFIG_ARM=y CONFIG_ARCH_AT91=y CONFIG_TARGET_AT91SAM9X5EK=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9X5,SYS_USE_SPIFLASH" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="U-Boot> " CONFIG_CMD_BOOTZ=y @@ -18,6 +24,7 @@ CONFIG_CMD_USB=y CONFIG_CMD_DHCP=y CONFIG_CMD_PING=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_ATMEL=y CONFIG_USB=y diff --git a/configs/axm_defconfig b/configs/axm_defconfig index 220a49b7a0..a5261d22c2 100644 --- a/configs/axm_defconfig +++ b/configs/axm_defconfig @@ -1,10 +1,17 @@ CONFIG_ARM=y CONFIG_ARCH_AT91=y CONFIG_TARGET_TAURUS=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="at91sam9g20-taurus" -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9G20,MACH_TYPE=2068,BOARD_AXM" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y # CONFIG_CMD_BDI is not set CONFIG_CMD_BOOTZ=y diff --git a/configs/ba10_tv_box_defconfig b/configs/ba10_tv_box_defconfig index 1cfb380ce8..c60766ce3c 100644 --- a/configs/ba10_tv_box_defconfig +++ b/configs/ba10_tv_box_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN4I=y CONFIG_DRAM_CLK=384 CONFIG_DRAM_EMR1=4 @@ -8,8 +9,8 @@ CONFIG_USB2_VBUS_PIN="PH12" CONFIG_VIDEO_COMPOSITE=y CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-ba10-tvbox" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_EMAC" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/bg0900_defconfig b/configs/bg0900_defconfig index ae54562076..49ca7d9178 100644 --- a/configs/bg0900_defconfig +++ b/configs/bg0900_defconfig @@ -1,8 +1,12 @@ CONFIG_ARM=y CONFIG_TARGET_BG0900=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_BOOTDELAY=3 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/birdland_bav335a_defconfig b/configs/birdland_bav335a_defconfig index c721ad58c7..0b23941383 100644 --- a/configs/birdland_bav335a_defconfig +++ b/configs/birdland_bav335a_defconfig @@ -1,10 +1,23 @@ CONFIG_ARM=y CONFIG_TARGET_BAV335X=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_POWER_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_BAV_VERSION=1 -CONFIG_SPL=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1" CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_MUSB_NEW_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/birdland_bav335b_defconfig b/configs/birdland_bav335b_defconfig index 4400bb1d23..8d590dfacf 100644 --- a/configs/birdland_bav335b_defconfig +++ b/configs/birdland_bav335b_defconfig @@ -1,10 +1,23 @@ CONFIG_ARM=y CONFIG_TARGET_BAV335X=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_POWER_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_BAV_VERSION=2 -CONFIG_SPL=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1" CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_MUSB_NEW_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/boston32r2_defconfig b/configs/boston32r2_defconfig new file mode 100644 index 0000000000..ca66248b5b --- /dev/null +++ b/configs/boston32r2_defconfig @@ -0,0 +1,41 @@ +CONFIG_MIPS=y +CONFIG_TARGET_BOSTON=y +CONFIG_SYS_TEXT_BASE=0x9fc00000 +# CONFIG_MIPS_BOOT_CMDLINE_LEGACY is not set +# CONFIG_MIPS_BOOT_ENV_LEGACY is not set +CONFIG_MIPS_BOOT_FDT=y +CONFIG_DEFAULT_DEVICE_TREE="img,boston" +CONFIG_FIT=y +CONFIG_FIT_VERBOSE=y +CONFIG_FIT_BEST_MATCH=y +CONFIG_OF_STDOUT_VIA_ALIAS=y +CONFIG_HUSH_PARSER=y +CONFIG_SYS_PROMPT="boston # " +# CONFIG_CMD_ELF is not set +# CONFIG_CMD_IMLS is not set +CONFIG_CMD_GREPENV=y +CONFIG_CMD_MEMTEST=y +# CONFIG_CMD_LOADB is not set +# CONFIG_CMD_LOADS is not set +# CONFIG_CMD_FPGA is not set +CONFIG_CMD_DHCP=y +CONFIG_CMD_PING=y +CONFIG_CMD_SNTP=y +CONFIG_CMD_DNS=y +CONFIG_CMD_LINK_LOCAL=y +CONFIG_CMD_TIME=y +CONFIG_CMD_EXT4=y +CONFIG_CMD_EXT4_WRITE=y +CONFIG_CMD_FAT=y +CONFIG_CMD_FS_GENERIC=y +CONFIG_OF_EMBED=y +CONFIG_NET_RANDOM_ETHADDR=y +CONFIG_CLK=y +CONFIG_MTD=y +CONFIG_CFI_FLASH=y +CONFIG_DM_ETH=y +CONFIG_PCH_GBE=y +CONFIG_DM_PCI=y +CONFIG_PCI_XILINX=y +CONFIG_SYS_NS16550=y +CONFIG_LZ4=y diff --git a/configs/boston32r2el_defconfig b/configs/boston32r2el_defconfig new file mode 100644 index 0000000000..67f54bff95 --- /dev/null +++ b/configs/boston32r2el_defconfig @@ -0,0 +1,42 @@ +CONFIG_MIPS=y +CONFIG_TARGET_BOSTON=y +CONFIG_SYS_TEXT_BASE=0x9fc00000 +CONFIG_SYS_LITTLE_ENDIAN=y +# CONFIG_MIPS_BOOT_CMDLINE_LEGACY is not set +# CONFIG_MIPS_BOOT_ENV_LEGACY is not set +CONFIG_MIPS_BOOT_FDT=y +CONFIG_DEFAULT_DEVICE_TREE="img,boston" +CONFIG_FIT=y +CONFIG_FIT_VERBOSE=y +CONFIG_FIT_BEST_MATCH=y +CONFIG_OF_STDOUT_VIA_ALIAS=y +CONFIG_HUSH_PARSER=y +CONFIG_SYS_PROMPT="boston # " +# CONFIG_CMD_ELF is not set +# CONFIG_CMD_IMLS is not set +CONFIG_CMD_GREPENV=y +CONFIG_CMD_MEMTEST=y +# CONFIG_CMD_LOADB is not set +# CONFIG_CMD_LOADS is not set +# CONFIG_CMD_FPGA is not set +CONFIG_CMD_DHCP=y +CONFIG_CMD_PING=y +CONFIG_CMD_SNTP=y +CONFIG_CMD_DNS=y +CONFIG_CMD_LINK_LOCAL=y +CONFIG_CMD_TIME=y +CONFIG_CMD_EXT4=y +CONFIG_CMD_EXT4_WRITE=y +CONFIG_CMD_FAT=y +CONFIG_CMD_FS_GENERIC=y +CONFIG_OF_EMBED=y +CONFIG_NET_RANDOM_ETHADDR=y +CONFIG_CLK=y +CONFIG_MTD=y +CONFIG_CFI_FLASH=y +CONFIG_DM_ETH=y +CONFIG_PCH_GBE=y +CONFIG_DM_PCI=y +CONFIG_PCI_XILINX=y +CONFIG_SYS_NS16550=y +CONFIG_LZ4=y diff --git a/configs/boston64r2_defconfig b/configs/boston64r2_defconfig new file mode 100644 index 0000000000..1245d1b4ec --- /dev/null +++ b/configs/boston64r2_defconfig @@ -0,0 +1,41 @@ +CONFIG_MIPS=y +CONFIG_TARGET_BOSTON=y +CONFIG_CPU_MIPS64_R2=y +# CONFIG_MIPS_BOOT_CMDLINE_LEGACY is not set +# CONFIG_MIPS_BOOT_ENV_LEGACY is not set +CONFIG_MIPS_BOOT_FDT=y +CONFIG_DEFAULT_DEVICE_TREE="img,boston" +CONFIG_FIT=y +CONFIG_FIT_VERBOSE=y +CONFIG_FIT_BEST_MATCH=y +CONFIG_OF_STDOUT_VIA_ALIAS=y +CONFIG_HUSH_PARSER=y +CONFIG_SYS_PROMPT="boston # " +# CONFIG_CMD_ELF is not set +# CONFIG_CMD_IMLS is not set +CONFIG_CMD_GREPENV=y +CONFIG_CMD_MEMTEST=y +# CONFIG_CMD_LOADB is not set +# CONFIG_CMD_LOADS is not set +# CONFIG_CMD_FPGA is not set +CONFIG_CMD_DHCP=y +CONFIG_CMD_PING=y +CONFIG_CMD_SNTP=y +CONFIG_CMD_DNS=y +CONFIG_CMD_LINK_LOCAL=y +CONFIG_CMD_TIME=y +CONFIG_CMD_EXT4=y +CONFIG_CMD_EXT4_WRITE=y +CONFIG_CMD_FAT=y +CONFIG_CMD_FS_GENERIC=y +CONFIG_OF_EMBED=y +CONFIG_NET_RANDOM_ETHADDR=y +CONFIG_CLK=y +CONFIG_MTD=y +CONFIG_CFI_FLASH=y +CONFIG_DM_ETH=y +CONFIG_PCH_GBE=y +CONFIG_DM_PCI=y +CONFIG_PCI_XILINX=y +CONFIG_SYS_NS16550=y +CONFIG_LZ4=y diff --git a/configs/boston64r2el_defconfig b/configs/boston64r2el_defconfig new file mode 100644 index 0000000000..9b5fa5aa48 --- /dev/null +++ b/configs/boston64r2el_defconfig @@ -0,0 +1,42 @@ +CONFIG_MIPS=y +CONFIG_TARGET_BOSTON=y +CONFIG_SYS_LITTLE_ENDIAN=y +CONFIG_CPU_MIPS64_R2=y +# CONFIG_MIPS_BOOT_CMDLINE_LEGACY is not set +# CONFIG_MIPS_BOOT_ENV_LEGACY is not set +CONFIG_MIPS_BOOT_FDT=y +CONFIG_DEFAULT_DEVICE_TREE="img,boston" +CONFIG_FIT=y +CONFIG_FIT_VERBOSE=y +CONFIG_FIT_BEST_MATCH=y +CONFIG_OF_STDOUT_VIA_ALIAS=y +CONFIG_HUSH_PARSER=y +CONFIG_SYS_PROMPT="boston # " +# CONFIG_CMD_ELF is not set +# CONFIG_CMD_IMLS is not set +CONFIG_CMD_GREPENV=y +CONFIG_CMD_MEMTEST=y +# CONFIG_CMD_LOADB is not set +# CONFIG_CMD_LOADS is not set +# CONFIG_CMD_FPGA is not set +CONFIG_CMD_DHCP=y +CONFIG_CMD_PING=y +CONFIG_CMD_SNTP=y +CONFIG_CMD_DNS=y +CONFIG_CMD_LINK_LOCAL=y +CONFIG_CMD_TIME=y +CONFIG_CMD_EXT4=y +CONFIG_CMD_EXT4_WRITE=y +CONFIG_CMD_FAT=y +CONFIG_CMD_FS_GENERIC=y +CONFIG_OF_EMBED=y +CONFIG_NET_RANDOM_ETHADDR=y +CONFIG_CLK=y +CONFIG_MTD=y +CONFIG_CFI_FLASH=y +CONFIG_DM_ETH=y +CONFIG_PCH_GBE=y +CONFIG_DM_PCI=y +CONFIG_PCI_XILINX=y +CONFIG_SYS_NS16550=y +CONFIG_LZ4=y diff --git a/configs/brppt1_mmc_defconfig b/configs/brppt1_mmc_defconfig index 881930e085..15365b992c 100644 --- a/configs/brppt1_mmc_defconfig +++ b/configs/brppt1_mmc_defconfig @@ -1,10 +1,19 @@ CONFIG_ARM=y CONFIG_TARGET_BRPPT1=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_POWER_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_OF_BOARD_SETUP=y CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,EMMC_BOOT" CONFIG_BOOTDELAY=-2 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMI is not set diff --git a/configs/brppt1_nand_defconfig b/configs/brppt1_nand_defconfig index 9c7c07e6de..05fc1e0c80 100644 --- a/configs/brppt1_nand_defconfig +++ b/configs/brppt1_nand_defconfig @@ -1,10 +1,19 @@ CONFIG_ARM=y CONFIG_TARGET_BRPPT1=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_POWER_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_OF_BOARD_SETUP=y CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,NAND" CONFIG_BOOTDELAY=-2 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMI is not set diff --git a/configs/brppt1_spi_defconfig b/configs/brppt1_spi_defconfig index fc1f1e6e1c..4855acc4d6 100644 --- a/configs/brppt1_spi_defconfig +++ b/configs/brppt1_spi_defconfig @@ -1,11 +1,22 @@ CONFIG_ARM=y CONFIG_TARGET_BRPPT1=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_POWER_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_OF_BOARD_SETUP=y CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,SPI_BOOT,EMMC_BOOT" CONFIG_SPI_BOOT=y CONFIG_BOOTDELAY=-2 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMI is not set diff --git a/configs/brxre1_defconfig b/configs/brxre1_defconfig index 3895eec772..8fe1100674 100644 --- a/configs/brxre1_defconfig +++ b/configs/brxre1_defconfig @@ -1,9 +1,17 @@ CONFIG_ARM=y CONFIG_TARGET_BRXRE1=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_POWER_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1" CONFIG_BOOTDELAY=-2 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y # CONFIG_CMD_BOOTD is not set # CONFIG_CMD_BOOTM is not set diff --git a/configs/cairo_defconfig b/configs/cairo_defconfig index 7d8fe119ae..e6c0b80144 100644 --- a/configs/cairo_defconfig +++ b/configs/cairo_defconfig @@ -1,9 +1,10 @@ CONFIG_ARM=y CONFIG_OMAP34XX=y CONFIG_TARGET_OMAP3_CAIRO=y -CONFIG_SPL=y CONFIG_BOOTDELAY=-2 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_MTD_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="Cairo # " CONFIG_CMD_BOOTZ=y diff --git a/configs/cgtqmx6eval_defconfig b/configs/cgtqmx6eval_defconfig index 20c0af0ed3..645923c969 100644 --- a/configs/cgtqmx6eval_defconfig +++ b/configs/cgtqmx6eval_defconfig @@ -1,9 +1,20 @@ CONFIG_ARM=y CONFIG_ARCH_MX6=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_TARGET_CGTQMX6EVAL=y -CONFIG_SPL=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,SPL,MX6QDL" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="CGT-QMX6-Quad U-Boot > " CONFIG_CMD_BOOTZ=y diff --git a/configs/chromebook_jerry_defconfig b/configs/chromebook_jerry_defconfig index 8688abba42..3729722358 100644 --- a/configs/chromebook_jerry_defconfig +++ b/configs/chromebook_jerry_defconfig @@ -1,9 +1,14 @@ CONFIG_ARM=y CONFIG_ARCH_ROCKCHIP=y CONFIG_SYS_MALLOC_F_LEN=0x2000 +CONFIG_SPL_I2C_SUPPORT=y +# CONFIG_SPL_MMC_SUPPORT is not set +CONFIG_SPL_POWER_SUPPORT=y CONFIG_ROCKCHIP_RK3288=y CONFIG_TARGET_CHROMEBOOK_JERRY=y CONFIG_ROCKCHIP_FAST_SPL=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_SPL_STACK_R_ADDR=0x80000 CONFIG_DM_KEYBOARD=y CONFIG_DEFAULT_DEVICE_TREE="rk3288-jerry" diff --git a/configs/clearfog_defconfig b/configs/clearfog_defconfig index 778cf06a8a..588dfb2608 100644 --- a/configs/clearfog_defconfig +++ b/configs/clearfog_defconfig @@ -1,9 +1,16 @@ CONFIG_ARM=y CONFIG_ARCH_MVEBU=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SYS_MALLOC_F_LEN=0x2000 CONFIG_TARGET_CLEARFOG=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="armada-388-clearfog" -CONFIG_SPL=y CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/cm_fx6_defconfig b/configs/cm_fx6_defconfig index f01a6dd509..998bc0542b 100644 --- a/configs/cm_fx6_defconfig +++ b/configs/cm_fx6_defconfig @@ -1,10 +1,19 @@ CONFIG_ARM=y CONFIG_ARCH_MX6=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_TARGET_CM_FX6=y -CONFIG_SPL=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_OF_BOARD_SETUP=y CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,MX6QDL,SPL" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="CM-FX6 # " CONFIG_CMD_BOOTZ=y diff --git a/configs/cm_t335_defconfig b/configs/cm_t335_defconfig index 1528d1bc82..40fe8619ee 100644 --- a/configs/cm_t335_defconfig +++ b/configs/cm_t335_defconfig @@ -1,7 +1,20 @@ CONFIG_ARM=y CONFIG_TARGET_CM_T335=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_POWER_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_MTD_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="CM-T335 # " CONFIG_CMD_BOOTZ=y diff --git a/configs/cm_t35_defconfig b/configs/cm_t35_defconfig index 82738b2554..79fa39c8cc 100644 --- a/configs/cm_t35_defconfig +++ b/configs/cm_t35_defconfig @@ -1,8 +1,9 @@ CONFIG_ARM=y CONFIG_OMAP34XX=y +# CONFIG_SPL_EXT_SUPPORT is not set CONFIG_TARGET_CM_T35=y -CONFIG_SPL=y CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="CM-T3x # " CONFIG_CMD_BOOTZ=y diff --git a/configs/cm_t43_defconfig b/configs/cm_t43_defconfig index a2ffcb250d..e8a95c8072 100644 --- a/configs/cm_t43_defconfig +++ b/configs/cm_t43_defconfig @@ -1,7 +1,19 @@ CONFIG_ARM=y CONFIG_TARGET_CM_T43=y -CONFIG_SPL=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_POWER_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_MTD_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="CM-T43 # " CONFIG_CMD_BOOTZ=y diff --git a/configs/cm_t54_defconfig b/configs/cm_t54_defconfig index 18bb04e8bc..a22fa63d36 100644 --- a/configs/cm_t54_defconfig +++ b/configs/cm_t54_defconfig @@ -1,10 +1,12 @@ CONFIG_ARM=y CONFIG_OMAP54XX=y +# CONFIG_SPL_NAND_SUPPORT is not set CONFIG_TARGET_CM_T54=y -CONFIG_SPL=y CONFIG_OF_BOARD_SETUP=y CONFIG_BOOTDELAY=3 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_SATA_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="CM-T54 # " CONFIG_CMD_BOOTZ=y diff --git a/configs/colibri_imx7_defconfig b/configs/colibri_imx7_defconfig index 5302fe314f..439bb19701 100644 --- a/configs/colibri_imx7_defconfig +++ b/configs/colibri_imx7_defconfig @@ -29,6 +29,8 @@ CONFIG_CMD_CACHE=y CONFIG_CMD_EXT4=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y +CONFIG_MTD_UBI_FASTMAP=y CONFIG_USB=y CONFIG_USB_EHCI_HCD=y CONFIG_USB_STORAGE=y diff --git a/configs/colibri_t20_defconfig b/configs/colibri_t20_defconfig index fb5055b308..4eb391634e 100644 --- a/configs/colibri_t20_defconfig +++ b/configs/colibri_t20_defconfig @@ -29,7 +29,9 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_SPL_DM=y +CONFIG_MTD_UBI_FASTMAP=y CONFIG_DM_PMIC=y CONFIG_DM_REGULATOR=y CONFIG_DM_REGULATOR_FIXED=y diff --git a/configs/colibri_vf_defconfig b/configs/colibri_vf_defconfig index a045a3f39d..c7fc7991f7 100644 --- a/configs/colibri_vf_defconfig +++ b/configs/colibri_vf_defconfig @@ -23,12 +23,14 @@ CONFIG_CMD_PING=y CONFIG_CMD_EXT4=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_OF_CONTROL=y CONFIG_DM=y CONFIG_DM_GPIO=y CONFIG_VYBRID_GPIO=y CONFIG_NAND_VF610_NFC=y CONFIG_SYS_NAND_VF610_NFC_60_ECC_BYTES=y +CONFIG_MTD_UBI_FASTMAP=y CONFIG_DM_SERIAL=y CONFIG_FSL_LPUART=y CONFIG_DM_SPI=y diff --git a/configs/controlcenterd_36BIT_SDCARD_DEVELOP_defconfig b/configs/controlcenterd_36BIT_SDCARD_DEVELOP_defconfig index c0a2c77297..88d189ae9e 100644 --- a/configs/controlcenterd_36BIT_SDCARD_DEVELOP_defconfig +++ b/configs/controlcenterd_36BIT_SDCARD_DEVELOP_defconfig @@ -1,4 +1,5 @@ CONFIG_PPC=y +CONFIG_IDENT_STRING=" controlcenterd 0.01" CONFIG_MPC85xx=y CONFIG_TARGET_CONTROLCENTERD=y CONFIG_PHYS_64BIT=y diff --git a/configs/controlcenterd_36BIT_SDCARD_defconfig b/configs/controlcenterd_36BIT_SDCARD_defconfig index 73cd33d918..c8679e2f02 100644 --- a/configs/controlcenterd_36BIT_SDCARD_defconfig +++ b/configs/controlcenterd_36BIT_SDCARD_defconfig @@ -1,4 +1,5 @@ CONFIG_PPC=y +CONFIG_IDENT_STRING=" controlcenterd 0.01" CONFIG_MPC85xx=y CONFIG_TARGET_CONTROLCENTERD=y CONFIG_PHYS_64BIT=y diff --git a/configs/controlcenterd_TRAILBLAZER_DEVELOP_defconfig b/configs/controlcenterd_TRAILBLAZER_DEVELOP_defconfig index efb8ad6d31..e94d72f124 100644 --- a/configs/controlcenterd_TRAILBLAZER_DEVELOP_defconfig +++ b/configs/controlcenterd_TRAILBLAZER_DEVELOP_defconfig @@ -1,4 +1,5 @@ CONFIG_PPC=y +CONFIG_IDENT_STRING=" controlcenterd trailblazer 0.01" CONFIG_MPC85xx=y CONFIG_TARGET_CONTROLCENTERD=y CONFIG_SYS_EXTRA_OPTIONS="TRAILBLAZER,SPIFLASH,DEVELOP" diff --git a/configs/controlcenterd_TRAILBLAZER_defconfig b/configs/controlcenterd_TRAILBLAZER_defconfig index 45e8b8fd32..257fa853d8 100644 --- a/configs/controlcenterd_TRAILBLAZER_defconfig +++ b/configs/controlcenterd_TRAILBLAZER_defconfig @@ -1,4 +1,5 @@ CONFIG_PPC=y +CONFIG_IDENT_STRING=" controlcenterd trailblazer 0.01" CONFIG_MPC85xx=y CONFIG_TARGET_CONTROLCENTERD=y CONFIG_SYS_EXTRA_OPTIONS="TRAILBLAZER,SPIFLASH" diff --git a/configs/corvus_defconfig b/configs/corvus_defconfig index 975ac4fb10..c486be0497 100644 --- a/configs/corvus_defconfig +++ b/configs/corvus_defconfig @@ -1,10 +1,15 @@ CONFIG_ARM=y CONFIG_ARCH_AT91=y CONFIG_TARGET_CORVUS=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="at91sam9g45-corvus" -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9M10G45,MACH_TYPE=2066,SYS_USE_NANDFLASH" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="U-Boot> " # CONFIG_CMD_BDI is not set diff --git a/configs/d2net_v2_defconfig b/configs/d2net_v2_defconfig index ae9175f803..3b94de4e93 100644 --- a/configs/d2net_v2_defconfig +++ b/configs/d2net_v2_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_NET2BIG_V2=y +CONFIG_IDENT_STRING=" D2 v2" CONFIG_SYS_EXTRA_OPTIONS="D2NET_V2" CONFIG_BOOTDELAY=3 CONFIG_HUSH_PARSER=y diff --git a/configs/da850_am18xxevm_defconfig b/configs/da850_am18xxevm_defconfig index ce49340e54..9dc483161a 100644 --- a/configs/da850_am18xxevm_defconfig +++ b/configs/da850_am18xxevm_defconfig @@ -1,10 +1,15 @@ CONFIG_ARM=y CONFIG_ARCH_DAVINCI=y CONFIG_TARGET_DA850EVM=y -CONFIG_SPL=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="DA850_AM18X_EVM,MAC_ADDR_IN_EEPROM,SYS_I2C_EEPROM_ADDR_LEN=2,SYS_I2C_EEPROM_ADDR=0x50" CONFIG_BOOTDELAY=3 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y # CONFIG_CMD_IMLS is not set CONFIG_CMD_ASKENV=y diff --git a/configs/da850evm_defconfig b/configs/da850evm_defconfig index da6615ff35..256fd4f6b1 100644 --- a/configs/da850evm_defconfig +++ b/configs/da850evm_defconfig @@ -1,10 +1,15 @@ CONFIG_ARM=y CONFIG_ARCH_DAVINCI=y CONFIG_TARGET_DA850EVM=y -CONFIG_SPL=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="MAC_ADDR_IN_SPIFLASH" CONFIG_BOOTDELAY=3 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="U-Boot > " CONFIG_CMD_BOOTZ=y diff --git a/configs/db-88f6720_defconfig b/configs/db-88f6720_defconfig index b6df9610e0..ce7976a804 100644 --- a/configs/db-88f6720_defconfig +++ b/configs/db-88f6720_defconfig @@ -1,10 +1,17 @@ CONFIG_ARM=y CONFIG_ARCH_MVEBU=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SYS_MALLOC_F_LEN=0x2000 CONFIG_TARGET_DB_88F6720=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="armada-375-db" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_BOOTDELAY=3 +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set CONFIG_CMD_SF=y diff --git a/configs/db-88f6820-amc_defconfig b/configs/db-88f6820-amc_defconfig new file mode 100644 index 0000000000..18fcf0eb14 --- /dev/null +++ b/configs/db-88f6820-amc_defconfig @@ -0,0 +1,45 @@ +CONFIG_ARM=y +CONFIG_ARCH_MVEBU=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_TARGET_DB_88F6820_AMC=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y +CONFIG_DEFAULT_DEVICE_TREE="armada-385-amc" +CONFIG_BOOTDELAY=3 +CONFIG_SPL=y +# CONFIG_CMD_IMLS is not set +# CONFIG_CMD_FLASH is not set +CONFIG_CMD_NAND=y +CONFIG_CMD_SF=y +CONFIG_CMD_SPI=y +CONFIG_CMD_I2C=y +CONFIG_CMD_USB=y +# CONFIG_CMD_SETEXPR is not set +CONFIG_CMD_TFTPPUT=y +CONFIG_CMD_DHCP=y +CONFIG_CMD_MII=y +CONFIG_CMD_PING=y +CONFIG_CMD_CACHE=y +CONFIG_CMD_TIME=y +CONFIG_CMD_EXT2=y +CONFIG_CMD_EXT4=y +CONFIG_CMD_FAT=y +CONFIG_CMD_FS_GENERIC=y +CONFIG_SPL_OF_TRANSLATE=y +CONFIG_NAND_PXA3XX=y +CONFIG_SPI_FLASH=y +CONFIG_SPI_FLASH_BAR=y +CONFIG_SPI_FLASH_MACRONIX=y +CONFIG_SPI_FLASH_STMICRO=y +CONFIG_DEBUG_UART=y +CONFIG_DEBUG_UART_BASE=0xd0012000 +CONFIG_DEBUG_UART_CLOCK=200000000 +CONFIG_DEBUG_UART_SHIFT=2 +CONFIG_SYS_NS16550=y +CONFIG_USB=y +CONFIG_DM_USB=y +CONFIG_USB_EHCI_HCD=y +CONFIG_USB_STORAGE=y diff --git a/configs/db-88f6820-gp_defconfig b/configs/db-88f6820-gp_defconfig index 7ac7457d5e..a883be0519 100644 --- a/configs/db-88f6820-gp_defconfig +++ b/configs/db-88f6820-gp_defconfig @@ -1,9 +1,16 @@ CONFIG_ARM=y CONFIG_ARCH_MVEBU=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SYS_MALLOC_F_LEN=0x2000 CONFIG_TARGET_DB_88F6820_GP=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="armada-388-gp" -CONFIG_SPL=y CONFIG_BOOTDELAY=3 +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set CONFIG_CMD_MMC=y diff --git a/configs/db-mv784mp-gp_defconfig b/configs/db-mv784mp-gp_defconfig index 510554e341..b7d2ae2ea2 100644 --- a/configs/db-mv784mp-gp_defconfig +++ b/configs/db-mv784mp-gp_defconfig @@ -1,10 +1,17 @@ CONFIG_ARM=y CONFIG_ARCH_MVEBU=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SYS_MALLOC_F_LEN=0x2000 CONFIG_TARGET_DB_MV784MP_GP=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="armada-xp-gp" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_BOOTDELAY=3 +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set CONFIG_CMD_SF=y diff --git a/configs/devconcenter_defconfig b/configs/devconcenter_defconfig index 8468d8d423..cf41cd1c48 100644 --- a/configs/devconcenter_defconfig +++ b/configs/devconcenter_defconfig @@ -1,4 +1,5 @@ CONFIG_PPC=y +CONFIG_IDENT_STRING=" devconcenter 0.06" CONFIG_4xx=y CONFIG_TARGET_INTIP=y CONFIG_FIT=y diff --git a/configs/devkit3250_defconfig b/configs/devkit3250_defconfig index 5e4aefbb0a..57f47f6a33 100644 --- a/configs/devkit3250_defconfig +++ b/configs/devkit3250_defconfig @@ -1,9 +1,13 @@ CONFIG_ARM=y CONFIG_TARGET_DEVKIT3250=y -CONFIG_SPL=y -CONFIG_SPL_SYS_MALLOC_SIMPLE=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_BOOTDELAY=1 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_SYS_MALLOC_SIMPLE=y CONFIG_CMD_SPI=y CONFIG_CMD_I2C=y CONFIG_CMD_USB=y diff --git a/configs/devkit8000_defconfig b/configs/devkit8000_defconfig index 29a246c933..e836e5e6a7 100644 --- a/configs/devkit8000_defconfig +++ b/configs/devkit8000_defconfig @@ -1,8 +1,8 @@ CONFIG_ARM=y CONFIG_OMAP34XX=y CONFIG_TARGET_DEVKIT8000=y -CONFIG_SPL=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y # CONFIG_CMD_IMI is not set # CONFIG_CMD_IMLS is not set diff --git a/configs/difrnce_dit4350_defconfig b/configs/difrnce_dit4350_defconfig index c76af0ec01..6149c94ff4 100644 --- a/configs/difrnce_dit4350_defconfig +++ b/configs/difrnce_dit4350_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN5I=y CONFIG_DRAM_CLK=408 CONFIG_MMC0_CD_PIN="PG0" @@ -14,8 +15,8 @@ CONFIG_VIDEO_LCD_BL_EN="AXP0-1" CONFIG_VIDEO_LCD_BL_PWM="PB2" CONFIG_DEFAULT_DEVICE_TREE="sun5i-a13-difrnce-dit4350" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=2" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/dlvision-10g_defconfig b/configs/dlvision-10g_defconfig index 4253b55b41..621ac44b04 100644 --- a/configs/dlvision-10g_defconfig +++ b/configs/dlvision-10g_defconfig @@ -1,4 +1,5 @@ CONFIG_PPC=y +CONFIG_IDENT_STRING=" dlvision-10g 0.06" CONFIG_4xx=y CONFIG_TARGET_DLVISION_10G=y CONFIG_FIT=y diff --git a/configs/dlvision_defconfig b/configs/dlvision_defconfig index 8fd5addd69..586b80294b 100644 --- a/configs/dlvision_defconfig +++ b/configs/dlvision_defconfig @@ -1,4 +1,5 @@ CONFIG_PPC=y +CONFIG_IDENT_STRING=" dlvision 0.02" CONFIG_4xx=y CONFIG_TARGET_DLVISION=y CONFIG_FIT=y diff --git a/configs/dms-ba16-1g_defconfig b/configs/dms-ba16-1g_defconfig index a579af440c..db5adcf455 100644 --- a/configs/dms-ba16-1g_defconfig +++ b/configs/dms-ba16-1g_defconfig @@ -2,8 +2,8 @@ CONFIG_ARM=y CONFIG_ARCH_MX6=y CONFIG_TARGET_ADVANTECH_DMS_BA16=y CONFIG_SYS_DDR_1G=y -CONFIG_HUSH_PARSER=y CONFIG_BOOTDELAY=1 +CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set @@ -24,7 +24,6 @@ CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y -CONFIG_OF_LIBFDT=y CONFIG_USB=y CONFIG_USB_GADGET=y CONFIG_CI_UDC=y @@ -32,3 +31,4 @@ CONFIG_USB_GADGET_DOWNLOAD=y CONFIG_G_DNL_MANUFACTURER="Advantech" CONFIG_G_DNL_VENDOR_NUM=0x0525 CONFIG_G_DNL_PRODUCT_NUM=0xa4a5 +CONFIG_OF_LIBFDT=y diff --git a/configs/dms-ba16_defconfig b/configs/dms-ba16_defconfig index 365d05c345..e36f3dc204 100644 --- a/configs/dms-ba16_defconfig +++ b/configs/dms-ba16_defconfig @@ -1,8 +1,8 @@ CONFIG_ARM=y CONFIG_ARCH_MX6=y CONFIG_TARGET_ADVANTECH_DMS_BA16=y -CONFIG_HUSH_PARSER=y CONFIG_BOOTDELAY=1 +CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set @@ -23,7 +23,6 @@ CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y -CONFIG_OF_LIBFDT=y CONFIG_USB=y CONFIG_USB_GADGET=y CONFIG_CI_UDC=y @@ -31,3 +30,4 @@ CONFIG_USB_GADGET_DOWNLOAD=y CONFIG_G_DNL_MANUFACTURER="Advantech" CONFIG_G_DNL_VENDOR_NUM=0x0525 CONFIG_G_DNL_PRODUCT_NUM=0xa4a5 +CONFIG_OF_LIBFDT=y diff --git a/configs/dns325_defconfig b/configs/dns325_defconfig index 905f6ff49f..a26629d401 100644 --- a/configs/dns325_defconfig +++ b/configs/dns325_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_DNS325=y +CONFIG_IDENT_STRING="\nD-Link DNS-325" CONFIG_BOOTDELAY=3 CONFIG_HUSH_PARSER=y # CONFIG_CMD_IMLS is not set @@ -12,6 +13,7 @@ CONFIG_CMD_MII=y CONFIG_CMD_PING=y CONFIG_CMD_EXT2=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_STORAGE=y diff --git a/configs/dockstar_defconfig b/configs/dockstar_defconfig index 73740dd38f..645f652114 100644 --- a/configs/dockstar_defconfig +++ b/configs/dockstar_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_DOCKSTAR=y +CONFIG_IDENT_STRING="\nSeagate FreeAgent DockStar" CONFIG_BOOTDELAY=3 CONFIG_SYS_PROMPT="DockStar> " # CONFIG_CMD_IMLS is not set @@ -12,6 +13,7 @@ CONFIG_CMD_MII=y CONFIG_CMD_PING=y CONFIG_CMD_EXT2=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_STORAGE=y diff --git a/configs/dra7xx_evm_defconfig b/configs/dra7xx_evm_defconfig index 64184dec88..64df49084e 100644 --- a/configs/dra7xx_evm_defconfig +++ b/configs/dra7xx_evm_defconfig @@ -1,14 +1,18 @@ CONFIG_ARM=y CONFIG_OMAP54XX=y +# CONFIG_SPL_NAND_SUPPORT is not set CONFIG_TARGET_DRA7XX_EVM=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_SPL_STACK_R_ADDR=0x82000000 CONFIG_DEFAULT_DEVICE_TREE="dra7-evm" -CONFIG_SPL=y -CONFIG_SPL_STACK_R=y CONFIG_FIT=y CONFIG_OF_BOARD_SETUP=y CONFIG_SPL_LOAD_FIT=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_STACK_R=y +CONFIG_SPL_DMA_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/dra7xx_hs_evm_defconfig b/configs/dra7xx_hs_evm_defconfig index 3dad0fa100..5fdc2b7e2f 100644 --- a/configs/dra7xx_hs_evm_defconfig +++ b/configs/dra7xx_hs_evm_defconfig @@ -2,17 +2,21 @@ CONFIG_ARM=y CONFIG_OMAP54XX=y CONFIG_SYS_MALLOC_F_LEN=0x2000 CONFIG_TI_SECURE_DEVICE=y +# CONFIG_SPL_NAND_SUPPORT is not set CONFIG_TARGET_DRA7XX_EVM=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_SPL_STACK_R_ADDR=0x82000000 CONFIG_DEFAULT_DEVICE_TREE="dra7-evm" -CONFIG_SPL=y -CONFIG_SPL_STACK_R=y CONFIG_FIT=y CONFIG_OF_BOARD_SETUP=y CONFIG_SPL_LOAD_FIT=y CONFIG_SPL_FIT_IMAGE_POST_PROCESS=y CONFIG_FIT_IMAGE_POST_PROCESS=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_STACK_R=y +CONFIG_SPL_DMA_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/draco_defconfig b/configs/draco_defconfig index 37f4664c55..6c432f31da 100644 --- a/configs/draco_defconfig +++ b/configs/draco_defconfig @@ -1,9 +1,22 @@ CONFIG_ARM=y CONFIG_TARGET_DRACO=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_SYS_MALLOC_F_LEN=0x2000 +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="am335x-draco" -CONFIG_SPL=y CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="U-Boot# " CONFIG_AUTOBOOT_KEYED=y @@ -25,10 +38,13 @@ CONFIG_CMD_PING=y CONFIG_CMD_CACHE=y CONFIG_CMD_TIME=y CONFIG_CMD_EXT2=y +CONFIG_CMD_UBI=y CONFIG_OF_CONTROL=y CONFIG_OF_EMBED=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_WINBOND=y +CONFIG_MTD_UBI_FASTMAP=y +CONFIG_MTD_UBI_FASTMAP_AUTOCONVERT=1 CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_MUSB_HOST=y diff --git a/configs/dragonboard410c_defconfig b/configs/dragonboard410c_defconfig index 656cc815e2..3ff055fad9 100644 --- a/configs/dragonboard410c_defconfig +++ b/configs/dragonboard410c_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SNAPDRAGON=y +CONFIG_IDENT_STRING="\nQualcomm-DragonBoard 410C" CONFIG_DEFAULT_DEVICE_TREE="dragonboard410c" CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="dragonboard410c => " diff --git a/configs/dreamplug_defconfig b/configs/dreamplug_defconfig index 830b68bc0b..3ff3ba4e06 100644 --- a/configs/dreamplug_defconfig +++ b/configs/dreamplug_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_DREAMPLUG=y +CONFIG_IDENT_STRING="\nMarvell-DreamPlug" CONFIG_BOOTDELAY=3 CONFIG_HUSH_PARSER=y # CONFIG_CMD_IMLS is not set diff --git a/configs/ds414_defconfig b/configs/ds414_defconfig index f95a9df5a1..1d16833c8f 100644 --- a/configs/ds414_defconfig +++ b/configs/ds414_defconfig @@ -1,9 +1,16 @@ CONFIG_ARM=y CONFIG_ARCH_MVEBU=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SYS_MALLOC_F_LEN=0x2000 CONFIG_TARGET_DS414=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="armada-xp-synology-ds414" -CONFIG_SPL=y CONFIG_BOOTDELAY=3 +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set CONFIG_CMD_SF=y @@ -18,6 +25,7 @@ CONFIG_CMD_PING=y CONFIG_CMD_TIME=y CONFIG_CMD_EXT2=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SPL_OF_TRANSLATE=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_BAR=y diff --git a/configs/dserve_dsrv9703c_defconfig b/configs/dserve_dsrv9703c_defconfig index f8155b2176..ebcfe58358 100644 --- a/configs/dserve_dsrv9703c_defconfig +++ b/configs/dserve_dsrv9703c_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN4I=y CONFIG_MMC0_CD_PIN="PH1" CONFIG_USB0_VBUS_PIN="PB9" diff --git a/configs/duovero_defconfig b/configs/duovero_defconfig index be65d6e6a7..64f9cbca7f 100644 --- a/configs/duovero_defconfig +++ b/configs/duovero_defconfig @@ -1,8 +1,10 @@ CONFIG_ARM=y CONFIG_OMAP44XX=y +# CONFIG_SPL_I2C_SUPPORT is not set +# CONFIG_SPL_NAND_SUPPORT is not set CONFIG_TARGET_DUOVERO=y -CONFIG_SPL=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="duovero # " CONFIG_CMD_BOOTZ=y diff --git a/configs/ea20_defconfig b/configs/ea20_defconfig index 5e31c1b2ef..0e2887886d 100644 --- a/configs/ea20_defconfig +++ b/configs/ea20_defconfig @@ -16,6 +16,7 @@ CONFIG_CMD_GPIO=y CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y +CONFIG_CMD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y CONFIG_SYS_NS16550=y diff --git a/configs/eco5pk_defconfig b/configs/eco5pk_defconfig index 85f857c163..77f3cd5700 100644 --- a/configs/eco5pk_defconfig +++ b/configs/eco5pk_defconfig @@ -1,9 +1,10 @@ CONFIG_ARM=y CONFIG_OMAP34XX=y +# CONFIG_SPL_EXT_SUPPORT is not set CONFIG_TARGET_ECO5PK=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_BOOTDELAY=10 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="ECO5-PK # " # CONFIG_CMD_IMLS is not set @@ -18,6 +19,7 @@ CONFIG_CMD_PING=y CONFIG_CMD_CACHE=y CONFIG_CMD_EXT2=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_STORAGE=y diff --git a/configs/edminiv2_defconfig b/configs/edminiv2_defconfig index c9c7bc1256..ef221b253f 100644 --- a/configs/edminiv2_defconfig +++ b/configs/edminiv2_defconfig @@ -1,8 +1,13 @@ CONFIG_ARM=y CONFIG_ORION5X=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_TARGET_EDMINIV2=y -CONFIG_SPL=y +CONFIG_IDENT_STRING=" EDMiniV2" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y +CONFIG_SPL_NOR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="EDMiniV2> " CONFIG_CMD_I2C=y diff --git a/configs/espresso7420_defconfig b/configs/espresso7420_defconfig index c50da0ca84..e7163d317b 100644 --- a/configs/espresso7420_defconfig +++ b/configs/espresso7420_defconfig @@ -2,6 +2,7 @@ CONFIG_ARM=y CONFIG_ARCH_EXYNOS=y CONFIG_ARCH_EXYNOS7=y CONFIG_SYS_MALLOC_F_LEN=0x2000 +CONFIG_IDENT_STRING=" for ESPRESSO7420" CONFIG_DEFAULT_DEVICE_TREE="exynos7420-espresso7420" CONFIG_SYS_PROMPT="ESPRESSO7420 # " # CONFIG_AUTOBOOT is not set diff --git a/configs/etamin_defconfig b/configs/etamin_defconfig index 7c2b6f8ed8..6fc76bd57a 100644 --- a/configs/etamin_defconfig +++ b/configs/etamin_defconfig @@ -1,9 +1,22 @@ CONFIG_ARM=y CONFIG_TARGET_ETAMIN=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_SYS_MALLOC_F_LEN=0x2000 +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="am335x-draco" -CONFIG_SPL=y CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="U-Boot# " CONFIG_AUTOBOOT_KEYED=y @@ -25,10 +38,13 @@ CONFIG_CMD_PING=y CONFIG_CMD_CACHE=y CONFIG_CMD_TIME=y CONFIG_CMD_EXT2=y +CONFIG_CMD_UBI=y CONFIG_OF_CONTROL=y CONFIG_OF_EMBED=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_WINBOND=y +CONFIG_MTD_UBI_FASTMAP=y +CONFIG_MTD_UBI_FASTMAP_AUTOCONVERT=1 CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_MUSB_HOST=y diff --git a/configs/ethernut5_defconfig b/configs/ethernut5_defconfig index 58f0f7c290..a89aa52286 100644 --- a/configs/ethernut5_defconfig +++ b/configs/ethernut5_defconfig @@ -24,6 +24,7 @@ CONFIG_CMD_DNS=y CONFIG_CMD_CACHE=y CONFIG_CMD_EXT2=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_ATMEL=y CONFIG_USB=y diff --git a/configs/evb-rk3399_defconfig b/configs/evb-rk3399_defconfig index fbc23efb67..25e89394f9 100644 --- a/configs/evb-rk3399_defconfig +++ b/configs/evb-rk3399_defconfig @@ -14,12 +14,15 @@ CONFIG_CMD_EXT2=y CONFIG_CMD_EXT4=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_USB=y CONFIG_REGMAP=y CONFIG_SYSCON=y CONFIG_CLK=y CONFIG_ROCKCHIP_DWMMC=y CONFIG_ROCKCHIP_SDHCI=y +CONFIG_ROCKCHIP_GPIO=y CONFIG_PINCTRL=y +CONFIG_ROCKCHIP_RK3399_PINCTRL=y CONFIG_RAM=y CONFIG_DEBUG_UART=y CONFIG_DEBUG_UART_BASE=0xFF1A0000 @@ -29,3 +32,11 @@ CONFIG_SYS_NS16550=y CONFIG_SYSRESET=y CONFIG_USE_TINY_PRINTF=y CONFIG_ERRNO_STR=y +CONFIG_USB=y +CONFIG_USB_STORAGE=y +CONFIG_USB_XHCI_HCD=y +CONFIG_USB_XHCI_DWC3=y +CONFIG_USB_EHCI_HCD=y +CONFIG_USB_EHCI_GENERIC=y +CONFIG_DM_REGULATOR=y +CONFIG_DM_REGULATOR_FIXED=y diff --git a/configs/ga10h_v1_1_defconfig b/configs/ga10h_v1_1_defconfig index 34e74af9f6..02a8a78db5 100644 --- a/configs/ga10h_v1_1_defconfig +++ b/configs/ga10h_v1_1_defconfig @@ -16,8 +16,8 @@ CONFIG_VIDEO_LCD_BL_PWM="PH0" CONFIG_VIDEO_LCD_PANEL_LVDS=y CONFIG_DEFAULT_DEVICE_TREE="sun8i-a33-ga10h-v1.1" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=5" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/goflexhome_defconfig b/configs/goflexhome_defconfig index c463f60183..22e8452c9b 100644 --- a/configs/goflexhome_defconfig +++ b/configs/goflexhome_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_GOFLEXHOME=y +CONFIG_IDENT_STRING="\nSeagate GoFlex Home" CONFIG_BOOTDELAY=3 CONFIG_SYS_PROMPT="GoFlexHome> " # CONFIG_CMD_IMLS is not set @@ -13,6 +14,7 @@ CONFIG_CMD_PING=y CONFIG_CMD_EXT2=y CONFIG_CMD_EXT4=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_STORAGE=y diff --git a/configs/gplugd_defconfig b/configs/gplugd_defconfig index 6e14154f74..1a8ce9a544 100644 --- a/configs/gplugd_defconfig +++ b/configs/gplugd_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_TARGET_GPLUGD=y +CONFIG_IDENT_STRING="\nMarvell-gplugD" CONFIG_BOOTDELAY=3 # CONFIG_CMD_IMLS is not set CONFIG_CMD_ASKENV=y diff --git a/configs/gr_cpci_ax2000_defconfig b/configs/gr_cpci_ax2000_defconfig index b30590ea2b..faf493bf25 100644 --- a/configs/gr_cpci_ax2000_defconfig +++ b/configs/gr_cpci_ax2000_defconfig @@ -1,4 +1,5 @@ CONFIG_SPARC=y +CONFIG_IDENT_STRING=" Gaisler LEON3 GR-CPCI-AX2000" CONFIG_SYS_TEXT_BASE=0x00000000 CONFIG_TARGET_GR_CPCI_AX2000=y CONFIG_BOOTDELAY=5 diff --git a/configs/gr_ep2s60_defconfig b/configs/gr_ep2s60_defconfig index 302d936e27..5b045e3795 100644 --- a/configs/gr_ep2s60_defconfig +++ b/configs/gr_ep2s60_defconfig @@ -1,4 +1,5 @@ CONFIG_SPARC=y +CONFIG_IDENT_STRING=" Gaisler LEON3 EP2S60" CONFIG_SYS_TEXT_BASE=0x00000000 CONFIG_TARGET_GR_EP2S60=y CONFIG_BOOTDELAY=5 diff --git a/configs/gr_xc3s_1500_defconfig b/configs/gr_xc3s_1500_defconfig index d6ed30581c..231930790c 100644 --- a/configs/gr_xc3s_1500_defconfig +++ b/configs/gr_xc3s_1500_defconfig @@ -1,4 +1,5 @@ CONFIG_SPARC=y +CONFIG_IDENT_STRING=" Gaisler LEON3 GR-XC3S-1500" CONFIG_SYS_TEXT_BASE=0x00000000 CONFIG_TARGET_GR_XC3S_1500=y CONFIG_BOOTDELAY=5 diff --git a/configs/grsim_defconfig b/configs/grsim_defconfig index f827113ab5..7e83dc9445 100644 --- a/configs/grsim_defconfig +++ b/configs/grsim_defconfig @@ -1,4 +1,5 @@ CONFIG_SPARC=y +CONFIG_IDENT_STRING=" Gaisler GRSIM" CONFIG_SYS_TEXT_BASE=0x00000000 CONFIG_TARGET_GRSIM=y CONFIG_BOOTDELAY=5 diff --git a/configs/grsim_leon2_defconfig b/configs/grsim_leon2_defconfig index f5e7c433fa..97efdfc012 100644 --- a/configs/grsim_leon2_defconfig +++ b/configs/grsim_leon2_defconfig @@ -1,4 +1,5 @@ CONFIG_SPARC=y +CONFIG_IDENT_STRING=" Gaisler GRSIM LEON2" CONFIG_SYS_TEXT_BASE=0x00000000 CONFIG_TARGET_GRSIM_LEON2=y CONFIG_BOOTDELAY=5 diff --git a/configs/gt90h_v4_defconfig b/configs/gt90h_v4_defconfig index a14de0d0bf..913a7638f8 100644 --- a/configs/gt90h_v4_defconfig +++ b/configs/gt90h_v4_defconfig @@ -15,8 +15,8 @@ CONFIG_VIDEO_LCD_BL_EN="PH6" CONFIG_VIDEO_LCD_BL_PWM="PH0" CONFIG_DEFAULT_DEVICE_TREE="sun8i-a23-gt90h-v4" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=5" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/guruplug_defconfig b/configs/guruplug_defconfig index a6e43443ed..becc5872cb 100644 --- a/configs/guruplug_defconfig +++ b/configs/guruplug_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_GURUPLUG=y +CONFIG_IDENT_STRING="\nMarvell-GuruPlug" CONFIG_BOOTDELAY=3 CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y @@ -15,6 +16,7 @@ CONFIG_CMD_PING=y CONFIG_CMD_EXT2=y CONFIG_CMD_EXT4=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_STORAGE=y diff --git a/configs/gwventana_defconfig b/configs/gwventana_defconfig index 71f2d50cbf..0f726aefd5 100644 --- a/configs/gwventana_defconfig +++ b/configs/gwventana_defconfig @@ -1,14 +1,24 @@ CONFIG_ARM=y CONFIG_ARCH_MX6=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_TARGET_GW_VENTANA=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_POWER_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_SPL_STACK_R_ADDR=0x18000000 -CONFIG_SPL=y -CONFIG_SPL_STACK_R=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,MX6QDL" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y +CONFIG_SPL_STACK_R=y +CONFIG_SPL_DMA_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="Ventana > " CONFIG_CMD_BOOTZ=y @@ -29,6 +39,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_DM=y CONFIG_NETDEVICES=y CONFIG_E1000=y diff --git a/configs/hikey_defconfig b/configs/hikey_defconfig index e20f8bc761..3901dfec15 100644 --- a/configs/hikey_defconfig +++ b/configs/hikey_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_SYS_MALLOC_F_LEN=0x2000 +CONFIG_IDENT_STRING="hikey" CONFIG_DEFAULT_DEVICE_TREE="hi6220-hikey" CONFIG_HUSH_PARSER=y # CONFIG_CMD_IMLS is not set diff --git a/configs/hrcon_defconfig b/configs/hrcon_defconfig index f67eda701c..b6b583ddb7 100644 --- a/configs/hrcon_defconfig +++ b/configs/hrcon_defconfig @@ -1,4 +1,5 @@ CONFIG_PPC=y +CONFIG_IDENT_STRING=" hrcon 0.01" CONFIG_MPC83xx=y CONFIG_TARGET_HRCON=y CONFIG_FIT=y diff --git a/configs/hrcon_dh_defconfig b/configs/hrcon_dh_defconfig index 5eff4ac164..82ebc5fbdd 100644 --- a/configs/hrcon_dh_defconfig +++ b/configs/hrcon_dh_defconfig @@ -1,4 +1,5 @@ CONFIG_PPC=y +CONFIG_IDENT_STRING=" hrcon dh 0.01" CONFIG_MPC83xx=y CONFIG_TARGET_HRCON=y CONFIG_FIT=y diff --git a/configs/i12-tvbox_defconfig b/configs/i12-tvbox_defconfig index 54fa8190e6..8012c078fb 100644 --- a/configs/i12-tvbox_defconfig +++ b/configs/i12-tvbox_defconfig @@ -1,12 +1,13 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN7I=y CONFIG_DRAM_CLK=384 CONFIG_VIDEO_COMPOSITE=y CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-i12-tvbox" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,MACPWR=SUNXI_GPH(21)" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/iNet_3F_defconfig b/configs/iNet_3F_defconfig index 7ec54a738e..052454db64 100644 --- a/configs/iNet_3F_defconfig +++ b/configs/iNet_3F_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN4I=y CONFIG_DRAM_CLK=432 CONFIG_DRAM_EMR1=4 diff --git a/configs/iNet_3W_defconfig b/configs/iNet_3W_defconfig index 5e68769fcd..03d7ec9d30 100644 --- a/configs/iNet_3W_defconfig +++ b/configs/iNet_3W_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN4I=y CONFIG_DRAM_CLK=408 CONFIG_DRAM_ZQ=127 diff --git a/configs/iNet_86VS_defconfig b/configs/iNet_86VS_defconfig index 3dea793b91..1901125310 100644 --- a/configs/iNet_86VS_defconfig +++ b/configs/iNet_86VS_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN5I=y CONFIG_DRAM_CLK=408 CONFIG_USB0_VBUS_PIN="PG12" diff --git a/configs/iNet_D978_rev2_defconfig b/configs/iNet_D978_rev2_defconfig index 554f5d5f81..d5e63095ab 100644 --- a/configs/iNet_D978_rev2_defconfig +++ b/configs/iNet_D978_rev2_defconfig @@ -16,8 +16,8 @@ CONFIG_VIDEO_LCD_BL_PWM="PH0" CONFIG_VIDEO_LCD_PANEL_LVDS=y CONFIG_DEFAULT_DEVICE_TREE="sun8i-a33-inet-d978-rev2" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=5" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/ib62x0_defconfig b/configs/ib62x0_defconfig index 89a971c7d9..bfeb06ecef 100644 --- a/configs/ib62x0_defconfig +++ b/configs/ib62x0_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_IB62X0=y +CONFIG_IDENT_STRING=" RaidSonic ICY BOX IB-NAS62x0" CONFIG_BOOTDELAY=3 CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="ib62x0 => " @@ -15,6 +16,7 @@ CONFIG_CMD_MII=y CONFIG_CMD_PING=y CONFIG_CMD_EXT2=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_STORAGE=y diff --git a/configs/icnova-a20-swac_defconfig b/configs/icnova-a20-swac_defconfig index 548a07e733..78cc3bb972 100644 --- a/configs/icnova-a20-swac_defconfig +++ b/configs/icnova-a20-swac_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN7I=y CONFIG_DRAM_CLK=384 CONFIG_OLD_SUNXI_KERNEL_COMPAT=y @@ -12,8 +13,8 @@ CONFIG_VIDEO_LCD_POWER="PH22" CONFIG_VIDEO_LCD_PANEL_LVDS=y CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-icnova-swac" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="AXP209_POWER,SUNXI_GMAC,CMD_BMP,CMD_UNZIP" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/iconnect_defconfig b/configs/iconnect_defconfig index 8ccf5157fb..b59ff0920f 100644 --- a/configs/iconnect_defconfig +++ b/configs/iconnect_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_ICONNECT=y +CONFIG_IDENT_STRING=" Iomega iConnect" CONFIG_BOOTDELAY=3 CONFIG_SYS_PROMPT="iconnect => " # CONFIG_CMD_IMLS is not set @@ -11,6 +12,7 @@ CONFIG_CMD_MII=y CONFIG_CMD_PING=y CONFIG_CMD_EXT2=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_STORAGE=y diff --git a/configs/ids8313_defconfig b/configs/ids8313_defconfig index 02ca830dc7..c083f8ae50 100644 --- a/configs/ids8313_defconfig +++ b/configs/ids8313_defconfig @@ -19,5 +19,6 @@ CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y CONFIG_CMD_SNTP=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_OF_LIBFDT=y diff --git a/configs/igep0020_defconfig b/configs/igep0020_defconfig index 992d48f54d..0ec4ebc04f 100644 --- a/configs/igep0020_defconfig +++ b/configs/igep0020_defconfig @@ -1,10 +1,13 @@ CONFIG_ARM=y CONFIG_OMAP34XX=y +# CONFIG_SPL_EXT_SUPPORT is not set CONFIG_TARGET_OMAP3_IGEP00X0=y -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="MACH_TYPE=MACH_TYPE_IGEP0020" CONFIG_BOOTDELAY=3 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_MTD_SUPPORT=y +CONFIG_SPL_ONENAND_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set @@ -24,6 +27,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_NET_RANDOM_ETHADDR=y CONFIG_SYS_NS16550=y CONFIG_OF_LIBFDT=y diff --git a/configs/igep0030_defconfig b/configs/igep0030_defconfig index 84dd4ad823..bc0ec6ab70 100644 --- a/configs/igep0030_defconfig +++ b/configs/igep0030_defconfig @@ -1,9 +1,12 @@ CONFIG_ARM=y CONFIG_OMAP34XX=y +# CONFIG_SPL_EXT_SUPPORT is not set CONFIG_TARGET_OMAP3_IGEP00X0=y -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="MACH_TYPE=MACH_TYPE_IGEP0030,BOOT_ONENAND" CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_MTD_SUPPORT=y +CONFIG_SPL_ONENAND_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set @@ -23,5 +26,6 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_OF_LIBFDT=y diff --git a/configs/igep0030_nand_defconfig b/configs/igep0030_nand_defconfig index 37417c169c..075088149b 100644 --- a/configs/igep0030_nand_defconfig +++ b/configs/igep0030_nand_defconfig @@ -1,9 +1,12 @@ CONFIG_ARM=y CONFIG_OMAP34XX=y +# CONFIG_SPL_EXT_SUPPORT is not set CONFIG_TARGET_OMAP3_IGEP00X0=y -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="MACH_TYPE=MACH_TYPE_IGEP0030,BOOT_NAND" CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_MTD_SUPPORT=y +CONFIG_SPL_ONENAND_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set @@ -23,5 +26,6 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_OF_LIBFDT=y diff --git a/configs/igep0032_defconfig b/configs/igep0032_defconfig index 9529631318..280afbde1b 100644 --- a/configs/igep0032_defconfig +++ b/configs/igep0032_defconfig @@ -1,9 +1,12 @@ CONFIG_ARM=y CONFIG_OMAP34XX=y +# CONFIG_SPL_EXT_SUPPORT is not set CONFIG_TARGET_OMAP3_IGEP00X0=y -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="MACH_TYPE=MACH_TYPE_IGEP0032,BOOT_ONENAND" CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_MTD_SUPPORT=y +CONFIG_SPL_ONENAND_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set @@ -23,6 +26,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_NET_RANDOM_ETHADDR=y CONFIG_SYS_NS16550=y CONFIG_OF_LIBFDT=y diff --git a/configs/imgtec_xilfpga_defconfig b/configs/imgtec_xilfpga_defconfig new file mode 100644 index 0000000000..63f03cd642 --- /dev/null +++ b/configs/imgtec_xilfpga_defconfig @@ -0,0 +1,25 @@ +CONFIG_MIPS=y +CONFIG_SYS_MALLOC_F_LEN=0x600 +CONFIG_TARGET_XILFPGA=y +# CONFIG_MIPS_BOOT_ENV_LEGACY is not set +CONFIG_MIPS_BOOT_FDT=y +CONFIG_DEFAULT_DEVICE_TREE="nexys4ddr" +CONFIG_BOOTDELAY=5 +CONFIG_HUSH_PARSER=y +CONFIG_SYS_PROMPT="MIPSfpga # " +# CONFIG_CMD_IMLS is not set +# CONFIG_CMD_SAVEENV is not set +CONFIG_CMD_MEMINFO=y +# CONFIG_CMD_FLASH is not set +# CONFIG_CMD_FPGA is not set +CONFIG_CMD_DHCP=y +CONFIG_CMD_MII=y +CONFIG_CMD_PING=y +CONFIG_CMD_TIME=y +CONFIG_OF_EMBED=y +CONFIG_NET_RANDOM_ETHADDR=y +CONFIG_NETCONSOLE=y +CONFIG_CLK=y +CONFIG_XILINX_EMACLITE=y +CONFIG_SYS_NS16550=y +CONFIG_CMD_DHRYSTONE=y diff --git a/configs/inet1_defconfig b/configs/inet1_defconfig index a8b32cb3e6..4fcd2d457e 100644 --- a/configs/inet1_defconfig +++ b/configs/inet1_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN4I=y CONFIG_DRAM_CLK=432 CONFIG_DRAM_EMR1=4 diff --git a/configs/inet86dz_defconfig b/configs/inet86dz_defconfig index 55768ba709..4ed94dc1e3 100644 --- a/configs/inet86dz_defconfig +++ b/configs/inet86dz_defconfig @@ -15,8 +15,8 @@ CONFIG_VIDEO_LCD_BL_EN="PH6" CONFIG_VIDEO_LCD_BL_PWM="PH0" CONFIG_DEFAULT_DEVICE_TREE="sun8i-a23-inet86dz" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=5" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/inet97fv2_defconfig b/configs/inet97fv2_defconfig index 0b03e163c3..bef3cd8ec0 100644 --- a/configs/inet97fv2_defconfig +++ b/configs/inet97fv2_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN4I=y CONFIG_DRAM_CLK=408 CONFIG_DRAM_EMR1=4 diff --git a/configs/inet98v_rev2_defconfig b/configs/inet98v_rev2_defconfig index 27b5019237..7c306f8b59 100644 --- a/configs/inet98v_rev2_defconfig +++ b/configs/inet98v_rev2_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN5I=y CONFIG_DRAM_CLK=432 CONFIG_MMC0_CD_PIN="PG0" @@ -14,8 +15,8 @@ CONFIG_VIDEO_LCD_BL_EN="AXP0-1" CONFIG_VIDEO_LCD_BL_PWM="PB2" CONFIG_DEFAULT_DEVICE_TREE="sun5i-a13-inet-98v-rev2" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=2" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/inet9f_rev03_defconfig b/configs/inet9f_rev03_defconfig index 153450ffc2..cc051bdb4c 100644 --- a/configs/inet9f_rev03_defconfig +++ b/configs/inet9f_rev03_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN4I=y CONFIG_DRAM_CLK=408 CONFIG_DRAM_EMR1=4 diff --git a/configs/inetspace_v2_defconfig b/configs/inetspace_v2_defconfig index 6de6dde76e..3a5bf5eb25 100644 --- a/configs/inetspace_v2_defconfig +++ b/configs/inetspace_v2_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_NETSPACE_V2=y +CONFIG_IDENT_STRING=" IS v2" CONFIG_SYS_EXTRA_OPTIONS="INETSPACE_V2" CONFIG_BOOTDELAY=3 CONFIG_HUSH_PARSER=y diff --git a/configs/intip_defconfig b/configs/intip_defconfig index 7e7a6c0435..9e1b44a739 100644 --- a/configs/intip_defconfig +++ b/configs/intip_defconfig @@ -1,4 +1,5 @@ CONFIG_PPC=y +CONFIG_IDENT_STRING=" intip 0.06" CONFIG_4xx=y CONFIG_TARGET_INTIP=y CONFIG_FIT=y diff --git a/configs/io64_defconfig b/configs/io64_defconfig index 2093210f93..6215c7773b 100644 --- a/configs/io64_defconfig +++ b/configs/io64_defconfig @@ -1,4 +1,5 @@ CONFIG_PPC=y +CONFIG_IDENT_STRING=" io64 0.02" CONFIG_4xx=y CONFIG_TARGET_IO64=y CONFIG_FIT=y diff --git a/configs/io_defconfig b/configs/io_defconfig index 6cca9bf136..139556e51e 100644 --- a/configs/io_defconfig +++ b/configs/io_defconfig @@ -1,4 +1,5 @@ CONFIG_PPC=y +CONFIG_IDENT_STRING=" io 0.06" CONFIG_4xx=y CONFIG_TARGET_IO=y CONFIG_FIT=y diff --git a/configs/iocon_defconfig b/configs/iocon_defconfig index 54b8c18dc5..2cc836da8a 100644 --- a/configs/iocon_defconfig +++ b/configs/iocon_defconfig @@ -1,4 +1,5 @@ CONFIG_PPC=y +CONFIG_IDENT_STRING=" iocon 0.06" CONFIG_4xx=y CONFIG_TARGET_IOCON=y CONFIG_FIT=y diff --git a/configs/ipam390_defconfig b/configs/ipam390_defconfig index 64fa54cea9..d0fdcac107 100644 --- a/configs/ipam390_defconfig +++ b/configs/ipam390_defconfig @@ -1,8 +1,13 @@ CONFIG_ARM=y CONFIG_ARCH_DAVINCI=y CONFIG_TARGET_IPAM390=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="U-Boot > " # CONFIG_CMD_IMLS is not set @@ -12,4 +17,5 @@ CONFIG_CMD_ASKENV=y CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y diff --git a/configs/jesurun_q5_defconfig b/configs/jesurun_q5_defconfig index 9cb8b1da84..6e4e6ca235 100644 --- a/configs/jesurun_q5_defconfig +++ b/configs/jesurun_q5_defconfig @@ -1,13 +1,14 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN4I=y CONFIG_DRAM_CLK=312 CONFIG_USB0_VBUS_PIN="PB9" CONFIG_VIDEO_COMPOSITE=y CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-jesurun-q5" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_EMAC,MACPWR=SUNXI_GPH(19)" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/k2e_evm_defconfig b/configs/k2e_evm_defconfig index f41fa43974..1c040aa17d 100644 --- a/configs/k2e_evm_defconfig +++ b/configs/k2e_evm_defconfig @@ -1,10 +1,17 @@ CONFIG_ARM=y CONFIG_ARCH_KEYSTONE=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_TARGET_K2E_EVM=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_POWER_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="k2e-evm" -CONFIG_SPL=y CONFIG_OF_BOARD_SETUP=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="K2E EVM # " CONFIG_CMD_BOOTZ=y @@ -25,6 +32,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_OF_CONTROL=y CONFIG_NET_RANDOM_ETHADDR=y CONFIG_DM=y diff --git a/configs/k2g_evm_defconfig b/configs/k2g_evm_defconfig index 9890ec610c..13b91cd638 100644 --- a/configs/k2g_evm_defconfig +++ b/configs/k2g_evm_defconfig @@ -1,10 +1,17 @@ CONFIG_ARM=y CONFIG_ARCH_KEYSTONE=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_TARGET_K2G_EVM=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_POWER_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="k2g-evm" -CONFIG_SPL=y CONFIG_OF_BOARD_SETUP=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set @@ -25,6 +32,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_OF_CONTROL=y CONFIG_DM=y CONFIG_DM_MMC=y diff --git a/configs/k2hk_evm_defconfig b/configs/k2hk_evm_defconfig index b492db70b6..4ba0778e8f 100644 --- a/configs/k2hk_evm_defconfig +++ b/configs/k2hk_evm_defconfig @@ -1,10 +1,17 @@ CONFIG_ARM=y CONFIG_ARCH_KEYSTONE=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_TARGET_K2HK_EVM=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_POWER_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="k2hk-evm" -CONFIG_SPL=y CONFIG_OF_BOARD_SETUP=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="K2HK EVM # " CONFIG_CMD_BOOTZ=y @@ -25,6 +32,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_OF_CONTROL=y CONFIG_NET_RANDOM_ETHADDR=y CONFIG_DM=y diff --git a/configs/k2l_evm_defconfig b/configs/k2l_evm_defconfig index 9ce8fd5ba6..e91d1d0efd 100644 --- a/configs/k2l_evm_defconfig +++ b/configs/k2l_evm_defconfig @@ -1,10 +1,17 @@ CONFIG_ARM=y CONFIG_ARCH_KEYSTONE=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_TARGET_K2L_EVM=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_POWER_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="k2l-evm" -CONFIG_SPL=y CONFIG_OF_BOARD_SETUP=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="K2L EVM # " CONFIG_CMD_BOOTZ=y @@ -25,6 +32,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_OF_CONTROL=y CONFIG_NET_RANDOM_ETHADDR=y CONFIG_DM=y diff --git a/configs/kc1_defconfig b/configs/kc1_defconfig index add96a8a32..48279349f7 100644 --- a/configs/kc1_defconfig +++ b/configs/kc1_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_OMAP44XX=y +# CONFIG_SPL_NAND_SUPPORT is not set CONFIG_TARGET_KC1=y CONFIG_SPL=y CONFIG_HUSH_PARSER=y diff --git a/configs/km_kirkwood_128m16_defconfig b/configs/km_kirkwood_128m16_defconfig index 67356b182a..b3045c798d 100644 --- a/configs/km_kirkwood_128m16_defconfig +++ b/configs/km_kirkwood_128m16_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_KM_KIRKWOOD=y +CONFIG_IDENT_STRING="\nKeymile Kirkwood 128M16" CONFIG_SYS_EXTRA_OPTIONS="KM_KIRKWOOD_128M16" CONFIG_VERSION_VARIABLE=y CONFIG_HUSH_PARSER=y @@ -16,6 +17,7 @@ CONFIG_CMD_I2C=y CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y +CONFIG_CMD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y CONFIG_SYS_NS16550=y diff --git a/configs/km_kirkwood_defconfig b/configs/km_kirkwood_defconfig index 7482b93836..f261bd40d8 100644 --- a/configs/km_kirkwood_defconfig +++ b/configs/km_kirkwood_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_KM_KIRKWOOD=y +CONFIG_IDENT_STRING="\nKeymile Kirkwood" CONFIG_SYS_EXTRA_OPTIONS="KM_KIRKWOOD" CONFIG_VERSION_VARIABLE=y CONFIG_HUSH_PARSER=y @@ -16,6 +17,7 @@ CONFIG_CMD_I2C=y CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y +CONFIG_CMD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y CONFIG_SYS_NS16550=y diff --git a/configs/km_kirkwood_pci_defconfig b/configs/km_kirkwood_pci_defconfig index 9b7a5fb6dc..c2a6a433df 100644 --- a/configs/km_kirkwood_pci_defconfig +++ b/configs/km_kirkwood_pci_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_KM_KIRKWOOD=y +CONFIG_IDENT_STRING="\nKeymile Kirkwood PCI" CONFIG_SYS_EXTRA_OPTIONS="KM_KIRKWOOD_PCI" CONFIG_VERSION_VARIABLE=y CONFIG_HUSH_PARSER=y @@ -16,6 +17,7 @@ CONFIG_CMD_I2C=y CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y +CONFIG_CMD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y CONFIG_SYS_NS16550=y diff --git a/configs/kmcoge4_defconfig b/configs/kmcoge4_defconfig index 3125387c37..02a352a113 100644 --- a/configs/kmcoge4_defconfig +++ b/configs/kmcoge4_defconfig @@ -20,6 +20,7 @@ CONFIG_CMD_I2C=y CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y +CONFIG_CMD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_SPANSION=y CONFIG_SPI_FLASH_STMICRO=y diff --git a/configs/kmcoge5ne_defconfig b/configs/kmcoge5ne_defconfig index e03d71b296..09b29b5e47 100644 --- a/configs/kmcoge5ne_defconfig +++ b/configs/kmcoge5ne_defconfig @@ -15,5 +15,6 @@ CONFIG_CMD_I2C=y CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_OF_LIBFDT=y diff --git a/configs/kmcoge5un_defconfig b/configs/kmcoge5un_defconfig index 221dcb5a2d..b0e5ab1cbf 100644 --- a/configs/kmcoge5un_defconfig +++ b/configs/kmcoge5un_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_KM_KIRKWOOD=y +CONFIG_IDENT_STRING="\nKeymile COGE5UN" CONFIG_SYS_EXTRA_OPTIONS="KM_COGE5UN" CONFIG_VERSION_VARIABLE=y CONFIG_HUSH_PARSER=y @@ -16,6 +17,7 @@ CONFIG_CMD_I2C=y CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y +CONFIG_CMD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y CONFIG_SYS_NS16550=y diff --git a/configs/kmeter1_defconfig b/configs/kmeter1_defconfig index 52f8be1c92..61f887a48a 100644 --- a/configs/kmeter1_defconfig +++ b/configs/kmeter1_defconfig @@ -15,5 +15,6 @@ CONFIG_CMD_I2C=y CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_OF_LIBFDT=y diff --git a/configs/kmlion1_defconfig b/configs/kmlion1_defconfig index bb38814445..39a85e1d4c 100644 --- a/configs/kmlion1_defconfig +++ b/configs/kmlion1_defconfig @@ -20,6 +20,7 @@ CONFIG_CMD_I2C=y CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y +CONFIG_CMD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_SPANSION=y CONFIG_SPI_FLASH_STMICRO=y diff --git a/configs/kmnusa_defconfig b/configs/kmnusa_defconfig index 01f4fce403..d0dc6fd3b4 100644 --- a/configs/kmnusa_defconfig +++ b/configs/kmnusa_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_KM_KIRKWOOD=y +CONFIG_IDENT_STRING="\nKeymile NUSA" CONFIG_SYS_EXTRA_OPTIONS="KM_NUSA" CONFIG_VERSION_VARIABLE=y CONFIG_HUSH_PARSER=y @@ -16,6 +17,7 @@ CONFIG_CMD_I2C=y CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y +CONFIG_CMD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y CONFIG_SYS_NS16550=y diff --git a/configs/kmopti2_defconfig b/configs/kmopti2_defconfig index daf5a96fa9..e8a5b34de2 100644 --- a/configs/kmopti2_defconfig +++ b/configs/kmopti2_defconfig @@ -15,5 +15,6 @@ CONFIG_CMD_I2C=y CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_OF_LIBFDT=y diff --git a/configs/kmsugp1_defconfig b/configs/kmsugp1_defconfig index 8e0f6da530..e7ccc0a7f1 100644 --- a/configs/kmsugp1_defconfig +++ b/configs/kmsugp1_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_KM_KIRKWOOD=y +CONFIG_IDENT_STRING="\nKeymile SUGP1" CONFIG_SYS_EXTRA_OPTIONS="KM_SUGP1" CONFIG_VERSION_VARIABLE=y CONFIG_HUSH_PARSER=y @@ -16,6 +17,7 @@ CONFIG_CMD_I2C=y CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y +CONFIG_CMD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y CONFIG_SYS_NS16550=y diff --git a/configs/kmsupx5_defconfig b/configs/kmsupx5_defconfig index 67e11f6622..7894352ce4 100644 --- a/configs/kmsupx5_defconfig +++ b/configs/kmsupx5_defconfig @@ -15,5 +15,6 @@ CONFIG_CMD_I2C=y CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_OF_LIBFDT=y diff --git a/configs/kmsuv31_defconfig b/configs/kmsuv31_defconfig index eb4d583bfb..9a06d58858 100644 --- a/configs/kmsuv31_defconfig +++ b/configs/kmsuv31_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_KM_KIRKWOOD=y +CONFIG_IDENT_STRING="\nKeymile SUV31" CONFIG_SYS_EXTRA_OPTIONS="KM_SUV31" CONFIG_VERSION_VARIABLE=y CONFIG_HUSH_PARSER=y @@ -16,6 +17,7 @@ CONFIG_CMD_I2C=y CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y +CONFIG_CMD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y CONFIG_SYS_NS16550=y diff --git a/configs/kmtegr1_defconfig b/configs/kmtegr1_defconfig index f0b1cca1e1..9bc00ad6d2 100644 --- a/configs/kmtegr1_defconfig +++ b/configs/kmtegr1_defconfig @@ -15,5 +15,6 @@ CONFIG_CMD_I2C=y CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_OF_LIBFDT=y diff --git a/configs/kmtepr2_defconfig b/configs/kmtepr2_defconfig index 936dd91d60..5248863a40 100644 --- a/configs/kmtepr2_defconfig +++ b/configs/kmtepr2_defconfig @@ -15,5 +15,6 @@ CONFIG_CMD_I2C=y CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_OF_LIBFDT=y diff --git a/configs/kmvect1_defconfig b/configs/kmvect1_defconfig index 3e310ba34c..2e3413ce57 100644 --- a/configs/kmvect1_defconfig +++ b/configs/kmvect1_defconfig @@ -15,5 +15,6 @@ CONFIG_CMD_I2C=y CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_OF_LIBFDT=y diff --git a/configs/ls1021aqds_nand_defconfig b/configs/ls1021aqds_nand_defconfig index 084885e0de..628f2d5e22 100644 --- a/configs/ls1021aqds_nand_defconfig +++ b/configs/ls1021aqds_nand_defconfig @@ -1,6 +1,13 @@ CONFIG_ARM=y CONFIG_TARGET_LS1021AQDS=y -CONFIG_SPL=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y @@ -8,6 +15,8 @@ CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPL_FSL_PBL,NAND_BOOT" CONFIG_NAND_BOOT=y CONFIG_BOOTDELAY=3 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y CONFIG_CMD_GREPENV=y diff --git a/configs/ls1021aqds_nor_SECURE_BOOT_defconfig b/configs/ls1021aqds_nor_SECURE_BOOT_defconfig index 07959f5068..b511eb0ae0 100644 --- a/configs/ls1021aqds_nor_SECURE_BOOT_defconfig +++ b/configs/ls1021aqds_nor_SECURE_BOOT_defconfig @@ -30,4 +30,5 @@ CONFIG_USB_XHCI_HCD=y CONFIG_USB_XHCI_DWC3=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/ls1021aqds_sdcard_ifc_defconfig b/configs/ls1021aqds_sdcard_ifc_defconfig index dc5b09a1cb..f856ad7bf4 100644 --- a/configs/ls1021aqds_sdcard_ifc_defconfig +++ b/configs/ls1021aqds_sdcard_ifc_defconfig @@ -1,12 +1,21 @@ CONFIG_ARM=y CONFIG_TARGET_LS1021AQDS=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="ls1021a-qds-duart" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPL_FSL_PBL,SD_BOOT" CONFIG_SD_BOOT=y CONFIG_BOOTDELAY=3 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y CONFIG_CMD_GREPENV=y diff --git a/configs/ls1021aqds_sdcard_qspi_defconfig b/configs/ls1021aqds_sdcard_qspi_defconfig index dbad7ee586..09df451b44 100644 --- a/configs/ls1021aqds_sdcard_qspi_defconfig +++ b/configs/ls1021aqds_sdcard_qspi_defconfig @@ -1,12 +1,21 @@ CONFIG_ARM=y CONFIG_TARGET_LS1021AQDS=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="ls1021a-qds-duart" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPL_FSL_PBL,SD_BOOT,SD_BOOT_QSPI" CONFIG_SD_BOOT=y CONFIG_BOOTDELAY=3 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/ls1021atwr_nor_SECURE_BOOT_defconfig b/configs/ls1021atwr_nor_SECURE_BOOT_defconfig index 1a5e0efae4..34cbb4d675 100644 --- a/configs/ls1021atwr_nor_SECURE_BOOT_defconfig +++ b/configs/ls1021atwr_nor_SECURE_BOOT_defconfig @@ -30,4 +30,5 @@ CONFIG_USB_XHCI_HCD=y CONFIG_USB_XHCI_DWC3=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig b/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig index a7a471393a..fefd174a45 100644 --- a/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig +++ b/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig @@ -1,12 +1,23 @@ CONFIG_ARM=y CONFIG_TARGET_LS1021ATWR=y -CONFIG_SPL=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPL_FSL_PBL,SD_BOOT,SECURE_BOOT" CONFIG_BOOTDELAY=0 +CONFIG_SPL=y +CONFIG_SPL_CRYPTO_SUPPORT=y +CONFIG_SPL_HASH_SUPPORT=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y CONFIG_CMD_GREPENV=y @@ -21,6 +32,7 @@ CONFIG_CMD_PING=y CONFIG_CMD_EXT2=y CONFIG_CMD_FAT=y CONFIG_DM=y +CONFIG_SPL_DM=y CONFIG_NETDEVICES=y CONFIG_E1000=y CONFIG_SYS_NS16550=y @@ -29,4 +41,5 @@ CONFIG_USB_XHCI_HCD=y CONFIG_USB_XHCI_DWC3=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_OF_LIBFDT=y diff --git a/configs/ls1021atwr_sdcard_ifc_defconfig b/configs/ls1021atwr_sdcard_ifc_defconfig index 439121deb1..68848d802a 100644 --- a/configs/ls1021atwr_sdcard_ifc_defconfig +++ b/configs/ls1021atwr_sdcard_ifc_defconfig @@ -1,6 +1,12 @@ CONFIG_ARM=y CONFIG_TARGET_LS1021ATWR=y -CONFIG_SPL=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y @@ -8,6 +14,8 @@ CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPL_FSL_PBL,SD_BOOT" CONFIG_SD_BOOT=y CONFIG_BOOTDELAY=3 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y CONFIG_CMD_GREPENV=y diff --git a/configs/ls1021atwr_sdcard_qspi_defconfig b/configs/ls1021atwr_sdcard_qspi_defconfig index 70eb312972..9faba8dbcb 100644 --- a/configs/ls1021atwr_sdcard_qspi_defconfig +++ b/configs/ls1021atwr_sdcard_qspi_defconfig @@ -1,7 +1,13 @@ CONFIG_ARM=y CONFIG_TARGET_LS1021ATWR=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="ls1021a-twr-duart" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y @@ -9,6 +15,8 @@ CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPL_FSL_PBL,SD_BOOT,SD_BOOT_QSPI" CONFIG_SD_BOOT=y CONFIG_BOOTDELAY=3 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/ls1043aqds_nand_defconfig b/configs/ls1043aqds_nand_defconfig index db85aed9ba..593f2444ce 100644 --- a/configs/ls1043aqds_nand_defconfig +++ b/configs/ls1043aqds_nand_defconfig @@ -1,13 +1,22 @@ CONFIG_ARM=y CONFIG_TARGET_LS1043AQDS=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-qds-duart" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4,RAMBOOT_PBL,SPL_FSL_PBL,NAND_BOOT" CONFIG_NAND_BOOT=y CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y CONFIG_CMD_GREPENV=y diff --git a/configs/ls1043aqds_sdcard_ifc_defconfig b/configs/ls1043aqds_sdcard_ifc_defconfig index 6bd36ae0c7..e3609061a3 100644 --- a/configs/ls1043aqds_sdcard_ifc_defconfig +++ b/configs/ls1043aqds_sdcard_ifc_defconfig @@ -1,13 +1,22 @@ CONFIG_ARM=y CONFIG_TARGET_LS1043AQDS=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-qds-duart" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4,RAMBOOT_PBL,SPL_FSL_PBL,SD_BOOT" CONFIG_SD_BOOT=y CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y CONFIG_CMD_GREPENV=y diff --git a/configs/ls1043aqds_sdcard_qspi_defconfig b/configs/ls1043aqds_sdcard_qspi_defconfig index 71e40adc11..b6ece37b22 100644 --- a/configs/ls1043aqds_sdcard_qspi_defconfig +++ b/configs/ls1043aqds_sdcard_qspi_defconfig @@ -1,13 +1,22 @@ CONFIG_ARM=y CONFIG_TARGET_LS1043AQDS=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-qds-duart" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4,RAMBOOT_PBL,SPL_FSL_PBL,SD_BOOT,SD_BOOT_QSPI" CONFIG_SD_BOOT=y CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/ls1043ardb_SECURE_BOOT_defconfig b/configs/ls1043ardb_SECURE_BOOT_defconfig index 818657b8a4..f51e02059b 100644 --- a/configs/ls1043ardb_SECURE_BOOT_defconfig +++ b/configs/ls1043ardb_SECURE_BOOT_defconfig @@ -27,3 +27,4 @@ CONFIG_USB_XHCI_HCD=y CONFIG_USB_XHCI_DWC3=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y diff --git a/configs/ls1043ardb_nand_defconfig b/configs/ls1043ardb_nand_defconfig index 330666d8df..a2030302e2 100644 --- a/configs/ls1043ardb_nand_defconfig +++ b/configs/ls1043ardb_nand_defconfig @@ -1,13 +1,22 @@ CONFIG_ARM=y CONFIG_TARGET_LS1043ARDB=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-rdb" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPL_FSL_PBL,NAND_BOOT,SYS_FSL_DDR4" CONFIG_NAND_BOOT=y CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/ls1043ardb_sdcard_defconfig b/configs/ls1043ardb_sdcard_defconfig index daa802fe4c..323bb77f3a 100644 --- a/configs/ls1043ardb_sdcard_defconfig +++ b/configs/ls1043ardb_sdcard_defconfig @@ -1,13 +1,22 @@ CONFIG_ARM=y CONFIG_TARGET_LS1043ARDB=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-rdb" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPL_FSL_PBL,SD_BOOT,SYS_FSL_DDR4" CONFIG_SD_BOOT=y CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y diff --git a/configs/ls2080a_emu_defconfig b/configs/ls2080a_emu_defconfig index 21a02830d6..dfc141558a 100644 --- a/configs/ls2080a_emu_defconfig +++ b/configs/ls2080a_emu_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_TARGET_LS2080A_EMU=y +CONFIG_IDENT_STRING=" LS2080A-EMU" CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y diff --git a/configs/ls2080a_simu_defconfig b/configs/ls2080a_simu_defconfig index 1b670b0c05..a677cb9de9 100644 --- a/configs/ls2080a_simu_defconfig +++ b/configs/ls2080a_simu_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_TARGET_LS2080A_SIMU=y +CONFIG_IDENT_STRING=" LS2080A-SIMU" CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y diff --git a/configs/ls2080aqds_SECURE_BOOT_defconfig b/configs/ls2080aqds_SECURE_BOOT_defconfig index 7d2fe10b3c..6a434c0cd2 100644 --- a/configs/ls2080aqds_SECURE_BOOT_defconfig +++ b/configs/ls2080aqds_SECURE_BOOT_defconfig @@ -35,4 +35,5 @@ CONFIG_USB_XHCI_HCD=y CONFIG_USB_XHCI_DWC3=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_EFI_LOADER_BOUNCE_BUFFER=y diff --git a/configs/ls2080aqds_nand_defconfig b/configs/ls2080aqds_nand_defconfig index 6282f58789..8eb41214f3 100644 --- a/configs/ls2080aqds_nand_defconfig +++ b/configs/ls2080aqds_nand_defconfig @@ -1,13 +1,21 @@ CONFIG_ARM=y CONFIG_TARGET_LS2080AQDS=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="fsl-ls2080a-qds" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4, NAND, LS2080A" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/ls2080ardb_SECURE_BOOT_defconfig b/configs/ls2080ardb_SECURE_BOOT_defconfig index 163554b23b..932a4bd486 100644 --- a/configs/ls2080ardb_SECURE_BOOT_defconfig +++ b/configs/ls2080ardb_SECURE_BOOT_defconfig @@ -35,4 +35,5 @@ CONFIG_USB_XHCI_HCD=y CONFIG_USB_XHCI_DWC3=y CONFIG_USB_STORAGE=y CONFIG_RSA=y +CONFIG_SPL_RSA=y CONFIG_EFI_LOADER_BOUNCE_BUFFER=y diff --git a/configs/ls2080ardb_nand_defconfig b/configs/ls2080ardb_nand_defconfig index a362f0d2e4..551f158e0a 100644 --- a/configs/ls2080ardb_nand_defconfig +++ b/configs/ls2080ardb_nand_defconfig @@ -1,12 +1,20 @@ CONFIG_ARM=y CONFIG_TARGET_LS2080ARDB=y -CONFIG_SPL=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_OF_BOARD_SETUP=y CONFIG_OF_STDOUT_VIA_ALIAS=y CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4, NAND, LS2080A" CONFIG_BOOTDELAY=10 +CONFIG_SPL=y +CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_GREPENV=y CONFIG_CMD_MMC=y diff --git a/configs/lschlv2_defconfig b/configs/lschlv2_defconfig index b9aa9614d1..53930848dd 100644 --- a/configs/lschlv2_defconfig +++ b/configs/lschlv2_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_LSXL=y +CONFIG_IDENT_STRING=" LS-CHLv2" CONFIG_SYS_EXTRA_OPTIONS="LSCHLV2" CONFIG_BOOTDELAY=3 CONFIG_HUSH_PARSER=y diff --git a/configs/lsxhl_defconfig b/configs/lsxhl_defconfig index 794ec181e2..48bacaa89f 100644 --- a/configs/lsxhl_defconfig +++ b/configs/lsxhl_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_LSXL=y +CONFIG_IDENT_STRING=" LS-XHL" CONFIG_SYS_EXTRA_OPTIONS="LSXHL" CONFIG_BOOTDELAY=3 CONFIG_HUSH_PARSER=y diff --git a/configs/lwmon5_defconfig b/configs/lwmon5_defconfig index 807b936500..b6a0bef0f4 100644 --- a/configs/lwmon5_defconfig +++ b/configs/lwmon5_defconfig @@ -1,4 +1,5 @@ CONFIG_PPC=y +CONFIG_IDENT_STRING=" - v2.0" CONFIG_4xx=y CONFIG_TARGET_LWMON5=y CONFIG_FIT=y diff --git a/configs/m28evk_defconfig b/configs/m28evk_defconfig index bace4f6e12..2bfed596a8 100644 --- a/configs/m28evk_defconfig +++ b/configs/m28evk_defconfig @@ -1,9 +1,13 @@ CONFIG_ARM=y CONFIG_TARGET_M28EVK=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_FIT=y CONFIG_BOOTDELAY=3 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y # CONFIG_CMD_IMLS is not set CONFIG_CMD_ASKENV=y @@ -23,6 +27,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y CONFIG_USB=y diff --git a/configs/m53evk_defconfig b/configs/m53evk_defconfig index 042f522eec..03a4bfd221 100644 --- a/configs/m53evk_defconfig +++ b/configs/m53evk_defconfig @@ -1,10 +1,15 @@ CONFIG_ARM=y CONFIG_TARGET_M53EVK=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/denx/m53evk/imximage.cfg" CONFIG_BOOTDELAY=3 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y # CONFIG_CMD_IMLS is not set CONFIG_CMD_ASKENV=y @@ -20,6 +25,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_OF_LIBFDT=y diff --git a/configs/ma5d4evk_defconfig b/configs/ma5d4evk_defconfig index e3431ae80d..638764daaa 100644 --- a/configs/ma5d4evk_defconfig +++ b/configs/ma5d4evk_defconfig @@ -1,11 +1,17 @@ CONFIG_ARM=y CONFIG_ARCH_AT91=y CONFIG_TARGET_MA5D4EVK=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="SAMA5D4" CONFIG_BOOTDELAY=3 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMI is not set diff --git a/configs/maxbcm_defconfig b/configs/maxbcm_defconfig index 22186c3337..d689c63b52 100644 --- a/configs/maxbcm_defconfig +++ b/configs/maxbcm_defconfig @@ -1,9 +1,16 @@ CONFIG_ARM=y CONFIG_ARCH_MVEBU=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SYS_MALLOC_F_LEN=0x2000 CONFIG_TARGET_MAXBCM=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="armada-xp-maxbcm" -CONFIG_SPL=y CONFIG_BOOTDELAY=3 +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set CONFIG_CMD_SF=y diff --git a/configs/mcx_defconfig b/configs/mcx_defconfig index feea81626a..28837f9a60 100644 --- a/configs/mcx_defconfig +++ b/configs/mcx_defconfig @@ -1,9 +1,11 @@ CONFIG_ARM=y CONFIG_OMAP34XX=y +# CONFIG_SPL_GPIO_SUPPORT is not set +# CONFIG_SPL_EXT_SUPPORT is not set CONFIG_TARGET_MCX=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="mcx # " # CONFIG_CMD_IMI is not set @@ -21,6 +23,7 @@ CONFIG_CMD_PING=y CONFIG_CMD_CACHE=y CONFIG_CMD_EXT2=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_ULPI_VIEWPORT_OMAP=y diff --git a/configs/mgcoge3ne_defconfig b/configs/mgcoge3ne_defconfig index 3c3449c5cd..5ed7c1b648 100644 --- a/configs/mgcoge3ne_defconfig +++ b/configs/mgcoge3ne_defconfig @@ -15,4 +15,5 @@ CONFIG_CMD_I2C=y CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y +CONFIG_CMD_UBI=y CONFIG_OF_LIBFDT=y diff --git a/configs/mgcoge3un_defconfig b/configs/mgcoge3un_defconfig index 6f62fc0a04..8b9231cd8d 100644 --- a/configs/mgcoge3un_defconfig +++ b/configs/mgcoge3un_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_KM_KIRKWOOD=y +CONFIG_IDENT_STRING="\nKeymile COGE3UN" CONFIG_SYS_EXTRA_OPTIONS="KM_MGCOGE3UN" CONFIG_VERSION_VARIABLE=y CONFIG_HUSH_PARSER=y @@ -16,6 +17,7 @@ CONFIG_CMD_I2C=y CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y +CONFIG_CMD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y CONFIG_SYS_NS16550=y diff --git a/configs/mgcoge_defconfig b/configs/mgcoge_defconfig index 54c277f953..c42ceb37c1 100644 --- a/configs/mgcoge_defconfig +++ b/configs/mgcoge_defconfig @@ -15,4 +15,5 @@ CONFIG_CMD_I2C=y CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y +CONFIG_CMD_UBI=y CONFIG_OF_LIBFDT=y diff --git a/configs/microblaze-generic_defconfig b/configs/microblaze-generic_defconfig index c184923a3b..cf6c4b1f84 100644 --- a/configs/microblaze-generic_defconfig +++ b/configs/microblaze-generic_defconfig @@ -1,4 +1,7 @@ CONFIG_MICROBLAZE=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_TARGET_MICROBLAZE_GENERIC=y CONFIG_XILINX_MICROBLAZE0_USE_MSR_INSTR=1 CONFIG_XILINX_MICROBLAZE0_USE_BARREL=1 @@ -6,11 +9,12 @@ CONFIG_XILINX_MICROBLAZE0_USE_DIV=1 CONFIG_XILINX_MICROBLAZE0_USE_HW_MUL=1 CONFIG_SYS_TEXT_BASE=0x29000000 CONFIG_DEFAULT_DEVICE_TREE="microblaze-generic" -CONFIG_SPL=y -CONFIG_SPL_SYS_MALLOC_SIMPLE=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_BOOTDELAY=-1 +CONFIG_SPL=y +CONFIG_SPL_SYS_MALLOC_SIMPLE=y +CONFIG_SPL_NOR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="U-Boot-mONStR> " CONFIG_CMD_ASKENV=y @@ -20,6 +24,7 @@ CONFIG_CMD_TFTPPUT=y CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y +CONFIG_CMD_UBI=y CONFIG_SPL_OF_CONTROL=y CONFIG_OF_EMBED=y CONFIG_NETCONSOLE=y diff --git a/configs/mixtile_loftq_defconfig b/configs/mixtile_loftq_defconfig index ce81309b0f..8ca8467a4e 100644 --- a/configs/mixtile_loftq_defconfig +++ b/configs/mixtile_loftq_defconfig @@ -7,8 +7,8 @@ CONFIG_USB1_VBUS_PIN="PH24" CONFIG_USB2_VBUS_PIN="" CONFIG_DEFAULT_DEVICE_TREE="sun6i-a31-mixtile-loftq" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,MACPWR=SUNXI_GPA(21)" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/mk802_a10s_defconfig b/configs/mk802_a10s_defconfig index 720aefad30..bfd591abb7 100644 --- a/configs/mk802_a10s_defconfig +++ b/configs/mk802_a10s_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN5I=y CONFIG_DRAM_CLK=432 CONFIG_DRAM_EMR1=0 diff --git a/configs/mk802_defconfig b/configs/mk802_defconfig index d38bc7fdcf..47bbf62274 100644 --- a/configs/mk802_defconfig +++ b/configs/mk802_defconfig @@ -4,8 +4,8 @@ CONFIG_MACH_SUN4I=y CONFIG_USB2_VBUS_PIN="PH12" CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-mk802" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="USB_EHCI" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/mk802ii_defconfig b/configs/mk802ii_defconfig index de1b73f2c8..f9516d1962 100644 --- a/configs/mk802ii_defconfig +++ b/configs/mk802ii_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN4I=y CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-mk802ii" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set diff --git a/configs/mt_ventoux_defconfig b/configs/mt_ventoux_defconfig index 648e759181..0fdec87331 100644 --- a/configs/mt_ventoux_defconfig +++ b/configs/mt_ventoux_defconfig @@ -1,9 +1,10 @@ CONFIG_ARM=y CONFIG_OMAP34XX=y +# CONFIG_SPL_EXT_SUPPORT is not set CONFIG_TARGET_MT_VENTOUX=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_BOOTDELAY=10 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="mt_ventoux => " # CONFIG_CMD_IMLS is not set @@ -19,6 +20,7 @@ CONFIG_CMD_PING=y CONFIG_CMD_CACHE=y CONFIG_CMD_EXT2=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_ULPI_VIEWPORT_OMAP=y diff --git a/configs/mx23_olinuxino_defconfig b/configs/mx23_olinuxino_defconfig index 322d941eec..4c1a5051ad 100644 --- a/configs/mx23_olinuxino_defconfig +++ b/configs/mx23_olinuxino_defconfig @@ -1,8 +1,12 @@ CONFIG_ARM=y CONFIG_TARGET_MX23_OLINUXINO=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_BOOTDELAY=3 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set diff --git a/configs/mx23evk_defconfig b/configs/mx23evk_defconfig index 4d3a4eb6bb..8db70643e7 100644 --- a/configs/mx23evk_defconfig +++ b/configs/mx23evk_defconfig @@ -1,8 +1,12 @@ CONFIG_ARM=y CONFIG_TARGET_MX23EVK=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_BOOTDELAY=1 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/mx28evk_auart_console_defconfig b/configs/mx28evk_auart_console_defconfig index d02648684d..f833edc155 100644 --- a/configs/mx28evk_auart_console_defconfig +++ b/configs/mx28evk_auart_console_defconfig @@ -1,9 +1,13 @@ CONFIG_ARM=y CONFIG_TARGET_MX28EVK=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="MXS_AUART,MXS_AUART_BASE=MXS_UARTAPP3_BASE,ENV_IS_IN_MMC" CONFIG_BOOTDELAY=1 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set @@ -21,6 +25,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_SST=y CONFIG_USB=y diff --git a/configs/mx28evk_defconfig b/configs/mx28evk_defconfig index c6a9be06b2..1ab2747736 100644 --- a/configs/mx28evk_defconfig +++ b/configs/mx28evk_defconfig @@ -1,10 +1,14 @@ CONFIG_ARM=y CONFIG_TARGET_MX28EVK=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="ENV_IS_IN_MMC" CONFIG_BOOTDELAY=1 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set @@ -22,6 +26,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_SST=y CONFIG_USB=y diff --git a/configs/mx28evk_nand_defconfig b/configs/mx28evk_nand_defconfig index 26c9762da1..af35c49574 100644 --- a/configs/mx28evk_nand_defconfig +++ b/configs/mx28evk_nand_defconfig @@ -1,9 +1,13 @@ CONFIG_ARM=y CONFIG_TARGET_MX28EVK=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="ENV_IS_IN_NAND" CONFIG_BOOTDELAY=1 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set @@ -21,6 +25,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_SST=y CONFIG_USB=y diff --git a/configs/mx28evk_spi_defconfig b/configs/mx28evk_spi_defconfig index 73e5fc0d54..02a50bf3a4 100644 --- a/configs/mx28evk_spi_defconfig +++ b/configs/mx28evk_spi_defconfig @@ -1,9 +1,13 @@ CONFIG_ARM=y CONFIG_TARGET_MX28EVK=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="ENV_IS_IN_SPI_FLASH" CONFIG_BOOTDELAY=1 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set @@ -21,6 +25,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_SST=y CONFIG_USB=y diff --git a/configs/mx31pdk_defconfig b/configs/mx31pdk_defconfig index 901f9921fb..a31ad5b02a 100644 --- a/configs/mx31pdk_defconfig +++ b/configs/mx31pdk_defconfig @@ -1,7 +1,10 @@ CONFIG_ARM=y CONFIG_TARGET_MX31PDK=y -CONFIG_SPL=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_BOOTDELAY=1 +CONFIG_SPL=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set CONFIG_CMD_SPI=y diff --git a/configs/mx6cuboxi_defconfig b/configs/mx6cuboxi_defconfig index e380570b64..27c3d3b8cb 100644 --- a/configs/mx6cuboxi_defconfig +++ b/configs/mx6cuboxi_defconfig @@ -1,8 +1,17 @@ CONFIG_ARM=y CONFIG_ARCH_MX6=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_TARGET_MX6CUBOXI=y -CONFIG_SPL=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,MX6QDL" +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/mx6sabresd_spl_defconfig b/configs/mx6sabresd_spl_defconfig index 36d33bb798..e9edba6e81 100644 --- a/configs/mx6sabresd_spl_defconfig +++ b/configs/mx6sabresd_spl_defconfig @@ -1,9 +1,18 @@ CONFIG_ARM=y CONFIG_ARCH_MX6=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_TARGET_MX6SABRESD=y -CONFIG_SPL=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,SPL,MX6Q" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/mx6slevk_spl_defconfig b/configs/mx6slevk_spl_defconfig index bb57869d4c..4dd24842cb 100644 --- a/configs/mx6slevk_spl_defconfig +++ b/configs/mx6slevk_spl_defconfig @@ -1,9 +1,18 @@ CONFIG_ARM=y CONFIG_ARCH_MX6=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_TARGET_MX6SLEVK=y -CONFIG_SPL=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,SPL,MX6SL" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/mx6sxsabreauto_defconfig b/configs/mx6sxsabreauto_defconfig index 41d46f6e6c..e80bb4e193 100644 --- a/configs/mx6sxsabreauto_defconfig +++ b/configs/mx6sxsabreauto_defconfig @@ -23,6 +23,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_FSL_QSPI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_BAR=y CONFIG_SPI_FLASH_STMICRO=y diff --git a/configs/mx6sxsabresd_spl_defconfig b/configs/mx6sxsabresd_spl_defconfig index b984081a32..d013cb06f0 100644 --- a/configs/mx6sxsabresd_spl_defconfig +++ b/configs/mx6sxsabresd_spl_defconfig @@ -1,9 +1,18 @@ CONFIG_ARM=y CONFIG_ARCH_MX6=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_TARGET_MX6SXSABRESD=y -CONFIG_SPL=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/mx6ul_14x14_evk_defconfig b/configs/mx6ul_14x14_evk_defconfig index 49dee49ceb..a829a18f03 100644 --- a/configs/mx6ul_14x14_evk_defconfig +++ b/configs/mx6ul_14x14_evk_defconfig @@ -1,9 +1,18 @@ CONFIG_ARM=y CONFIG_ARCH_MX6=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_TARGET_MX6UL_14X14_EVK=y -CONFIG_SPL=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set @@ -23,4 +32,8 @@ CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y CONFIG_USB=y CONFIG_USB_STORAGE=y +CONFIG_FSL_QSPI=y +CONFIG_SPI_FLASH=y +CONFIG_SPI_FLASH_BAR=y +CONFIG_SPI_FLASH_STMICRO=y CONFIG_OF_LIBFDT=y diff --git a/configs/mx6ul_9x9_evk_defconfig b/configs/mx6ul_9x9_evk_defconfig index f12011920d..eaf3cfda12 100644 --- a/configs/mx6ul_9x9_evk_defconfig +++ b/configs/mx6ul_9x9_evk_defconfig @@ -1,9 +1,18 @@ CONFIG_ARM=y CONFIG_ARCH_MX6=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_TARGET_MX6UL_9X9_EVK=y -CONFIG_SPL=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set @@ -23,4 +32,8 @@ CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y CONFIG_USB=y CONFIG_USB_STORAGE=y +CONFIG_FSL_QSPI=y +CONFIG_SPI_FLASH=y +CONFIG_SPI_FLASH_BAR=y +CONFIG_SPI_FLASH_STMICRO=y CONFIG_OF_LIBFDT=y diff --git a/configs/nanopi_neo_defconfig b/configs/nanopi_neo_defconfig new file mode 100644 index 0000000000..5adf1ffeb9 --- /dev/null +++ b/configs/nanopi_neo_defconfig @@ -0,0 +1,14 @@ +CONFIG_ARM=y +CONFIG_ARCH_SUNXI=y +CONFIG_MACH_SUN8I_H3=y +CONFIG_DRAM_CLK=408 +CONFIG_DRAM_ZQ=3881979 +CONFIG_DRAM_ODT_EN=y +CONFIG_DEFAULT_DEVICE_TREE="sun8i-h3-nanopi-neo" +# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set +CONFIG_SPL=y +# CONFIG_CMD_IMLS is not set +# CONFIG_CMD_FLASH is not set +# CONFIG_CMD_FPGA is not set +CONFIG_SUN8I_EMAC=y +CONFIG_USB_EHCI_HCD=y diff --git a/configs/nas220_defconfig b/configs/nas220_defconfig index 91e33d04da..c4e7307806 100644 --- a/configs/nas220_defconfig +++ b/configs/nas220_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_NAS220=y +CONFIG_IDENT_STRING="\nNAS 220" CONFIG_BOOTDELAY=3 CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="nas220> " @@ -14,6 +15,7 @@ CONFIG_CMD_PING=y CONFIG_CMD_EXT2=y CONFIG_CMD_EXT4=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_STORAGE=y diff --git a/configs/neo_defconfig b/configs/neo_defconfig index 93a402fd8c..18b43e4b7b 100644 --- a/configs/neo_defconfig +++ b/configs/neo_defconfig @@ -1,4 +1,5 @@ CONFIG_PPC=y +CONFIG_IDENT_STRING=" neo 0.02" CONFIG_4xx=y CONFIG_TARGET_NEO=y CONFIG_FIT=y diff --git a/configs/net2big_v2_defconfig b/configs/net2big_v2_defconfig index f30c56b9db..122ed7a099 100644 --- a/configs/net2big_v2_defconfig +++ b/configs/net2big_v2_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_NET2BIG_V2=y +CONFIG_IDENT_STRING=" 2Big v2" CONFIG_SYS_EXTRA_OPTIONS="NET2BIG_V2" CONFIG_BOOTDELAY=3 CONFIG_HUSH_PARSER=y diff --git a/configs/netspace_lite_v2_defconfig b/configs/netspace_lite_v2_defconfig index 47aad38e43..0547aa6695 100644 --- a/configs/netspace_lite_v2_defconfig +++ b/configs/netspace_lite_v2_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_NETSPACE_V2=y +CONFIG_IDENT_STRING=" NS v2 Lite" CONFIG_SYS_EXTRA_OPTIONS="NETSPACE_LITE_V2" CONFIG_BOOTDELAY=3 CONFIG_HUSH_PARSER=y diff --git a/configs/netspace_max_v2_defconfig b/configs/netspace_max_v2_defconfig index 7b9f190b82..e72815d606 100644 --- a/configs/netspace_max_v2_defconfig +++ b/configs/netspace_max_v2_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_NETSPACE_V2=y +CONFIG_IDENT_STRING=" NS Max v2" CONFIG_SYS_EXTRA_OPTIONS="NETSPACE_MAX_V2" CONFIG_BOOTDELAY=3 CONFIG_HUSH_PARSER=y diff --git a/configs/netspace_mini_v2_defconfig b/configs/netspace_mini_v2_defconfig index f46b9a1ecd..1422787710 100644 --- a/configs/netspace_mini_v2_defconfig +++ b/configs/netspace_mini_v2_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_NETSPACE_V2=y +CONFIG_IDENT_STRING=" NS v2 Mini" CONFIG_SYS_EXTRA_OPTIONS="NETSPACE_MINI_V2" CONFIG_BOOTDELAY=3 CONFIG_HUSH_PARSER=y diff --git a/configs/netspace_v2_defconfig b/configs/netspace_v2_defconfig index 1b94ceefc2..637325570e 100644 --- a/configs/netspace_v2_defconfig +++ b/configs/netspace_v2_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_NETSPACE_V2=y +CONFIG_IDENT_STRING=" NS v2" CONFIG_SYS_EXTRA_OPTIONS="NETSPACE_V2" CONFIG_BOOTDELAY=3 CONFIG_HUSH_PARSER=y diff --git a/configs/novena_defconfig b/configs/novena_defconfig index 33877adac7..1ffdddce80 100644 --- a/configs/novena_defconfig +++ b/configs/novena_defconfig @@ -1,10 +1,20 @@ CONFIG_ARM=y CONFIG_ARCH_MX6=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_TARGET_KOSAGI_NOVENA=y -CONFIG_SPL=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,MX6Q" CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/nsa310s_defconfig b/configs/nsa310s_defconfig index 0a9c15336d..ec4fb5393b 100644 --- a/configs/nsa310s_defconfig +++ b/configs/nsa310s_defconfig @@ -15,6 +15,7 @@ CONFIG_CMD_MII=y CONFIG_CMD_PING=y CONFIG_CMD_EXT2=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_STORAGE=y diff --git a/configs/odroid-c2_defconfig b/configs/odroid-c2_defconfig index 3e9ef68204..ee70df0974 100644 --- a/configs/odroid-c2_defconfig +++ b/configs/odroid-c2_defconfig @@ -2,6 +2,7 @@ CONFIG_ARM=y CONFIG_ARCH_MESON=y CONFIG_MESON_GXBB=y CONFIG_TARGET_ODROID_C2=y +CONFIG_IDENT_STRING=" odroid-c2" CONFIG_DEFAULT_DEVICE_TREE="meson-gxbb-odroidc2" CONFIG_HUSH_PARSER=y # CONFIG_CMD_BDI is not set diff --git a/configs/odroid-xu3_defconfig b/configs/odroid-xu3_defconfig index 15e9bd9b83..af2e4f7161 100644 --- a/configs/odroid-xu3_defconfig +++ b/configs/odroid-xu3_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_ARCH_EXYNOS=y CONFIG_ARCH_EXYNOS5=y +CONFIG_IDENT_STRING=" for ODROID-XU3" CONFIG_DEFAULT_DEVICE_TREE="exynos5422-odroidxu3" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set CONFIG_FIT=y diff --git a/configs/omap3_beagle_defconfig b/configs/omap3_beagle_defconfig index 5fd86af64e..ece9638e49 100644 --- a/configs/omap3_beagle_defconfig +++ b/configs/omap3_beagle_defconfig @@ -1,9 +1,10 @@ CONFIG_ARM=y CONFIG_OMAP34XX=y CONFIG_TARGET_OMAP3_BEAGLE=y -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="NAND" CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_MTD_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/omap3_evm_defconfig b/configs/omap3_evm_defconfig index 82314bd171..6ca7e2cfaa 100644 --- a/configs/omap3_evm_defconfig +++ b/configs/omap3_evm_defconfig @@ -1,8 +1,9 @@ CONFIG_ARM=y CONFIG_OMAP34XX=y +# CONFIG_SPL_EXT_SUPPORT is not set CONFIG_TARGET_OMAP3_EVM=y -CONFIG_SPL=y CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="OMAP3_EVM # " # CONFIG_CMD_IMI is not set diff --git a/configs/omap3_ha_defconfig b/configs/omap3_ha_defconfig index 3ef3f59bb7..3fcbb76f51 100644 --- a/configs/omap3_ha_defconfig +++ b/configs/omap3_ha_defconfig @@ -1,9 +1,10 @@ CONFIG_ARM=y CONFIG_OMAP34XX=y +# CONFIG_SPL_EXT_SUPPORT is not set CONFIG_TARGET_TAO3530=y -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SYS_BOARD_OMAP3_HA" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y # CONFIG_CMD_IMI is not set # CONFIG_CMD_IMLS is not set diff --git a/configs/omap3_logic_defconfig b/configs/omap3_logic_defconfig index dfd7611c5d..26146d211b 100644 --- a/configs/omap3_logic_defconfig +++ b/configs/omap3_logic_defconfig @@ -1,10 +1,11 @@ CONFIG_ARM=y CONFIG_OMAP34XX=y CONFIG_TARGET_OMAP3_LOGIC=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="NAND" CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_MTD_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="OMAP Logic # " CONFIG_CMD_BOOTZ=y @@ -26,6 +27,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_MUSB_GADGET=y diff --git a/configs/omap3_overo_defconfig b/configs/omap3_overo_defconfig index 1e282c11b2..a416072311 100644 --- a/configs/omap3_overo_defconfig +++ b/configs/omap3_overo_defconfig @@ -1,8 +1,9 @@ CONFIG_ARM=y CONFIG_OMAP34XX=y CONFIG_TARGET_OMAP3_OVERO=y -CONFIG_SPL=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_MTD_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="Overo # " CONFIG_CMD_BOOTZ=y @@ -27,6 +28,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_STORAGE=y diff --git a/configs/omap3_pandora_defconfig b/configs/omap3_pandora_defconfig index 0c2c12be32..e101614ab4 100644 --- a/configs/omap3_pandora_defconfig +++ b/configs/omap3_pandora_defconfig @@ -26,5 +26,6 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_OF_LIBFDT=y diff --git a/configs/omap4_panda_defconfig b/configs/omap4_panda_defconfig index b69124ef6d..e496afe9f8 100644 --- a/configs/omap4_panda_defconfig +++ b/configs/omap4_panda_defconfig @@ -1,8 +1,11 @@ CONFIG_ARM=y CONFIG_OMAP44XX=y +# CONFIG_SPL_EXT_SUPPORT is not set +# CONFIG_SPL_I2C_SUPPORT is not set +# CONFIG_SPL_NAND_SUPPORT is not set CONFIG_TARGET_OMAP4_PANDA=y -CONFIG_SPL=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/omap4_sdp4430_defconfig b/configs/omap4_sdp4430_defconfig index 684f4e13ab..ea62104fc1 100644 --- a/configs/omap4_sdp4430_defconfig +++ b/configs/omap4_sdp4430_defconfig @@ -1,8 +1,10 @@ CONFIG_ARM=y CONFIG_OMAP44XX=y +# CONFIG_SPL_I2C_SUPPORT is not set +# CONFIG_SPL_NAND_SUPPORT is not set CONFIG_TARGET_OMAP4_SDP4430=y -CONFIG_SPL=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/omap5_uevm_defconfig b/configs/omap5_uevm_defconfig index ec75672c7a..ed0917ba13 100644 --- a/configs/omap5_uevm_defconfig +++ b/configs/omap5_uevm_defconfig @@ -1,8 +1,9 @@ CONFIG_ARM=y CONFIG_OMAP54XX=y +# CONFIG_SPL_NAND_SUPPORT is not set CONFIG_TARGET_OMAP5_UEVM=y -CONFIG_SPL=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/omapl138_lcdk_defconfig b/configs/omapl138_lcdk_defconfig index 8cb486dac0..4d5f4087c6 100644 --- a/configs/omapl138_lcdk_defconfig +++ b/configs/omapl138_lcdk_defconfig @@ -1,9 +1,12 @@ CONFIG_ARM=y CONFIG_ARCH_DAVINCI=y CONFIG_TARGET_OMAPL138_LCDK=y -CONFIG_SPL=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_BOOTDELAY=3 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="U-Boot > " # CONFIG_CMD_IMLS is not set @@ -16,6 +19,7 @@ CONFIG_CMD_MII=y CONFIG_CMD_PING=y CONFIG_CMD_EXT2=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y CONFIG_SPI_FLASH_WINBOND=y diff --git a/configs/openrd_base_defconfig b/configs/openrd_base_defconfig index 2e140529a4..be99ea904e 100644 --- a/configs/openrd_base_defconfig +++ b/configs/openrd_base_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_OPENRD=y +CONFIG_IDENT_STRING="\nOpenRD-Base" CONFIG_SYS_EXTRA_OPTIONS="BOARD_IS_OPENRD_BASE" CONFIG_BOOTDELAY=3 # CONFIG_CMD_IMLS is not set @@ -13,6 +14,7 @@ CONFIG_CMD_MII=y CONFIG_CMD_PING=y CONFIG_CMD_EXT2=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_STORAGE=y diff --git a/configs/openrd_client_defconfig b/configs/openrd_client_defconfig index 49bd597b1b..87b2e4549d 100644 --- a/configs/openrd_client_defconfig +++ b/configs/openrd_client_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_OPENRD=y +CONFIG_IDENT_STRING="\nOpenRD-Client" CONFIG_SYS_EXTRA_OPTIONS="BOARD_IS_OPENRD_CLIENT" CONFIG_BOOTDELAY=3 # CONFIG_CMD_IMLS is not set @@ -13,6 +14,7 @@ CONFIG_CMD_MII=y CONFIG_CMD_PING=y CONFIG_CMD_EXT2=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_STORAGE=y diff --git a/configs/openrd_ultimate_defconfig b/configs/openrd_ultimate_defconfig index 5ee4ba2207..c216b9b854 100644 --- a/configs/openrd_ultimate_defconfig +++ b/configs/openrd_ultimate_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_OPENRD=y +CONFIG_IDENT_STRING="\nOpenRD-Ultimate" CONFIG_SYS_EXTRA_OPTIONS="BOARD_IS_OPENRD_ULTIMATE" CONFIG_BOOTDELAY=3 # CONFIG_CMD_IMLS is not set @@ -13,6 +14,7 @@ CONFIG_CMD_MII=y CONFIG_CMD_PING=y CONFIG_CMD_EXT2=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_STORAGE=y diff --git a/configs/orangepi_2_defconfig b/configs/orangepi_2_defconfig index 95075c2c66..2207b81b12 100644 --- a/configs/orangepi_2_defconfig +++ b/configs/orangepi_2_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN8I_H3=y CONFIG_DRAM_CLK=672 CONFIG_DRAM_ZQ=3881979 diff --git a/configs/orangepi_pc_defconfig b/configs/orangepi_pc_defconfig index 0c156bd4b5..3f8010cf88 100644 --- a/configs/orangepi_pc_defconfig +++ b/configs/orangepi_pc_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN8I_H3=y CONFIG_DRAM_CLK=624 CONFIG_DRAM_ZQ=3881979 diff --git a/configs/orangepi_pc_plus_defconfig b/configs/orangepi_pc_plus_defconfig index 8caca5939f..f8f6dabd9f 100644 --- a/configs/orangepi_pc_plus_defconfig +++ b/configs/orangepi_pc_plus_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN8I_H3=y CONFIG_DRAM_CLK=624 CONFIG_DRAM_ZQ=3881979 diff --git a/configs/orangepi_plus2e_defconfig b/configs/orangepi_plus2e_defconfig index 2374f1d120..cfae5f0890 100644 --- a/configs/orangepi_plus2e_defconfig +++ b/configs/orangepi_plus2e_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN8I_H3=y CONFIG_DRAM_CLK=672 CONFIG_DRAM_ZQ=3881979 @@ -7,8 +8,8 @@ CONFIG_DRAM_ODT_EN=y CONFIG_MMC_SUNXI_SLOT_EXTRA=2 CONFIG_DEFAULT_DEVICE_TREE="sun8i-h3-orangepi-plus2e" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="MACPWR=SUNXI_GPD(6)" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/orangepi_plus_defconfig b/configs/orangepi_plus_defconfig index f2ed941a4d..6c99aa2f86 100644 --- a/configs/orangepi_plus_defconfig +++ b/configs/orangepi_plus_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN8I_H3=y CONFIG_DRAM_CLK=672 CONFIG_DRAM_ZQ=3881979 @@ -8,8 +9,8 @@ CONFIG_MMC_SUNXI_SLOT_EXTRA=2 CONFIG_USB1_VBUS_PIN="PG13" CONFIG_DEFAULT_DEVICE_TREE="sun8i-h3-orangepi-plus" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SATAPWR=SUNXI_GPG(11),MACPWR=SUNXI_GPD(6)" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/origen_defconfig b/configs/origen_defconfig index 6ad01af520..0eff767c8d 100644 --- a/configs/origen_defconfig +++ b/configs/origen_defconfig @@ -2,6 +2,7 @@ CONFIG_ARM=y CONFIG_ARCH_EXYNOS=y CONFIG_ARCH_EXYNOS4=y CONFIG_TARGET_ORIGEN=y +CONFIG_IDENT_STRING=" for ORIGEN" CONFIG_DEFAULT_DEVICE_TREE="exynos4210-origen" CONFIG_SPL=y CONFIG_HUSH_PARSER=y diff --git a/configs/ot1200_spl_defconfig b/configs/ot1200_spl_defconfig index 782accd9cc..d1bdbde545 100644 --- a/configs/ot1200_spl_defconfig +++ b/configs/ot1200_spl_defconfig @@ -1,9 +1,17 @@ CONFIG_ARM=y CONFIG_ARCH_MX6=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_TARGET_OT1200=y -CONFIG_SPL=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,MX6Q" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/pcm051_rev1_defconfig b/configs/pcm051_rev1_defconfig index f14ba67cff..d55e4fe92c 100644 --- a/configs/pcm051_rev1_defconfig +++ b/configs/pcm051_rev1_defconfig @@ -1,8 +1,24 @@ CONFIG_ARM=y CONFIG_TARGET_PCM051=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_POWER_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="REV1" CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_ETH_SUPPORT=y +CONFIG_SPL_NET_SUPPORT=y +CONFIG_SPL_NET_VCI_STRING="pcm051 U-Boot SPL" CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/pcm051_rev3_defconfig b/configs/pcm051_rev3_defconfig index 3921886025..cc824e6cd4 100644 --- a/configs/pcm051_rev3_defconfig +++ b/configs/pcm051_rev3_defconfig @@ -1,8 +1,24 @@ CONFIG_ARM=y CONFIG_TARGET_PCM051=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_POWER_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="REV3" CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_ETH_SUPPORT=y +CONFIG_SPL_NET_SUPPORT=y +CONFIG_SPL_NET_VCI_STRING="pcm051 U-Boot SPL" CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/pcm052_defconfig b/configs/pcm052_defconfig index 52cb1d521e..f7db263f25 100644 --- a/configs/pcm052_defconfig +++ b/configs/pcm052_defconfig @@ -14,6 +14,7 @@ CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_OF_CONTROL=y CONFIG_DM=y CONFIG_DM_GPIO=y diff --git a/configs/pcm058_defconfig b/configs/pcm058_defconfig index 5c08171578..b2f70ea0f8 100644 --- a/configs/pcm058_defconfig +++ b/configs/pcm058_defconfig @@ -1,10 +1,23 @@ CONFIG_ARM=y CONFIG_ARCH_MX6=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_TARGET_PCM058=y -CONFIG_SPL=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,MX6Q" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y +CONFIG_SPL_DMA_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set @@ -22,6 +35,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_DM=y CONFIG_MTD=y CONFIG_SPI_FLASH=y diff --git a/configs/peach-pi_defconfig b/configs/peach-pi_defconfig index e6a47cc3ef..9472bb046f 100644 --- a/configs/peach-pi_defconfig +++ b/configs/peach-pi_defconfig @@ -2,10 +2,11 @@ CONFIG_ARM=y CONFIG_ARCH_EXYNOS=y CONFIG_ARCH_EXYNOS5=y CONFIG_TARGET_PEACH_PI=y +CONFIG_IDENT_STRING=" for Peach-Pi" CONFIG_DEFAULT_DEVICE_TREE="exynos5800-peach-pi" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_BEST_MATCH=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="Peach-Pi # " CONFIG_CMD_BOOTZ=y diff --git a/configs/peach-pit_defconfig b/configs/peach-pit_defconfig index 97783417e6..d208d68086 100644 --- a/configs/peach-pit_defconfig +++ b/configs/peach-pit_defconfig @@ -2,10 +2,11 @@ CONFIG_ARM=y CONFIG_ARCH_EXYNOS=y CONFIG_ARCH_EXYNOS5=y CONFIG_TARGET_PEACH_PIT=y +CONFIG_IDENT_STRING=" for Peach-Pit" CONFIG_DEFAULT_DEVICE_TREE="exynos5420-peach-pit" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_BEST_MATCH=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="Peach-Pit # " CONFIG_CMD_BOOTZ=y diff --git a/configs/pengwyn_defconfig b/configs/pengwyn_defconfig index 0035d892b4..135a40f453 100644 --- a/configs/pengwyn_defconfig +++ b/configs/pengwyn_defconfig @@ -1,7 +1,25 @@ CONFIG_ARM=y CONFIG_TARGET_PENGWYN=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_POWER_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_ETH_SUPPORT=y +CONFIG_SPL_MTD_SUPPORT=y +CONFIG_SPL_NET_SUPPORT=y +CONFIG_SPL_NET_VCI_STRING="AM335x U-Boot SPL" CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/pepper_defconfig b/configs/pepper_defconfig index 8a38b89e7d..17cd66fb30 100644 --- a/configs/pepper_defconfig +++ b/configs/pepper_defconfig @@ -1,7 +1,18 @@ CONFIG_ARM=y CONFIG_TARGET_PEPPER=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_POWER_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="pepper# " CONFIG_CMD_BOOTZ=y diff --git a/configs/picosam9g45_defconfig b/configs/picosam9g45_defconfig index 3ecc27203e..2536ca73b8 100644 --- a/configs/picosam9g45_defconfig +++ b/configs/picosam9g45_defconfig @@ -1,9 +1,17 @@ CONFIG_ARM=y CONFIG_ARCH_AT91=y CONFIG_TARGET_PICOSAM9G45=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9M10G45,SYS_USE_MMC" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="U-Boot> " # CONFIG_CMD_BDI is not set diff --git a/configs/platinum_picon_defconfig b/configs/platinum_picon_defconfig index 1dbb3d300f..71ebc257ee 100644 --- a/configs/platinum_picon_defconfig +++ b/configs/platinum_picon_defconfig @@ -1,9 +1,20 @@ CONFIG_ARM=y CONFIG_ARCH_MX6=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_TARGET_PLATINUM_PICON=y -CONFIG_SPL=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,MX6DL" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y +CONFIG_SPL_DMA_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="picon > " CONFIG_CMD_BOOTZ=y @@ -24,6 +35,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_OF_LIBFDT=y diff --git a/configs/platinum_titanium_defconfig b/configs/platinum_titanium_defconfig index 8174481e23..51aeff1ace 100644 --- a/configs/platinum_titanium_defconfig +++ b/configs/platinum_titanium_defconfig @@ -1,9 +1,20 @@ CONFIG_ARM=y CONFIG_ARCH_MX6=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_TARGET_PLATINUM_TITANIUM=y -CONFIG_SPL=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,MX6Q" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y +CONFIG_SPL_DMA_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="titanium > " CONFIG_CMD_BOOTZ=y @@ -24,6 +35,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_OF_LIBFDT=y diff --git a/configs/pogo_e02_defconfig b/configs/pogo_e02_defconfig index 2b1d873899..cdb85d20f7 100644 --- a/configs/pogo_e02_defconfig +++ b/configs/pogo_e02_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_POGO_E02=y +CONFIG_IDENT_STRING="\nPogo E02" CONFIG_BOOTDELAY=3 CONFIG_SYS_PROMPT="PogoE02> " # CONFIG_CMD_IMLS is not set @@ -12,6 +13,7 @@ CONFIG_CMD_MII=y CONFIG_CMD_PING=y CONFIG_CMD_EXT2=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_STORAGE=y diff --git a/configs/polaroid_mid2407pxe03_defconfig b/configs/polaroid_mid2407pxe03_defconfig index 9bf6fbf11e..2ac6f4ccac 100644 --- a/configs/polaroid_mid2407pxe03_defconfig +++ b/configs/polaroid_mid2407pxe03_defconfig @@ -15,8 +15,8 @@ CONFIG_VIDEO_LCD_BL_EN="PH6" CONFIG_VIDEO_LCD_BL_PWM="PH0" CONFIG_DEFAULT_DEVICE_TREE="sun8i-a23-polaroid-mid2407pxe03" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=5" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/polaroid_mid2809pxe04_defconfig b/configs/polaroid_mid2809pxe04_defconfig index 04c99b9e6b..d9bcd4f554 100644 --- a/configs/polaroid_mid2809pxe04_defconfig +++ b/configs/polaroid_mid2809pxe04_defconfig @@ -15,8 +15,8 @@ CONFIG_VIDEO_LCD_BL_EN="PH6" CONFIG_VIDEO_LCD_BL_PWM="PH0" CONFIG_DEFAULT_DEVICE_TREE="sun8i-a23-polaroid-mid2809pxe04" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=5" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/portl2_defconfig b/configs/portl2_defconfig index 94f9349381..866171b390 100644 --- a/configs/portl2_defconfig +++ b/configs/portl2_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_KM_KIRKWOOD=y +CONFIG_IDENT_STRING="\nKeymile Port-L2" CONFIG_SYS_EXTRA_OPTIONS="KM_PORTL2" CONFIG_VERSION_VARIABLE=y CONFIG_HUSH_PARSER=y @@ -16,6 +17,7 @@ CONFIG_CMD_I2C=y CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y +CONFIG_CMD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y CONFIG_SYS_NS16550=y diff --git a/configs/pov_protab2_ips9_defconfig b/configs/pov_protab2_ips9_defconfig index 9aa52800a5..8e81e693bc 100644 --- a/configs/pov_protab2_ips9_defconfig +++ b/configs/pov_protab2_ips9_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN4I=y CONFIG_DRAM_CLK=432 CONFIG_USB0_VBUS_PIN="PB9" diff --git a/configs/pxm2_defconfig b/configs/pxm2_defconfig index bafe4f42ee..35fd2e8f06 100644 --- a/configs/pxm2_defconfig +++ b/configs/pxm2_defconfig @@ -1,10 +1,23 @@ CONFIG_ARM=y CONFIG_TARGET_PXM2=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_SYS_MALLOC_F_LEN=0x2000 +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="am335x-pxm50" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="U-Boot# " CONFIG_AUTOBOOT_KEYED=y @@ -27,10 +40,13 @@ CONFIG_CMD_CACHE=y CONFIG_CMD_TIME=y CONFIG_CMD_EXT2=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_OF_CONTROL=y CONFIG_OF_EMBED=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_WINBOND=y +CONFIG_MTD_UBI_FASTMAP=y +CONFIG_MTD_UBI_FASTMAP_AUTOCONVERT=1 CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_MUSB_HOST=y diff --git a/configs/q8_a13_tablet_defconfig b/configs/q8_a13_tablet_defconfig index b467b62f9b..6b516db4b8 100644 --- a/configs/q8_a13_tablet_defconfig +++ b/configs/q8_a13_tablet_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN5I=y CONFIG_DRAM_CLK=384 CONFIG_MMC0_CD_PIN="PG0" @@ -14,8 +15,8 @@ CONFIG_VIDEO_LCD_BL_EN="AXP0-1" CONFIG_VIDEO_LCD_BL_PWM="PB2" CONFIG_DEFAULT_DEVICE_TREE="sun5i-a13-q8-tablet" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=2" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/q8_a23_tablet_800x480_defconfig b/configs/q8_a23_tablet_800x480_defconfig index 73914641a4..971dcea1c8 100644 --- a/configs/q8_a23_tablet_800x480_defconfig +++ b/configs/q8_a23_tablet_800x480_defconfig @@ -15,8 +15,8 @@ CONFIG_VIDEO_LCD_BL_EN="PH6" CONFIG_VIDEO_LCD_BL_PWM="PH0" CONFIG_DEFAULT_DEVICE_TREE="sun8i-a23-q8-tablet" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=5" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/q8_a33_tablet_1024x600_defconfig b/configs/q8_a33_tablet_1024x600_defconfig index 16f8600c22..f99e347e43 100644 --- a/configs/q8_a33_tablet_1024x600_defconfig +++ b/configs/q8_a33_tablet_1024x600_defconfig @@ -15,8 +15,8 @@ CONFIG_VIDEO_LCD_BL_EN="PH6" CONFIG_VIDEO_LCD_BL_PWM="PH0" CONFIG_DEFAULT_DEVICE_TREE="sun8i-a33-q8-tablet" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=5" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/q8_a33_tablet_800x480_defconfig b/configs/q8_a33_tablet_800x480_defconfig index 6378918883..182bd9acf3 100644 --- a/configs/q8_a33_tablet_800x480_defconfig +++ b/configs/q8_a33_tablet_800x480_defconfig @@ -15,8 +15,8 @@ CONFIG_VIDEO_LCD_BL_EN="PH6" CONFIG_VIDEO_LCD_BL_PWM="PH0" CONFIG_DEFAULT_DEVICE_TREE="sun8i-a33-q8-tablet" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=5" +CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_FPGA is not set diff --git a/configs/r7-tv-dongle_defconfig b/configs/r7-tv-dongle_defconfig index 9d9d4bffed..afbc9a6155 100644 --- a/configs/r7-tv-dongle_defconfig +++ b/configs/r7-tv-dongle_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN5I=y CONFIG_DRAM_CLK=384 CONFIG_USB1_VBUS_PIN="PG13" diff --git a/configs/rastaban_defconfig b/configs/rastaban_defconfig index f3bdd79028..8664cab42e 100644 --- a/configs/rastaban_defconfig +++ b/configs/rastaban_defconfig @@ -1,9 +1,22 @@ CONFIG_ARM=y CONFIG_TARGET_RASTABAN=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_SYS_MALLOC_F_LEN=0x2000 +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="am335x-draco" -CONFIG_SPL=y CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="U-Boot# " CONFIG_AUTOBOOT_KEYED=y @@ -25,10 +38,13 @@ CONFIG_CMD_PING=y CONFIG_CMD_CACHE=y CONFIG_CMD_TIME=y CONFIG_CMD_EXT2=y +CONFIG_CMD_UBI=y CONFIG_OF_CONTROL=y CONFIG_OF_EMBED=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_WINBOND=y +CONFIG_MTD_UBI_FASTMAP=y +CONFIG_MTD_UBI_FASTMAP_AUTOCONVERT=1 CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_MUSB_HOST=y diff --git a/configs/rut_defconfig b/configs/rut_defconfig index 33e47ba9b0..dde3747f84 100644 --- a/configs/rut_defconfig +++ b/configs/rut_defconfig @@ -1,10 +1,23 @@ CONFIG_ARM=y CONFIG_TARGET_RUT=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_SYS_MALLOC_F_LEN=0x2000 +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="am335x-rut" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="U-Boot# " CONFIG_AUTOBOOT_KEYED=y @@ -27,10 +40,13 @@ CONFIG_CMD_CACHE=y CONFIG_CMD_TIME=y CONFIG_CMD_EXT2=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_OF_CONTROL=y CONFIG_OF_EMBED=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_WINBOND=y +CONFIG_MTD_UBI_FASTMAP=y +CONFIG_MTD_UBI_FASTMAP_AUTOCONVERT=1 CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_MUSB_HOST=y diff --git a/configs/sama5d2_ptc_nandflash_defconfig b/configs/sama5d2_ptc_nandflash_defconfig index d65aed0eea..b64527d011 100644 --- a/configs/sama5d2_ptc_nandflash_defconfig +++ b/configs/sama5d2_ptc_nandflash_defconfig @@ -1,9 +1,14 @@ CONFIG_ARM=y CONFIG_ARCH_AT91=y CONFIG_TARGET_SAMA5D2_PTC=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="SAMA5D2,SYS_USE_NANDFLASH" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y # CONFIG_CMD_IMI is not set # CONFIG_CMD_IMLS is not set # CONFIG_CMD_LOADS is not set diff --git a/configs/sama5d2_ptc_spiflash_defconfig b/configs/sama5d2_ptc_spiflash_defconfig index 799111ad94..9dc3976078 100644 --- a/configs/sama5d2_ptc_spiflash_defconfig +++ b/configs/sama5d2_ptc_spiflash_defconfig @@ -1,9 +1,15 @@ CONFIG_ARM=y CONFIG_ARCH_AT91=y CONFIG_TARGET_SAMA5D2_PTC=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="SAMA5D2,SYS_USE_SERIALFLASH" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y # CONFIG_CMD_IMI is not set # CONFIG_CMD_IMLS is not set # CONFIG_CMD_LOADS is not set diff --git a/configs/sama5d2_xplained_mmc_defconfig b/configs/sama5d2_xplained_mmc_defconfig index 8051fc8311..8ac42a31b1 100644 --- a/configs/sama5d2_xplained_mmc_defconfig +++ b/configs/sama5d2_xplained_mmc_defconfig @@ -1,10 +1,17 @@ CONFIG_ARM=y CONFIG_ARCH_AT91=y CONFIG_TARGET_SAMA5D2_XPLAINED=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="SAMA5D2,SYS_USE_MMC" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMI is not set diff --git a/configs/sama5d2_xplained_spiflash_defconfig b/configs/sama5d2_xplained_spiflash_defconfig index 69b136c419..12b7e07df0 100644 --- a/configs/sama5d2_xplained_spiflash_defconfig +++ b/configs/sama5d2_xplained_spiflash_defconfig @@ -1,10 +1,16 @@ CONFIG_ARM=y CONFIG_ARCH_AT91=y CONFIG_TARGET_SAMA5D2_XPLAINED=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="SAMA5D2,SYS_USE_SERIALFLASH" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMI is not set diff --git a/configs/sama5d3_xplained_mmc_defconfig b/configs/sama5d3_xplained_mmc_defconfig index 225284a8c5..521409a8d4 100644 --- a/configs/sama5d3_xplained_mmc_defconfig +++ b/configs/sama5d3_xplained_mmc_defconfig @@ -1,10 +1,17 @@ CONFIG_ARM=y CONFIG_ARCH_AT91=y CONFIG_TARGET_SAMA5D3_XPLAINED=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="SAMA5D3,SYS_USE_MMC" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMI is not set @@ -20,6 +27,7 @@ CONFIG_CMD_PING=y CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_OF_LIBFDT=y diff --git a/configs/sama5d3_xplained_nandflash_defconfig b/configs/sama5d3_xplained_nandflash_defconfig index 8710f070e2..18dfb5c3b7 100644 --- a/configs/sama5d3_xplained_nandflash_defconfig +++ b/configs/sama5d3_xplained_nandflash_defconfig @@ -1,10 +1,15 @@ CONFIG_ARM=y CONFIG_ARCH_AT91=y CONFIG_TARGET_SAMA5D3_XPLAINED=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="SAMA5D3,SYS_USE_NANDFLASH" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMI is not set @@ -20,6 +25,7 @@ CONFIG_CMD_PING=y CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_OF_LIBFDT=y diff --git a/configs/sama5d3xek_mmc_defconfig b/configs/sama5d3xek_mmc_defconfig index a9cddf1db5..ccc0b1932d 100644 --- a/configs/sama5d3xek_mmc_defconfig +++ b/configs/sama5d3xek_mmc_defconfig @@ -1,10 +1,17 @@ CONFIG_ARM=y CONFIG_ARCH_AT91=y CONFIG_TARGET_SAMA5D3XEK=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="SAMA5D3,SYS_USE_MMC" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMI is not set diff --git a/configs/sama5d3xek_nandflash_defconfig b/configs/sama5d3xek_nandflash_defconfig index 9690de7af5..2ed8a33f74 100644 --- a/configs/sama5d3xek_nandflash_defconfig +++ b/configs/sama5d3xek_nandflash_defconfig @@ -1,10 +1,15 @@ CONFIG_ARM=y CONFIG_ARCH_AT91=y CONFIG_TARGET_SAMA5D3XEK=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="SAMA5D3,SYS_USE_NANDFLASH" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMI is not set diff --git a/configs/sama5d3xek_spiflash_defconfig b/configs/sama5d3xek_spiflash_defconfig index 064b9a90b4..81be7f57aa 100644 --- a/configs/sama5d3xek_spiflash_defconfig +++ b/configs/sama5d3xek_spiflash_defconfig @@ -1,10 +1,16 @@ CONFIG_ARM=y CONFIG_ARCH_AT91=y CONFIG_TARGET_SAMA5D3XEK=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="SAMA5D3,SYS_USE_SERIALFLASH" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMI is not set diff --git a/configs/sama5d4_xplained_mmc_defconfig b/configs/sama5d4_xplained_mmc_defconfig index 820aca8845..8a3d16010b 100644 --- a/configs/sama5d4_xplained_mmc_defconfig +++ b/configs/sama5d4_xplained_mmc_defconfig @@ -1,10 +1,17 @@ CONFIG_ARM=y CONFIG_ARCH_AT91=y CONFIG_TARGET_SAMA5D4_XPLAINED=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="SAMA5D4,SYS_USE_MMC" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMI is not set diff --git a/configs/sama5d4_xplained_nandflash_defconfig b/configs/sama5d4_xplained_nandflash_defconfig index 8d31742de4..ad5d935549 100644 --- a/configs/sama5d4_xplained_nandflash_defconfig +++ b/configs/sama5d4_xplained_nandflash_defconfig @@ -1,10 +1,15 @@ CONFIG_ARM=y CONFIG_ARCH_AT91=y CONFIG_TARGET_SAMA5D4_XPLAINED=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="SAMA5D4,SYS_USE_NANDFLASH" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMI is not set diff --git a/configs/sama5d4_xplained_spiflash_defconfig b/configs/sama5d4_xplained_spiflash_defconfig index ccc92985b9..8fc650f26a 100644 --- a/configs/sama5d4_xplained_spiflash_defconfig +++ b/configs/sama5d4_xplained_spiflash_defconfig @@ -1,10 +1,16 @@ CONFIG_ARM=y CONFIG_ARCH_AT91=y CONFIG_TARGET_SAMA5D4_XPLAINED=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="SAMA5D4,SYS_USE_SERIALFLASH" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMI is not set diff --git a/configs/sama5d4ek_mmc_defconfig b/configs/sama5d4ek_mmc_defconfig index 4cfd82135f..e7398ddfa7 100644 --- a/configs/sama5d4ek_mmc_defconfig +++ b/configs/sama5d4ek_mmc_defconfig @@ -1,10 +1,17 @@ CONFIG_ARM=y CONFIG_ARCH_AT91=y CONFIG_TARGET_SAMA5D4EK=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="SAMA5D4,SYS_USE_MMC" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMI is not set diff --git a/configs/sama5d4ek_nandflash_defconfig b/configs/sama5d4ek_nandflash_defconfig index 5cbe6e7258..e4032f9d17 100644 --- a/configs/sama5d4ek_nandflash_defconfig +++ b/configs/sama5d4ek_nandflash_defconfig @@ -1,10 +1,15 @@ CONFIG_ARM=y CONFIG_ARCH_AT91=y CONFIG_TARGET_SAMA5D4EK=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="SAMA5D4,SYS_USE_NANDFLASH" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMI is not set diff --git a/configs/sama5d4ek_spiflash_defconfig b/configs/sama5d4ek_spiflash_defconfig index 219a8c28c0..903ddcb6df 100644 --- a/configs/sama5d4ek_spiflash_defconfig +++ b/configs/sama5d4ek_spiflash_defconfig @@ -1,10 +1,16 @@ CONFIG_ARM=y CONFIG_ARCH_AT91=y CONFIG_TARGET_SAMA5D4EK=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="SAMA5D4,SYS_USE_SERIALFLASH" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMI is not set diff --git a/configs/sandbox_spl_defconfig b/configs/sandbox_spl_defconfig index 808ac344b8..ebaf7682ab 100644 --- a/configs/sandbox_spl_defconfig +++ b/configs/sandbox_spl_defconfig @@ -1,9 +1,14 @@ +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SYS_MALLOC_F_LEN=0x2000 +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y +CONFIG_SPL_DRIVERS_MISC_SUPPORT=y CONFIG_MMC=y CONFIG_SANDBOX_SPL=y CONFIG_PCI=y CONFIG_DEFAULT_DEVICE_TREE="sandbox" CONFIG_I8042_KEYB=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_FIT_SIGNATURE=y @@ -17,6 +22,7 @@ CONFIG_BOOTSTAGE_STASH_ADDR=0x0 CONFIG_BOOTSTAGE_STASH_SIZE=0x4096 CONFIG_CONSOLE_RECORD=y CONFIG_CONSOLE_RECORD_OUT_SIZE=0x1000 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_CPU=y CONFIG_CMD_LICENSE=y diff --git a/configs/sansa_fuze_plus_defconfig b/configs/sansa_fuze_plus_defconfig index 7af5935bc4..de071399bf 100644 --- a/configs/sansa_fuze_plus_defconfig +++ b/configs/sansa_fuze_plus_defconfig @@ -1,8 +1,12 @@ CONFIG_ARM=y CONFIG_TARGET_SANSA_FUZE_PLUS=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_BOOTDELAY=3 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y # CONFIG_CMD_IMLS is not set CONFIG_CMD_MEMTEST=y diff --git a/configs/sc_sps_1_defconfig b/configs/sc_sps_1_defconfig index 30233fc7ef..f3b74b6f74 100644 --- a/configs/sc_sps_1_defconfig +++ b/configs/sc_sps_1_defconfig @@ -1,8 +1,12 @@ CONFIG_ARM=y CONFIG_TARGET_SC_SPS_1=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_BOOTDELAY=3 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set diff --git a/configs/sheevaplug_defconfig b/configs/sheevaplug_defconfig index dbafcf21c1..67d75ecfb3 100644 --- a/configs/sheevaplug_defconfig +++ b/configs/sheevaplug_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_KIRKWOOD=y CONFIG_TARGET_SHEEVAPLUG=y +CONFIG_IDENT_STRING="\nMarvell-Sheevaplug" CONFIG_BOOTDELAY=3 CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y @@ -16,6 +17,7 @@ CONFIG_CMD_PING=y CONFIG_CMD_EXT2=y CONFIG_CMD_EXT4=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_STORAGE=y diff --git a/configs/smartweb_defconfig b/configs/smartweb_defconfig index cf8bff6da0..68ede036cf 100644 --- a/configs/smartweb_defconfig +++ b/configs/smartweb_defconfig @@ -1,11 +1,15 @@ CONFIG_ARM=y CONFIG_ARCH_AT91=y CONFIG_TARGET_SMARTWEB=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="at91sam9260-smartweb" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9260" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="U-Boot# " CONFIG_AUTOBOOT_KEYED=y diff --git a/configs/smdk2410_defconfig b/configs/smdk2410_defconfig index 3d098ba3a1..1cb7960887 100644 --- a/configs/smdk2410_defconfig +++ b/configs/smdk2410_defconfig @@ -10,5 +10,6 @@ CONFIG_CMD_PING=y CONFIG_CMD_CACHE=y CONFIG_CMD_EXT2=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_USB=y CONFIG_USB_STORAGE=y diff --git a/configs/smdk5250_defconfig b/configs/smdk5250_defconfig index dbd31376a2..6e335f09cb 100644 --- a/configs/smdk5250_defconfig +++ b/configs/smdk5250_defconfig @@ -2,10 +2,11 @@ CONFIG_ARM=y CONFIG_ARCH_EXYNOS=y CONFIG_ARCH_EXYNOS5=y CONFIG_TARGET_SMDK5250=y +CONFIG_IDENT_STRING=" for SMDK5250" CONFIG_DEFAULT_DEVICE_TREE="exynos5250-smdk5250" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_BEST_MATCH=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="SMDK5250 # " CONFIG_CMD_BOOTZ=y diff --git a/configs/smdk5420_defconfig b/configs/smdk5420_defconfig index 63a95a833f..c1d8c45228 100644 --- a/configs/smdk5420_defconfig +++ b/configs/smdk5420_defconfig @@ -2,10 +2,11 @@ CONFIG_ARM=y CONFIG_ARCH_EXYNOS=y CONFIG_ARCH_EXYNOS5=y CONFIG_TARGET_SMDK5420=y +CONFIG_IDENT_STRING=" for SMDK5420" CONFIG_DEFAULT_DEVICE_TREE="exynos5420-smdk5420" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_BEST_MATCH=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="SMDK5420 # " CONFIG_CMD_BOOTZ=y diff --git a/configs/smdkc100_defconfig b/configs/smdkc100_defconfig index 0948534e89..6bfe26c487 100644 --- a/configs/smdkc100_defconfig +++ b/configs/smdkc100_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_ARCH_S5PC1XX=y CONFIG_TARGET_SMDKC100=y +CONFIG_IDENT_STRING=" for SMDKC100" CONFIG_DEFAULT_DEVICE_TREE="s5pc1xx-smdkc100" CONFIG_BOOTDELAY=3 CONFIG_HUSH_PARSER=y diff --git a/configs/smdkv310_defconfig b/configs/smdkv310_defconfig index 5e3844cf47..c8c182b2d5 100644 --- a/configs/smdkv310_defconfig +++ b/configs/smdkv310_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_ARCH_EXYNOS=y CONFIG_ARCH_EXYNOS4=y +CONFIG_IDENT_STRING=" for SMDKC210/V310" CONFIG_DEFAULT_DEVICE_TREE="exynos4210-smdkv310" CONFIG_SPL=y CONFIG_HUSH_PARSER=y diff --git a/configs/sniper_defconfig b/configs/sniper_defconfig index 1b313c44e7..a44082ea6f 100644 --- a/configs/sniper_defconfig +++ b/configs/sniper_defconfig @@ -1,5 +1,7 @@ CONFIG_ARM=y CONFIG_OMAP34XX=y +# CONFIG_SPL_EXT_SUPPORT is not set +# CONFIG_SPL_NAND_SUPPORT is not set CONFIG_TARGET_SNIPER=y CONFIG_SPL=y CONFIG_HUSH_PARSER=y diff --git a/configs/snow_defconfig b/configs/snow_defconfig index 0c9e3f1bbf..3d8c8ea60b 100644 --- a/configs/snow_defconfig +++ b/configs/snow_defconfig @@ -2,10 +2,11 @@ CONFIG_ARM=y CONFIG_ARCH_EXYNOS=y CONFIG_ARCH_EXYNOS5=y CONFIG_TARGET_SNOW=y +CONFIG_IDENT_STRING=" for snow" CONFIG_DEFAULT_DEVICE_TREE="exynos5250-snow" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_BEST_MATCH=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="snow # " CONFIG_CMD_BOOTZ=y diff --git a/configs/socfpga_arria5_defconfig b/configs/socfpga_arria5_defconfig index a6d4945d4c..71708796e2 100644 --- a/configs/socfpga_arria5_defconfig +++ b/configs/socfpga_arria5_defconfig @@ -1,13 +1,14 @@ CONFIG_ARM=y CONFIG_ARCH_SOCFPGA=y +CONFIG_SYS_MALLOC_F_LEN=0x2000 CONFIG_TARGET_SOCFPGA_ARRIA5_SOCDK=y CONFIG_SPL_STACK_R_ADDR=0x00800000 CONFIG_DEFAULT_DEVICE_TREE="socfpga_arria5_socdk" +CONFIG_FIT=y +CONFIG_VERSION_VARIABLE=y CONFIG_SPL=y CONFIG_SPL_SYS_MALLOC_SIMPLE=y CONFIG_SPL_STACK_R=y -CONFIG_FIT=y -CONFIG_VERSION_VARIABLE=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set @@ -30,6 +31,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_SPL_DM=y CONFIG_SPL_DM_SEQ_ALIAS=y CONFIG_DM_GPIO=y diff --git a/configs/socfpga_cyclone5_defconfig b/configs/socfpga_cyclone5_defconfig index b34e7e5e57..e523176bcb 100644 --- a/configs/socfpga_cyclone5_defconfig +++ b/configs/socfpga_cyclone5_defconfig @@ -1,13 +1,14 @@ CONFIG_ARM=y CONFIG_ARCH_SOCFPGA=y +CONFIG_SYS_MALLOC_F_LEN=0x2000 CONFIG_TARGET_SOCFPGA_CYCLONE5_SOCDK=y CONFIG_SPL_STACK_R_ADDR=0x00800000 CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_socdk" +CONFIG_FIT=y +CONFIG_VERSION_VARIABLE=y CONFIG_SPL=y CONFIG_SPL_SYS_MALLOC_SIMPLE=y CONFIG_SPL_STACK_R=y -CONFIG_FIT=y -CONFIG_VERSION_VARIABLE=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set @@ -30,6 +31,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_SPL_DM=y CONFIG_SPL_DM_SEQ_ALIAS=y CONFIG_DM_GPIO=y diff --git a/configs/socfpga_de0_nano_soc_defconfig b/configs/socfpga_de0_nano_soc_defconfig index 127f36ceb3..a22c0227aa 100644 --- a/configs/socfpga_de0_nano_soc_defconfig +++ b/configs/socfpga_de0_nano_soc_defconfig @@ -1,13 +1,14 @@ CONFIG_ARM=y CONFIG_ARCH_SOCFPGA=y +CONFIG_SYS_MALLOC_F_LEN=0x2000 CONFIG_TARGET_SOCFPGA_TERASIC_DE0_NANO=y CONFIG_SPL_STACK_R_ADDR=0x00800000 CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_de0_nano_soc" +CONFIG_FIT=y +CONFIG_VERSION_VARIABLE=y CONFIG_SPL=y CONFIG_SPL_SYS_MALLOC_SIMPLE=y CONFIG_SPL_STACK_R=y -CONFIG_FIT=y -CONFIG_VERSION_VARIABLE=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set @@ -30,6 +31,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_SPL_DM=y CONFIG_DM_GPIO=y CONFIG_DWAPB_GPIO=y diff --git a/configs/socfpga_is1_defconfig b/configs/socfpga_is1_defconfig index d23afbfe4d..c3217f2c89 100644 --- a/configs/socfpga_is1_defconfig +++ b/configs/socfpga_is1_defconfig @@ -1,12 +1,13 @@ CONFIG_ARM=y CONFIG_ARCH_SOCFPGA=y +CONFIG_SYS_MALLOC_F_LEN=0x2000 CONFIG_TARGET_SOCFPGA_IS1=y CONFIG_SPL_STACK_R_ADDR=0x00800000 CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_is1" -CONFIG_SPL=y -CONFIG_SPL_STACK_R=y CONFIG_FIT=y CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_STACK_R=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set @@ -26,6 +27,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_SPL_DM=y CONFIG_SPL_DM_SEQ_ALIAS=y CONFIG_DM_GPIO=y diff --git a/configs/socfpga_mcvevk_defconfig b/configs/socfpga_mcvevk_defconfig index 01007268f8..4e6b3d4cb1 100644 --- a/configs/socfpga_mcvevk_defconfig +++ b/configs/socfpga_mcvevk_defconfig @@ -1,13 +1,14 @@ CONFIG_ARM=y CONFIG_ARCH_SOCFPGA=y +CONFIG_SYS_MALLOC_F_LEN=0x2000 CONFIG_TARGET_SOCFPGA_DENX_MCVEVK=y CONFIG_SPL_STACK_R_ADDR=0x00800000 CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_mcvevk" +CONFIG_FIT=y +CONFIG_VERSION_VARIABLE=y CONFIG_SPL=y CONFIG_SPL_SYS_MALLOC_SIMPLE=y CONFIG_SPL_STACK_R=y -CONFIG_FIT=y -CONFIG_VERSION_VARIABLE=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set @@ -30,6 +31,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_SPL_DM=y CONFIG_DM_GPIO=y CONFIG_DWAPB_GPIO=y diff --git a/configs/socfpga_sockit_defconfig b/configs/socfpga_sockit_defconfig index d708e1366c..3879cc9aae 100644 --- a/configs/socfpga_sockit_defconfig +++ b/configs/socfpga_sockit_defconfig @@ -1,13 +1,14 @@ CONFIG_ARM=y CONFIG_ARCH_SOCFPGA=y +CONFIG_SYS_MALLOC_F_LEN=0x2000 CONFIG_TARGET_SOCFPGA_TERASIC_SOCKIT=y CONFIG_SPL_STACK_R_ADDR=0x00800000 CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_sockit" +CONFIG_FIT=y +CONFIG_VERSION_VARIABLE=y CONFIG_SPL=y CONFIG_SPL_SYS_MALLOC_SIMPLE=y CONFIG_SPL_STACK_R=y -CONFIG_FIT=y -CONFIG_VERSION_VARIABLE=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set @@ -30,6 +31,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_SPL_DM=y CONFIG_SPL_DM_SEQ_ALIAS=y CONFIG_DM_GPIO=y diff --git a/configs/socfpga_socrates_defconfig b/configs/socfpga_socrates_defconfig index 35dad70628..d763b993bb 100644 --- a/configs/socfpga_socrates_defconfig +++ b/configs/socfpga_socrates_defconfig @@ -1,13 +1,14 @@ CONFIG_ARM=y CONFIG_ARCH_SOCFPGA=y +CONFIG_SYS_MALLOC_F_LEN=0x2000 CONFIG_TARGET_SOCFPGA_EBV_SOCRATES=y CONFIG_SPL_STACK_R_ADDR=0x00800000 CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_socrates" +CONFIG_FIT=y +CONFIG_VERSION_VARIABLE=y CONFIG_SPL=y CONFIG_SPL_SYS_MALLOC_SIMPLE=y CONFIG_SPL_STACK_R=y -CONFIG_FIT=y -CONFIG_VERSION_VARIABLE=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set @@ -31,6 +32,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_SPL_DM=y CONFIG_SPL_DM_SEQ_ALIAS=y CONFIG_DM_GPIO=y diff --git a/configs/socfpga_sr1500_defconfig b/configs/socfpga_sr1500_defconfig index 2a4494f484..814b11138f 100644 --- a/configs/socfpga_sr1500_defconfig +++ b/configs/socfpga_sr1500_defconfig @@ -1,13 +1,14 @@ CONFIG_ARM=y CONFIG_ARCH_SOCFPGA=y +CONFIG_SYS_MALLOC_F_LEN=0x2000 CONFIG_TARGET_SOCFPGA_SR1500=y CONFIG_SPL_STACK_R_ADDR=0x00800000 CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_sr1500" +CONFIG_FIT=y +CONFIG_VERSION_VARIABLE=y CONFIG_SPL=y CONFIG_SPL_SYS_MALLOC_SIMPLE=y CONFIG_SPL_STACK_R=y -CONFIG_FIT=y -CONFIG_VERSION_VARIABLE=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set @@ -29,6 +30,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_SPL_DM=y CONFIG_SPL_DM_SEQ_ALIAS=y CONFIG_DM_GPIO=y diff --git a/configs/socfpga_vining_fpga_defconfig b/configs/socfpga_vining_fpga_defconfig index 7fdaeca282..e9105b9b79 100644 --- a/configs/socfpga_vining_fpga_defconfig +++ b/configs/socfpga_vining_fpga_defconfig @@ -1,14 +1,15 @@ CONFIG_ARM=y CONFIG_ARCH_SOCFPGA=y +CONFIG_SYS_MALLOC_F_LEN=0x2000 CONFIG_TARGET_SOCFPGA_SAMTEC_VINING_FPGA=y CONFIG_SPL_STACK_R_ADDR=0x00800000 CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_vining_fpga" -CONFIG_SPL=y -CONFIG_SPL_SYS_MALLOC_SIMPLE=y -CONFIG_SPL_STACK_R=y CONFIG_FIT=y CONFIG_BOOTDELAY=5 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_SYS_MALLOC_SIMPLE=y +CONFIG_SPL_STACK_R=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set @@ -32,6 +33,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_NET_RANDOM_ETHADDR=y CONFIG_SPL_DM=y CONFIG_SPL_DM_SEQ_ALIAS=y @@ -42,6 +44,7 @@ CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_SPANSION=y CONFIG_SPI_FLASH_STMICRO=y # CONFIG_SPI_FLASH_USE_4K_SECTORS is not set +CONFIG_MTD_UBI_FASTMAP=y CONFIG_DM_ETH=y CONFIG_ETH_DESIGNWARE=y CONFIG_SYS_NS16550=y diff --git a/configs/spear300_defconfig b/configs/spear300_defconfig index 2ef309cbe5..620758ed44 100644 --- a/configs/spear300_defconfig +++ b/configs/spear300_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_TARGET_SPEAR300=y -CONFIG_SYS_EXTRA_OPTIONS="spear300" +CONFIG_IDENT_STRING="-SPEAr" +CONFIG_SYS_EXTRA_OPTIONS="SPEAR300" CONFIG_BOOTDELAY=1 CONFIG_CMD_I2C=y # CONFIG_CMD_SETEXPR is not set diff --git a/configs/spear300_nand_defconfig b/configs/spear300_nand_defconfig index 611631edd3..497b29ddcd 100644 --- a/configs/spear300_nand_defconfig +++ b/configs/spear300_nand_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_TARGET_SPEAR300=y -CONFIG_SYS_EXTRA_OPTIONS="spear300,nand" +CONFIG_IDENT_STRING="-SPEAr" +CONFIG_SYS_EXTRA_OPTIONS="SPEAR300,NAND" CONFIG_BOOTDELAY=1 CONFIG_CMD_I2C=y # CONFIG_CMD_SETEXPR is not set diff --git a/configs/spear300_usbtty_defconfig b/configs/spear300_usbtty_defconfig index 5338418270..34f0ec0d73 100644 --- a/configs/spear300_usbtty_defconfig +++ b/configs/spear300_usbtty_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_TARGET_SPEAR300=y -CONFIG_SYS_EXTRA_OPTIONS="spear300,usbtty" +CONFIG_IDENT_STRING="-SPEAr" +CONFIG_SYS_EXTRA_OPTIONS="SPEAR300,USBTTY" CONFIG_BOOTDELAY=-1 CONFIG_CMD_I2C=y # CONFIG_CMD_SETEXPR is not set diff --git a/configs/spear300_usbtty_nand_defconfig b/configs/spear300_usbtty_nand_defconfig index d525edf687..d2cf814d97 100644 --- a/configs/spear300_usbtty_nand_defconfig +++ b/configs/spear300_usbtty_nand_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_TARGET_SPEAR300=y -CONFIG_SYS_EXTRA_OPTIONS="spear300,usbtty,nand" +CONFIG_IDENT_STRING="-SPEAr" +CONFIG_SYS_EXTRA_OPTIONS="SPEAR300,USBTTY,NAND" CONFIG_BOOTDELAY=-1 CONFIG_CMD_I2C=y # CONFIG_CMD_SETEXPR is not set diff --git a/configs/spear310_defconfig b/configs/spear310_defconfig index 3f20387c91..1b4483d11f 100644 --- a/configs/spear310_defconfig +++ b/configs/spear310_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_TARGET_SPEAR310=y -CONFIG_SYS_EXTRA_OPTIONS="spear310" +CONFIG_IDENT_STRING="-SPEAr" +CONFIG_SYS_EXTRA_OPTIONS="SPEAR310" CONFIG_BOOTDELAY=1 CONFIG_CMD_I2C=y # CONFIG_CMD_SETEXPR is not set diff --git a/configs/spear310_nand_defconfig b/configs/spear310_nand_defconfig index 2feb9ccfbf..6a51538891 100644 --- a/configs/spear310_nand_defconfig +++ b/configs/spear310_nand_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_TARGET_SPEAR310=y -CONFIG_SYS_EXTRA_OPTIONS="spear310,nand" +CONFIG_IDENT_STRING="-SPEAr" +CONFIG_SYS_EXTRA_OPTIONS="SPEAR310,NAND" CONFIG_BOOTDELAY=1 CONFIG_CMD_I2C=y # CONFIG_CMD_SETEXPR is not set diff --git a/configs/spear310_pnor_defconfig b/configs/spear310_pnor_defconfig index 4ab49d92f5..f6424f8829 100644 --- a/configs/spear310_pnor_defconfig +++ b/configs/spear310_pnor_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_TARGET_SPEAR310=y -CONFIG_SYS_EXTRA_OPTIONS="spear310,FLASH_PNOR" +CONFIG_IDENT_STRING="-SPEAr" +CONFIG_SYS_EXTRA_OPTIONS="SPEAR310,FLASH_PNOR" CONFIG_BOOTDELAY=1 CONFIG_CMD_I2C=y # CONFIG_CMD_SETEXPR is not set diff --git a/configs/spear310_usbtty_defconfig b/configs/spear310_usbtty_defconfig index 299cf6dcda..f35d363de4 100644 --- a/configs/spear310_usbtty_defconfig +++ b/configs/spear310_usbtty_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_TARGET_SPEAR310=y -CONFIG_SYS_EXTRA_OPTIONS="spear310,usbtty" +CONFIG_IDENT_STRING="-SPEAr" +CONFIG_SYS_EXTRA_OPTIONS="SPEAR310,USBTTY" CONFIG_BOOTDELAY=-1 CONFIG_CMD_I2C=y # CONFIG_CMD_SETEXPR is not set diff --git a/configs/spear310_usbtty_nand_defconfig b/configs/spear310_usbtty_nand_defconfig index 9ac10f26af..a1f9fbf0d1 100644 --- a/configs/spear310_usbtty_nand_defconfig +++ b/configs/spear310_usbtty_nand_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_TARGET_SPEAR310=y -CONFIG_SYS_EXTRA_OPTIONS="spear310,usbtty,nand" +CONFIG_IDENT_STRING="-SPEAr" +CONFIG_SYS_EXTRA_OPTIONS="SPEAR310,USBTTY,NAND" CONFIG_BOOTDELAY=-1 CONFIG_CMD_I2C=y # CONFIG_CMD_SETEXPR is not set diff --git a/configs/spear310_usbtty_pnor_defconfig b/configs/spear310_usbtty_pnor_defconfig index f582b4695a..4ac4da5dee 100644 --- a/configs/spear310_usbtty_pnor_defconfig +++ b/configs/spear310_usbtty_pnor_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_TARGET_SPEAR310=y -CONFIG_SYS_EXTRA_OPTIONS="spear310,usbtty,FLASH_PNOR" +CONFIG_IDENT_STRING="-SPEAr" +CONFIG_SYS_EXTRA_OPTIONS="SPEAR310,USBTTY,FLASH_PNOR" CONFIG_BOOTDELAY=-1 CONFIG_CMD_I2C=y # CONFIG_CMD_SETEXPR is not set diff --git a/configs/spear320_defconfig b/configs/spear320_defconfig index 4b4f2f6f96..7b09882cbe 100644 --- a/configs/spear320_defconfig +++ b/configs/spear320_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_TARGET_SPEAR320=y -CONFIG_SYS_EXTRA_OPTIONS="spear320" +CONFIG_IDENT_STRING="-SPEAr" +CONFIG_SYS_EXTRA_OPTIONS="SPEAR320" CONFIG_BOOTDELAY=1 CONFIG_CMD_I2C=y # CONFIG_CMD_SETEXPR is not set diff --git a/configs/spear320_nand_defconfig b/configs/spear320_nand_defconfig index 7308879c92..53e3f014ba 100644 --- a/configs/spear320_nand_defconfig +++ b/configs/spear320_nand_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_TARGET_SPEAR320=y -CONFIG_SYS_EXTRA_OPTIONS="spear320,nand" +CONFIG_IDENT_STRING="-SPEAr" +CONFIG_SYS_EXTRA_OPTIONS="SPEAR320,NAND" CONFIG_BOOTDELAY=1 CONFIG_CMD_I2C=y # CONFIG_CMD_SETEXPR is not set diff --git a/configs/spear320_pnor_defconfig b/configs/spear320_pnor_defconfig index fdffa97697..d23eb36018 100644 --- a/configs/spear320_pnor_defconfig +++ b/configs/spear320_pnor_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_TARGET_SPEAR320=y -CONFIG_SYS_EXTRA_OPTIONS="spear320,FLASH_PNOR" +CONFIG_IDENT_STRING="-SPEAr" +CONFIG_SYS_EXTRA_OPTIONS="SPEAR320,FLASH_PNOR" CONFIG_BOOTDELAY=1 CONFIG_CMD_I2C=y # CONFIG_CMD_SETEXPR is not set diff --git a/configs/spear320_usbtty_defconfig b/configs/spear320_usbtty_defconfig index ee873e95d0..26ca01f4d2 100644 --- a/configs/spear320_usbtty_defconfig +++ b/configs/spear320_usbtty_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_TARGET_SPEAR320=y -CONFIG_SYS_EXTRA_OPTIONS="spear320,usbtty" +CONFIG_IDENT_STRING="-SPEAr" +CONFIG_SYS_EXTRA_OPTIONS="SPEAR320,USBTTY" CONFIG_BOOTDELAY=-1 CONFIG_CMD_I2C=y # CONFIG_CMD_SETEXPR is not set diff --git a/configs/spear320_usbtty_nand_defconfig b/configs/spear320_usbtty_nand_defconfig index a587470528..2478fe086e 100644 --- a/configs/spear320_usbtty_nand_defconfig +++ b/configs/spear320_usbtty_nand_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_TARGET_SPEAR320=y -CONFIG_SYS_EXTRA_OPTIONS="spear320,usbtty,nand" +CONFIG_IDENT_STRING="-SPEAr" +CONFIG_SYS_EXTRA_OPTIONS="SPEAR320,USBTTY,NAND" CONFIG_BOOTDELAY=-1 CONFIG_CMD_I2C=y # CONFIG_CMD_SETEXPR is not set diff --git a/configs/spear320_usbtty_pnor_defconfig b/configs/spear320_usbtty_pnor_defconfig index a65dc1118e..e774225931 100644 --- a/configs/spear320_usbtty_pnor_defconfig +++ b/configs/spear320_usbtty_pnor_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_TARGET_SPEAR320=y -CONFIG_SYS_EXTRA_OPTIONS="spear320,usbtty,FLASH_PNOR" +CONFIG_IDENT_STRING="-SPEAr" +CONFIG_SYS_EXTRA_OPTIONS="SPEAR320,USBTTY,FLASH_PNOR" CONFIG_BOOTDELAY=-1 CONFIG_CMD_I2C=y # CONFIG_CMD_SETEXPR is not set diff --git a/configs/spear600_defconfig b/configs/spear600_defconfig index 623800c1a9..e14dcc0c96 100644 --- a/configs/spear600_defconfig +++ b/configs/spear600_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_TARGET_SPEAR600=y -CONFIG_SYS_EXTRA_OPTIONS="spear600" +CONFIG_IDENT_STRING="-SPEAr" +CONFIG_SYS_EXTRA_OPTIONS="SPEAR600" CONFIG_BOOTDELAY=1 CONFIG_AUTOBOOT_KEYED=y CONFIG_AUTOBOOT_PROMPT="Hit SPACE in %d seconds to stop autoboot.\n" diff --git a/configs/spear600_nand_defconfig b/configs/spear600_nand_defconfig index 8da9b34c2f..6c45fecad9 100644 --- a/configs/spear600_nand_defconfig +++ b/configs/spear600_nand_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_TARGET_SPEAR600=y -CONFIG_SYS_EXTRA_OPTIONS="spear600,nand" +CONFIG_IDENT_STRING="-SPEAr" +CONFIG_SYS_EXTRA_OPTIONS="SPEAR600,NAND" CONFIG_BOOTDELAY=1 CONFIG_CMD_I2C=y # CONFIG_CMD_SETEXPR is not set diff --git a/configs/spear600_usbtty_defconfig b/configs/spear600_usbtty_defconfig index 68b11ccf31..4531168251 100644 --- a/configs/spear600_usbtty_defconfig +++ b/configs/spear600_usbtty_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_TARGET_SPEAR600=y -CONFIG_SYS_EXTRA_OPTIONS="spear600,usbtty" +CONFIG_IDENT_STRING="-SPEAr" +CONFIG_SYS_EXTRA_OPTIONS="SPEAR600,USBTTY" CONFIG_BOOTDELAY=-1 CONFIG_CMD_I2C=y # CONFIG_CMD_SETEXPR is not set diff --git a/configs/spear600_usbtty_nand_defconfig b/configs/spear600_usbtty_nand_defconfig index 776c611062..968e7e49ec 100644 --- a/configs/spear600_usbtty_nand_defconfig +++ b/configs/spear600_usbtty_nand_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_TARGET_SPEAR600=y -CONFIG_SYS_EXTRA_OPTIONS="spear600,usbtty,nand" +CONFIG_IDENT_STRING="-SPEAr" +CONFIG_SYS_EXTRA_OPTIONS="SPEAR600,USBTTY,NAND" CONFIG_BOOTDELAY=-1 CONFIG_CMD_I2C=y # CONFIG_CMD_SETEXPR is not set diff --git a/configs/spring_defconfig b/configs/spring_defconfig index 030973b77c..74287ea02e 100644 --- a/configs/spring_defconfig +++ b/configs/spring_defconfig @@ -2,10 +2,11 @@ CONFIG_ARM=y CONFIG_ARCH_EXYNOS=y CONFIG_ARCH_EXYNOS5=y CONFIG_TARGET_SPRING=y +CONFIG_IDENT_STRING=" for spring" CONFIG_DEFAULT_DEVICE_TREE="exynos5250-spring" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_BEST_MATCH=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="spring # " CONFIG_CMD_BOOTZ=y diff --git a/configs/strider_con_defconfig b/configs/strider_con_defconfig index 6253615eb5..66a0b9718f 100644 --- a/configs/strider_con_defconfig +++ b/configs/strider_con_defconfig @@ -1,4 +1,5 @@ CONFIG_PPC=y +CONFIG_IDENT_STRING=" strider con 0.01" CONFIG_MPC83xx=y CONFIG_TARGET_STRIDER=y CONFIG_FIT=y diff --git a/configs/strider_con_dp_defconfig b/configs/strider_con_dp_defconfig index 3d325f4346..3482653600 100644 --- a/configs/strider_con_dp_defconfig +++ b/configs/strider_con_dp_defconfig @@ -1,4 +1,5 @@ CONFIG_PPC=y +CONFIG_IDENT_STRING=" strider con dp 0.01" CONFIG_MPC83xx=y CONFIG_TARGET_STRIDER=y CONFIG_FIT=y diff --git a/configs/strider_cpu_defconfig b/configs/strider_cpu_defconfig index 160df247f1..d554b0c1fe 100644 --- a/configs/strider_cpu_defconfig +++ b/configs/strider_cpu_defconfig @@ -1,4 +1,5 @@ CONFIG_PPC=y +CONFIG_IDENT_STRING=" strider cpu 0.01" CONFIG_MPC83xx=y CONFIG_TARGET_STRIDER=y CONFIG_FIT=y diff --git a/configs/strider_cpu_dp_defconfig b/configs/strider_cpu_dp_defconfig index 2a2733dfba..5394d2f737 100644 --- a/configs/strider_cpu_dp_defconfig +++ b/configs/strider_cpu_dp_defconfig @@ -1,4 +1,5 @@ CONFIG_PPC=y +CONFIG_IDENT_STRING=" strider cpu dp 0.01" CONFIG_MPC83xx=y CONFIG_TARGET_STRIDER=y CONFIG_FIT=y diff --git a/configs/stv0991_defconfig b/configs/stv0991_defconfig index 40ca293bad..4db028e750 100644 --- a/configs/stv0991_defconfig +++ b/configs/stv0991_defconfig @@ -2,7 +2,7 @@ CONFIG_ARM=y CONFIG_TARGET_STV0991=y CONFIG_SYS_MALLOC_F_LEN=0x2000 CONFIG_DEFAULT_DEVICE_TREE="stv0991" -CONFIG_SYS_EXTRA_OPTIONS="stv0991" +CONFIG_SYS_EXTRA_OPTIONS="STV0991" CONFIG_BOOTDELAY=3 CONFIG_SYS_PROMPT="STV0991> " CONFIG_AUTOBOOT_KEYED=y diff --git a/configs/sunxi_Gemei_G9_defconfig b/configs/sunxi_Gemei_G9_defconfig index 6d39dec371..7309022b5d 100644 --- a/configs/sunxi_Gemei_G9_defconfig +++ b/configs/sunxi_Gemei_G9_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_ARCH_SUNXI=y +CONFIG_SPL_I2C_SUPPORT=y CONFIG_MACH_SUN4I=y CONFIG_DRAM_CLK=432 CONFIG_DRAM_EMR1=4 diff --git a/configs/suvd3_defconfig b/configs/suvd3_defconfig index 86c258ba7d..e1b7cd8eb4 100644 --- a/configs/suvd3_defconfig +++ b/configs/suvd3_defconfig @@ -15,5 +15,6 @@ CONFIG_CMD_I2C=y CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_OF_LIBFDT=y diff --git a/configs/tao3530_defconfig b/configs/tao3530_defconfig index 0f6913882c..88a3725c3f 100644 --- a/configs/tao3530_defconfig +++ b/configs/tao3530_defconfig @@ -1,8 +1,9 @@ CONFIG_ARM=y CONFIG_OMAP34XX=y +# CONFIG_SPL_EXT_SUPPORT is not set CONFIG_TARGET_TAO3530=y -CONFIG_SPL=y CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="TAO-3530 # " # CONFIG_CMD_IMI is not set diff --git a/configs/taurus_defconfig b/configs/taurus_defconfig index f0e95a4b7c..c84809f11d 100644 --- a/configs/taurus_defconfig +++ b/configs/taurus_defconfig @@ -1,10 +1,17 @@ CONFIG_ARM=y CONFIG_ARCH_AT91=y CONFIG_TARGET_TAURUS=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="at91sam9g20-taurus" -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9G20,MACH_TYPE=2067,BOARD_TAURUS" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="U-Boot> " # CONFIG_CMD_BDI is not set diff --git a/configs/theadorable_debug_defconfig b/configs/theadorable_debug_defconfig index a918d1fb67..ec6a8f1b06 100644 --- a/configs/theadorable_debug_defconfig +++ b/configs/theadorable_debug_defconfig @@ -1,11 +1,18 @@ CONFIG_ARM=y CONFIG_ARCH_MVEBU=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SYS_MALLOC_F_LEN=0x2000 CONFIG_TARGET_THEADORABLE=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="armada-xp-theadorable" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_FIT=y CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/theadorable_defconfig b/configs/theadorable_defconfig index 8757c60e1e..ecba1ec11f 100644 --- a/configs/theadorable_defconfig +++ b/configs/theadorable_defconfig @@ -1,11 +1,18 @@ CONFIG_ARM=y CONFIG_ARCH_MVEBU=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SYS_MALLOC_F_LEN=0x2000 CONFIG_TARGET_THEADORABLE=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="armada-xp-theadorable" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SPL=y CONFIG_FIT=y CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/thuban_defconfig b/configs/thuban_defconfig index 365627fc61..ed36d7384f 100644 --- a/configs/thuban_defconfig +++ b/configs/thuban_defconfig @@ -1,9 +1,22 @@ CONFIG_ARM=y CONFIG_TARGET_THUBAN=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_SYS_MALLOC_F_LEN=0x2000 +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="am335x-draco" -CONFIG_SPL=y CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="U-Boot# " CONFIG_AUTOBOOT_KEYED=y @@ -25,10 +38,13 @@ CONFIG_CMD_PING=y CONFIG_CMD_CACHE=y CONFIG_CMD_TIME=y CONFIG_CMD_EXT2=y +CONFIG_CMD_UBI=y CONFIG_OF_CONTROL=y CONFIG_OF_EMBED=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_WINBOND=y +CONFIG_MTD_UBI_FASTMAP=y +CONFIG_MTD_UBI_FASTMAP_AUTOCONVERT=1 CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_MUSB_HOST=y diff --git a/configs/thunderx_88xx_defconfig b/configs/thunderx_88xx_defconfig index 82421039c8..9bbff6c8ae 100644 --- a/configs/thunderx_88xx_defconfig +++ b/configs/thunderx_88xx_defconfig @@ -1,5 +1,6 @@ CONFIG_ARM=y CONFIG_TARGET_THUNDERX_88XX=y +CONFIG_IDENT_STRING=" for Cavium Thunder CN88XX ARM v8 Multi-Core" CONFIG_DEFAULT_DEVICE_TREE="thunderx-88xx" CONFIG_BOOTDELAY=5 CONFIG_HUSH_PARSER=y diff --git a/configs/ti814x_evm_defconfig b/configs/ti814x_evm_defconfig index 122dc3de96..e66ea7dd32 100644 --- a/configs/ti814x_evm_defconfig +++ b/configs/ti814x_evm_defconfig @@ -1,8 +1,16 @@ CONFIG_ARM=y CONFIG_TARGET_TI814X_EVM=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_BOOTDELAY=1 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="U-Boot# " # CONFIG_CMD_IMLS is not set diff --git a/configs/ti816x_evm_defconfig b/configs/ti816x_evm_defconfig index 7df29cc292..318751c94e 100644 --- a/configs/ti816x_evm_defconfig +++ b/configs/ti816x_evm_defconfig @@ -1,8 +1,16 @@ CONFIG_ARM=y CONFIG_TARGET_TI816X_EVM=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_FAT_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_BOOTDELAY=3 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="u-boot/ti816x# " # CONFIG_CMD_IMLS is not set diff --git a/configs/titanium_defconfig b/configs/titanium_defconfig index c64acf24a0..478eba9959 100644 --- a/configs/titanium_defconfig +++ b/configs/titanium_defconfig @@ -23,6 +23,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_OF_LIBFDT=y diff --git a/configs/tricorder_defconfig b/configs/tricorder_defconfig index 2482888244..281eabb792 100644 --- a/configs/tricorder_defconfig +++ b/configs/tricorder_defconfig @@ -1,8 +1,8 @@ CONFIG_ARM=y CONFIG_OMAP34XX=y CONFIG_TARGET_TRICORDER=y -CONFIG_SPL=y CONFIG_BOOTDELAY=0 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="OMAP3 Tricorder # " # CONFIG_CMD_IMI is not set @@ -16,5 +16,6 @@ CONFIG_CMD_I2C=y # CONFIG_CMD_NFS is not set CONFIG_CMD_EXT2=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_OF_LIBFDT=y diff --git a/configs/tricorder_flash_defconfig b/configs/tricorder_flash_defconfig index b285a81142..7bdf5f527b 100644 --- a/configs/tricorder_flash_defconfig +++ b/configs/tricorder_flash_defconfig @@ -1,9 +1,9 @@ CONFIG_ARM=y CONFIG_OMAP34XX=y CONFIG_TARGET_TRICORDER=y -CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="FLASHCARD" CONFIG_BOOTDELAY=0 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y # CONFIG_CMD_IMI is not set # CONFIG_CMD_IMLS is not set @@ -16,5 +16,6 @@ CONFIG_CMD_I2C=y # CONFIG_CMD_NFS is not set CONFIG_CMD_EXT2=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_OF_LIBFDT=y diff --git a/configs/tuge1_defconfig b/configs/tuge1_defconfig index a042cf2f8f..2465d820f0 100644 --- a/configs/tuge1_defconfig +++ b/configs/tuge1_defconfig @@ -15,5 +15,6 @@ CONFIG_CMD_I2C=y CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_OF_LIBFDT=y diff --git a/configs/tuxx1_defconfig b/configs/tuxx1_defconfig index f3f7857f59..02f98c9c1c 100644 --- a/configs/tuxx1_defconfig +++ b/configs/tuxx1_defconfig @@ -15,5 +15,6 @@ CONFIG_CMD_I2C=y CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_OF_LIBFDT=y diff --git a/configs/twister_defconfig b/configs/twister_defconfig index 42b88fb2ad..f419140948 100644 --- a/configs/twister_defconfig +++ b/configs/twister_defconfig @@ -1,9 +1,10 @@ CONFIG_ARM=y CONFIG_OMAP34XX=y +# CONFIG_SPL_EXT_SUPPORT is not set CONFIG_TARGET_TWISTER=y -CONFIG_SPL=y CONFIG_FIT=y CONFIG_BOOTDELAY=10 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="twister => " # CONFIG_CMD_IMLS is not set @@ -19,6 +20,7 @@ CONFIG_CMD_PING=y CONFIG_CMD_CACHE=y CONFIG_CMD_EXT2=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_ULPI_VIEWPORT_OMAP=y diff --git a/configs/udoo_defconfig b/configs/udoo_defconfig index 3c75706fe8..a4a17c1618 100644 --- a/configs/udoo_defconfig +++ b/configs/udoo_defconfig @@ -1,9 +1,18 @@ CONFIG_ARM=y CONFIG_ARCH_MX6=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_TARGET_UDOO=y -CONFIG_SPL=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,MX6QDL" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/uniphier_ld11_defconfig b/configs/uniphier_ld11_defconfig index 703d8711ea..864e04e691 100644 --- a/configs/uniphier_ld11_defconfig +++ b/configs/uniphier_ld11_defconfig @@ -1,9 +1,12 @@ CONFIG_ARM=y CONFIG_ARCH_UNIPHIER=y +CONFIG_SYS_MALLOC_F_LEN=0x2000 +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_ARCH_UNIPHIER_LD11=y CONFIG_MICRO_SUPPORT_CARD=y CONFIG_SYS_TEXT_BASE=0x84000000 CONFIG_DEFAULT_DEVICE_TREE="uniphier-ph1-ld11-ref" +CONFIG_SPL_NOR_SUPPORT=y CONFIG_HUSH_PARSER=y # CONFIG_CMD_XIMG is not set # CONFIG_CMD_ENV_EXISTS is not set @@ -23,10 +26,7 @@ CONFIG_SPL_OF_TRANSLATE=y CONFIG_GPIO_UNIPHIER=y CONFIG_MISC=y CONFIG_I2C_EEPROM=y -CONFIG_PINCTRL=y -CONFIG_SPL_PINCTRL=y CONFIG_USB=y -CONFIG_DM_USB=y CONFIG_USB_EHCI_HCD=y CONFIG_USB_EHCI_GENERIC=y CONFIG_USB_STORAGE=y diff --git a/configs/uniphier_ld20_defconfig b/configs/uniphier_ld20_defconfig index c4a8547074..3fe37586f0 100644 --- a/configs/uniphier_ld20_defconfig +++ b/configs/uniphier_ld20_defconfig @@ -1,9 +1,12 @@ CONFIG_ARM=y CONFIG_ARCH_UNIPHIER=y +CONFIG_SYS_MALLOC_F_LEN=0x2000 +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_ARCH_UNIPHIER_LD20=y CONFIG_MICRO_SUPPORT_CARD=y CONFIG_SYS_TEXT_BASE=0x84000000 CONFIG_DEFAULT_DEVICE_TREE="uniphier-ph1-ld20-ref" +CONFIG_SPL_NOR_SUPPORT=y CONFIG_HUSH_PARSER=y # CONFIG_CMD_XIMG is not set # CONFIG_CMD_ENV_EXISTS is not set @@ -24,8 +27,6 @@ CONFIG_GPIO_UNIPHIER=y CONFIG_MISC=y CONFIG_I2C_EEPROM=y CONFIG_MMC_UNIPHIER=y -CONFIG_PINCTRL=y -CONFIG_SPL_PINCTRL=y CONFIG_USB=y CONFIG_USB_XHCI_HCD=y CONFIG_USB_STORAGE=y diff --git a/configs/uniphier_ld4_sld8_defconfig b/configs/uniphier_ld4_sld8_defconfig index e3ad160e3b..c18f04279d 100644 --- a/configs/uniphier_ld4_sld8_defconfig +++ b/configs/uniphier_ld4_sld8_defconfig @@ -1,9 +1,14 @@ CONFIG_ARM=y CONFIG_ARCH_UNIPHIER=y +CONFIG_SYS_MALLOC_F_LEN=0x2000 +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_ARCH_UNIPHIER_LD4_SLD8=y CONFIG_MICRO_SUPPORT_CARD=y CONFIG_SYS_TEXT_BASE=0x84000000 CONFIG_DEFAULT_DEVICE_TREE="uniphier-ph1-ld4-ref" +CONFIG_SPL_NOR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_XIMG is not set @@ -29,10 +34,7 @@ CONFIG_NAND_DENALI=y CONFIG_SYS_NAND_DENALI_64BIT=y CONFIG_NAND_DENALI_SPARE_AREA_SKIP_BYTES=8 CONFIG_SPL_NAND_DENALI=y -CONFIG_PINCTRL=y -CONFIG_SPL_PINCTRL=y CONFIG_USB=y -CONFIG_DM_USB=y CONFIG_USB_EHCI_HCD=y CONFIG_USB_EHCI_GENERIC=y CONFIG_USB_STORAGE=y diff --git a/configs/uniphier_pro4_defconfig b/configs/uniphier_pro4_defconfig index a7dcc56002..9441b053f1 100644 --- a/configs/uniphier_pro4_defconfig +++ b/configs/uniphier_pro4_defconfig @@ -1,8 +1,13 @@ CONFIG_ARM=y CONFIG_ARCH_UNIPHIER=y +CONFIG_SYS_MALLOC_F_LEN=0x2000 +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_MICRO_SUPPORT_CARD=y CONFIG_SYS_TEXT_BASE=0x84000000 CONFIG_DEFAULT_DEVICE_TREE="uniphier-ph1-pro4-ref" +CONFIG_SPL_NOR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_XIMG is not set @@ -28,8 +33,8 @@ CONFIG_NAND_DENALI=y CONFIG_SYS_NAND_DENALI_64BIT=y CONFIG_NAND_DENALI_SPARE_AREA_SKIP_BYTES=8 CONFIG_SPL_NAND_DENALI=y -CONFIG_PINCTRL=y -CONFIG_SPL_PINCTRL=y CONFIG_USB=y CONFIG_USB_XHCI_HCD=y +CONFIG_USB_EHCI_HCD=y +CONFIG_USB_EHCI_GENERIC=y CONFIG_USB_STORAGE=y diff --git a/configs/uniphier_pxs2_ld6b_defconfig b/configs/uniphier_pxs2_ld6b_defconfig index 131c416580..0bf39f4e25 100644 --- a/configs/uniphier_pxs2_ld6b_defconfig +++ b/configs/uniphier_pxs2_ld6b_defconfig @@ -1,9 +1,14 @@ CONFIG_ARM=y CONFIG_ARCH_UNIPHIER=y +CONFIG_SYS_MALLOC_F_LEN=0x2000 +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_ARCH_UNIPHIER_PRO5_PXS2_LD6B=y CONFIG_MICRO_SUPPORT_CARD=y CONFIG_SYS_TEXT_BASE=0x84000000 CONFIG_DEFAULT_DEVICE_TREE="uniphier-proxstream2-vodka" +CONFIG_SPL_NOR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_XIMG is not set @@ -29,8 +34,6 @@ CONFIG_NAND_DENALI=y CONFIG_SYS_NAND_DENALI_64BIT=y CONFIG_NAND_DENALI_SPARE_AREA_SKIP_BYTES=8 CONFIG_SPL_NAND_DENALI=y -CONFIG_PINCTRL=y -CONFIG_SPL_PINCTRL=y CONFIG_USB=y CONFIG_USB_XHCI_HCD=y CONFIG_USB_STORAGE=y diff --git a/configs/uniphier_sld3_defconfig b/configs/uniphier_sld3_defconfig index 1c5cece5e0..bd9c327e92 100644 --- a/configs/uniphier_sld3_defconfig +++ b/configs/uniphier_sld3_defconfig @@ -1,9 +1,14 @@ CONFIG_ARM=y CONFIG_ARCH_UNIPHIER=y +CONFIG_SYS_MALLOC_F_LEN=0x2000 +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_ARCH_UNIPHIER_SLD3=y CONFIG_MICRO_SUPPORT_CARD=y CONFIG_SYS_TEXT_BASE=0x84000000 CONFIG_DEFAULT_DEVICE_TREE="uniphier-ph1-sld3-ref" +CONFIG_SPL_NOR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_XIMG is not set @@ -30,7 +35,6 @@ CONFIG_SYS_NAND_DENALI_64BIT=y CONFIG_NAND_DENALI_SPARE_AREA_SKIP_BYTES=8 CONFIG_SPL_NAND_DENALI=y CONFIG_USB=y -CONFIG_DM_USB=y CONFIG_USB_EHCI_HCD=y CONFIG_USB_EHCI_GENERIC=y CONFIG_USB_STORAGE=y diff --git a/configs/vct_platinum_onenand_defconfig b/configs/vct_platinum_onenand_defconfig index 54f85ab1a5..5dcad0bb03 100644 --- a/configs/vct_platinum_onenand_defconfig +++ b/configs/vct_platinum_onenand_defconfig @@ -13,6 +13,7 @@ CONFIG_CMD_DHCP=y CONFIG_CMD_PING=y CONFIG_CMD_SNTP=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_STORAGE=y diff --git a/configs/vct_platinum_onenand_small_defconfig b/configs/vct_platinum_onenand_small_defconfig index 3306a45e48..63e670e9da 100644 --- a/configs/vct_platinum_onenand_small_defconfig +++ b/configs/vct_platinum_onenand_small_defconfig @@ -19,4 +19,5 @@ CONFIG_SYS_PROMPT="$ " # CONFIG_CMD_NET is not set # CONFIG_CMD_NFS is not set # CONFIG_CMD_MISC is not set +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y diff --git a/configs/vct_platinumavc_onenand_defconfig b/configs/vct_platinumavc_onenand_defconfig index 55dfd4cd49..d0ef4dcd31 100644 --- a/configs/vct_platinumavc_onenand_defconfig +++ b/configs/vct_platinumavc_onenand_defconfig @@ -11,4 +11,5 @@ CONFIG_CMD_I2C=y # CONFIG_CMD_NET is not set CONFIG_CMD_DHCP=y # CONFIG_CMD_NFS is not set +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y diff --git a/configs/vct_platinumavc_onenand_small_defconfig b/configs/vct_platinumavc_onenand_small_defconfig index 98b5ea217c..bdc286479f 100644 --- a/configs/vct_platinumavc_onenand_small_defconfig +++ b/configs/vct_platinumavc_onenand_small_defconfig @@ -19,4 +19,5 @@ CONFIG_SYS_PROMPT="$ " # CONFIG_CMD_NET is not set # CONFIG_CMD_NFS is not set # CONFIG_CMD_MISC is not set +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y diff --git a/configs/vct_premium_onenand_defconfig b/configs/vct_premium_onenand_defconfig index f5ed55a646..e7a0a49f22 100644 --- a/configs/vct_premium_onenand_defconfig +++ b/configs/vct_premium_onenand_defconfig @@ -13,6 +13,7 @@ CONFIG_CMD_DHCP=y CONFIG_CMD_PING=y CONFIG_CMD_SNTP=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_STORAGE=y diff --git a/configs/vct_premium_onenand_small_defconfig b/configs/vct_premium_onenand_small_defconfig index ff5e7a68cd..64f6dfb916 100644 --- a/configs/vct_premium_onenand_small_defconfig +++ b/configs/vct_premium_onenand_small_defconfig @@ -19,4 +19,5 @@ CONFIG_SYS_PROMPT="$ " # CONFIG_CMD_NET is not set # CONFIG_CMD_NFS is not set # CONFIG_CMD_MISC is not set +CONFIG_CMD_UBI=y CONFIG_SYS_NS16550=y diff --git a/configs/vexpress_aemv8a_dram_defconfig b/configs/vexpress_aemv8a_dram_defconfig index 15a7f6fd22..59fe412429 100644 --- a/configs/vexpress_aemv8a_dram_defconfig +++ b/configs/vexpress_aemv8a_dram_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_TARGET_VEXPRESS64_BASE_FVP_DRAM=y CONFIG_SYS_MALLOC_F_LEN=0x2000 +CONFIG_IDENT_STRING=" vexpress_aemv8a" CONFIG_BOOTDELAY=1 CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="VExpress64# " diff --git a/configs/vexpress_aemv8a_juno_defconfig b/configs/vexpress_aemv8a_juno_defconfig index 6930c1c07c..e7a03695cf 100644 --- a/configs/vexpress_aemv8a_juno_defconfig +++ b/configs/vexpress_aemv8a_juno_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_TARGET_VEXPRESS64_JUNO=y CONFIG_SYS_MALLOC_F_LEN=0x2000 +CONFIG_IDENT_STRING=" vexpress_aemv8a" CONFIG_BOOTDELAY=1 CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="VExpress64# " diff --git a/configs/vexpress_aemv8a_semi_defconfig b/configs/vexpress_aemv8a_semi_defconfig index cb04d195d3..7e5b53fd73 100644 --- a/configs/vexpress_aemv8a_semi_defconfig +++ b/configs/vexpress_aemv8a_semi_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_TARGET_VEXPRESS64_BASE_FVP=y CONFIG_SYS_MALLOC_F_LEN=0x2000 +CONFIG_IDENT_STRING=" vexpress_aemv8a" CONFIG_BOOTDELAY=1 CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="VExpress64# " diff --git a/configs/vf610twr_defconfig b/configs/vf610twr_defconfig index d196738d19..5794c28679 100644 --- a/configs/vf610twr_defconfig +++ b/configs/vf610twr_defconfig @@ -15,6 +15,7 @@ CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_OF_CONTROL=y CONFIG_DM=y CONFIG_DM_GPIO=y diff --git a/configs/vf610twr_nand_defconfig b/configs/vf610twr_nand_defconfig index faed3e0b32..60d0126508 100644 --- a/configs/vf610twr_nand_defconfig +++ b/configs/vf610twr_nand_defconfig @@ -15,6 +15,7 @@ CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y CONFIG_CMD_FAT=y +CONFIG_CMD_UBI=y CONFIG_OF_CONTROL=y CONFIG_DM=y CONFIG_DM_GPIO=y diff --git a/configs/wandboard_defconfig b/configs/wandboard_defconfig index d4652703c3..5a91de4a95 100644 --- a/configs/wandboard_defconfig +++ b/configs/wandboard_defconfig @@ -1,8 +1,17 @@ CONFIG_ARM=y CONFIG_ARCH_MX6=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_TARGET_WANDBOARD=y -CONFIG_SPL=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,MX6QDL" +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/warp7_secure_defconfig b/configs/warp7_secure_defconfig index 34fcdea1e3..b6458d1874 100644 --- a/configs/warp7_secure_defconfig +++ b/configs/warp7_secure_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_ARCH_MX7=y CONFIG_TARGET_WARP7=y +CONFIG_ARMV7_BOOT_SEC_DEFAULT=y # CONFIG_ARMV7_VIRT is not set CONFIG_IMX_RDC=y CONFIG_IMX_BOOTAUX=y @@ -24,13 +25,12 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_USB=y +CONFIG_USB_EHCI_HCD=y +CONFIG_MXC_USB_OTG_HACTIVE=y CONFIG_USB_GADGET=y CONFIG_CI_UDC=y CONFIG_USB_GADGET_DOWNLOAD=y CONFIG_G_DNL_MANUFACTURER="FSL" CONFIG_G_DNL_VENDOR_NUM=0x0525 CONFIG_G_DNL_PRODUCT_NUM=0xa4a5 -CONFIG_USB_EHCI_HCD=y -CONFIG_MXC_USB_OTG_HACTIVE=y CONFIG_OF_LIBFDT=y -CONFIG_ARMV7_BOOT_SEC_DEFAULT=y diff --git a/configs/woodburn_sd_defconfig b/configs/woodburn_sd_defconfig index 3b381302e6..379d7fa501 100644 --- a/configs/woodburn_sd_defconfig +++ b/configs/woodburn_sd_defconfig @@ -1,8 +1,14 @@ CONFIG_ARM=y CONFIG_TARGET_WOODBURN_SD=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/woodburn/imximage.cfg" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="woodburn U-Boot > " CONFIG_CMD_MMC=y diff --git a/configs/work_92105_defconfig b/configs/work_92105_defconfig index 0c2fb997e0..d5e5b38e25 100644 --- a/configs/work_92105_defconfig +++ b/configs/work_92105_defconfig @@ -1,9 +1,13 @@ CONFIG_ARM=y CONFIG_TARGET_WORK_92105=y -CONFIG_SPL=y -CONFIG_SPL_SYS_MALLOC_SIMPLE=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_NAND_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_BOOTDELAY=3 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y +CONFIG_SPL_SYS_MALLOC_SIMPLE=y CONFIG_HUSH_PARSER=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set diff --git a/configs/x600_defconfig b/configs/x600_defconfig index dc4f42b687..47579a5684 100644 --- a/configs/x600_defconfig +++ b/configs/x600_defconfig @@ -1,7 +1,12 @@ CONFIG_ARM=y CONFIG_TARGET_X600=y -CONFIG_SPL=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_IDENT_STRING="-SPEAr" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y +CONFIG_SPL_NOR_SUPPORT=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="X600> " CONFIG_AUTOBOOT_KEYED=y @@ -18,6 +23,7 @@ CONFIG_CMD_PING=y CONFIG_CMD_CACHE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_UBI=y CONFIG_SYS_I2C_DW=y CONFIG_NETDEVICES=y CONFIG_ETH_DESIGNWARE=y diff --git a/configs/xfi3_defconfig b/configs/xfi3_defconfig index bc0828cc08..9f0c378914 100644 --- a/configs/xfi3_defconfig +++ b/configs/xfi3_defconfig @@ -1,8 +1,12 @@ CONFIG_ARM=y CONFIG_TARGET_XFI3=y -CONFIG_SPL=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_BOOTDELAY=3 CONFIG_VERSION_VARIABLE=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set diff --git a/configs/xilinx_zynqmp_ep_defconfig b/configs/xilinx_zynqmp_ep_defconfig index 5f285d8150..bd8b906a64 100644 --- a/configs/xilinx_zynqmp_ep_defconfig +++ b/configs/xilinx_zynqmp_ep_defconfig @@ -5,11 +5,12 @@ CONFIG_SYS_MALLOC_F_LEN=0x8000 CONFIG_ZYNQMP_USB=y CONFIG_SYS_TEXT_BASE=0x8000000 CONFIG_DEFAULT_DEVICE_TREE="zynqmp-ep108" -CONFIG_SPL=y -CONFIG_SPL_SYS_MALLOC_SIMPLE=y +CONFIG_AHCI=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_SPL_LOAD_FIT=y +CONFIG_SPL=y +CONFIG_SPL_SYS_MALLOC_SIMPLE=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="ZynqMP> " # CONFIG_CMD_CONSOLE is not set @@ -46,6 +47,8 @@ CONFIG_NET_RANDOM_ETHADDR=y CONFIG_SPL_DM=y CONFIG_SPL_DM_SEQ_ALIAS=y CONFIG_BLK=y +CONFIG_FPGA_XILINX=y +CONFIG_FPGA_ZYNQMPPL=y CONFIG_DM_GPIO=y CONFIG_DM_I2C=y CONFIG_SYS_I2C_CADENCE=y diff --git a/configs/xilinx_zynqmp_zc1751_xm015_dc1_defconfig b/configs/xilinx_zynqmp_zc1751_xm015_dc1_defconfig index 059db84e31..6afacd2d91 100644 --- a/configs/xilinx_zynqmp_zc1751_xm015_dc1_defconfig +++ b/configs/xilinx_zynqmp_zc1751_xm015_dc1_defconfig @@ -3,13 +3,14 @@ CONFIG_SYS_CONFIG_NAME="xilinx_zynqmp_zc1751_xm015_dc1" CONFIG_ARCH_ZYNQMP=y CONFIG_SYS_MALLOC_F_LEN=0x8000 CONFIG_ZYNQMP_USB=y +CONFIG_IDENT_STRING=" Xilinx ZynqMP ZC1751 xm015 dc1" CONFIG_SYS_TEXT_BASE=0x8000000 CONFIG_DEFAULT_DEVICE_TREE="zynqmp-zc1751-xm015-dc1" -CONFIG_SPL=y -CONFIG_SPL_SYS_MALLOC_SIMPLE=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_SPL_LOAD_FIT=y +CONFIG_SPL=y +CONFIG_SPL_SYS_MALLOC_SIMPLE=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="ZynqMP> " # CONFIG_CMD_IMLS is not set @@ -37,6 +38,8 @@ CONFIG_NET_RANDOM_ETHADDR=y CONFIG_SPL_DM=y CONFIG_SPL_DM_SEQ_ALIAS=y CONFIG_BLK=y +CONFIG_FPGA_XILINX=y +CONFIG_FPGA_ZYNQMPPL=y CONFIG_DM_GPIO=y CONFIG_DM_I2C=y CONFIG_SYS_I2C_CADENCE=y diff --git a/configs/xilinx_zynqmp_zc1751_xm016_dc2_defconfig b/configs/xilinx_zynqmp_zc1751_xm016_dc2_defconfig index 0620646e41..4068c28818 100644 --- a/configs/xilinx_zynqmp_zc1751_xm016_dc2_defconfig +++ b/configs/xilinx_zynqmp_zc1751_xm016_dc2_defconfig @@ -2,14 +2,18 @@ CONFIG_ARM=y CONFIG_SYS_CONFIG_NAME="xilinx_zynqmp_zc1751_xm016_dc2" CONFIG_ARCH_ZYNQMP=y CONFIG_SYS_MALLOC_F_LEN=0x8000 +# CONFIG_SPL_FAT_SUPPORT is not set +# CONFIG_SPL_LIBDISK_SUPPORT is not set +# CONFIG_SPL_MMC_SUPPORT is not set CONFIG_ZYNQMP_USB=y +CONFIG_IDENT_STRING=" Xilinx ZynqMP ZC1751 xm016 dc2" CONFIG_SYS_TEXT_BASE=0x8000000 CONFIG_DEFAULT_DEVICE_TREE="zynqmp-zc1751-xm016-dc2" -CONFIG_SPL=y -CONFIG_SPL_SYS_MALLOC_SIMPLE=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_SPL_LOAD_FIT=y +CONFIG_SPL=y +CONFIG_SPL_SYS_MALLOC_SIMPLE=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="ZynqMP> " # CONFIG_CMD_IMLS is not set @@ -37,6 +41,8 @@ CONFIG_NET_RANDOM_ETHADDR=y CONFIG_SPL_DM=y CONFIG_SPL_DM_SEQ_ALIAS=y CONFIG_BLK=y +CONFIG_FPGA_XILINX=y +CONFIG_FPGA_ZYNQMPPL=y CONFIG_DM_GPIO=y CONFIG_DM_I2C=y CONFIG_SYS_I2C_CADENCE=y diff --git a/configs/xilinx_zynqmp_zc1751_xm018_dc4_defconfig b/configs/xilinx_zynqmp_zc1751_xm018_dc4_defconfig index 3ac22cb087..c717f043bb 100644 --- a/configs/xilinx_zynqmp_zc1751_xm018_dc4_defconfig +++ b/configs/xilinx_zynqmp_zc1751_xm018_dc4_defconfig @@ -1,14 +1,14 @@ CONFIG_ARM=y -CONFIG_SYS_CONFIG_NAME="xilinx_zynqmp_zc1751_xm018_dc4" CONFIG_ARCH_ZYNQMP=y CONFIG_SYS_MALLOC_F_LEN=0x8000 +CONFIG_IDENT_STRING=" Xilinx ZynqMP ZC1751 xm018 dc4" CONFIG_SYS_TEXT_BASE=0x8000000 CONFIG_DEFAULT_DEVICE_TREE="zynqmp-zc1751-xm018-dc4" -CONFIG_SPL=y -CONFIG_SPL_SYS_MALLOC_SIMPLE=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_SPL_LOAD_FIT=y +CONFIG_SPL=y +CONFIG_SPL_SYS_MALLOC_SIMPLE=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="ZynqMP> " # CONFIG_CMD_IMLS is not set @@ -33,6 +33,8 @@ CONFIG_NET_RANDOM_ETHADDR=y CONFIG_SPL_DM=y CONFIG_SPL_DM_SEQ_ALIAS=y CONFIG_BLK=y +CONFIG_FPGA_XILINX=y +CONFIG_FPGA_ZYNQMPPL=y CONFIG_DM_GPIO=y CONFIG_DM_I2C=y CONFIG_SYS_I2C_CADENCE=y diff --git a/configs/xilinx_zynqmp_zc1751_xm019_dc5_defconfig b/configs/xilinx_zynqmp_zc1751_xm019_dc5_defconfig index 0e82bf2fcf..1a27bd06ab 100644 --- a/configs/xilinx_zynqmp_zc1751_xm019_dc5_defconfig +++ b/configs/xilinx_zynqmp_zc1751_xm019_dc5_defconfig @@ -2,13 +2,14 @@ CONFIG_ARM=y CONFIG_SYS_CONFIG_NAME="xilinx_zynqmp_zc1751_xm019_dc5" CONFIG_ARCH_ZYNQMP=y CONFIG_SYS_MALLOC_F_LEN=0x8000 +CONFIG_IDENT_STRING=" Xilinx ZynqMP ZC1751 xm019 dc5" CONFIG_SYS_TEXT_BASE=0x8000000 CONFIG_DEFAULT_DEVICE_TREE="zynqmp-zc1751-xm019-dc5" -CONFIG_SPL=y -CONFIG_SPL_SYS_MALLOC_SIMPLE=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_SPL_LOAD_FIT=y +CONFIG_SPL=y +CONFIG_SPL_SYS_MALLOC_SIMPLE=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="ZynqMP> " # CONFIG_CMD_IMLS is not set @@ -32,6 +33,8 @@ CONFIG_OF_EMBED=y CONFIG_SPL_DM=y CONFIG_SPL_DM_SEQ_ALIAS=y CONFIG_BLK=y +CONFIG_FPGA_XILINX=y +CONFIG_FPGA_ZYNQMPPL=y CONFIG_DM_GPIO=y CONFIG_DM_I2C=y CONFIG_SYS_I2C_CADENCE=y diff --git a/configs/xilinx_zynqmp_zcu102_defconfig b/configs/xilinx_zynqmp_zcu102_defconfig index 07e29fbe4c..90b5ff6c76 100644 --- a/configs/xilinx_zynqmp_zcu102_defconfig +++ b/configs/xilinx_zynqmp_zcu102_defconfig @@ -3,13 +3,15 @@ CONFIG_SYS_CONFIG_NAME="xilinx_zynqmp_zcu102" CONFIG_ARCH_ZYNQMP=y CONFIG_SYS_MALLOC_F_LEN=0x8000 CONFIG_ZYNQMP_USB=y +CONFIG_IDENT_STRING=" Xilinx ZynqMP ZCU102" CONFIG_SYS_TEXT_BASE=0x8000000 CONFIG_DEFAULT_DEVICE_TREE="zynqmp-zcu102" -CONFIG_SPL=y -CONFIG_SPL_SYS_MALLOC_SIMPLE=y +CONFIG_AHCI=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_SPL_LOAD_FIT=y +CONFIG_SPL=y +CONFIG_SPL_SYS_MALLOC_SIMPLE=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="ZynqMP> " # CONFIG_CMD_IMLS is not set @@ -37,6 +39,8 @@ CONFIG_NET_RANDOM_ETHADDR=y CONFIG_SPL_DM=y CONFIG_SPL_DM_SEQ_ALIAS=y CONFIG_BLK=y +CONFIG_FPGA_XILINX=y +CONFIG_FPGA_ZYNQMPPL=y CONFIG_DM_GPIO=y CONFIG_DM_MMC=y CONFIG_DM_MMC_OPS=y diff --git a/configs/xilinx_zynqmp_zcu102_revB_defconfig b/configs/xilinx_zynqmp_zcu102_revB_defconfig index 72679db144..5a0d686931 100644 --- a/configs/xilinx_zynqmp_zcu102_revB_defconfig +++ b/configs/xilinx_zynqmp_zcu102_revB_defconfig @@ -3,13 +3,15 @@ CONFIG_SYS_CONFIG_NAME="xilinx_zynqmp_zcu102" CONFIG_ARCH_ZYNQMP=y CONFIG_SYS_MALLOC_F_LEN=0x8000 CONFIG_ZYNQMP_USB=y +CONFIG_IDENT_STRING=" Xilinx ZynqMP ZCU102" CONFIG_SYS_TEXT_BASE=0x8000000 CONFIG_DEFAULT_DEVICE_TREE="zynqmp-zcu102-revB" -CONFIG_SPL=y -CONFIG_SPL_SYS_MALLOC_SIMPLE=y +CONFIG_AHCI=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_SPL_LOAD_FIT=y +CONFIG_SPL=y +CONFIG_SPL_SYS_MALLOC_SIMPLE=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="ZynqMP> " # CONFIG_CMD_IMLS is not set @@ -37,6 +39,8 @@ CONFIG_NET_RANDOM_ETHADDR=y CONFIG_SPL_DM=y CONFIG_SPL_DM_SEQ_ALIAS=y CONFIG_BLK=y +CONFIG_FPGA_XILINX=y +CONFIG_FPGA_ZYNQMPPL=y CONFIG_DM_GPIO=y CONFIG_DM_MMC=y CONFIG_DM_MMC_OPS=y diff --git a/configs/xpress_spl_defconfig b/configs/xpress_spl_defconfig index 39406d1b2c..838515d239 100644 --- a/configs/xpress_spl_defconfig +++ b/configs/xpress_spl_defconfig @@ -1,9 +1,18 @@ CONFIG_ARM=y CONFIG_ARCH_MX6=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_TARGET_XPRESS=y -CONFIG_SPL=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set diff --git a/configs/zc5202_defconfig b/configs/zc5202_defconfig index cd5cd7346a..8d3f1dfff1 100644 --- a/configs/zc5202_defconfig +++ b/configs/zc5202_defconfig @@ -1,9 +1,20 @@ CONFIG_ARM=y CONFIG_ARCH_MX6=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_TARGET_ZC5202=y -CONFIG_SPL=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,MX6Q" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y CONFIG_CMD_I2C=y diff --git a/configs/zc5601_defconfig b/configs/zc5601_defconfig index 4ef7ca1aa0..a72c0e923d 100644 --- a/configs/zc5601_defconfig +++ b/configs/zc5601_defconfig @@ -1,9 +1,20 @@ CONFIG_ARM=y CONFIG_ARCH_MX6=y +CONFIG_SPL_GPIO_SUPPORT=y +CONFIG_SPL_LIBCOMMON_SUPPORT=y +CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_TARGET_ZC5601=y -CONFIG_SPL=y +CONFIG_SPL_EXT_SUPPORT=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_LIBDISK_SUPPORT=y +CONFIG_SPL_MMC_SUPPORT=y +CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SPI_FLASH_SUPPORT=y +CONFIG_SPL_SPI_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,MX6Q" CONFIG_BOOTDELAY=3 +CONFIG_SPL=y CONFIG_CMD_MMC=y CONFIG_CMD_SF=y CONFIG_CMD_I2C=y diff --git a/configs/zynq_microzed_defconfig b/configs/zynq_microzed_defconfig index 3bb090a980..8726e7bed6 100644 --- a/configs/zynq_microzed_defconfig +++ b/configs/zynq_microzed_defconfig @@ -1,11 +1,11 @@ CONFIG_ARM=y CONFIG_ARCH_ZYNQ=y CONFIG_DEFAULT_DEVICE_TREE="zynq-microzed" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_FIT_SIGNATURE=y CONFIG_SYS_NO_FLASH=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="Zynq> " # CONFIG_CMD_IMLS is not set diff --git a/configs/zynq_picozed_defconfig b/configs/zynq_picozed_defconfig index 54161412ee..8ae7b591e6 100644 --- a/configs/zynq_picozed_defconfig +++ b/configs/zynq_picozed_defconfig @@ -1,8 +1,8 @@ CONFIG_ARM=y CONFIG_ARCH_ZYNQ=y CONFIG_DEFAULT_DEVICE_TREE="zynq-picozed" -CONFIG_SPL=y CONFIG_SYS_NO_FLASH=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="Zynq> " # CONFIG_CMD_IMLS is not set diff --git a/configs/zynq_zc702_defconfig b/configs/zynq_zc702_defconfig index 817ccc1e80..9f5acbf658 100644 --- a/configs/zynq_zc702_defconfig +++ b/configs/zynq_zc702_defconfig @@ -2,11 +2,11 @@ CONFIG_ARM=y CONFIG_SYS_CONFIG_NAME="zynq_zc70x" CONFIG_ARCH_ZYNQ=y CONFIG_DEFAULT_DEVICE_TREE="zynq-zc702" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_FIT_SIGNATURE=y CONFIG_SYS_NO_FLASH=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="Zynq> " # CONFIG_CMD_IMLS is not set diff --git a/configs/zynq_zc706_defconfig b/configs/zynq_zc706_defconfig index d9c1d64ea4..1a44c20af7 100644 --- a/configs/zynq_zc706_defconfig +++ b/configs/zynq_zc706_defconfig @@ -2,11 +2,11 @@ CONFIG_ARM=y CONFIG_SYS_CONFIG_NAME="zynq_zc70x" CONFIG_ARCH_ZYNQ=y CONFIG_DEFAULT_DEVICE_TREE="zynq-zc706" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_FIT_SIGNATURE=y CONFIG_SYS_NO_FLASH=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="Zynq> " # CONFIG_CMD_IMLS is not set diff --git a/configs/zynq_zc770_xm010_defconfig b/configs/zynq_zc770_xm010_defconfig index 9664b92425..a1a2fe41e3 100644 --- a/configs/zynq_zc770_xm010_defconfig +++ b/configs/zynq_zc770_xm010_defconfig @@ -1,12 +1,12 @@ CONFIG_ARM=y CONFIG_ARCH_ZYNQ=y CONFIG_DEFAULT_DEVICE_TREE="zynq-zc770-xm010" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_FIT_SIGNATURE=y CONFIG_SYS_EXTRA_OPTIONS="ZC770_XM010" CONFIG_SYS_NO_FLASH=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="Zynq> " # CONFIG_CMD_IMLS is not set diff --git a/configs/zynq_zc770_xm011_defconfig b/configs/zynq_zc770_xm011_defconfig index 98a348e07b..b841fdce35 100644 --- a/configs/zynq_zc770_xm011_defconfig +++ b/configs/zynq_zc770_xm011_defconfig @@ -1,12 +1,12 @@ CONFIG_ARM=y CONFIG_ARCH_ZYNQ=y CONFIG_DEFAULT_DEVICE_TREE="zynq-zc770-xm011" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_FIT_SIGNATURE=y CONFIG_SYS_EXTRA_OPTIONS="ZC770_XM011" CONFIG_SYS_NO_FLASH=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="Zynq> " # CONFIG_CMD_IMLS is not set diff --git a/configs/zynq_zc770_xm012_defconfig b/configs/zynq_zc770_xm012_defconfig index 00e2e6f92f..3436c9d9a7 100644 --- a/configs/zynq_zc770_xm012_defconfig +++ b/configs/zynq_zc770_xm012_defconfig @@ -1,11 +1,11 @@ CONFIG_ARM=y CONFIG_ARCH_ZYNQ=y CONFIG_DEFAULT_DEVICE_TREE="zynq-zc770-xm012" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_FIT_SIGNATURE=y CONFIG_SYS_EXTRA_OPTIONS="ZC770_XM012" +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="Zynq> " CONFIG_CMD_GPIO=y diff --git a/configs/zynq_zc770_xm013_defconfig b/configs/zynq_zc770_xm013_defconfig index 1b78fdffcf..7a43e68f05 100644 --- a/configs/zynq_zc770_xm013_defconfig +++ b/configs/zynq_zc770_xm013_defconfig @@ -1,12 +1,12 @@ CONFIG_ARM=y CONFIG_ARCH_ZYNQ=y CONFIG_DEFAULT_DEVICE_TREE="zynq-zc770-xm013" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_FIT_SIGNATURE=y CONFIG_SYS_EXTRA_OPTIONS="ZC770_XM013" CONFIG_SYS_NO_FLASH=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="Zynq> " # CONFIG_CMD_IMLS is not set diff --git a/configs/zynq_zed_defconfig b/configs/zynq_zed_defconfig index 22d3419280..0f4e30884a 100644 --- a/configs/zynq_zed_defconfig +++ b/configs/zynq_zed_defconfig @@ -1,11 +1,11 @@ CONFIG_ARM=y CONFIG_ARCH_ZYNQ=y CONFIG_DEFAULT_DEVICE_TREE="zynq-zed" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_FIT_SIGNATURE=y CONFIG_SYS_NO_FLASH=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="Zynq> " # CONFIG_CMD_IMLS is not set diff --git a/configs/zynq_zybo_defconfig b/configs/zynq_zybo_defconfig index 4b85cdba16..e5ecb79212 100644 --- a/configs/zynq_zybo_defconfig +++ b/configs/zynq_zybo_defconfig @@ -2,11 +2,11 @@ CONFIG_ARM=y CONFIG_SYS_CONFIG_NAME="zynq_zybo" CONFIG_ARCH_ZYNQ=y CONFIG_DEFAULT_DEVICE_TREE="zynq-zybo" -CONFIG_SPL=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_FIT_SIGNATURE=y CONFIG_SYS_NO_FLASH=y +CONFIG_SPL=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="Zynq> " # CONFIG_CMD_IMLS is not set diff --git a/doc/README.boston b/doc/README.boston new file mode 100644 index 0000000000..38f6710e4a --- /dev/null +++ b/doc/README.boston @@ -0,0 +1,58 @@ +MIPS Boston Development Board + +--------- + About +--------- + +The MIPS Boston development board is built around an FPGA & 3 PCIe controllers, +one of which is connected to an Intel EG20T Platform Controller Hub which +provides most connectivity to the board. It is used during the development & +testing of both new CPUs and the software support for them. It is essentially +the successor of the older MIPS Malta board. + +-------- + QEMU +-------- + +U-Boot can be run on a currently out-of-tree branch of QEMU with support for +the Boston board added. This QEMU code can currently be found in the "boston" +branch of git://git.linux-mips.org/pub/scm/paul/qemu.git and used like so: + + $ git clone git://git.linux-mips.org/pub/scm/paul/qemu.git -b boston + $ cd qemu + $ ./configure --target-list=mips64el-softmmu + $ make + $ ./mips64el-softmmu/qemu-system-mips64el -M boston -m 2G \ + -bios u-boot.bin -serial stdio + +Please note that QEMU will default to emulating the I6400 CPU which implements +the MIPS64r6 ISA, and at the time of writing doesn't implement any earlier CPUs +with support for the CPS features the Boston board relies upon. You will +therefore need to configure U-Boot to build for MIPSr6 in order to obtain a +binary that will work in QEMU. + +------------- + Toolchain +------------- + +If building for MIPSr6 then you will need a toolchain including GCC 5.x or +newer, or the Codescape toolchain available for download from Imagination +Technologies: + + http://codescape-mips-sdk.imgtec.com/components/toolchain/2015.06-05/ + +The "IMG GNU Linux Toolchain" is capable of building for all current MIPS ISAs, +architecture revisions & both endiannesses. + +-------- + TODO +-------- + + - AHCI support + - CPU driver + - Exception handling (+UHI?) + - Flash support + - IOCU support + - L2 cache support + - More general LCD display driver + - Multi-arch-variant multi-endian fat binary diff --git a/drivers/Kconfig b/drivers/Kconfig index 4f84469955..4c555a0c1f 100644 --- a/drivers/Kconfig +++ b/drivers/Kconfig @@ -20,6 +20,8 @@ source "drivers/dfu/Kconfig" source "drivers/dma/Kconfig" +source "drivers/fpga/Kconfig" + source "drivers/gpio/Kconfig" source "drivers/hwmon/Kconfig" diff --git a/drivers/Makefile b/drivers/Makefile index 7861d34603..ca98273134 100644 --- a/drivers/Makefile +++ b/drivers/Makefile @@ -40,8 +40,22 @@ obj-$(CONFIG_OMAP_USB_PHY) += usb/phy/ obj-$(CONFIG_SPL_SATA_SUPPORT) += block/ obj-$(CONFIG_SPL_USB_HOST_SUPPORT) += block/ obj-$(CONFIG_SPL_MMC_SUPPORT) += block/ +endif + +ifdef CONFIG_TPL_BUILD + +obj-$(CONFIG_TPL_I2C_SUPPORT) += i2c/ +obj-$(CONFIG_TPL_DRIVERS_MISC_SUPPORT) += misc/ sysreset/ +obj-$(CONFIG_TPL_MMC_SUPPORT) += mmc/ +obj-$(CONFIG_TPL_MPC8XXX_INIT_DDR_SUPPORT) += ddr/fsl/ +obj-$(CONFIG_TPL_NAND_SUPPORT) += mtd/nand/ +obj-$(CONFIG_TPL_SERIAL_SUPPORT) += serial/ +obj-$(CONFIG_TPL_SPI_FLASH_SUPPORT) += mtd/spi/ +obj-$(CONFIG_TPL_SPI_SUPPORT) += spi/ + +endif -else +ifeq ($(CONFIG_SPL_BUILD)$(CONFIG_TPL_BUILD),) obj-y += adc/ obj-$(CONFIG_DM_DEMO) += demo/ diff --git a/drivers/block/ahci.c b/drivers/block/ahci.c index e3e783a74c..2e1ddf9dac 100644 --- a/drivers/block/ahci.c +++ b/drivers/block/ahci.c @@ -13,7 +13,7 @@ #include <dm.h> #include <pci.h> #include <asm/processor.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <malloc.h> #include <memalign.h> diff --git a/drivers/block/dwc_ahsata.c b/drivers/block/dwc_ahsata.c index 6056fe5dfd..c306e927db 100644 --- a/drivers/block/dwc_ahsata.c +++ b/drivers/block/dwc_ahsata.c @@ -13,7 +13,7 @@ #include <common.h> #include <malloc.h> #include <linux/ctype.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <linux/bitops.h> #include <asm/arch/clock.h> diff --git a/drivers/block/pata_bfin.c b/drivers/block/pata_bfin.c index 26569d70aa..36a15125ad 100644 --- a/drivers/block/pata_bfin.c +++ b/drivers/block/pata_bfin.c @@ -14,7 +14,7 @@ #include <asm/byteorder.h> #include <asm/clock.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/portmux.h> #include <asm/mach-common/bits/pata.h> #include <ata.h> diff --git a/drivers/block/sandbox.c b/drivers/block/sandbox.c index ac28f83472..36c2ff3007 100644 --- a/drivers/block/sandbox.c +++ b/drivers/block/sandbox.c @@ -12,7 +12,7 @@ #include <os.h> #include <malloc.h> #include <sandboxblockdev.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <dm/device-internal.h> DECLARE_GLOBAL_DATA_PTR; diff --git a/drivers/block/sata_dwc.c b/drivers/block/sata_dwc.c index b14985a027..a226ca2dec 100644 --- a/drivers/block/sata_dwc.c +++ b/drivers/block/sata_dwc.c @@ -26,7 +26,7 @@ #include <command.h> #include <pci.h> #include <asm/processor.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <malloc.h> #include <ata.h> diff --git a/drivers/block/sata_mv.c b/drivers/block/sata_mv.c index 88249341d6..414d2dc464 100644 --- a/drivers/block/sata_mv.c +++ b/drivers/block/sata_mv.c @@ -37,7 +37,7 @@ #include <libata.h> #include <malloc.h> #include <sata.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <linux/mbus.h> diff --git a/drivers/block/sym53c8xx.c b/drivers/block/sym53c8xx.c index 5daede7279..50043e68af 100644 --- a/drivers/block/sym53c8xx.c +++ b/drivers/block/sym53c8xx.c @@ -284,9 +284,8 @@ void scsi_low_level_init(int busdevfunc) */ unsigned long swap_script(unsigned long val) { - unsigned long tmp; - tmp = ((val>>24)&0xff) | ((val>>8)&0xff00) | ((val<<8)&0xff0000) | ((val<<24)&0xff000000); - return tmp; + return ((val >> 24) & 0xff) | ((val >> 8) & 0xff00) | + ((val << 8) & 0xff0000) | ((val << 24) & 0xff000000); } diff --git a/drivers/clk/Kconfig b/drivers/clk/Kconfig index 8f3b96a973..c05ce2a9ef 100644 --- a/drivers/clk/Kconfig +++ b/drivers/clk/Kconfig @@ -20,6 +20,14 @@ config SPL_CLK setting up clocks within SPL, and allows the same drivers to be used as U-Boot proper. +config CLK_BOSTON + def_bool y if TARGET_BOSTON + depends on CLK + select REGMAP + select SYSCON + help + Enable this to support the clocks + source "drivers/clk/tegra/Kconfig" source "drivers/clk/uniphier/Kconfig" source "drivers/clk/exynos/Kconfig" diff --git a/drivers/clk/Makefile b/drivers/clk/Makefile index 778d7486f0..40a5e8cae8 100644 --- a/drivers/clk/Makefile +++ b/drivers/clk/Makefile @@ -15,3 +15,4 @@ obj-y += tegra/ obj-$(CONFIG_CLK_UNIPHIER) += uniphier/ obj-$(CONFIG_CLK_EXYNOS) += exynos/ obj-$(CONFIG_CLK_AT91) += at91/ +obj-$(CONFIG_CLK_BOSTON) += clk_boston.o diff --git a/drivers/clk/clk_boston.c b/drivers/clk/clk_boston.c new file mode 100644 index 0000000000..78f1b759d8 --- /dev/null +++ b/drivers/clk/clk_boston.c @@ -0,0 +1,97 @@ +/* + * Copyright (C) 2016 Imagination Technologies + * + * SPDX-License-Identifier: GPL-2.0 + */ + +#include <common.h> +#include <clk-uclass.h> +#include <dm.h> +#include <dt-bindings/clock/boston-clock.h> +#include <regmap.h> +#include <syscon.h> + +struct clk_boston { + struct regmap *regmap; +}; + +#define BOSTON_PLAT_MMCMDIV 0x30 +# define BOSTON_PLAT_MMCMDIV_CLK0DIV (0xff << 0) +# define BOSTON_PLAT_MMCMDIV_INPUT (0xff << 8) +# define BOSTON_PLAT_MMCMDIV_MUL (0xff << 16) +# define BOSTON_PLAT_MMCMDIV_CLK1DIV (0xff << 24) + +static uint32_t ext_field(uint32_t val, uint32_t mask) +{ + return (val & mask) >> (ffs(mask) - 1); +} + +static ulong clk_boston_get_rate(struct clk *clk) +{ + struct clk_boston *state = dev_get_platdata(clk->dev); + uint32_t in_rate, mul, div; + uint mmcmdiv; + int err; + + err = regmap_read(state->regmap, BOSTON_PLAT_MMCMDIV, &mmcmdiv); + if (err) + return 0; + + in_rate = ext_field(mmcmdiv, BOSTON_PLAT_MMCMDIV_INPUT); + mul = ext_field(mmcmdiv, BOSTON_PLAT_MMCMDIV_MUL); + + switch (clk->id) { + case BOSTON_CLK_SYS: + div = ext_field(mmcmdiv, BOSTON_PLAT_MMCMDIV_CLK0DIV); + break; + case BOSTON_CLK_CPU: + div = ext_field(mmcmdiv, BOSTON_PLAT_MMCMDIV_CLK1DIV); + break; + default: + return 0; + } + + return (in_rate * mul * 1000000) / div; +} + +const struct clk_ops clk_boston_ops = { + .get_rate = clk_boston_get_rate, +}; + +static int clk_boston_ofdata_to_platdata(struct udevice *dev) +{ + struct clk_boston *state = dev_get_platdata(dev); + struct udevice *syscon; + int err; + + err = uclass_get_device_by_phandle(UCLASS_SYSCON, dev, + "regmap", &syscon); + if (err) { + error("unable to find syscon device\n"); + return err; + } + + state->regmap = syscon_get_regmap(syscon); + if (!state->regmap) { + error("unable to find regmap\n"); + return -ENODEV; + } + + return 0; +} + +static const struct udevice_id clk_boston_match[] = { + { + .compatible = "img,boston-clock", + }, + { /* sentinel */ } +}; + +U_BOOT_DRIVER(clk_boston) = { + .name = "boston_clock", + .id = UCLASS_CLK, + .of_match = clk_boston_match, + .ofdata_to_platdata = clk_boston_ofdata_to_platdata, + .platdata_auto_alloc_size = sizeof(struct clk_boston), + .ops = &clk_boston_ops, +}; diff --git a/drivers/clk/rockchip/clk_rk3288.c b/drivers/clk/rockchip/clk_rk3288.c index c07203d84b..bd71a96927 100644 --- a/drivers/clk/rockchip/clk_rk3288.c +++ b/drivers/clk/rockchip/clk_rk3288.c @@ -695,6 +695,8 @@ static ulong rk3288_clk_get_rate(struct clk *clk) case PCLK_I2C4: case PCLK_I2C5: return gclk_rate; + case PCLK_PWM: + return PD_BUS_PCLK_HZ; default: return -ENOENT; } diff --git a/drivers/clk/rockchip/clk_rk3399.c b/drivers/clk/rockchip/clk_rk3399.c index 0b4ea828f6..ea0ce2aab1 100644 --- a/drivers/clk/rockchip/clk_rk3399.c +++ b/drivers/clk/rockchip/clk_rk3399.c @@ -23,6 +23,10 @@ struct rk3399_clk_priv { ulong rate; }; +struct rk3399_pmuclk_priv { + struct rk3399_pmucru *pmucru; +}; + struct pll_div { u32 refdiv; u32 fbdiv; @@ -95,11 +99,11 @@ enum { /* PMUCRU_CLKSEL_CON2 */ I2C_DIV_CON_MASK = 0x7f, - I2C8_DIV_CON_SHIFT = 8, - I2C0_DIV_CON_SHIFT = 0, + CLK_I2C8_DIV_CON_SHIFT = 8, + CLK_I2C0_DIV_CON_SHIFT = 0, /* PMUCRU_CLKSEL_CON3 */ - I2C4_DIV_CON_SHIFT = 0, + CLK_I2C4_DIV_CON_SHIFT = 0, /* CLKSEL_CON0 */ ACLKM_CORE_L_DIV_CON_SHIFT = 8, @@ -507,6 +511,14 @@ void rk3399_configure_cpu(struct rk3399_cru *cru, (con >> CLK_I2C ##bus## _DIV_CON_SHIFT) & \ I2C_DIV_CON_MASK; +#define I2C_PMUCLK_REG_MASK(bus) \ + (I2C_DIV_CON_MASK << \ + CLK_I2C ##bus## _DIV_CON_SHIFT) + +#define I2C_PMUCLK_REG_VALUE(bus, clk_div) \ + ((clk_div - 1) << \ + CLK_I2C ##bus## _DIV_CON_SHIFT) + static ulong rk3399_i2c_get_clk(struct rk3399_cru *cru, ulong clk_id) { u32 div, con; @@ -754,7 +766,7 @@ static ulong rk3399_clk_set_rate(struct clk *clk, ulong rate) break; case DCLK_VOP0: case DCLK_VOP1: - rate = rk3399_vop_set_clk(priv->cru, clk->id, rate); + ret = rk3399_vop_set_clk(priv->cru, clk->id, rate); break; default: return -ENOENT; @@ -830,3 +842,160 @@ U_BOOT_DRIVER(clk_rk3399) = { .bind = rk3399_clk_bind, .probe = rk3399_clk_probe, }; + +static ulong rk3399_i2c_get_pmuclk(struct rk3399_pmucru *pmucru, ulong clk_id) +{ + u32 div, con; + + switch (clk_id) { + case SCLK_I2C0_PMU: + con = readl(&pmucru->pmucru_clksel[2]); + div = I2C_CLK_DIV_VALUE(con, 0); + break; + case SCLK_I2C4_PMU: + con = readl(&pmucru->pmucru_clksel[3]); + div = I2C_CLK_DIV_VALUE(con, 4); + break; + case SCLK_I2C8_PMU: + con = readl(&pmucru->pmucru_clksel[2]); + div = I2C_CLK_DIV_VALUE(con, 8); + break; + default: + printf("do not support this i2c bus\n"); + return -EINVAL; + } + + return DIV_TO_RATE(PPLL_HZ, div); +} + +static ulong rk3399_i2c_set_pmuclk(struct rk3399_pmucru *pmucru, ulong clk_id, + uint hz) +{ + int src_clk_div; + + src_clk_div = PPLL_HZ / hz; + assert(src_clk_div - 1 < 127); + + switch (clk_id) { + case SCLK_I2C0_PMU: + rk_clrsetreg(&pmucru->pmucru_clksel[2], I2C_PMUCLK_REG_MASK(0), + I2C_PMUCLK_REG_VALUE(0, src_clk_div)); + break; + case SCLK_I2C4_PMU: + rk_clrsetreg(&pmucru->pmucru_clksel[3], I2C_PMUCLK_REG_MASK(4), + I2C_PMUCLK_REG_VALUE(4, src_clk_div)); + break; + case SCLK_I2C8_PMU: + rk_clrsetreg(&pmucru->pmucru_clksel[2], I2C_PMUCLK_REG_MASK(8), + I2C_PMUCLK_REG_VALUE(8, src_clk_div)); + break; + default: + printf("do not support this i2c bus\n"); + return -EINVAL; + } + + return DIV_TO_RATE(PPLL_HZ, src_clk_div); +} + +static ulong rk3399_pwm_get_clk(struct rk3399_pmucru *pmucru) +{ + u32 div, con; + + /* PWM closk rate is same as pclk_pmu */ + con = readl(&pmucru->pmucru_clksel[0]); + div = con & PMU_PCLK_DIV_CON_MASK; + + return DIV_TO_RATE(PPLL_HZ, div); +} + +static ulong rk3399_pmuclk_get_rate(struct clk *clk) +{ + struct rk3399_pmuclk_priv *priv = dev_get_priv(clk->dev); + ulong rate = 0; + + switch (clk->id) { + case PCLK_RKPWM_PMU: + rate = rk3399_pwm_get_clk(priv->pmucru); + break; + case SCLK_I2C0_PMU: + case SCLK_I2C4_PMU: + case SCLK_I2C8_PMU: + rate = rk3399_i2c_get_pmuclk(priv->pmucru, clk->id); + break; + default: + return -ENOENT; + } + + return rate; +} + +static ulong rk3399_pmuclk_set_rate(struct clk *clk, ulong rate) +{ + struct rk3399_pmuclk_priv *priv = dev_get_priv(clk->dev); + ulong ret = 0; + + switch (clk->id) { + case SCLK_I2C0_PMU: + case SCLK_I2C4_PMU: + case SCLK_I2C8_PMU: + ret = rk3399_i2c_set_pmuclk(priv->pmucru, clk->id, rate); + break; + default: + return -ENOENT; + } + + return ret; +} + +static struct clk_ops rk3399_pmuclk_ops = { + .get_rate = rk3399_pmuclk_get_rate, + .set_rate = rk3399_pmuclk_set_rate, +}; + +static void pmuclk_init(struct rk3399_pmucru *pmucru) +{ + u32 pclk_div; + + /* configure pmu pll(ppll) */ + rkclk_set_pll(&pmucru->ppll_con[0], &ppll_init_cfg); + + /* configure pmu pclk */ + pclk_div = PPLL_HZ / PMU_PCLK_HZ - 1; + assert((pclk_div + 1) * PMU_PCLK_HZ == PPLL_HZ && pclk_div < 0x1f); + rk_clrsetreg(&pmucru->pmucru_clksel[0], + PMU_PCLK_DIV_CON_MASK, + pclk_div << PMU_PCLK_DIV_CON_SHIFT); +} + +static int rk3399_pmuclk_probe(struct udevice *dev) +{ + struct rk3399_pmuclk_priv *priv = dev_get_priv(dev); + + pmuclk_init(priv->pmucru); + + return 0; +} + +static int rk3399_pmuclk_ofdata_to_platdata(struct udevice *dev) +{ + struct rk3399_pmuclk_priv *priv = dev_get_priv(dev); + + priv->pmucru = (struct rk3399_pmucru *)dev_get_addr(dev); + + return 0; +} + +static const struct udevice_id rk3399_pmuclk_ids[] = { + { .compatible = "rockchip,rk3399-pmucru" }, + { } +}; + +U_BOOT_DRIVER(pmuclk_rk3399) = { + .name = "pmuclk_rk3399", + .id = UCLASS_CLK, + .of_match = rk3399_pmuclk_ids, + .priv_auto_alloc_size = sizeof(struct rk3399_pmuclk_priv), + .ofdata_to_platdata = rk3399_pmuclk_ofdata_to_platdata, + .ops = &rk3399_pmuclk_ops, + .probe = rk3399_pmuclk_probe, +}; diff --git a/drivers/clk/uniphier/clk-uniphier-core.c b/drivers/clk/uniphier/clk-uniphier-core.c index a91924e8a4..394832607e 100644 --- a/drivers/clk/uniphier/clk-uniphier-core.c +++ b/drivers/clk/uniphier/clk-uniphier-core.c @@ -14,10 +14,39 @@ #include "clk-uniphier.h" +/** + * struct uniphier_clk_priv - private data for UniPhier clock driver + * + * @base: base address of the clock provider + * @socdata: SoC specific data + */ +struct uniphier_clk_priv { + void __iomem *base; + const struct uniphier_clk_soc_data *socdata; +}; + +int uniphier_clk_probe(struct udevice *dev) +{ + struct uniphier_clk_priv *priv = dev_get_priv(dev); + fdt_addr_t addr; + + addr = dev_get_addr(dev->parent); + if (addr == FDT_ADDR_T_NONE) + return -EINVAL; + + priv->base = devm_ioremap(dev, addr, SZ_4K); + if (!priv->base) + return -ENOMEM; + + priv->socdata = (void *)dev_get_driver_data(dev); + + return 0; +} + static int uniphier_clk_enable(struct clk *clk) { struct uniphier_clk_priv *priv = dev_get_priv(clk->dev); - struct uniphier_clk_gate_data *gate = priv->socdata->gate; + const struct uniphier_clk_gate_data *gate = priv->socdata->gate; unsigned int nr_gate = priv->socdata->nr_gate; void __iomem *reg; u32 mask, data, tmp; @@ -44,7 +73,7 @@ static int uniphier_clk_enable(struct clk *clk) static ulong uniphier_clk_get_rate(struct clk *clk) { struct uniphier_clk_priv *priv = dev_get_priv(clk->dev); - struct uniphier_clk_rate_data *rdata = priv->socdata->rate; + const struct uniphier_clk_rate_data *rdata = priv->socdata->rate; unsigned int nr_rdata = priv->socdata->nr_rate; void __iomem *reg; u32 mask, data; @@ -78,7 +107,7 @@ static ulong uniphier_clk_get_rate(struct clk *clk) static ulong uniphier_clk_set_rate(struct clk *clk, ulong rate) { struct uniphier_clk_priv *priv = dev_get_priv(clk->dev); - struct uniphier_clk_rate_data *rdata = priv->socdata->rate; + const struct uniphier_clk_rate_data *rdata = priv->socdata->rate; unsigned int nr_rdata = priv->socdata->nr_rate; void __iomem *reg; u32 mask, data, tmp; @@ -128,20 +157,47 @@ const struct clk_ops uniphier_clk_ops = { .set_rate = uniphier_clk_set_rate, }; -int uniphier_clk_probe(struct udevice *dev) -{ - struct uniphier_clk_priv *priv = dev_get_priv(dev); - fdt_addr_t addr; - - addr = dev_get_addr(dev); - if (addr == FDT_ADDR_T_NONE) - return -EINVAL; - - priv->base = devm_ioremap(dev, addr, SZ_4K); - if (!priv->base) - return -ENOMEM; - - priv->socdata = (void *)dev_get_driver_data(dev); +static const struct udevice_id uniphier_clk_match[] = { + { + .compatible = "socionext,uniphier-sld3-mio-clock", + .data = (ulong)&uniphier_mio_clk_data, + }, + { + .compatible = "socionext,uniphier-ld4-mio-clock", + .data = (ulong)&uniphier_mio_clk_data, + }, + { + .compatible = "socionext,uniphier-pro4-mio-clock", + .data = (ulong)&uniphier_mio_clk_data, + }, + { + .compatible = "socionext,uniphier-sld8-mio-clock", + .data = (ulong)&uniphier_mio_clk_data, + }, + { + .compatible = "socionext,uniphier-pro5-mio-clock", + .data = (ulong)&uniphier_mio_clk_data, + }, + { + .compatible = "socionext,uniphier-pxs2-mio-clock", + .data = (ulong)&uniphier_mio_clk_data, + }, + { + .compatible = "socionext,uniphier-ld11-mio-clock", + .data = (ulong)&uniphier_mio_clk_data, + }, + { + .compatible = "socionext,uniphier-ld20-mio-clock", + .data = (ulong)&uniphier_mio_clk_data, + }, + { /* sentinel */ } +}; - return 0; -} +U_BOOT_DRIVER(uniphier_clk) = { + .name = "uniphier-clk", + .id = UCLASS_CLK, + .of_match = uniphier_clk_match, + .probe = uniphier_clk_probe, + .priv_auto_alloc_size = sizeof(struct uniphier_clk_priv), + .ops = &uniphier_clk_ops, +}; diff --git a/drivers/clk/uniphier/clk-uniphier-mio.c b/drivers/clk/uniphier/clk-uniphier-mio.c index 2eea5ebc2a..c1e7197c1a 100644 --- a/drivers/clk/uniphier/clk-uniphier-mio.c +++ b/drivers/clk/uniphier/clk-uniphier-mio.c @@ -115,7 +115,7 @@ .data = 0x00020000, \ } -static struct uniphier_clk_gate_data uniphier_mio_clk_gate[] = { +static const struct uniphier_clk_gate_data uniphier_mio_clk_gate[] = { UNIPHIER_MIO_CLK_GATE_SD(0, 0), UNIPHIER_MIO_CLK_GATE_SD(1, 1), UNIPHIER_MIO_CLK_GATE_SD(2, 2), /* for PH1-Pro4 only */ @@ -126,60 +126,15 @@ static struct uniphier_clk_gate_data uniphier_mio_clk_gate[] = { UNIPHIER_MIO_CLK_GATE_USB(3, 7), /* for PH1-sLD3 only */ }; -static struct uniphier_clk_rate_data uniphier_mio_clk_rate[] = { +static const struct uniphier_clk_rate_data uniphier_mio_clk_rate[] = { UNIPHIER_MIO_CLK_RATE_SD(0, 0), UNIPHIER_MIO_CLK_RATE_SD(1, 1), UNIPHIER_MIO_CLK_RATE_SD(2, 2), /* for PH1-Pro4 only */ }; -static struct uniphier_clk_soc_data uniphier_mio_clk_data = { +const struct uniphier_clk_soc_data uniphier_mio_clk_data = { .gate = uniphier_mio_clk_gate, .nr_gate = ARRAY_SIZE(uniphier_mio_clk_gate), .rate = uniphier_mio_clk_rate, .nr_rate = ARRAY_SIZE(uniphier_mio_clk_rate), }; - -static const struct udevice_id uniphier_mio_clk_match[] = { - { - .compatible = "socionext,ph1-sld3-mioctrl", - .data = (ulong)&uniphier_mio_clk_data, - }, - { - .compatible = "socionext,ph1-ld4-mioctrl", - .data = (ulong)&uniphier_mio_clk_data, - }, - { - .compatible = "socionext,ph1-pro4-mioctrl", - .data = (ulong)&uniphier_mio_clk_data, - }, - { - .compatible = "socionext,ph1-sld8-mioctrl", - .data = (ulong)&uniphier_mio_clk_data, - }, - { - .compatible = "socionext,ph1-pro5-mioctrl", - .data = (ulong)&uniphier_mio_clk_data, - }, - { - .compatible = "socionext,proxstream2-mioctrl", - .data = (ulong)&uniphier_mio_clk_data, - }, - { - .compatible = "socionext,ph1-ld11-mioctrl", - .data = (ulong)&uniphier_mio_clk_data, - }, - { - .compatible = "socionext,ph1-ld20-mioctrl", - .data = (ulong)&uniphier_mio_clk_data, - }, - { /* sentinel */ } -}; - -U_BOOT_DRIVER(uniphier_mio_clk) = { - .name = "uniphier-mio-clk", - .id = UCLASS_CLK, - .of_match = uniphier_mio_clk_match, - .probe = uniphier_clk_probe, - .priv_auto_alloc_size = sizeof(struct uniphier_clk_priv), - .ops = &uniphier_clk_ops, -}; diff --git a/drivers/clk/uniphier/clk-uniphier.h b/drivers/clk/uniphier/clk-uniphier.h index 18aa88849b..0b60337205 100644 --- a/drivers/clk/uniphier/clk-uniphier.h +++ b/drivers/clk/uniphier/clk-uniphier.h @@ -27,9 +27,9 @@ struct uniphier_clk_rate_data { }; struct uniphier_clk_soc_data { - struct uniphier_clk_gate_data *gate; + const struct uniphier_clk_gate_data *gate; unsigned int nr_gate; - struct uniphier_clk_rate_data *rate; + const struct uniphier_clk_rate_data *rate; unsigned int nr_rate; }; @@ -40,18 +40,6 @@ struct uniphier_clk_soc_data { .rate = f, \ } -/** - * struct uniphier_clk_priv - private data for UniPhier clock driver - * - * @base: base address of the clock provider - * @socdata: SoC specific data - */ -struct uniphier_clk_priv { - void __iomem *base; - struct uniphier_clk_soc_data *socdata; -}; - -extern const struct clk_ops uniphier_clk_ops; -int uniphier_clk_probe(struct udevice *dev); +extern const struct uniphier_clk_soc_data uniphier_mio_clk_data; #endif /* __CLK_UNIPHIER_H__ */ diff --git a/drivers/core/lists.c b/drivers/core/lists.c index 6a634e6951..23b6ba78d3 100644 --- a/drivers/core/lists.c +++ b/drivers/core/lists.c @@ -101,36 +101,24 @@ int device_bind_driver_to_node(struct udevice *parent, const char *drv_name, #if CONFIG_IS_ENABLED(OF_CONTROL) && !CONFIG_IS_ENABLED(OF_PLATDATA) /** - * driver_check_compatible() - Check if a driver is compatible with this node + * driver_check_compatible() - Check if a driver matches a compatible string * - * @param blob: Device tree pointer - * @param offset: Offset of node in device tree * @param of_match: List of compatible strings to match * @param of_idp: Returns the match that was found - * @return 0 if there is a match, -ENOENT if no match, -ENODEV if the node - * does not have a compatible string, other error <0 if there is a device - * tree error + * @param compat: The compatible string to search for + * @return 0 if there is a match, -ENOENT if no match */ -static int driver_check_compatible(const void *blob, int offset, - const struct udevice_id *of_match, - const struct udevice_id **of_idp) +static int driver_check_compatible(const struct udevice_id *of_match, + const struct udevice_id **of_idp, + const char *compat) { - int ret; - - *of_idp = NULL; if (!of_match) return -ENOENT; while (of_match->compatible) { - ret = fdt_node_check_compatible(blob, offset, - of_match->compatible); - if (!ret) { + if (!strcmp(of_match->compatible, compat)) { *of_idp = of_match; return 0; - } else if (ret == -FDT_ERR_NOTFOUND) { - return -ENODEV; - } else if (ret < 0) { - return -EINVAL; } of_match++; } @@ -147,28 +135,46 @@ int lists_bind_fdt(struct udevice *parent, const void *blob, int offset, struct driver *entry; struct udevice *dev; bool found = false; - const char *name; + const char *name, *compat_list, *compat; + int compat_length, i; int result = 0; int ret = 0; - dm_dbg("bind node %s\n", fdt_get_name(blob, offset, NULL)); + name = fdt_get_name(blob, offset, NULL); + dm_dbg("bind node %s\n", name); if (devp) *devp = NULL; - for (entry = driver; entry != driver + n_ents; entry++) { - ret = driver_check_compatible(blob, offset, entry->of_match, - &id); - name = fdt_get_name(blob, offset, NULL); - if (ret == -ENOENT) { - continue; - } else if (ret == -ENODEV) { + + compat_list = fdt_getprop(blob, offset, "compatible", &compat_length); + if (!compat_list) { + if (compat_length == -FDT_ERR_NOTFOUND) { dm_dbg("Device '%s' has no compatible string\n", name); - break; - } else if (ret) { - dm_warn("Device tree error at offset %d\n", offset); - result = ret; - break; + return 0; } + dm_warn("Device tree error at offset %d\n", offset); + return compat_length; + } + + /* + * Walk through the compatible string list, attempting to match each + * compatible string in order such that we match in order of priority + * from the first string to the last. + */ + for (i = 0; i < compat_length; i += strlen(compat) + 1) { + compat = compat_list + i; + dm_dbg(" - attempt to match compatible string '%s'\n", + compat); + + for (entry = driver; entry != driver + n_ents; entry++) { + ret = driver_check_compatible(entry->of_match, &id, + compat); + if (!ret) + break; + } + if (entry == driver + n_ents) + continue; + dm_dbg(" - found match at '%s'\n", entry->name); ret = device_bind_with_driver_data(parent, entry, name, id->data, offset, &dev); @@ -188,10 +194,8 @@ int lists_bind_fdt(struct udevice *parent, const void *blob, int offset, break; } - if (!found && !result && ret != -ENODEV) { - dm_dbg("No match for node '%s'\n", - fdt_get_name(blob, offset, NULL)); - } + if (!found && !result && ret != -ENODEV) + dm_dbg("No match for node '%s'\n", name); return result; } diff --git a/drivers/core/regmap.c b/drivers/core/regmap.c index 0299ff0879..c68bcba54f 100644 --- a/drivers/core/regmap.c +++ b/drivers/core/regmap.c @@ -13,6 +13,8 @@ #include <mapmem.h> #include <regmap.h> +#include <asm/io.h> + DECLARE_GLOBAL_DATA_PTR; static struct regmap *regmap_alloc_count(int count) @@ -117,3 +119,21 @@ int regmap_uninit(struct regmap *map) return 0; } + +int regmap_read(struct regmap *map, uint offset, uint *valp) +{ + uint32_t *ptr = map_physmem(map->base + offset, 4, MAP_NOCACHE); + + *valp = le32_to_cpu(readl(ptr)); + + return 0; +} + +int regmap_write(struct regmap *map, uint offset, uint val) +{ + uint32_t *ptr = map_physmem(map->base + offset, 4, MAP_NOCACHE); + + writel(cpu_to_le32(val), ptr); + + return 0; +} diff --git a/drivers/core/syscon-uclass.c b/drivers/core/syscon-uclass.c index 01bd9683a7..2148469abc 100644 --- a/drivers/core/syscon-uclass.c +++ b/drivers/core/syscon-uclass.c @@ -95,3 +95,14 @@ UCLASS_DRIVER(syscon) = { .per_device_auto_alloc_size = sizeof(struct syscon_uc_info), .pre_probe = syscon_pre_probe, }; + +static const struct udevice_id generic_syscon_ids[] = { + { .compatible = "syscon" }, + { } +}; + +U_BOOT_DRIVER(generic_syscon) = { + .name = "syscon", + .id = UCLASS_SYSCON, + .of_match = generic_syscon_ids, +}; diff --git a/drivers/crypto/ace_sha.c b/drivers/crypto/ace_sha.c index efef491123..8f3b8b2614 100644 --- a/drivers/crypto/ace_sha.c +++ b/drivers/crypto/ace_sha.c @@ -10,7 +10,7 @@ #ifdef CONFIG_SHA_HW_ACCEL #include <u-boot/sha256.h> #include <u-boot/sha1.h> -#include <asm/errno.h> +#include <linux/errno.h> /* SHA1 value for the message of zero length */ static const unsigned char sha1_digest_emptymsg[SHA1_SUM_LEN] = { diff --git a/drivers/crypto/fsl/fsl_blob.c b/drivers/crypto/fsl/fsl_blob.c index d24b8fc045..38c6f9486b 100644 --- a/drivers/crypto/fsl/fsl_blob.c +++ b/drivers/crypto/fsl/fsl_blob.c @@ -8,7 +8,7 @@ #include <common.h> #include <malloc.h> #include <fsl_sec.h> -#include <asm-generic/errno.h> +#include <linux/errno.h> #include "jobdesc.h" #include "desc.h" #include "jr.h" diff --git a/drivers/crypto/fsl/fsl_hash.c b/drivers/crypto/fsl/fsl_hash.c index 887e88c9ca..a63eba389d 100644 --- a/drivers/crypto/fsl/fsl_hash.c +++ b/drivers/crypto/fsl/fsl_hash.c @@ -12,7 +12,7 @@ #include "jr.h" #include "fsl_hash.h" #include <hw_sha.h> -#include <asm-generic/errno.h> +#include <linux/errno.h> #define CRYPTO_MAX_ALG_NAME 80 #define SHA1_DIGEST_SIZE 20 diff --git a/drivers/ddr/fsl/ddr1_dimm_params.c b/drivers/ddr/fsl/ddr1_dimm_params.c index 00cdc22408..369b325ff2 100644 --- a/drivers/ddr/fsl/ddr1_dimm_params.c +++ b/drivers/ddr/fsl/ddr1_dimm_params.c @@ -108,22 +108,14 @@ static unsigned int byte40_table_ps[8] = { static unsigned int compute_trfc_ps_from_spd(unsigned char trctrfc_ext, unsigned char trfc) { - unsigned int trfc_ps; - - trfc_ps = (((trctrfc_ext & 0x1) * 256) + trfc) * 1000 + return ((trctrfc_ext & 0x1) * 256 + trfc) * 1000 + byte40_table_ps[(trctrfc_ext >> 1) & 0x7]; - - return trfc_ps; } static unsigned int compute_trc_ps_from_spd(unsigned char trctrfc_ext, unsigned char trc) { - unsigned int trc_ps; - - trc_ps = trc * 1000 + byte40_table_ps[(trctrfc_ext >> 4) & 0x7]; - - return trc_ps; + return trc * 1000 + byte40_table_ps[(trctrfc_ext >> 4) & 0x7]; } /* diff --git a/drivers/ddr/fsl/ddr2_dimm_params.c b/drivers/ddr/fsl/ddr2_dimm_params.c index 59baf6b7a1..af752cc96c 100644 --- a/drivers/ddr/fsl/ddr2_dimm_params.c +++ b/drivers/ddr/fsl/ddr2_dimm_params.c @@ -107,22 +107,14 @@ static unsigned int byte40_table_ps[8] = { static unsigned int compute_trfc_ps_from_spd(unsigned char trctrfc_ext, unsigned char trfc) { - unsigned int trfc_ps; - - trfc_ps = (((trctrfc_ext & 0x1) * 256) + trfc) * 1000 + return (((trctrfc_ext & 0x1) * 256) + trfc) * 1000 + byte40_table_ps[(trctrfc_ext >> 1) & 0x7]; - - return trfc_ps; } static unsigned int compute_trc_ps_from_spd(unsigned char trctrfc_ext, unsigned char trc) { - unsigned int trc_ps; - - trc_ps = trc * 1000 + byte40_table_ps[(trctrfc_ext >> 4) & 0x7]; - - return trc_ps; + return trc * 1000 + byte40_table_ps[(trctrfc_ext >> 4) & 0x7]; } /* diff --git a/drivers/ddr/marvell/a38x/ddr3_a38x.c b/drivers/ddr/marvell/a38x/ddr3_a38x.c index f4699076e8..c082122f25 100644 --- a/drivers/ddr/marvell/a38x/ddr3_a38x.c +++ b/drivers/ddr/marvell/a38x/ddr3_a38x.c @@ -706,11 +706,7 @@ int ddr3_tip_ext_write(u32 dev_num, u32 if_id, u32 reg_addr, int ddr3_silicon_pre_init(void) { - int result; - - result = ddr3_silicon_init(); - - return result; + return ddr3_silicon_init(); } int ddr3_post_run_alg(void) diff --git a/drivers/dma/apbh_dma.c b/drivers/dma/apbh_dma.c index a6dc935114..a97fa859e0 100644 --- a/drivers/dma/apbh_dma.c +++ b/drivers/dma/apbh_dma.c @@ -14,7 +14,7 @@ #include <common.h> #include <malloc.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/arch/clock.h> #include <asm/arch/imx-regs.h> diff --git a/drivers/fpga/Kconfig b/drivers/fpga/Kconfig new file mode 100644 index 0000000000..f3f6bf7f67 --- /dev/null +++ b/drivers/fpga/Kconfig @@ -0,0 +1,20 @@ +menu "FPGA support" + +config FPGA + bool + +config FPGA_XILINX + bool "Enable Xilinx FPGA drivers" + select FPGA + help + Enable Xilinx FPGA specific functions which includes bitstream + (in BIT format), fpga and device validation. + +config FPGA_ZYNQMPPL + bool "Enable Xilinx FPGA driver for ZynqMP" + depends on FPGA_XILINX + help + Enable FPGA driver for loading bitstream in BIT and BIN format + on Xilinx Zynq UltraScale+ (ZynqMP) device. + +endmenu diff --git a/drivers/fpga/Makefile b/drivers/fpga/Makefile index fec3fecbdf..777706f186 100644 --- a/drivers/fpga/Makefile +++ b/drivers/fpga/Makefile @@ -10,6 +10,7 @@ obj-$(CONFIG_FPGA_SPARTAN2) += spartan2.o obj-$(CONFIG_FPGA_SPARTAN3) += spartan3.o obj-$(CONFIG_FPGA_VIRTEX2) += virtex2.o obj-$(CONFIG_FPGA_ZYNQPL) += zynqpl.o +obj-$(CONFIG_FPGA_ZYNQMPPL) += zynqmppl.o obj-$(CONFIG_FPGA_XILINX) += xilinx.o obj-$(CONFIG_FPGA_LATTICE) += ivm_core.o lattice.o ifdef CONFIG_FPGA_ALTERA diff --git a/drivers/fpga/socfpga.c b/drivers/fpga/socfpga.c index 4448250f5c..f1b2f2c4da 100644 --- a/drivers/fpga/socfpga.c +++ b/drivers/fpga/socfpga.c @@ -7,7 +7,7 @@ #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/fpga_manager.h> #include <asm/arch/reset_manager.h> #include <asm/arch/system_manager.h> diff --git a/drivers/fpga/stratixv.c b/drivers/fpga/stratixv.c index cc035eb2a1..9a81aca706 100644 --- a/drivers/fpga/stratixv.c +++ b/drivers/fpga/stratixv.c @@ -8,7 +8,7 @@ #include <altera.h> #include <spi.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> /* Write the RBF data to FPGA via SPI */ static int program_write(int spi_bus, int spi_dev, const void *rbf_data, diff --git a/drivers/fpga/xilinx.c b/drivers/fpga/xilinx.c index d459a2f7a5..2cd0104d8b 100644 --- a/drivers/fpga/xilinx.c +++ b/drivers/fpga/xilinx.c @@ -199,6 +199,9 @@ int xilinx_info(xilinx_desc *desc) case xilinx_zynq: printf("Zynq PL\n"); break; + case xilinx_zynqmp: + printf("ZynqMP PL\n"); + break; /* Add new family types here */ default: printf ("Unknown family type, %d\n", desc->family); @@ -227,6 +230,9 @@ int xilinx_info(xilinx_desc *desc) case devcfg: printf("Device configuration interface (Zynq)\n"); break; + case csu_dma: + printf("csu_dma configuration interface (ZynqMP)\n"); + break; /* Add new interface types here */ default: printf ("Unsupported interface type, %d\n", desc->iface); diff --git a/drivers/fpga/zynqmppl.c b/drivers/fpga/zynqmppl.c new file mode 100644 index 0000000000..23039c3eb2 --- /dev/null +++ b/drivers/fpga/zynqmppl.c @@ -0,0 +1,238 @@ +/* + * (C) Copyright 2015 - 2016, Xilinx, Inc, + * Michal Simek <michal.simek@xilinx.com> + * Siva Durga Prasad <siva.durga.paladugu@xilinx.com> + * + * SPDX-License-Identifier: GPL-2.0 + */ + +#include <console.h> +#include <common.h> +#include <zynqmppl.h> +#include <linux/sizes.h> + +#define DUMMY_WORD 0xffffffff + +/* Xilinx binary format header */ +static const u32 bin_format[] = { + DUMMY_WORD, /* Dummy words */ + DUMMY_WORD, + DUMMY_WORD, + DUMMY_WORD, + DUMMY_WORD, + DUMMY_WORD, + DUMMY_WORD, + DUMMY_WORD, + DUMMY_WORD, + DUMMY_WORD, + DUMMY_WORD, + DUMMY_WORD, + DUMMY_WORD, + DUMMY_WORD, + DUMMY_WORD, + DUMMY_WORD, + 0x000000bb, /* Sync word */ + 0x11220044, /* Sync word */ + DUMMY_WORD, + DUMMY_WORD, + 0xaa995566, /* Sync word */ +}; + +#define SWAP_NO 1 +#define SWAP_DONE 2 + +/* + * Load the whole word from unaligned buffer + * Keep in your mind that it is byte loading on little-endian system + */ +static u32 load_word(const void *buf, u32 swap) +{ + u32 word = 0; + u8 *bitc = (u8 *)buf; + int p; + + if (swap == SWAP_NO) { + for (p = 0; p < 4; p++) { + word <<= 8; + word |= bitc[p]; + } + } else { + for (p = 3; p >= 0; p--) { + word <<= 8; + word |= bitc[p]; + } + } + + return word; +} + +static u32 check_header(const void *buf) +{ + u32 i, pattern; + int swap = SWAP_NO; + u32 *test = (u32 *)buf; + + debug("%s: Let's check bitstream header\n", __func__); + + /* Checking that passing bin is not a bitstream */ + for (i = 0; i < ARRAY_SIZE(bin_format); i++) { + pattern = load_word(&test[i], swap); + + /* + * Bitstreams in binary format are swapped + * compare to regular bistream. + * Do not swap dummy word but if swap is done assume + * that parsing buffer is binary format + */ + if ((__swab32(pattern) != DUMMY_WORD) && + (__swab32(pattern) == bin_format[i])) { + swap = SWAP_DONE; + debug("%s: data swapped - let's swap\n", __func__); + } + + debug("%s: %d/%px: pattern %x/%x bin_format\n", __func__, i, + &test[i], pattern, bin_format[i]); + } + debug("%s: Found bitstream header at %px %s swapinng\n", __func__, + buf, swap == SWAP_NO ? "without" : "with"); + + return swap; +} + +static void *check_data(u8 *buf, size_t bsize, u32 *swap) +{ + u32 word, p = 0; /* possition */ + + /* Because buf doesn't need to be aligned let's read it by chars */ + for (p = 0; p < bsize; p++) { + word = load_word(&buf[p], SWAP_NO); + debug("%s: word %x %x/%px\n", __func__, word, p, &buf[p]); + + /* Find the first bitstream dummy word */ + if (word == DUMMY_WORD) { + debug("%s: Found dummy word at position %x/%px\n", + __func__, p, &buf[p]); + *swap = check_header(&buf[p]); + if (*swap) { + /* FIXME add full bitstream checking here */ + return &buf[p]; + } + } + /* Loop can be huge - support CTRL + C */ + if (ctrlc()) + return NULL; + } + return NULL; +} + +static ulong zynqmp_align_dma_buffer(u32 *buf, u32 len, u32 swap) +{ + u32 *new_buf; + u32 i; + + if ((ulong)buf != ALIGN((ulong)buf, ARCH_DMA_MINALIGN)) { + new_buf = (u32 *)ALIGN((ulong)buf, ARCH_DMA_MINALIGN); + + /* + * This might be dangerous but permits to flash if + * ARCH_DMA_MINALIGN is greater than header size + */ + if (new_buf > (u32 *)buf) { + debug("%s: Aligned buffer is after buffer start\n", + __func__); + new_buf -= ARCH_DMA_MINALIGN; + } + printf("%s: Align buffer at %px to %px(swap %d)\n", __func__, + buf, new_buf, swap); + + for (i = 0; i < (len/4); i++) + new_buf[i] = load_word(&buf[i], swap); + + buf = new_buf; + } else if (swap != SWAP_DONE) { + /* For bitstream which are aligned */ + u32 *new_buf = (u32 *)buf; + + printf("%s: Bitstream is not swapped(%d) - swap it\n", __func__, + swap); + + for (i = 0; i < (len/4); i++) + new_buf[i] = load_word(&buf[i], swap); + } + + return (ulong)buf; +} + +static int zynqmp_validate_bitstream(xilinx_desc *desc, const void *buf, + size_t bsize, u32 blocksize, u32 *swap) +{ + ulong *buf_start; + ulong diff; + + buf_start = check_data((u8 *)buf, blocksize, swap); + + if (!buf_start) + return FPGA_FAIL; + + /* Check if data is postpone from start */ + diff = (ulong)buf_start - (ulong)buf; + if (diff) { + printf("%s: Bitstream is not validated yet (diff %lx)\n", + __func__, diff); + return FPGA_FAIL; + } + + if ((ulong)buf < SZ_1M) { + printf("%s: Bitstream has to be placed up to 1MB (%px)\n", + __func__, buf); + return FPGA_FAIL; + } + + return 0; +} + +static int invoke_smc(ulong id, ulong reg0, ulong reg1, ulong reg2) +{ + struct pt_regs regs; + regs.regs[0] = id; + regs.regs[1] = reg0; + regs.regs[2] = reg1; + regs.regs[3] = reg2; + + smc_call(®s); + + return regs.regs[0]; +} + +static int zynqmp_load(xilinx_desc *desc, const void *buf, size_t bsize, + bitstream_type bstype) +{ + u32 swap; + ulong bin_buf, flags; + int ret; + + if (zynqmp_validate_bitstream(desc, buf, bsize, bsize, &swap)) + return FPGA_FAIL; + + bin_buf = zynqmp_align_dma_buffer((u32 *)buf, bsize, swap); + + debug("%s called!\n", __func__); + flush_dcache_range(bin_buf, bin_buf + bsize); + + if (bsize % 4) + bsize = bsize / 4 + 1; + else + bsize = bsize / 4; + + flags = (u32)bsize | ((u64)bstype << 32); + + ret = invoke_smc(ZYNQMP_SIP_SVC_PM_FPGA_LOAD, bin_buf, flags, 0); + if (ret) + debug("PL FPGA LOAD fail\n"); + + return ret; +} + +struct xilinx_fpga_op zynqmp_op = { + .load = zynqmp_load, +}; diff --git a/drivers/gpio/adi_gpio2.c b/drivers/gpio/adi_gpio2.c index 88cd65b87f..4db08a344a 100644 --- a/drivers/gpio/adi_gpio2.c +++ b/drivers/gpio/adi_gpio2.c @@ -8,7 +8,7 @@ */ #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #define RESOURCE_LABEL_SIZE 16 diff --git a/drivers/gpio/gpio-uniphier.c b/drivers/gpio/gpio-uniphier.c index afb27a396f..ad1176420d 100644 --- a/drivers/gpio/gpio-uniphier.c +++ b/drivers/gpio/gpio-uniphier.c @@ -10,7 +10,7 @@ #include <linux/bitops.h> #include <linux/io.h> #include <linux/sizes.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #define UNIPHIER_GPIO_PORTS_PER_BANK 8 diff --git a/drivers/gpio/mvgpio.c b/drivers/gpio/mvgpio.c index 888aa07c4c..8bfbc3a585 100644 --- a/drivers/gpio/mvgpio.c +++ b/drivers/gpio/mvgpio.c @@ -11,7 +11,7 @@ #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include "mvgpio.h" #include <asm/gpio.h> diff --git a/drivers/gpio/mxs_gpio.c b/drivers/gpio/mxs_gpio.c index c25b4c1c2e..367b852039 100644 --- a/drivers/gpio/mxs_gpio.c +++ b/drivers/gpio/mxs_gpio.c @@ -8,7 +8,7 @@ */ #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/arch/iomux.h> #include <asm/arch/imx-regs.h> diff --git a/drivers/gpio/omap_gpio.c b/drivers/gpio/omap_gpio.c index cd960dc013..f906b97fb7 100644 --- a/drivers/gpio/omap_gpio.c +++ b/drivers/gpio/omap_gpio.c @@ -23,7 +23,7 @@ #include <fdtdec.h> #include <asm/gpio.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <malloc.h> DECLARE_GLOBAL_DATA_PTR; diff --git a/drivers/gpio/pca9698.c b/drivers/gpio/pca9698.c index 3152bf6df3..d2663f7331 100644 --- a/drivers/gpio/pca9698.c +++ b/drivers/gpio/pca9698.c @@ -11,7 +11,7 @@ #include <common.h> #include <i2c.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <pca9698.h> /* diff --git a/drivers/gpio/rk_gpio.c b/drivers/gpio/rk_gpio.c index 64abcbaa0a..5dbd228203 100644 --- a/drivers/gpio/rk_gpio.c +++ b/drivers/gpio/rk_gpio.c @@ -10,7 +10,7 @@ #include <common.h> #include <dm.h> #include <syscon.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/io.h> #include <asm/arch/clock.h> diff --git a/drivers/gpio/stm32_gpio.c b/drivers/gpio/stm32_gpio.c index 50f86d3dd6..ff245db91d 100644 --- a/drivers/gpio/stm32_gpio.c +++ b/drivers/gpio/stm32_gpio.c @@ -13,7 +13,7 @@ #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/stm32.h> #include <asm/arch/gpio.h> diff --git a/drivers/gpio/zynq_gpio.c b/drivers/gpio/zynq_gpio.c index 4ab2356081..8a448c9a41 100644 --- a/drivers/gpio/zynq_gpio.c +++ b/drivers/gpio/zynq_gpio.c @@ -12,7 +12,7 @@ #include <common.h> #include <asm/gpio.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <dm.h> #include <fdtdec.h> diff --git a/drivers/i2c/at91_i2c.c b/drivers/i2c/at91_i2c.c index 8e9c3ad552..d71f75c5fa 100644 --- a/drivers/i2c/at91_i2c.c +++ b/drivers/i2c/at91_i2c.c @@ -8,7 +8,7 @@ #include <asm/io.h> #include <common.h> -#include <clk_client.h> +#include <clk.h> #include <dm.h> #include <errno.h> #include <fdtdec.h> diff --git a/drivers/i2c/i2c-cdns.c b/drivers/i2c/i2c-cdns.c index 5642cd91fe..f49f60bb37 100644 --- a/drivers/i2c/i2c-cdns.c +++ b/drivers/i2c/i2c-cdns.c @@ -11,7 +11,7 @@ #include <common.h> #include <linux/types.h> #include <linux/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <dm/device.h> #include <dm/root.h> #include <i2c.h> diff --git a/drivers/i2c/i2c-uniphier-f.c b/drivers/i2c/i2c-uniphier-f.c index a56e058d56..8bfa916294 100644 --- a/drivers/i2c/i2c-uniphier-f.c +++ b/drivers/i2c/i2c-uniphier-f.c @@ -10,7 +10,7 @@ #include <linux/types.h> #include <linux/io.h> #include <linux/sizes.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <dm/device.h> #include <dm/root.h> #include <i2c.h> diff --git a/drivers/i2c/i2c-uniphier.c b/drivers/i2c/i2c-uniphier.c index 39a3ebdfc1..f391f11e93 100644 --- a/drivers/i2c/i2c-uniphier.c +++ b/drivers/i2c/i2c-uniphier.c @@ -10,7 +10,7 @@ #include <linux/types.h> #include <linux/io.h> #include <linux/sizes.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <dm/device.h> #include <dm/root.h> #include <i2c.h> diff --git a/drivers/i2c/kona_i2c.c b/drivers/i2c/kona_i2c.c index 11f29d926d..1228ef34e5 100644 --- a/drivers/i2c/kona_i2c.c +++ b/drivers/i2c/kona_i2c.c @@ -6,7 +6,7 @@ #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/sysmap.h> #include <asm/kona-common/clk.h> #include <i2c.h> diff --git a/drivers/i2c/lpc32xx_i2c.c b/drivers/i2c/lpc32xx_i2c.c index 47163cc65a..3e842e714a 100644 --- a/drivers/i2c/lpc32xx_i2c.c +++ b/drivers/i2c/lpc32xx_i2c.c @@ -10,7 +10,7 @@ #include <common.h> #include <asm/io.h> #include <i2c.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/clk.h> /* diff --git a/drivers/i2c/mv_i2c.c b/drivers/i2c/mv_i2c.c index fc02e65504..7f52fa2d85 100644 --- a/drivers/i2c/mv_i2c.c +++ b/drivers/i2c/mv_i2c.c @@ -18,18 +18,11 @@ */ #include <common.h> -#include <asm/io.h> - -#ifdef CONFIG_HARD_I2C +#include <dm.h> #include <i2c.h> +#include <asm/io.h> #include "mv_i2c.h" -#ifdef DEBUG_I2C -#define PRINTD(x) printf x -#else -#define PRINTD(x) -#endif - /* All transfers are described by this data structure */ struct mv_i2c_msg { u8 condition; @@ -38,6 +31,16 @@ struct mv_i2c_msg { u8 data; }; +#ifdef CONFIG_ARMADA_3700 +/* Armada 3700 has no padding between the registers */ +struct mv_i2c { + u32 ibmr; + u32 idbr; + u32 icr; + u32 isr; + u32 isar; +}; +#else struct mv_i2c { u32 ibmr; u32 pad0; @@ -49,64 +52,26 @@ struct mv_i2c { u32 pad3; u32 isar; }; - -static struct mv_i2c *base; -static void i2c_board_init(struct mv_i2c *base) -{ -#ifdef CONFIG_SYS_I2C_INIT_BOARD - u32 icr; - /* - * call board specific i2c bus reset routine before accessing the - * environment, which might be in a chip on that bus. For details - * about this problem see doc/I2C_Edge_Conditions. - * - * disable I2C controller first, otherwhise it thinks we want to - * talk to the slave port... - */ - icr = readl(&base->icr); - writel(readl(&base->icr) & ~(ICR_SCLE | ICR_IUE), &base->icr); - - i2c_init_board(); - - writel(icr, &base->icr); #endif -} - -#ifdef CONFIG_I2C_MULTI_BUS -static unsigned long i2c_regs[CONFIG_MV_I2C_NUM] = CONFIG_MV_I2C_REG; -static unsigned int bus_initialized[CONFIG_MV_I2C_NUM]; -static unsigned int current_bus; - -int i2c_set_bus_num(unsigned int bus) -{ - if ((bus < 0) || (bus >= CONFIG_MV_I2C_NUM)) { - printf("Bad bus: %d\n", bus); - return -1; - } - base = (struct mv_i2c *)i2c_regs[bus]; - current_bus = bus; - - if (!bus_initialized[current_bus]) { - i2c_board_init(base); - bus_initialized[current_bus] = 1; - } - - return 0; -} - -unsigned int i2c_get_bus_num(void) +/* + * Dummy implementation that can be overwritten by a board + * specific function + */ +__weak void i2c_clk_enable(void) { - return current_bus; } -#endif /* * i2c_reset: - reset the host controller * */ -static void i2c_reset(void) +static void i2c_reset(struct mv_i2c *base) { + u32 icr_mode; + + /* Save bus mode (standard or fast speed) for later use */ + icr_mode = readl(&base->icr) & ICR_MODE_MASK; writel(readl(&base->icr) & ~ICR_IUE, &base->icr); /* disable unit */ writel(readl(&base->icr) | ICR_UR, &base->icr); /* reset the unit */ udelay(100); @@ -115,7 +80,8 @@ static void i2c_reset(void) i2c_clk_enable(); writel(CONFIG_SYS_I2C_SLAVE, &base->isar); /* set our slave address */ - writel(I2C_ICR_INIT, &base->icr); /* set control reg values */ + /* set control reg values */ + writel(I2C_ICR_INIT | icr_mode, &base->icr); writel(I2C_ISR_INIT, &base->isr); /* set clear interrupt bits */ writel(readl(&base->icr) | ICR_IUE, &base->icr); /* enable unit */ udelay(100); @@ -127,7 +93,7 @@ static void i2c_reset(void) * * @return: 1 in case of success, 0 means timeout (no match within 10 ms). */ -static int i2c_isr_set_cleared(unsigned long set_mask, +static int i2c_isr_set_cleared(struct mv_i2c *base, unsigned long set_mask, unsigned long cleared_mask) { int timeout = 1000, isr; @@ -157,7 +123,7 @@ static int i2c_isr_set_cleared(unsigned long set_mask, * -5: illegal parameters * -6: bus is busy and couldn't be aquired */ -int i2c_transfer(struct mv_i2c_msg *msg) +static int i2c_transfer(struct mv_i2c *base, struct mv_i2c_msg *msg) { int ret; @@ -167,7 +133,7 @@ int i2c_transfer(struct mv_i2c_msg *msg) switch (msg->direction) { case I2C_WRITE: /* check if bus is not busy */ - if (!i2c_isr_set_cleared(0, ISR_IBB)) + if (!i2c_isr_set_cleared(base, 0, ISR_IBB)) goto transfer_error_bus_busy; /* start transmission */ @@ -186,7 +152,7 @@ int i2c_transfer(struct mv_i2c_msg *msg) writel(readl(&base->icr) | ICR_TB, &base->icr); /* transmit register empty? */ - if (!i2c_isr_set_cleared(ISR_ITE, 0)) + if (!i2c_isr_set_cleared(base, ISR_ITE, 0)) goto transfer_error_transmit_timeout; /* clear 'transmit empty' state */ @@ -194,14 +160,14 @@ int i2c_transfer(struct mv_i2c_msg *msg) /* wait for ACK from slave */ if (msg->acknack == I2C_ACKNAK_WAITACK) - if (!i2c_isr_set_cleared(0, ISR_ACKNAK)) + if (!i2c_isr_set_cleared(base, 0, ISR_ACKNAK)) goto transfer_error_ack_missing; break; case I2C_READ: /* check if bus is not busy */ - if (!i2c_isr_set_cleared(0, ISR_IBB)) + if (!i2c_isr_set_cleared(base, 0, ISR_IBB)) goto transfer_error_bus_busy; /* start receive */ @@ -219,7 +185,7 @@ int i2c_transfer(struct mv_i2c_msg *msg) writel(readl(&base->icr) | ICR_TB, &base->icr); /* receive register full? */ - if (!i2c_isr_set_cleared(ISR_IRF, 0)) + if (!i2c_isr_set_cleared(base, ISR_IRF, 0)) goto transfer_error_receive_timeout; msg->data = readl(&base->idbr); @@ -234,139 +200,89 @@ int i2c_transfer(struct mv_i2c_msg *msg) return 0; transfer_error_msg_empty: - PRINTD(("i2c_transfer: error: 'msg' is empty\n")); - ret = -1; goto i2c_transfer_finish; + debug("i2c_transfer: error: 'msg' is empty\n"); + ret = -1; + goto i2c_transfer_finish; transfer_error_transmit_timeout: - PRINTD(("i2c_transfer: error: transmit timeout\n")); - ret = -2; goto i2c_transfer_finish; + debug("i2c_transfer: error: transmit timeout\n"); + ret = -2; + goto i2c_transfer_finish; transfer_error_ack_missing: - PRINTD(("i2c_transfer: error: ACK missing\n")); - ret = -3; goto i2c_transfer_finish; + debug("i2c_transfer: error: ACK missing\n"); + ret = -3; + goto i2c_transfer_finish; transfer_error_receive_timeout: - PRINTD(("i2c_transfer: error: receive timeout\n")); - ret = -4; goto i2c_transfer_finish; + debug("i2c_transfer: error: receive timeout\n"); + ret = -4; + goto i2c_transfer_finish; transfer_error_illegal_param: - PRINTD(("i2c_transfer: error: illegal parameters\n")); - ret = -5; goto i2c_transfer_finish; + debug("i2c_transfer: error: illegal parameters\n"); + ret = -5; + goto i2c_transfer_finish; transfer_error_bus_busy: - PRINTD(("i2c_transfer: error: bus is busy\n")); - ret = -6; goto i2c_transfer_finish; + debug("i2c_transfer: error: bus is busy\n"); + ret = -6; + goto i2c_transfer_finish; i2c_transfer_finish: - PRINTD(("i2c_transfer: ISR: 0x%04x\n", readl(&base->isr))); - i2c_reset(); - return ret; + debug("i2c_transfer: ISR: 0x%04x\n", readl(&base->isr)); + i2c_reset(base); + return ret; } -/* ------------------------------------------------------------------------ */ -/* API Functions */ -/* ------------------------------------------------------------------------ */ -void i2c_init(int speed, int slaveaddr) -{ -#ifdef CONFIG_I2C_MULTI_BUS - current_bus = 0; - base = (struct mv_i2c *)i2c_regs[current_bus]; -#else - base = (struct mv_i2c *)CONFIG_MV_I2C_REG; -#endif - - i2c_board_init(base); -} - -/* - * i2c_probe: - Test if a chip answers for a given i2c address - * - * @chip: address of the chip which is searched for - * @return: 0 if a chip was found, -1 otherwhise - */ -int i2c_probe(uchar chip) +static int __i2c_read(struct mv_i2c *base, uchar chip, u8 *addr, int alen, + uchar *buffer, int len) { struct mv_i2c_msg msg; - i2c_reset(); - - msg.condition = I2C_COND_START; - msg.acknack = I2C_ACKNAK_WAITACK; - msg.direction = I2C_WRITE; - msg.data = (chip << 1) + 1; - if (i2c_transfer(&msg)) - return -1; + debug("i2c_read(chip=0x%02x, addr=0x%02x, alen=0x%02x, " + "len=0x%02x)\n", chip, *addr, alen, len); - msg.condition = I2C_COND_STOP; - msg.acknack = I2C_ACKNAK_SENDNAK; - msg.direction = I2C_READ; - msg.data = 0x00; - if (i2c_transfer(&msg)) - return -1; - - return 0; -} - -/* - * i2c_read: - Read multiple bytes from an i2c device - * - * The higher level routines take into account that this function is only - * called with len < page length of the device (see configuration file) - * - * @chip: address of the chip which is to be read - * @addr: i2c data address within the chip - * @alen: length of the i2c data address (1..2 bytes) - * @buffer: where to write the data - * @len: how much byte do we want to read - * @return: 0 in case of success - */ -int i2c_read(uchar chip, uint addr, int alen, uchar *buffer, int len) -{ - struct mv_i2c_msg msg; - u8 addr_bytes[3]; /* lowest...highest byte of data address */ - - PRINTD(("i2c_read(chip=0x%02x, addr=0x%02x, alen=0x%02x, " - "len=0x%02x)\n", chip, addr, alen, len)); + if (len == 0) { + printf("reading zero byte is invalid\n"); + return -EINVAL; + } - i2c_reset(); + i2c_reset(base); /* dummy chip address write */ - PRINTD(("i2c_read: dummy chip address write\n")); + debug("i2c_read: dummy chip address write\n"); msg.condition = I2C_COND_START; msg.acknack = I2C_ACKNAK_WAITACK; msg.direction = I2C_WRITE; msg.data = (chip << 1); msg.data &= 0xFE; - if (i2c_transfer(&msg)) + if (i2c_transfer(base, &msg)) return -1; /* * send memory address bytes; * alen defines how much bytes we have to send. */ - /*addr &= ((1 << CONFIG_SYS_EEPROM_PAGE_WRITE_BITS)-1); */ - addr_bytes[0] = (u8)((addr >> 0) & 0x000000FF); - addr_bytes[1] = (u8)((addr >> 8) & 0x000000FF); - addr_bytes[2] = (u8)((addr >> 16) & 0x000000FF); - while (--alen >= 0) { - PRINTD(("i2c_read: send memory word address byte %1d\n", alen)); + debug("i2c_read: send address byte %02x (alen=%d)\n", + *addr, alen); msg.condition = I2C_COND_NORMAL; msg.acknack = I2C_ACKNAK_WAITACK; msg.direction = I2C_WRITE; - msg.data = addr_bytes[alen]; - if (i2c_transfer(&msg)) + msg.data = *(addr++); + if (i2c_transfer(base, &msg)) return -1; } /* start read sequence */ - PRINTD(("i2c_read: start read sequence\n")); + debug("i2c_read: start read sequence\n"); msg.condition = I2C_COND_START; msg.acknack = I2C_ACKNAK_WAITACK; msg.direction = I2C_WRITE; msg.data = (chip << 1); msg.data |= 0x01; - if (i2c_transfer(&msg)) + if (i2c_transfer(base, &msg)) return -1; /* read bytes; send NACK at last byte */ @@ -381,75 +297,59 @@ int i2c_read(uchar chip, uint addr, int alen, uchar *buffer, int len) msg.direction = I2C_READ; msg.data = 0x00; - if (i2c_transfer(&msg)) + if (i2c_transfer(base, &msg)) return -1; *buffer = msg.data; - PRINTD(("i2c_read: reading byte (0x%08x)=0x%02x\n", - (unsigned int)buffer, *buffer)); + debug("i2c_read: reading byte (%p)=0x%02x\n", + buffer, *buffer); buffer++; } - i2c_reset(); + i2c_reset(base); return 0; } -/* - * i2c_write: - Write multiple bytes to an i2c device - * - * The higher level routines take into account that this function is only - * called with len < page length of the device (see configuration file) - * - * @chip: address of the chip which is to be written - * @addr: i2c data address within the chip - * @alen: length of the i2c data address (1..2 bytes) - * @buffer: where to find the data to be written - * @len: how much byte do we want to read - * @return: 0 in case of success - */ -int i2c_write(uchar chip, uint addr, int alen, uchar *buffer, int len) +static int __i2c_write(struct mv_i2c *base, uchar chip, u8 *addr, int alen, + uchar *buffer, int len) { struct mv_i2c_msg msg; - u8 addr_bytes[3]; /* lowest...highest byte of data address */ - PRINTD(("i2c_write(chip=0x%02x, addr=0x%02x, alen=0x%02x, " - "len=0x%02x)\n", chip, addr, alen, len)); + debug("i2c_write(chip=0x%02x, addr=0x%02x, alen=0x%02x, " + "len=0x%02x)\n", chip, *addr, alen, len); - i2c_reset(); + i2c_reset(base); /* chip address write */ - PRINTD(("i2c_write: chip address write\n")); + debug("i2c_write: chip address write\n"); msg.condition = I2C_COND_START; msg.acknack = I2C_ACKNAK_WAITACK; msg.direction = I2C_WRITE; msg.data = (chip << 1); msg.data &= 0xFE; - if (i2c_transfer(&msg)) + if (i2c_transfer(base, &msg)) return -1; /* * send memory address bytes; * alen defines how much bytes we have to send. */ - addr_bytes[0] = (u8)((addr >> 0) & 0x000000FF); - addr_bytes[1] = (u8)((addr >> 8) & 0x000000FF); - addr_bytes[2] = (u8)((addr >> 16) & 0x000000FF); - while (--alen >= 0) { - PRINTD(("i2c_write: send memory word address\n")); + debug("i2c_read: send address byte %02x (alen=%d)\n", + *addr, alen); msg.condition = I2C_COND_NORMAL; msg.acknack = I2C_ACKNAK_WAITACK; msg.direction = I2C_WRITE; - msg.data = addr_bytes[alen]; - if (i2c_transfer(&msg)) + msg.data = *(addr++); + if (i2c_transfer(base, &msg)) return -1; } /* write bytes; send NACK at last byte */ while (len--) { - PRINTD(("i2c_write: writing byte (0x%08x)=0x%02x\n", - (unsigned int)buffer, *buffer)); + debug("i2c_write: writing byte (%p)=0x%02x\n", + buffer, *buffer); if (len == 0) msg.condition = I2C_COND_STOP; @@ -460,12 +360,246 @@ int i2c_write(uchar chip, uint addr, int alen, uchar *buffer, int len) msg.direction = I2C_WRITE; msg.data = *(buffer++); - if (i2c_transfer(&msg)) + if (i2c_transfer(base, &msg)) return -1; } - i2c_reset(); + i2c_reset(base); + + return 0; +} + +#ifndef CONFIG_DM_I2C + +static struct mv_i2c *base_glob; + +static void i2c_board_init(struct mv_i2c *base) +{ +#ifdef CONFIG_SYS_I2C_INIT_BOARD + u32 icr; + /* + * call board specific i2c bus reset routine before accessing the + * environment, which might be in a chip on that bus. For details + * about this problem see doc/I2C_Edge_Conditions. + * + * disable I2C controller first, otherwhise it thinks we want to + * talk to the slave port... + */ + icr = readl(&base->icr); + writel(readl(&base->icr) & ~(ICR_SCLE | ICR_IUE), &base->icr); + + i2c_init_board(); + + writel(icr, &base->icr); +#endif +} + +#ifdef CONFIG_I2C_MULTI_BUS +static unsigned long i2c_regs[CONFIG_MV_I2C_NUM] = CONFIG_MV_I2C_REG; +static unsigned int bus_initialized[CONFIG_MV_I2C_NUM]; +static unsigned int current_bus; + +int i2c_set_bus_num(unsigned int bus) +{ + if ((bus < 0) || (bus >= CONFIG_MV_I2C_NUM)) { + printf("Bad bus: %d\n", bus); + return -1; + } + + base_glob = (struct mv_i2c *)i2c_regs[bus]; + current_bus = bus; + + if (!bus_initialized[current_bus]) { + i2c_board_init(base_glob); + bus_initialized[current_bus] = 1; + } + + return 0; +} + +unsigned int i2c_get_bus_num(void) +{ + return current_bus; +} +#endif + +/* API Functions */ +void i2c_init(int speed, int slaveaddr) +{ + u32 val; + +#ifdef CONFIG_I2C_MULTI_BUS + current_bus = 0; + base_glob = (struct mv_i2c *)i2c_regs[current_bus]; +#else + base_glob = (struct mv_i2c *)CONFIG_MV_I2C_REG; +#endif + + if (speed > 100000) + val = ICR_FM; + else + val = ICR_SM; + clrsetbits_le32(&base_glob->icr, ICR_MODE_MASK, val); + + i2c_board_init(base_glob); +} + +static int __i2c_probe_chip(struct mv_i2c *base, uchar chip) +{ + struct mv_i2c_msg msg; + + i2c_reset(base); + + msg.condition = I2C_COND_START; + msg.acknack = I2C_ACKNAK_WAITACK; + msg.direction = I2C_WRITE; + msg.data = (chip << 1) + 1; + if (i2c_transfer(base, &msg)) + return -1; + + msg.condition = I2C_COND_STOP; + msg.acknack = I2C_ACKNAK_SENDNAK; + msg.direction = I2C_READ; + msg.data = 0x00; + if (i2c_transfer(base, &msg)) + return -1; return 0; } -#endif /* CONFIG_HARD_I2C */ + +/* + * i2c_probe: - Test if a chip answers for a given i2c address + * + * @chip: address of the chip which is searched for + * @return: 0 if a chip was found, -1 otherwhise + */ +int i2c_probe(uchar chip) +{ + return __i2c_probe_chip(base_glob, chip); +} + +/* + * i2c_read: - Read multiple bytes from an i2c device + * + * The higher level routines take into account that this function is only + * called with len < page length of the device (see configuration file) + * + * @chip: address of the chip which is to be read + * @addr: i2c data address within the chip + * @alen: length of the i2c data address (1..2 bytes) + * @buffer: where to write the data + * @len: how much byte do we want to read + * @return: 0 in case of success + */ +int i2c_read(uchar chip, uint addr, int alen, uchar *buffer, int len) +{ + u8 addr_bytes[4]; + + addr_bytes[0] = (addr >> 0) & 0xFF; + addr_bytes[1] = (addr >> 8) & 0xFF; + addr_bytes[2] = (addr >> 16) & 0xFF; + addr_bytes[3] = (addr >> 24) & 0xFF; + + return __i2c_read(base_glob, chip, addr_bytes, alen, buffer, len); +} + +/* + * i2c_write: - Write multiple bytes to an i2c device + * + * The higher level routines take into account that this function is only + * called with len < page length of the device (see configuration file) + * + * @chip: address of the chip which is to be written + * @addr: i2c data address within the chip + * @alen: length of the i2c data address (1..2 bytes) + * @buffer: where to find the data to be written + * @len: how much byte do we want to read + * @return: 0 in case of success + */ +int i2c_write(uchar chip, uint addr, int alen, uchar *buffer, int len) +{ + u8 addr_bytes[4]; + + addr_bytes[0] = (addr >> 0) & 0xFF; + addr_bytes[1] = (addr >> 8) & 0xFF; + addr_bytes[2] = (addr >> 16) & 0xFF; + addr_bytes[3] = (addr >> 24) & 0xFF; + + return __i2c_write(base_glob, chip, addr_bytes, alen, buffer, len); +} + +#else /* CONFIG_DM_I2C */ + +struct mv_i2c_priv { + struct mv_i2c *base; +}; + +static int mv_i2c_xfer(struct udevice *bus, struct i2c_msg *msg, int nmsgs) +{ + struct mv_i2c_priv *i2c = dev_get_priv(bus); + struct i2c_msg *dmsg, *omsg, dummy; + + memset(&dummy, 0, sizeof(struct i2c_msg)); + + /* + * We expect either two messages (one with an offset and one with the + * actual data) or one message (just data or offset/data combined) + */ + if (nmsgs > 2 || nmsgs == 0) { + debug("%s: Only one or two messages are supported.", __func__); + return -1; + } + + omsg = nmsgs == 1 ? &dummy : msg; + dmsg = nmsgs == 1 ? msg : msg + 1; + + if (dmsg->flags & I2C_M_RD) + return __i2c_read(i2c->base, dmsg->addr, omsg->buf, + omsg->len, dmsg->buf, dmsg->len); + else + return __i2c_write(i2c->base, dmsg->addr, omsg->buf, + omsg->len, dmsg->buf, dmsg->len); +} + +static int mv_i2c_set_bus_speed(struct udevice *bus, unsigned int speed) +{ + struct mv_i2c_priv *priv = dev_get_priv(bus); + u32 val; + + if (speed > 100000) + val = ICR_FM; + else + val = ICR_SM; + clrsetbits_le32(&priv->base->icr, ICR_MODE_MASK, val); + + return 0; +} + +static int mv_i2c_probe(struct udevice *bus) +{ + struct mv_i2c_priv *priv = dev_get_priv(bus); + + priv->base = (void *)dev_get_addr_ptr(bus); + + return 0; +} + +static const struct dm_i2c_ops mv_i2c_ops = { + .xfer = mv_i2c_xfer, + .set_bus_speed = mv_i2c_set_bus_speed, +}; + +static const struct udevice_id mv_i2c_ids[] = { + { .compatible = "marvell,armada-3700-i2c" }, + { } +}; + +U_BOOT_DRIVER(i2c_mv) = { + .name = "i2c_mv", + .id = UCLASS_I2C, + .of_match = mv_i2c_ids, + .probe = mv_i2c_probe, + .priv_auto_alloc_size = sizeof(struct mv_i2c_priv), + .ops = &mv_i2c_ops, +}; +#endif /* CONFIG_DM_I2C */ diff --git a/drivers/i2c/mv_i2c.h b/drivers/i2c/mv_i2c.h index ae27c447b0..1e6289290d 100644 --- a/drivers/i2c/mv_i2c.h +++ b/drivers/i2c/mv_i2c.h @@ -23,12 +23,7 @@ extern void i2c_clk_enable(void); #define I2C_READ 0 #define I2C_WRITE 1 -#if (CONFIG_SYS_I2C_SPEED == 400000) -#define I2C_ICR_INIT (ICR_FM | ICR_BEIE | ICR_IRFIE | ICR_ITEIE | ICR_GCD \ - | ICR_SCLE) -#else #define I2C_ICR_INIT (ICR_BEIE | ICR_IRFIE | ICR_ITEIE | ICR_GCD | ICR_SCLE) -#endif #define I2C_ISR_INIT 0x7FF /* ----- Control register bits ---------------------------------------- */ @@ -48,7 +43,15 @@ extern void i2c_clk_enable(void); #define ICR_ALDIE 0x1000 /* enable arbitration interrupt */ #define ICR_SADIE 0x2000 /* slave address detected int enable */ #define ICR_UR 0x4000 /* unit reset */ -#define ICR_FM 0x8000 /* Fast Mode */ +#ifdef CONFIG_ARMADA_3700 +#define ICR_SM 0x00000 /* Standard Mode */ +#define ICR_FM 0x10000 /* Fast Mode */ +#define ICR_MODE_MASK 0x30000 /* Mode mask */ +#else +#define ICR_SM 0x00000 /* Standard Mode */ +#define ICR_FM 0x08000 /* Fast Mode */ +#define ICR_MODE_MASK 0x18000 /* Mode mask */ +#endif /* ----- Status register bits ----------------------------------------- */ diff --git a/drivers/i2c/mvtwsi.c b/drivers/i2c/mvtwsi.c index 3765fed50d..60c8ea1914 100644 --- a/drivers/i2c/mvtwsi.c +++ b/drivers/i2c/mvtwsi.c @@ -10,7 +10,7 @@ #include <common.h> #include <i2c.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <linux/compat.h> #ifdef CONFIG_DM_I2C @@ -830,6 +830,7 @@ static const struct dm_i2c_ops mvtwsi_i2c_ops = { static const struct udevice_id mvtwsi_i2c_ids[] = { { .compatible = "marvell,mv64xxx-i2c", }, + { .compatible = "marvell,mv78230-i2c", }, { /* sentinel */ } }; diff --git a/drivers/i2c/mxc_i2c.c b/drivers/i2c/mxc_i2c.c index f3402089a8..a26f44e1e6 100644 --- a/drivers/i2c/mxc_i2c.c +++ b/drivers/i2c/mxc_i2c.c @@ -17,7 +17,7 @@ #include <common.h> #include <asm/arch/clock.h> #include <asm/arch/imx-regs.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/imx-common/mxc_i2c.h> #include <asm/io.h> #include <i2c.h> diff --git a/drivers/i2c/mxs_i2c.c b/drivers/i2c/mxs_i2c.c index 87e05c7125..d454410755 100644 --- a/drivers/i2c/mxs_i2c.c +++ b/drivers/i2c/mxs_i2c.c @@ -16,7 +16,7 @@ #include <common.h> #include <malloc.h> #include <i2c.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/arch/clock.h> #include <asm/arch/imx-regs.h> diff --git a/drivers/i2c/rk_i2c.c b/drivers/i2c/rk_i2c.c index 63b141838b..7c701cbed0 100644 --- a/drivers/i2c/rk_i2c.c +++ b/drivers/i2c/rk_i2c.c @@ -258,7 +258,7 @@ static int rk_i2c_write(struct rk_i2c *i2c, uchar chip, uint reg, uint r_len, while (bytes_remain_len) { if (bytes_remain_len > RK_I2C_FIFO_SIZE) - bytes_xferred = 32; + bytes_xferred = RK_I2C_FIFO_SIZE; else bytes_xferred = bytes_remain_len; words_xferred = DIV_ROUND_UP(bytes_xferred, 4); @@ -269,17 +269,17 @@ static int rk_i2c_write(struct rk_i2c *i2c, uchar chip, uint reg, uint r_len, if ((i * 4 + j) == bytes_xferred) break; - if (i == 0 && j == 0) { + if (i == 0 && j == 0 && pbuf == buf) { txdata |= (chip << 1); - } else if (i == 0 && j <= r_len) { + } else if (i == 0 && j <= r_len && pbuf == buf) { txdata |= (reg & (0xff << ((j - 1) * 8))) << 8; } else { txdata |= (*pbuf++)<<(j * 8); } - writel(txdata, ®s->txdata[i]); } - debug("I2c Write TXDATA[%d] = 0x%x\n", i, txdata); + writel(txdata, ®s->txdata[i]); + debug("I2c Write TXDATA[%d] = 0x%08x\n", i, txdata); } writel(I2C_CON_EN | I2C_CON_MOD(I2C_MODE_TX), ®s->con); diff --git a/drivers/i2c/zynq_i2c.c b/drivers/i2c/zynq_i2c.c index 380863bde1..2f6b364a7d 100644 --- a/drivers/i2c/zynq_i2c.c +++ b/drivers/i2c/zynq_i2c.c @@ -13,7 +13,7 @@ #include <common.h> #include <asm/io.h> #include <i2c.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/hardware.h> /* i2c register set */ diff --git a/drivers/misc/cros_ec.c b/drivers/misc/cros_ec.c index aea8d61f34..9378e96129 100644 --- a/drivers/misc/cros_ec.c +++ b/drivers/misc/cros_ec.c @@ -22,7 +22,7 @@ #include <fdtdec.h> #include <malloc.h> #include <spi.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm-generic/gpio.h> #include <dm/device-internal.h> diff --git a/drivers/misc/fsl_iim.c b/drivers/misc/fsl_iim.c index 36433a74f8..2feb1823e4 100644 --- a/drivers/misc/fsl_iim.c +++ b/drivers/misc/fsl_iim.c @@ -11,7 +11,7 @@ #include <common.h> #include <fuse.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #ifndef CONFIG_MPC512X #include <asm/arch/imx-regs.h> diff --git a/drivers/misc/mc9sdz60.c b/drivers/misc/mc9sdz60.c index cd56b58c22..61ed50d900 100644 --- a/drivers/misc/mc9sdz60.c +++ b/drivers/misc/mc9sdz60.c @@ -7,7 +7,7 @@ #include <config.h> #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <linux/types.h> #include <i2c.h> #include <mc9sdz60.h> diff --git a/drivers/misc/mxc_ocotp.c b/drivers/misc/mxc_ocotp.c index 38344e8090..6b8566c8d0 100644 --- a/drivers/misc/mxc_ocotp.c +++ b/drivers/misc/mxc_ocotp.c @@ -14,7 +14,7 @@ #include <common.h> #include <fuse.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/arch/clock.h> #include <asm/arch/imx-regs.h> diff --git a/drivers/misc/mxs_ocotp.c b/drivers/misc/mxs_ocotp.c index 6c0d247ed2..a42164cccd 100644 --- a/drivers/misc/mxs_ocotp.c +++ b/drivers/misc/mxs_ocotp.c @@ -14,7 +14,7 @@ #include <common.h> #include <fuse.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/arch/clock.h> #include <asm/arch/imx-regs.h> diff --git a/drivers/mmc/Kconfig b/drivers/mmc/Kconfig index a71afa59be..ba9a7237b4 100644 --- a/drivers/mmc/Kconfig +++ b/drivers/mmc/Kconfig @@ -80,6 +80,7 @@ config ROCKCHIP_SDHCI config MMC_UNIPHIER bool "UniPhier SD/MMC Host Controller support" depends on ARCH_UNIPHIER + depends on BLK select DM_MMC_OPS help This selects support for the SD/MMC Host Controller on UniPhier SoCs. diff --git a/drivers/mmc/atmel_sdhci.c b/drivers/mmc/atmel_sdhci.c index dd6bd33515..d8f8087b68 100644 --- a/drivers/mmc/atmel_sdhci.c +++ b/drivers/mmc/atmel_sdhci.c @@ -136,13 +136,8 @@ static int atmel_sdhci_probe(struct udevice *dev) static int atmel_sdhci_bind(struct udevice *dev) { struct atmel_sdhci_plat *plat = dev_get_platdata(dev); - int ret; - ret = sdhci_bind(dev, &plat->mmc, &plat->cfg); - if (ret) - return ret; - - return 0; + return sdhci_bind(dev, &plat->mmc, &plat->cfg); } static const struct udevice_id atmel_sdhci_ids[] = { diff --git a/drivers/mmc/bfin_sdh.c b/drivers/mmc/bfin_sdh.c index 0e493dae0e..993a00cdb1 100644 --- a/drivers/mmc/bfin_sdh.c +++ b/drivers/mmc/bfin_sdh.c @@ -12,7 +12,7 @@ #include <mmc.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/byteorder.h> #include <asm/blackfin.h> #include <asm/clock.h> diff --git a/drivers/mmc/dw_mmc.c b/drivers/mmc/dw_mmc.c index afc674dd14..074f86c502 100644 --- a/drivers/mmc/dw_mmc.c +++ b/drivers/mmc/dw_mmc.c @@ -120,9 +120,9 @@ static int dwmci_data_transfer(struct dwmci_host *host, struct mmc_data *data) if (host->fifo_mode && size) { len = 0; - if (data->flags == MMC_DATA_READ) { - if ((dwmci_readl(host, DWMCI_RINTSTS) & - DWMCI_INTMSK_RXDR)) { + if (data->flags == MMC_DATA_READ && + (mask & DWMCI_INTMSK_RXDR)) { + while (size) { len = dwmci_readl(host, DWMCI_STATUS); len = (len >> DWMCI_FIFO_SHIFT) & DWMCI_FIFO_MASK; @@ -130,12 +130,13 @@ static int dwmci_data_transfer(struct dwmci_host *host, struct mmc_data *data) for (i = 0; i < len; i++) *buf++ = dwmci_readl(host, DWMCI_DATA); - dwmci_writel(host, DWMCI_RINTSTS, - DWMCI_INTMSK_RXDR); + size = size > len ? (size - len) : 0; } - } else { - if ((dwmci_readl(host, DWMCI_RINTSTS) & - DWMCI_INTMSK_TXDR)) { + dwmci_writel(host, DWMCI_RINTSTS, + DWMCI_INTMSK_RXDR); + } else if (data->flags == MMC_DATA_WRITE && + (mask & DWMCI_INTMSK_TXDR)) { + while (size) { len = dwmci_readl(host, DWMCI_STATUS); len = fifo_depth - ((len >> DWMCI_FIFO_SHIFT) & @@ -144,11 +145,11 @@ static int dwmci_data_transfer(struct dwmci_host *host, struct mmc_data *data) for (i = 0; i < len; i++) dwmci_writel(host, DWMCI_DATA, *buf++); - dwmci_writel(host, DWMCI_RINTSTS, - DWMCI_INTMSK_TXDR); + size = size > len ? (size - len) : 0; } + dwmci_writel(host, DWMCI_RINTSTS, + DWMCI_INTMSK_TXDR); } - size = size > len ? (size - len) : 0; } /* Data arrived correctly. */ diff --git a/drivers/mmc/exynos_dw_mmc.c b/drivers/mmc/exynos_dw_mmc.c index 57271f18b0..568fed74be 100644 --- a/drivers/mmc/exynos_dw_mmc.c +++ b/drivers/mmc/exynos_dw_mmc.c @@ -284,13 +284,8 @@ static int exynos_dwmmc_probe(struct udevice *dev) static int exynos_dwmmc_bind(struct udevice *dev) { struct exynos_mmc_plat *plat = dev_get_platdata(dev); - int ret; - ret = dwmci_bind(dev, &plat->mmc, &plat->cfg); - if (ret) - return ret; - - return 0; + return dwmci_bind(dev, &plat->mmc, &plat->cfg); } static const struct udevice_id exynos_dwmmc_ids[] = { diff --git a/drivers/mmc/ftsdc010_mci.c b/drivers/mmc/ftsdc010_mci.c index c02740f0ef..e88c6322e9 100644 --- a/drivers/mmc/ftsdc010_mci.c +++ b/drivers/mmc/ftsdc010_mci.c @@ -13,7 +13,7 @@ #include <mmc.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/byteorder.h> #include <faraday/ftsdc010.h> diff --git a/drivers/mmc/gen_atmel_mci.c b/drivers/mmc/gen_atmel_mci.c index 69770df44d..cca0b04a60 100644 --- a/drivers/mmc/gen_atmel_mci.c +++ b/drivers/mmc/gen_atmel_mci.c @@ -14,7 +14,7 @@ #include <part.h> #include <malloc.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/byteorder.h> #include <asm/arch/clk.h> #include <asm/arch/hardware.h> diff --git a/drivers/mmc/hi6220_dw_mmc.c b/drivers/mmc/hi6220_dw_mmc.c index b0d063c698..fdaf1e40bc 100644 --- a/drivers/mmc/hi6220_dw_mmc.c +++ b/drivers/mmc/hi6220_dw_mmc.c @@ -8,7 +8,7 @@ #include <common.h> #include <dwmmc.h> #include <malloc.h> -#include <asm-generic/errno.h> +#include <linux/errno.h> #define DWMMC_MAX_CH_NUM 4 diff --git a/drivers/mmc/kona_sdhci.c b/drivers/mmc/kona_sdhci.c index 3653d00b1b..e730caa207 100644 --- a/drivers/mmc/kona_sdhci.c +++ b/drivers/mmc/kona_sdhci.c @@ -7,7 +7,7 @@ #include <common.h> #include <malloc.h> #include <sdhci.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/kona-common/clk.h> #define SDHCI_CORECTRL_OFFSET 0x00008000 diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c index 43ea0bba76..0312da91af 100644 --- a/drivers/mmc/mmc.c +++ b/drivers/mmc/mmc.c @@ -21,6 +21,14 @@ #include <div64.h> #include "mmc_private.h" +static const unsigned int sd_au_size[] = { + 0, SZ_16K / 512, SZ_32K / 512, + SZ_64K / 512, SZ_128K / 512, SZ_256K / 512, + SZ_512K / 512, SZ_1M / 512, SZ_2M / 512, + SZ_4M / 512, SZ_8M / 512, (SZ_8M + SZ_4M) / 512, + SZ_16M / 512, (SZ_16M + SZ_8M) / 512, SZ_32M / 512, SZ_64M / 512, +}; + #ifndef CONFIG_DM_MMC_OPS __weak int board_mmc_getwp(struct mmc *mmc) { @@ -945,6 +953,62 @@ retry_scr: return 0; } +static int sd_read_ssr(struct mmc *mmc) +{ + int err, i; + struct mmc_cmd cmd; + ALLOC_CACHE_ALIGN_BUFFER(uint, ssr, 16); + struct mmc_data data; + int timeout = 3; + unsigned int au, eo, et, es; + + cmd.cmdidx = MMC_CMD_APP_CMD; + cmd.resp_type = MMC_RSP_R1; + cmd.cmdarg = mmc->rca << 16; + + err = mmc_send_cmd(mmc, &cmd, NULL); + if (err) + return err; + + cmd.cmdidx = SD_CMD_APP_SD_STATUS; + cmd.resp_type = MMC_RSP_R1; + cmd.cmdarg = 0; + +retry_ssr: + data.dest = (char *)ssr; + data.blocksize = 64; + data.blocks = 1; + data.flags = MMC_DATA_READ; + + err = mmc_send_cmd(mmc, &cmd, &data); + if (err) { + if (timeout--) + goto retry_ssr; + + return err; + } + + for (i = 0; i < 16; i++) + ssr[i] = be32_to_cpu(ssr[i]); + + au = (ssr[2] >> 12) & 0xF; + if ((au <= 9) || (mmc->version == SD_VERSION_3)) { + mmc->ssr.au = sd_au_size[au]; + es = (ssr[3] >> 24) & 0xFF; + es |= (ssr[2] & 0xFF) << 8; + et = (ssr[3] >> 18) & 0x3F; + if (es && et) { + eo = (ssr[3] >> 16) & 0x3; + mmc->ssr.erase_timeout = (et * 1000) / es; + mmc->ssr.erase_offset = eo * 1000; + } + } else { + debug("Invalid Allocation Unit Size.\n"); + } + + return 0; +} + /* frequency bases */ /* divided by 10 to be nice to platforms without floating point */ static const int fbase[] = { @@ -1350,6 +1414,10 @@ static int mmc_startup(struct mmc *mmc) mmc_set_bus_width(mmc, 4); } + err = sd_read_ssr(mmc); + if (err) + return err; + if (mmc->card_caps & MMC_MODE_HS) mmc->tran_speed = 50000000; else diff --git a/drivers/mmc/mmc_boot.c b/drivers/mmc/mmc_boot.c index 756a9824e3..ac6f56f157 100644 --- a/drivers/mmc/mmc_boot.c +++ b/drivers/mmc/mmc_boot.c @@ -85,16 +85,10 @@ int mmc_boot_partition_size_change(struct mmc *mmc, unsigned long bootsize, */ int mmc_set_boot_bus_width(struct mmc *mmc, u8 width, u8 reset, u8 mode) { - int err; - - err = mmc_switch(mmc, EXT_CSD_CMD_SET_NORMAL, EXT_CSD_BOOT_BUS_WIDTH, - EXT_CSD_BOOT_BUS_WIDTH_MODE(mode) | - EXT_CSD_BOOT_BUS_WIDTH_RESET(reset) | - EXT_CSD_BOOT_BUS_WIDTH_WIDTH(width)); - - if (err) - return err; - return 0; + return mmc_switch(mmc, EXT_CSD_CMD_SET_NORMAL, EXT_CSD_BOOT_BUS_WIDTH, + EXT_CSD_BOOT_BUS_WIDTH_MODE(mode) | + EXT_CSD_BOOT_BUS_WIDTH_RESET(reset) | + EXT_CSD_BOOT_BUS_WIDTH_WIDTH(width)); } /* @@ -106,16 +100,10 @@ int mmc_set_boot_bus_width(struct mmc *mmc, u8 width, u8 reset, u8 mode) */ int mmc_set_part_conf(struct mmc *mmc, u8 ack, u8 part_num, u8 access) { - int err; - - err = mmc_switch(mmc, EXT_CSD_CMD_SET_NORMAL, EXT_CSD_PART_CONF, - EXT_CSD_BOOT_ACK(ack) | - EXT_CSD_BOOT_PART_NUM(part_num) | - EXT_CSD_PARTITION_ACCESS(access)); - - if (err) - return err; - return 0; + return mmc_switch(mmc, EXT_CSD_CMD_SET_NORMAL, EXT_CSD_PART_CONF, + EXT_CSD_BOOT_ACK(ack) | + EXT_CSD_BOOT_PART_NUM(part_num) | + EXT_CSD_PARTITION_ACCESS(access)); } /* diff --git a/drivers/mmc/mmc_write.c b/drivers/mmc/mmc_write.c index 0f8b5c79d7..2289640375 100644 --- a/drivers/mmc/mmc_write.c +++ b/drivers/mmc/mmc_write.c @@ -100,8 +100,13 @@ unsigned long mmc_berase(struct blk_desc *block_dev, lbaint_t start, & ~(mmc->erase_grp_size - 1)) - 1); while (blk < blkcnt) { - blk_r = ((blkcnt - blk) > mmc->erase_grp_size) ? - mmc->erase_grp_size : (blkcnt - blk); + if (IS_SD(mmc) && mmc->ssr.au) { + blk_r = ((blkcnt - blk) > mmc->ssr.au) ? + mmc->ssr.au : (blkcnt - blk); + } else { + blk_r = ((blkcnt - blk) > mmc->erase_grp_size) ? + mmc->erase_grp_size : (blkcnt - blk); + } err = mmc_erase_t(mmc, start + blk, blk_r); if (err) break; diff --git a/drivers/mmc/msm_sdhci.c b/drivers/mmc/msm_sdhci.c index 8d4399e967..1b82991c0e 100644 --- a/drivers/mmc/msm_sdhci.c +++ b/drivers/mmc/msm_sdhci.c @@ -190,13 +190,8 @@ static int msm_ofdata_to_platdata(struct udevice *dev) static int msm_sdc_bind(struct udevice *dev) { struct msm_sdhc_plat *plat = dev_get_platdata(dev); - int ret; - ret = sdhci_bind(dev, &plat->mmc, &plat->cfg); - if (ret) - return ret; - - return 0; + return sdhci_bind(dev, &plat->mmc, &plat->cfg); } static const struct udevice_id msm_mmc_ids[] = { diff --git a/drivers/mmc/mxcmmc.c b/drivers/mmc/mxcmmc.c index 8038f90452..5a385a37f8 100644 --- a/drivers/mmc/mxcmmc.c +++ b/drivers/mmc/mxcmmc.c @@ -23,7 +23,7 @@ #include <part.h> #include <malloc.h> #include <mmc.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/arch/clock.h> diff --git a/drivers/mmc/mxsmmc.c b/drivers/mmc/mxsmmc.c index 40f3eaaa86..0896028403 100644 --- a/drivers/mmc/mxsmmc.c +++ b/drivers/mmc/mxsmmc.c @@ -20,7 +20,7 @@ #include <common.h> #include <malloc.h> #include <mmc.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/arch/clock.h> #include <asm/arch/imx-regs.h> diff --git a/drivers/mmc/pic32_sdhci.c b/drivers/mmc/pic32_sdhci.c index abe74293ed..2abf943bdb 100644 --- a/drivers/mmc/pic32_sdhci.c +++ b/drivers/mmc/pic32_sdhci.c @@ -10,7 +10,7 @@ #include <dm.h> #include <common.h> #include <sdhci.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <mach/pic32.h> DECLARE_GLOBAL_DATA_PTR; diff --git a/drivers/mmc/pxa_mmc_gen.c b/drivers/mmc/pxa_mmc_gen.c index 19ae81d470..a5462e2148 100644 --- a/drivers/mmc/pxa_mmc_gen.c +++ b/drivers/mmc/pxa_mmc_gen.c @@ -9,7 +9,7 @@ #include <common.h> #include <asm/arch/hardware.h> #include <asm/arch/regs-mmc.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <malloc.h> #include <mmc.h> diff --git a/drivers/mmc/rockchip_dw_mmc.c b/drivers/mmc/rockchip_dw_mmc.c index 020a59b921..859760b8b0 100644 --- a/drivers/mmc/rockchip_dw_mmc.c +++ b/drivers/mmc/rockchip_dw_mmc.c @@ -142,13 +142,8 @@ static int rockchip_dwmmc_probe(struct udevice *dev) static int rockchip_dwmmc_bind(struct udevice *dev) { struct rockchip_mmc_plat *plat = dev_get_platdata(dev); - int ret; - ret = dwmci_bind(dev, &plat->mmc, &plat->cfg); - if (ret) - return ret; - - return 0; + return dwmci_bind(dev, &plat->mmc, &plat->cfg); } static const struct udevice_id rockchip_dwmmc_ids[] = { diff --git a/drivers/mmc/rockchip_sdhci.c b/drivers/mmc/rockchip_sdhci.c index 624029bd20..c56e1a3a1c 100644 --- a/drivers/mmc/rockchip_sdhci.c +++ b/drivers/mmc/rockchip_sdhci.c @@ -62,13 +62,8 @@ static int arasan_sdhci_ofdata_to_platdata(struct udevice *dev) static int rockchip_sdhci_bind(struct udevice *dev) { struct rockchip_sdhc_plat *plat = dev_get_platdata(dev); - int ret; - ret = sdhci_bind(dev, &plat->mmc, &plat->cfg); - if (ret) - return ret; - - return 0; + return sdhci_bind(dev, &plat->mmc, &plat->cfg); } static const struct udevice_id arasan_sdhci_ids[] = { diff --git a/drivers/mmc/sandbox_mmc.c b/drivers/mmc/sandbox_mmc.c index 5f1333b748..fdb29a5505 100644 --- a/drivers/mmc/sandbox_mmc.c +++ b/drivers/mmc/sandbox_mmc.c @@ -112,7 +112,6 @@ int sandbox_mmc_bind(struct udevice *dev) { struct sandbox_mmc_plat *plat = dev_get_platdata(dev); struct mmc_config *cfg = &plat->cfg; - int ret; cfg->name = dev->name; cfg->host_caps = MMC_MODE_HS_52MHz | MMC_MODE_HS | MMC_MODE_8BIT; @@ -121,11 +120,7 @@ int sandbox_mmc_bind(struct udevice *dev) cfg->f_max = 52000000; cfg->b_max = U32_MAX; - ret = mmc_bind(dev, &plat->mmc, cfg); - if (ret) - return ret; - - return 0; + return mmc_bind(dev, &plat->mmc, cfg); } int sandbox_mmc_unbind(struct udevice *dev) diff --git a/drivers/mmc/sdhci.c b/drivers/mmc/sdhci.c index 7ddb549e03..b2bf5a03fa 100644 --- a/drivers/mmc/sdhci.c +++ b/drivers/mmc/sdhci.c @@ -121,13 +121,10 @@ static int sdhci_transfer_data(struct sdhci_host *host, struct mmc_data *data, * for card ready state. * Every time when card is busy after timeout then (last) timeout value will be * increased twice but only if it doesn't exceed global defined maximum. - * Each function call will use last timeout value. Max timeout can be redefined - * in board config file. + * Each function call will use last timeout value. */ -#ifndef CONFIG_SDHCI_CMD_MAX_TIMEOUT -#define CONFIG_SDHCI_CMD_MAX_TIMEOUT 3200 -#endif -#define CONFIG_SDHCI_CMD_DEFAULT_TIMEOUT 100 +#define SDHCI_CMD_MAX_TIMEOUT 3200 +#define SDHCI_CMD_DEFAULT_TIMEOUT 100 #define SDHCI_READ_STATUS_TIMEOUT 1000 #ifdef CONFIG_DM_MMC_OPS @@ -151,7 +148,7 @@ static int sdhci_send_command(struct mmc *mmc, struct mmc_cmd *cmd, unsigned start = get_timer(0); /* Timeout unit - ms */ - static unsigned int cmd_timeout = CONFIG_SDHCI_CMD_DEFAULT_TIMEOUT; + static unsigned int cmd_timeout = SDHCI_CMD_DEFAULT_TIMEOUT; sdhci_writel(host, SDHCI_INT_ALL_MASK, SDHCI_INT_STATUS); mask = SDHCI_CMD_INHIBIT | SDHCI_DATA_INHIBIT; @@ -164,7 +161,7 @@ static int sdhci_send_command(struct mmc *mmc, struct mmc_cmd *cmd, while (sdhci_readl(host, SDHCI_PRESENT_STATE) & mask) { if (time >= cmd_timeout) { printf("%s: MMC: %d busy ", __func__, mmc_dev); - if (2 * cmd_timeout <= CONFIG_SDHCI_CMD_MAX_TIMEOUT) { + if (2 * cmd_timeout <= SDHCI_CMD_MAX_TIMEOUT) { cmd_timeout += cmd_timeout; printf("timeout increasing to: %u ms.\n", cmd_timeout); @@ -297,7 +294,7 @@ static int sdhci_send_command(struct mmc *mmc, struct mmc_cmd *cmd, static int sdhci_set_clock(struct mmc *mmc, unsigned int clock) { struct sdhci_host *host = mmc->priv; - unsigned int div, clk, timeout, reg; + unsigned int div, clk = 0, timeout, reg; /* Wait max 20 ms */ timeout = 200; @@ -321,14 +318,36 @@ static int sdhci_set_clock(struct mmc *mmc, unsigned int clock) return 0; if (SDHCI_GET_VERSION(host) >= SDHCI_SPEC_300) { - /* Version 3.00 divisors must be a multiple of 2. */ - if (mmc->cfg->f_max <= clock) - div = 1; - else { - for (div = 2; div < SDHCI_MAX_DIV_SPEC_300; div += 2) { - if ((mmc->cfg->f_max / div) <= clock) + /* + * Check if the Host Controller supports Programmable Clock + * Mode. + */ + if (host->clk_mul) { + for (div = 1; div <= 1024; div++) { + if ((mmc->cfg->f_max * host->clk_mul / div) + <= clock) break; } + + /* + * Set Programmable Clock Mode in the Clock + * Control register. + */ + clk = SDHCI_PROG_CLOCK_MODE; + div--; + } else { + /* Version 3.00 divisors must be a multiple of 2. */ + if (mmc->cfg->f_max <= clock) { + div = 1; + } else { + for (div = 2; + div < SDHCI_MAX_DIV_SPEC_300; + div += 2) { + if ((mmc->cfg->f_max / div) <= clock) + break; + } + } + div >>= 1; } } else { /* Version 2.00 divisors must be a power of 2. */ @@ -336,13 +355,13 @@ static int sdhci_set_clock(struct mmc *mmc, unsigned int clock) if ((mmc->cfg->f_max / div) <= clock) break; } + div >>= 1; } - div >>= 1; if (host->set_clock) host->set_clock(host->index, div); - clk = (div & SDHCI_DIV_MASK) << SDHCI_DIVIDER_SHIFT; + clk |= (div & SDHCI_DIV_MASK) << SDHCI_DIVIDER_SHIFT; clk |= ((div & SDHCI_DIV_HI_MASK) >> SDHCI_DIV_MASK_LEN) << SDHCI_DIVIDER_HI_SHIFT; clk |= SDHCI_CLOCK_INT_EN; @@ -451,6 +470,8 @@ static int sdhci_init(struct mmc *mmc) { struct sdhci_host *host = mmc->priv; + sdhci_reset(host, SDHCI_RESET_ALL); + if ((host->quirks & SDHCI_QUIRK_32BIT_DMA_ADDR) && !aligned_buffer) { aligned_buffer = memalign(8, 512*1024); if (!aligned_buffer) { @@ -514,9 +535,17 @@ static const struct mmc_ops sdhci_ops = { int sdhci_setup_cfg(struct mmc_config *cfg, struct sdhci_host *host, u32 max_clk, u32 min_clk) { - u32 caps; + u32 caps, caps_1; caps = sdhci_readl(host, SDHCI_CAPABILITIES); + +#ifdef CONFIG_MMC_SDMA + if (!(caps & SDHCI_CAN_DO_SDMA)) { + printf("%s: Your controller doesn't support SDMA!!\n", + __func__); + return -EINVAL; + } +#endif host->version = sdhci_readw(host, SDHCI_HOST_VERSION); cfg->name = host->name; @@ -534,8 +563,11 @@ int sdhci_setup_cfg(struct mmc_config *cfg, struct sdhci_host *host, SDHCI_CLOCK_BASE_SHIFT; cfg->f_max *= 1000000; } - if (cfg->f_max == 0) + if (cfg->f_max == 0) { + printf("%s: Hardware doesn't specify base clock frequency\n", + __func__); return -EINVAL; + } if (min_clk) cfg->f_min = min_clk; else { @@ -552,6 +584,9 @@ int sdhci_setup_cfg(struct mmc_config *cfg, struct sdhci_host *host, if (caps & SDHCI_CAN_VDD_180) cfg->voltages |= MMC_VDD_165_195; + if (host->quirks & SDHCI_QUIRK_BROKEN_VOLTAGE) + cfg->voltages |= host->voltages; + cfg->host_caps = MMC_MODE_HS | MMC_MODE_HS_52MHz | MMC_MODE_4BIT; if (SDHCI_GET_VERSION(host) >= SDHCI_SPEC_300) { if (caps & SDHCI_CAN_DO_8BIT) @@ -564,6 +599,14 @@ int sdhci_setup_cfg(struct mmc_config *cfg, struct sdhci_host *host, cfg->b_max = CONFIG_SYS_MMC_MAX_BLK_COUNT; + /* + * In case of Host Controller v3.00, find out whether clock + * multiplier is supported. + */ + caps_1 = sdhci_readl(host, SDHCI_CAPABILITIES_1); + host->clk_mul = (caps_1 & SDHCI_CLOCK_MUL_MASK) >> + SDHCI_CLOCK_MUL_SHIFT; + return 0; } @@ -575,27 +618,11 @@ int sdhci_bind(struct udevice *dev, struct mmc *mmc, struct mmc_config *cfg) #else int add_sdhci(struct sdhci_host *host, u32 max_clk, u32 min_clk) { -#ifdef CONFIG_MMC_SDMA - unsigned int caps; - - caps = sdhci_readl(host, SDHCI_CAPABILITIES); - if (!(caps & SDHCI_CAN_DO_SDMA)) { - printf("%s: Your controller doesn't support SDMA!!\n", - __func__); - return -1; - } -#endif - - if (sdhci_setup_cfg(&host->cfg, host, max_clk, min_clk)) { - printf("%s: Hardware doesn't specify base clock frequency\n", - __func__); - return -EINVAL; - } + int ret; - if (host->quirks & SDHCI_QUIRK_BROKEN_VOLTAGE) - host->cfg.voltages |= host->voltages; - - sdhci_reset(host, SDHCI_RESET_ALL); + ret = sdhci_setup_cfg(&host->cfg, host, max_clk, min_clk); + if (ret) + return ret; host->mmc = mmc_create(&host->cfg, host); if (host->mmc == NULL) { diff --git a/drivers/mmc/sh_mmcif.c b/drivers/mmc/sh_mmcif.c index bc4b344811..69ded9ee2c 100644 --- a/drivers/mmc/sh_mmcif.c +++ b/drivers/mmc/sh_mmcif.c @@ -12,7 +12,7 @@ #include <command.h> #include <mmc.h> #include <malloc.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include "sh_mmcif.h" diff --git a/drivers/mmc/sh_sdhi.c b/drivers/mmc/sh_sdhi.c index ea82e2b449..78e2ef643c 100644 --- a/drivers/mmc/sh_sdhi.c +++ b/drivers/mmc/sh_sdhi.c @@ -13,7 +13,7 @@ #include <common.h> #include <malloc.h> #include <mmc.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/arch/rmobile.h> #include <asm/arch/sh_sdhi.h> diff --git a/drivers/mmc/uniphier-sd.c b/drivers/mmc/uniphier-sd.c index 701b26f44c..4af7fdb13c 100644 --- a/drivers/mmc/uniphier-sd.c +++ b/drivers/mmc/uniphier-sd.c @@ -119,9 +119,12 @@ DECLARE_GLOBAL_DATA_PTR; /* alignment required by the DMA engine of this controller */ #define UNIPHIER_SD_DMA_MINALIGN 0x10 -struct uniphier_sd_priv { +struct uniphier_sd_plat { struct mmc_config cfg; - struct mmc *mmc; + struct mmc mmc; +}; + +struct uniphier_sd_priv { void __iomem *regbase; unsigned long mclk; unsigned int version; @@ -654,8 +657,16 @@ static void uniphier_sd_host_init(struct uniphier_sd_priv *priv) } } +static int uniphier_sd_bind(struct udevice *dev) +{ + struct uniphier_sd_plat *plat = dev_get_platdata(dev); + + return mmc_bind(dev, &plat->mmc, &plat->cfg); +} + static int uniphier_sd_probe(struct udevice *dev) { + struct uniphier_sd_plat *plat = dev_get_platdata(dev); struct uniphier_sd_priv *priv = dev_get_priv(dev); struct mmc_uclass_priv *upriv = dev_get_uclass_priv(dev); fdt_addr_t base; @@ -691,15 +702,15 @@ static int uniphier_sd_probe(struct udevice *dev) return ret; } - priv->cfg.name = dev->name; - priv->cfg.host_caps = MMC_MODE_HS_52MHz | MMC_MODE_HS; + plat->cfg.name = dev->name; + plat->cfg.host_caps = MMC_MODE_HS_52MHz | MMC_MODE_HS; switch (fdtdec_get_int(gd->fdt_blob, dev->of_offset, "bus-width", 1)) { case 8: - priv->cfg.host_caps |= MMC_MODE_8BIT; + plat->cfg.host_caps |= MMC_MODE_8BIT; break; case 4: - priv->cfg.host_caps |= MMC_MODE_4BIT; + plat->cfg.host_caps |= MMC_MODE_4BIT; break; case 1: break; @@ -722,27 +733,13 @@ static int uniphier_sd_probe(struct udevice *dev) uniphier_sd_host_init(priv); - priv->cfg.voltages = MMC_VDD_165_195 | MMC_VDD_32_33 | MMC_VDD_33_34; - priv->cfg.f_min = priv->mclk / + plat->cfg.voltages = MMC_VDD_165_195 | MMC_VDD_32_33 | MMC_VDD_33_34; + plat->cfg.f_min = priv->mclk / (priv->caps & UNIPHIER_SD_CAP_DIV1024 ? 1024 : 512); - priv->cfg.f_max = priv->mclk; - priv->cfg.b_max = U32_MAX; /* max value of UNIPHIER_SD_SECCNT */ - - priv->mmc = mmc_create(&priv->cfg, priv); - if (!priv->mmc) - return -EIO; - - upriv->mmc = priv->mmc; - priv->mmc->dev = dev; - - return 0; -} - -static int uniphier_sd_remove(struct udevice *dev) -{ - struct uniphier_sd_priv *priv = dev_get_priv(dev); + plat->cfg.f_max = priv->mclk; + plat->cfg.b_max = U32_MAX; /* max value of UNIPHIER_SD_SECCNT */ - mmc_destroy(priv->mmc); + upriv->mmc = &plat->mmc; return 0; } @@ -756,8 +753,9 @@ U_BOOT_DRIVER(uniphier_mmc) = { .name = "uniphier-mmc", .id = UCLASS_MMC, .of_match = uniphier_sd_match, + .bind = uniphier_sd_bind, .probe = uniphier_sd_probe, - .remove = uniphier_sd_remove, .priv_auto_alloc_size = sizeof(struct uniphier_sd_priv), + .platdata_auto_alloc_size = sizeof(struct uniphier_sd_plat), .ops = &uniphier_sd_ops, }; diff --git a/drivers/mmc/zynq_sdhci.c b/drivers/mmc/zynq_sdhci.c index 3815b94329..b991102c2a 100644 --- a/drivers/mmc/zynq_sdhci.c +++ b/drivers/mmc/zynq_sdhci.c @@ -63,13 +63,8 @@ static int arasan_sdhci_ofdata_to_platdata(struct udevice *dev) static int arasan_sdhci_bind(struct udevice *dev) { struct arasan_sdhci_plat *plat = dev_get_platdata(dev); - int ret; - ret = sdhci_bind(dev, &plat->mmc, &plat->cfg); - if (ret) - return ret; - - return 0; + return sdhci_bind(dev, &plat->mmc, &plat->cfg); } static const struct udevice_id arasan_sdhci_ids[] = { diff --git a/drivers/mtd/Kconfig b/drivers/mtd/Kconfig index 390e9e4ea3..3a9705c41b 100644 --- a/drivers/mtd/Kconfig +++ b/drivers/mtd/Kconfig @@ -40,3 +40,5 @@ endmenu source "drivers/mtd/nand/Kconfig" source "drivers/mtd/spi/Kconfig" + +source "drivers/mtd/ubi/Kconfig" diff --git a/drivers/mtd/cfi_mtd.c b/drivers/mtd/cfi_mtd.c index 709a48642d..3c061736a2 100644 --- a/drivers/mtd/cfi_mtd.c +++ b/drivers/mtd/cfi_mtd.c @@ -10,7 +10,7 @@ #include <flash.h> #include <malloc.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <linux/mtd/mtd.h> #include <linux/mtd/concat.h> #include <mtd/cfi_flash.h> diff --git a/drivers/mtd/mtdpart.c b/drivers/mtd/mtdpart.c index cddfb1609c..5e42c4b833 100644 --- a/drivers/mtd/mtdpart.c +++ b/drivers/mtd/mtdpart.c @@ -20,7 +20,7 @@ #include <common.h> #include <malloc.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <linux/compat.h> #include <ubi_uboot.h> diff --git a/drivers/mtd/nand/arasan_nfc.c b/drivers/mtd/nand/arasan_nfc.c index 320cbaa859..86f7526a84 100644 --- a/drivers/mtd/nand/arasan_nfc.c +++ b/drivers/mtd/nand/arasan_nfc.c @@ -9,7 +9,7 @@ #include <common.h> #include <malloc.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <linux/mtd/mtd.h> #include <linux/mtd/nand.h> #include <linux/mtd/partitions.h> diff --git a/drivers/mtd/nand/denali.c b/drivers/mtd/nand/denali.c index 601e744a08..18280b0b2f 100644 --- a/drivers/mtd/nand/denali.c +++ b/drivers/mtd/nand/denali.c @@ -9,7 +9,7 @@ #include <common.h> #include <malloc.h> #include <nand.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include "denali.h" diff --git a/drivers/mtd/nand/fsl_elbc_nand.c b/drivers/mtd/nand/fsl_elbc_nand.c index f621f14122..b3c23b0339 100644 --- a/drivers/mtd/nand/fsl_elbc_nand.c +++ b/drivers/mtd/nand/fsl_elbc_nand.c @@ -17,7 +17,7 @@ #include <linux/mtd/nand_ecc.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #ifdef VERBOSE_DEBUG #define DEBUG_ELBC diff --git a/drivers/mtd/nand/fsl_ifc_nand.c b/drivers/mtd/nand/fsl_ifc_nand.c index 7001cbd62d..bc6bdc9b2c 100644 --- a/drivers/mtd/nand/fsl_ifc_nand.c +++ b/drivers/mtd/nand/fsl_ifc_nand.c @@ -16,7 +16,7 @@ #include <linux/mtd/nand_ecc.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <fsl_ifc.h> #ifndef CONFIG_SYS_FSL_IFC_BANK_COUNT diff --git a/drivers/mtd/nand/fsl_upm.c b/drivers/mtd/nand/fsl_upm.c index d2b388197b..4a45b8740a 100644 --- a/drivers/mtd/nand/fsl_upm.c +++ b/drivers/mtd/nand/fsl_upm.c @@ -10,7 +10,7 @@ #include <config.h> #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <linux/mtd/mtd.h> #include <linux/mtd/fsl_upm.h> #include <nand.h> diff --git a/drivers/mtd/nand/lpc32xx_nand_mlc.c b/drivers/mtd/nand/lpc32xx_nand_mlc.c index a793115331..3af7e6dfac 100644 --- a/drivers/mtd/nand/lpc32xx_nand_mlc.c +++ b/drivers/mtd/nand/lpc32xx_nand_mlc.c @@ -22,7 +22,7 @@ #include <common.h> #include <nand.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <nand.h> #include <asm/arch/clk.h> diff --git a/drivers/mtd/nand/lpc32xx_nand_slc.c b/drivers/mtd/nand/lpc32xx_nand_slc.c index daa1e7a501..f7e27b39ce 100644 --- a/drivers/mtd/nand/lpc32xx_nand_slc.c +++ b/drivers/mtd/nand/lpc32xx_nand_slc.c @@ -15,7 +15,7 @@ #include <common.h> #include <nand.h> #include <linux/mtd/nand_ecc.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/arch/config.h> #include <asm/arch/clk.h> diff --git a/drivers/mtd/nand/mpc5121_nfc.c b/drivers/mtd/nand/mpc5121_nfc.c index 8a8775c4c5..7faabddbf2 100644 --- a/drivers/mtd/nand/mpc5121_nfc.c +++ b/drivers/mtd/nand/mpc5121_nfc.c @@ -19,7 +19,7 @@ #include <linux/mtd/nand_ecc.h> #include <linux/compat.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/processor.h> #include <nand.h> diff --git a/drivers/mtd/nand/mxs_nand.c b/drivers/mtd/nand/mxs_nand.c index 4bf564e4f5..92005448d2 100644 --- a/drivers/mtd/nand/mxs_nand.c +++ b/drivers/mtd/nand/mxs_nand.c @@ -18,7 +18,7 @@ #include <linux/mtd/nand.h> #include <linux/types.h> #include <malloc.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/arch/clock.h> #include <asm/arch/imx-regs.h> diff --git a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c index d1287bc3be..d9e5fc95f5 100644 --- a/drivers/mtd/nand/nand_base.c +++ b/drivers/mtd/nand/nand_base.c @@ -44,7 +44,7 @@ #include <linux/mtd/partitions.h> #endif #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> /* Define default oob placement schemes for large and small page devices */ static struct nand_ecclayout nand_oob_8 = { diff --git a/drivers/mtd/nand/nand_ecc.c b/drivers/mtd/nand/nand_ecc.c index 083e0e99e4..8b548b204d 100644 --- a/drivers/mtd/nand/nand_ecc.c +++ b/drivers/mtd/nand/nand_ecc.c @@ -25,7 +25,7 @@ #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <linux/mtd/mtd.h> #include <linux/mtd/nand_ecc.h> diff --git a/drivers/mtd/nand/nand_util.c b/drivers/mtd/nand/nand_util.c index e8bcc34ab4..9c8a373970 100644 --- a/drivers/mtd/nand/nand_util.c +++ b/drivers/mtd/nand/nand_util.c @@ -26,7 +26,7 @@ #include <memalign.h> #include <div64.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <linux/mtd/mtd.h> #include <nand.h> #include <jffs2/jffs2.h> diff --git a/drivers/mtd/nand/omap_elm.c b/drivers/mtd/nand/omap_elm.c index d963e6c07c..9ef1b2169e 100644 --- a/drivers/mtd/nand/omap_elm.c +++ b/drivers/mtd/nand/omap_elm.c @@ -15,7 +15,7 @@ #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <linux/mtd/omap_elm.h> #include <asm/arch/hardware.h> diff --git a/drivers/mtd/nand/omap_gpmc.c b/drivers/mtd/nand/omap_gpmc.c index af618fc044..d1e1bdda28 100644 --- a/drivers/mtd/nand/omap_gpmc.c +++ b/drivers/mtd/nand/omap_gpmc.c @@ -7,7 +7,7 @@ #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/mem.h> #include <linux/mtd/omap_gpmc.h> #include <linux/mtd/nand_ecc.h> diff --git a/drivers/mtd/nand/pxa3xx_nand.c b/drivers/mtd/nand/pxa3xx_nand.c index b1d58e036a..dfe8966b56 100644 --- a/drivers/mtd/nand/pxa3xx_nand.c +++ b/drivers/mtd/nand/pxa3xx_nand.c @@ -10,7 +10,7 @@ #include <common.h> #include <malloc.h> #include <nand.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/arch/cpu.h> #include <linux/mtd/mtd.h> diff --git a/drivers/mtd/nand/tegra_nand.c b/drivers/mtd/nand/tegra_nand.c index 38bd7a5578..5c9b485b08 100644 --- a/drivers/mtd/nand/tegra_nand.c +++ b/drivers/mtd/nand/tegra_nand.c @@ -14,7 +14,7 @@ #include <asm/arch/clock.h> #include <asm/arch/funcmux.h> #include <asm/arch-tegra/clk_rst.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <fdtdec.h> #include <bouncebuf.h> diff --git a/drivers/mtd/onenand/onenand_base.c b/drivers/mtd/onenand/onenand_base.c index 0e35dc5b88..2e3d0e5c9a 100644 --- a/drivers/mtd/onenand/onenand_base.c +++ b/drivers/mtd/onenand/onenand_base.c @@ -27,7 +27,7 @@ #include <linux/mtd/onenand.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <malloc.h> /* It should access 16-bit instead of 8-bit */ diff --git a/drivers/mtd/onenand/onenand_bbt.c b/drivers/mtd/onenand/onenand_bbt.c index 52509f1ae9..20507004ed 100644 --- a/drivers/mtd/onenand/onenand_bbt.c +++ b/drivers/mtd/onenand/onenand_bbt.c @@ -20,7 +20,7 @@ #include <linux/mtd/onenand.h> #include <malloc.h> -#include <asm/errno.h> +#include <linux/errno.h> /** * check_short_pattern - [GENERIC] check if a pattern is in the buffer diff --git a/drivers/mtd/onenand/samsung.c b/drivers/mtd/onenand/samsung.c index 5e56a2954d..10dd268c17 100644 --- a/drivers/mtd/onenand/samsung.c +++ b/drivers/mtd/onenand/samsung.c @@ -19,7 +19,7 @@ #include <linux/mtd/samsung_onenand.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #define ONENAND_ERASE_STATUS 0x00 #define ONENAND_MULTI_ERASE_SET 0x01 diff --git a/drivers/mtd/spi/sandbox.c b/drivers/mtd/spi/sandbox.c index 53470b90ce..f59134ff92 100644 --- a/drivers/mtd/spi/sandbox.c +++ b/drivers/mtd/spi/sandbox.c @@ -292,10 +292,7 @@ static int sandbox_sf_process_cmd(struct sandbox_spi_flash *sbsf, const u8 *rx, sbsf->data->nr_sectors; } else if (sbsf->cmd == CMD_ERASE_4K && (flags & SECT_4K)) { sbsf->erase_size = 4 << 10; - } else if (sbsf->cmd == CMD_ERASE_32K && (flags & SECT_32K)) { - sbsf->erase_size = 32 << 10; - } else if (sbsf->cmd == CMD_ERASE_64K && - !(flags & (SECT_4K | SECT_32K))) { + } else if (sbsf->cmd == CMD_ERASE_64K && !(flags & SECT_4K)) { sbsf->erase_size = 64 << 10; } else { debug(" cmd unknown: %#x\n", sbsf->cmd); diff --git a/drivers/mtd/spi/sf_internal.h b/drivers/mtd/spi/sf_internal.h index da2bb7b5d2..cde4cfbf2e 100644 --- a/drivers/mtd/spi/sf_internal.h +++ b/drivers/mtd/spi/sf_internal.h @@ -20,34 +20,6 @@ enum spi_dual_flash { SF_DUAL_PARALLEL_FLASH = BIT(1), }; -/* Enum list - Full read commands */ -enum spi_read_cmds { - ARRAY_SLOW = BIT(0), - ARRAY_FAST = BIT(1), - DUAL_OUTPUT_FAST = BIT(2), - QUAD_OUTPUT_FAST = BIT(3), - DUAL_IO_FAST = BIT(4), - QUAD_IO_FAST = BIT(5), -}; - -/* Normal - Extended - Full command set */ -#define RD_NORM (ARRAY_SLOW | ARRAY_FAST) -#define RD_EXTN (RD_NORM | DUAL_OUTPUT_FAST | DUAL_IO_FAST) -#define RD_FULL (RD_EXTN | QUAD_OUTPUT_FAST | QUAD_IO_FAST) - -/* sf param flags */ -enum { -#ifndef CONFIG_SPI_FLASH_USE_4K_SECTORS - SECT_4K = 0, -#else - SECT_4K = BIT(0), -#endif - SECT_32K = BIT(1), - E_FSR = BIT(2), - SST_WR = BIT(3), - WR_QPP = BIT(4), -}; - enum spi_nor_option_flags { SNOR_F_SST_WR = BIT(0), SNOR_F_USE_FSR = BIT(1), @@ -67,7 +39,6 @@ enum spi_nor_option_flags { /* Erase commands */ #define CMD_ERASE_4K 0x20 -#define CMD_ERASE_32K 0x52 #define CMD_ERASE_CHIP 0xc7 #define CMD_ERASE_64K 0xd8 @@ -141,7 +112,6 @@ int sst_write_bp(struct spi_flash *flash, u32 offset, size_t len, * @sector_size: Isn't necessarily a sector size from vendor, * the size listed here is what works with CMD_ERASE_64K * @nr_sectors: No.of sectors on this device - * @e_rd_cmd: Enum list for read commands * @flags: Important param, for flash specific behaviour */ struct spi_flash_params { @@ -150,8 +120,17 @@ struct spi_flash_params { u16 ext_jedec; u32 sector_size; u32 nr_sectors; - u8 e_rd_cmd; + u16 flags; +#define SECT_4K BIT(0) +#define E_FSR BIT(1) +#define SST_WR BIT(2) +#define WR_QPP BIT(3) +#define RD_QUAD BIT(4) +#define RD_DUAL BIT(5) +#define RD_QUADIO BIT(6) +#define RD_DUALIO BIT(7) +#define RD_FULL (RD_QUAD | RD_DUAL | RD_QUADIO | RD_DUALIO) }; extern const struct spi_flash_params spi_flash_params_table[]; diff --git a/drivers/mtd/spi/sf_mtd.c b/drivers/mtd/spi/sf_mtd.c index 0b9cb62261..935ae4d2b9 100644 --- a/drivers/mtd/spi/sf_mtd.c +++ b/drivers/mtd/spi/sf_mtd.c @@ -6,7 +6,7 @@ #include <common.h> #include <malloc.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <linux/mtd/mtd.h> #include <spi_flash.h> diff --git a/drivers/mtd/spi/sf_params.c b/drivers/mtd/spi/sf_params.c index 70ca236ace..5b50114dda 100644 --- a/drivers/mtd/spi/sf_params.c +++ b/drivers/mtd/spi/sf_params.c @@ -15,122 +15,122 @@ /* SPI/QSPI flash device params structure */ const struct spi_flash_params spi_flash_params_table[] = { #ifdef CONFIG_SPI_FLASH_ATMEL /* ATMEL */ - {"AT45DB011D", 0x1f2200, 0x0, 64 * 1024, 4, RD_NORM, SECT_4K}, - {"AT45DB021D", 0x1f2300, 0x0, 64 * 1024, 8, RD_NORM, SECT_4K}, - {"AT45DB041D", 0x1f2400, 0x0, 64 * 1024, 8, RD_NORM, SECT_4K}, - {"AT45DB081D", 0x1f2500, 0x0, 64 * 1024, 16, RD_NORM, SECT_4K}, - {"AT45DB161D", 0x1f2600, 0x0, 64 * 1024, 32, RD_NORM, SECT_4K}, - {"AT45DB321D", 0x1f2700, 0x0, 64 * 1024, 64, RD_NORM, SECT_4K}, - {"AT45DB641D", 0x1f2800, 0x0, 64 * 1024, 128, RD_NORM, SECT_4K}, - {"AT25DF321A", 0x1f4701, 0x0, 64 * 1024, 64, RD_NORM, SECT_4K}, - {"AT25DF321", 0x1f4700, 0x0, 64 * 1024, 64, RD_NORM, SECT_4K}, - {"AT26DF081A", 0x1f4501, 0x0, 64 * 1024, 16, RD_NORM, SECT_4K}, + {"AT45DB011D", 0x1f2200, 0x0, 64 * 1024, 4, SECT_4K}, + {"AT45DB021D", 0x1f2300, 0x0, 64 * 1024, 8, SECT_4K}, + {"AT45DB041D", 0x1f2400, 0x0, 64 * 1024, 8, SECT_4K}, + {"AT45DB081D", 0x1f2500, 0x0, 64 * 1024, 16, SECT_4K}, + {"AT45DB161D", 0x1f2600, 0x0, 64 * 1024, 32, SECT_4K}, + {"AT45DB321D", 0x1f2700, 0x0, 64 * 1024, 64, SECT_4K}, + {"AT45DB641D", 0x1f2800, 0x0, 64 * 1024, 128, SECT_4K}, + {"AT25DF321A", 0x1f4701, 0x0, 64 * 1024, 64, SECT_4K}, + {"AT25DF321", 0x1f4700, 0x0, 64 * 1024, 64, SECT_4K}, + {"AT26DF081A", 0x1f4501, 0x0, 64 * 1024, 16, SECT_4K}, #endif #ifdef CONFIG_SPI_FLASH_EON /* EON */ - {"EN25Q32B", 0x1c3016, 0x0, 64 * 1024, 64, RD_NORM, 0}, - {"EN25Q64", 0x1c3017, 0x0, 64 * 1024, 128, RD_NORM, SECT_4K}, - {"EN25Q128B", 0x1c3018, 0x0, 64 * 1024, 256, RD_NORM, 0}, - {"EN25S64", 0x1c3817, 0x0, 64 * 1024, 128, RD_NORM, 0}, + {"EN25Q32B", 0x1c3016, 0x0, 64 * 1024, 64, 0}, + {"EN25Q64", 0x1c3017, 0x0, 64 * 1024, 128, SECT_4K}, + {"EN25Q128B", 0x1c3018, 0x0, 64 * 1024, 256, 0}, + {"EN25S64", 0x1c3817, 0x0, 64 * 1024, 128, 0}, #endif #ifdef CONFIG_SPI_FLASH_GIGADEVICE /* GIGADEVICE */ - {"GD25Q64B", 0xc84017, 0x0, 64 * 1024, 128, RD_NORM, SECT_4K}, - {"GD25LQ32", 0xc86016, 0x0, 64 * 1024, 64, RD_NORM, SECT_4K}, + {"GD25Q64B", 0xc84017, 0x0, 64 * 1024, 128, SECT_4K}, + {"GD25LQ32", 0xc86016, 0x0, 64 * 1024, 64, SECT_4K}, #endif #ifdef CONFIG_SPI_FLASH_ISSI /* ISSI */ - {"IS25LP032", 0x9d6016, 0x0, 64 * 1024, 64, RD_NORM, 0}, - {"IS25LP064", 0x9d6017, 0x0, 64 * 1024, 128, RD_NORM, 0}, - {"IS25LP128", 0x9d6018, 0x0, 64 * 1024, 256, RD_NORM, 0}, + {"IS25LP032", 0x9d6016, 0x0, 64 * 1024, 64, 0}, + {"IS25LP064", 0x9d6017, 0x0, 64 * 1024, 128, 0}, + {"IS25LP128", 0x9d6018, 0x0, 64 * 1024, 256, 0}, #endif #ifdef CONFIG_SPI_FLASH_MACRONIX /* MACRONIX */ - {"MX25L2006E", 0xc22012, 0x0, 64 * 1024, 4, RD_NORM, 0}, - {"MX25L4005", 0xc22013, 0x0, 64 * 1024, 8, RD_NORM, 0}, - {"MX25L8005", 0xc22014, 0x0, 64 * 1024, 16, RD_NORM, 0}, - {"MX25L1605D", 0xc22015, 0x0, 64 * 1024, 32, RD_NORM, 0}, - {"MX25L3205D", 0xc22016, 0x0, 64 * 1024, 64, RD_NORM, 0}, - {"MX25L6405D", 0xc22017, 0x0, 64 * 1024, 128, RD_NORM, 0}, - {"MX25L12805", 0xc22018, 0x0, 64 * 1024, 256, RD_FULL, WR_QPP}, - {"MX25L25635F", 0xc22019, 0x0, 64 * 1024, 512, RD_FULL, WR_QPP}, - {"MX25L51235F", 0xc2201a, 0x0, 64 * 1024, 1024, RD_FULL, WR_QPP}, - {"MX25L12855E", 0xc22618, 0x0, 64 * 1024, 256, RD_FULL, WR_QPP}, + {"MX25L2006E", 0xc22012, 0x0, 64 * 1024, 4, 0}, + {"MX25L4005", 0xc22013, 0x0, 64 * 1024, 8, 0}, + {"MX25L8005", 0xc22014, 0x0, 64 * 1024, 16, 0}, + {"MX25L1605D", 0xc22015, 0x0, 64 * 1024, 32, 0}, + {"MX25L3205D", 0xc22016, 0x0, 64 * 1024, 64, 0}, + {"MX25L6405D", 0xc22017, 0x0, 64 * 1024, 128, 0}, + {"MX25L12805", 0xc22018, 0x0, 64 * 1024, 256, RD_FULL | WR_QPP}, + {"MX25L25635F", 0xc22019, 0x0, 64 * 1024, 512, RD_FULL | WR_QPP}, + {"MX25L51235F", 0xc2201a, 0x0, 64 * 1024, 1024, RD_FULL | WR_QPP}, + {"MX25L12855E", 0xc22618, 0x0, 64 * 1024, 256, RD_FULL | WR_QPP}, #endif #ifdef CONFIG_SPI_FLASH_SPANSION /* SPANSION */ - {"S25FL008A", 0x010213, 0x0, 64 * 1024, 16, RD_NORM, 0}, - {"S25FL016A", 0x010214, 0x0, 64 * 1024, 32, RD_NORM, 0}, - {"S25FL032A", 0x010215, 0x0, 64 * 1024, 64, RD_NORM, 0}, - {"S25FL064A", 0x010216, 0x0, 64 * 1024, 128, RD_NORM, 0}, - {"S25FL116K", 0x014015, 0x0, 64 * 1024, 128, RD_NORM, 0}, - {"S25FL164K", 0x014017, 0x0140, 64 * 1024, 128, RD_NORM, 0}, - {"S25FL128P_256K", 0x012018, 0x0300, 256 * 1024, 64, RD_FULL, WR_QPP}, - {"S25FL128P_64K", 0x012018, 0x0301, 64 * 1024, 256, RD_FULL, WR_QPP}, - {"S25FL032P", 0x010215, 0x4d00, 64 * 1024, 64, RD_FULL, WR_QPP}, - {"S25FL064P", 0x010216, 0x4d00, 64 * 1024, 128, RD_FULL, WR_QPP}, - {"S25FL128S_256K", 0x012018, 0x4d00, 256 * 1024, 64, RD_FULL, WR_QPP}, - {"S25FL128S_64K", 0x012018, 0x4d01, 64 * 1024, 256, RD_FULL, WR_QPP}, - {"S25FL256S_256K", 0x010219, 0x4d00, 256 * 1024, 128, RD_FULL, WR_QPP}, - {"S25FL256S_64K", 0x010219, 0x4d01, 64 * 1024, 512, RD_FULL, WR_QPP}, - {"S25FS512S", 0x010220, 0x4D00, 128 * 1024, 512, RD_FULL, WR_QPP}, - {"S25FL512S_256K", 0x010220, 0x4d00, 256 * 1024, 256, RD_FULL, WR_QPP}, - {"S25FL512S_64K", 0x010220, 0x4d01, 64 * 1024, 1024, RD_FULL, WR_QPP}, - {"S25FL512S_512K", 0x010220, 0x4f00, 256 * 1024, 256, RD_FULL, WR_QPP}, + {"S25FL008A", 0x010213, 0x0, 64 * 1024, 16, 0}, + {"S25FL016A", 0x010214, 0x0, 64 * 1024, 32, 0}, + {"S25FL032A", 0x010215, 0x0, 64 * 1024, 64, 0}, + {"S25FL064A", 0x010216, 0x0, 64 * 1024, 128, 0}, + {"S25FL116K", 0x014015, 0x0, 64 * 1024, 128, 0}, + {"S25FL164K", 0x014017, 0x0140, 64 * 1024, 128, 0}, + {"S25FL128P_256K", 0x012018, 0x0300, 256 * 1024, 64, RD_FULL | WR_QPP}, + {"S25FL128P_64K", 0x012018, 0x0301, 64 * 1024, 256, RD_FULL | WR_QPP}, + {"S25FL032P", 0x010215, 0x4d00, 64 * 1024, 64, RD_FULL | WR_QPP}, + {"S25FL064P", 0x010216, 0x4d00, 64 * 1024, 128, RD_FULL | WR_QPP}, + {"S25FL128S_256K", 0x012018, 0x4d00, 256 * 1024, 64, RD_FULL | WR_QPP}, + {"S25FL128S_64K", 0x012018, 0x4d01, 64 * 1024, 256, RD_FULL | WR_QPP}, + {"S25FL256S_256K", 0x010219, 0x4d00, 256 * 1024, 128, RD_FULL | WR_QPP}, + {"S25FL256S_64K", 0x010219, 0x4d01, 64 * 1024, 512, RD_FULL | WR_QPP}, + {"S25FS512S", 0x010220, 0x4D00, 128 * 1024, 512, RD_FULL | WR_QPP}, + {"S25FL512S_256K", 0x010220, 0x4d00, 256 * 1024, 256, RD_FULL | WR_QPP}, + {"S25FL512S_64K", 0x010220, 0x4d01, 64 * 1024, 1024, RD_FULL | WR_QPP}, + {"S25FL512S_512K", 0x010220, 0x4f00, 256 * 1024, 256, RD_FULL | WR_QPP}, #endif #ifdef CONFIG_SPI_FLASH_STMICRO /* STMICRO */ - {"M25P10", 0x202011, 0x0, 32 * 1024, 4, RD_NORM, 0}, - {"M25P20", 0x202012, 0x0, 64 * 1024, 4, RD_NORM, 0}, - {"M25P40", 0x202013, 0x0, 64 * 1024, 8, RD_NORM, 0}, - {"M25P80", 0x202014, 0x0, 64 * 1024, 16, RD_NORM, 0}, - {"M25P16", 0x202015, 0x0, 64 * 1024, 32, RD_NORM, 0}, - {"M25PE16", 0x208015, 0x1000, 64 * 1024, 32, RD_NORM, 0}, - {"M25PX16", 0x207115, 0x1000, 64 * 1024, 32, RD_EXTN, 0}, - {"M25P32", 0x202016, 0x0, 64 * 1024, 64, RD_NORM, 0}, - {"M25P64", 0x202017, 0x0, 64 * 1024, 128, RD_NORM, 0}, - {"M25P128", 0x202018, 0x0, 256 * 1024, 64, RD_NORM, 0}, - {"M25PX64", 0x207117, 0x0, 64 * 1024, 128, RD_NORM, SECT_4K}, - {"N25Q016A", 0x20bb15, 0x0, 64 * 1024, 32, RD_NORM, SECT_4K}, - {"N25Q32", 0x20ba16, 0x0, 64 * 1024, 64, RD_FULL, WR_QPP | SECT_4K}, - {"N25Q32A", 0x20bb16, 0x0, 64 * 1024, 64, RD_FULL, WR_QPP | SECT_4K}, - {"N25Q64", 0x20ba17, 0x0, 64 * 1024, 128, RD_FULL, WR_QPP | SECT_4K}, - {"N25Q64A", 0x20bb17, 0x0, 64 * 1024, 128, RD_FULL, WR_QPP | SECT_4K}, - {"N25Q128", 0x20ba18, 0x0, 64 * 1024, 256, RD_FULL, WR_QPP}, - {"N25Q128A", 0x20bb18, 0x0, 64 * 1024, 256, RD_FULL, WR_QPP}, - {"N25Q256", 0x20ba19, 0x0, 64 * 1024, 512, RD_FULL, WR_QPP | SECT_4K}, - {"N25Q256A", 0x20bb19, 0x0, 64 * 1024, 512, RD_FULL, WR_QPP | SECT_4K}, - {"N25Q512", 0x20ba20, 0x0, 64 * 1024, 1024, RD_FULL, WR_QPP | E_FSR | SECT_4K}, - {"N25Q512A", 0x20bb20, 0x0, 64 * 1024, 1024, RD_FULL, WR_QPP | E_FSR | SECT_4K}, - {"N25Q1024", 0x20ba21, 0x0, 64 * 1024, 2048, RD_FULL, WR_QPP | E_FSR | SECT_4K}, - {"N25Q1024A", 0x20bb21, 0x0, 64 * 1024, 2048, RD_FULL, WR_QPP | E_FSR | SECT_4K}, + {"M25P10", 0x202011, 0x0, 32 * 1024, 4, 0}, + {"M25P20", 0x202012, 0x0, 64 * 1024, 4, 0}, + {"M25P40", 0x202013, 0x0, 64 * 1024, 8, 0}, + {"M25P80", 0x202014, 0x0, 64 * 1024, 16, 0}, + {"M25P16", 0x202015, 0x0, 64 * 1024, 32, 0}, + {"M25PE16", 0x208015, 0x1000, 64 * 1024, 32, 0}, + {"M25PX16", 0x207115, 0x1000, 64 * 1024, 32, RD_QUAD | RD_DUAL}, + {"M25P32", 0x202016, 0x0, 64 * 1024, 64, 0}, + {"M25P64", 0x202017, 0x0, 64 * 1024, 128, 0}, + {"M25P128", 0x202018, 0x0, 256 * 1024, 64, 0}, + {"M25PX64", 0x207117, 0x0, 64 * 1024, 128, SECT_4K}, + {"N25Q016A", 0x20bb15, 0x0, 64 * 1024, 32, SECT_4K}, + {"N25Q32", 0x20ba16, 0x0, 64 * 1024, 64, RD_FULL | WR_QPP | SECT_4K}, + {"N25Q32A", 0x20bb16, 0x0, 64 * 1024, 64, RD_FULL | WR_QPP | SECT_4K}, + {"N25Q64", 0x20ba17, 0x0, 64 * 1024, 128, RD_FULL | WR_QPP | SECT_4K}, + {"N25Q64A", 0x20bb17, 0x0, 64 * 1024, 128, RD_FULL | WR_QPP | SECT_4K}, + {"N25Q128", 0x20ba18, 0x0, 64 * 1024, 256, RD_FULL | WR_QPP}, + {"N25Q128A", 0x20bb18, 0x0, 64 * 1024, 256, RD_FULL | WR_QPP}, + {"N25Q256", 0x20ba19, 0x0, 64 * 1024, 512, RD_FULL | WR_QPP | SECT_4K}, + {"N25Q256A", 0x20bb19, 0x0, 64 * 1024, 512, RD_FULL | WR_QPP | SECT_4K}, + {"N25Q512", 0x20ba20, 0x0, 64 * 1024, 1024, RD_FULL | WR_QPP | E_FSR | SECT_4K}, + {"N25Q512A", 0x20bb20, 0x0, 64 * 1024, 1024, RD_FULL | WR_QPP | E_FSR | SECT_4K}, + {"N25Q1024", 0x20ba21, 0x0, 64 * 1024, 2048, RD_FULL | WR_QPP | E_FSR | SECT_4K}, + {"N25Q1024A", 0x20bb21, 0x0, 64 * 1024, 2048, RD_FULL | WR_QPP | E_FSR | SECT_4K}, #endif #ifdef CONFIG_SPI_FLASH_SST /* SST */ - {"SST25VF040B", 0xbf258d, 0x0, 64 * 1024, 8, RD_NORM, SECT_4K | SST_WR}, - {"SST25VF080B", 0xbf258e, 0x0, 64 * 1024, 16, RD_NORM, SECT_4K | SST_WR}, - {"SST25VF016B", 0xbf2541, 0x0, 64 * 1024, 32, RD_NORM, SECT_4K | SST_WR}, - {"SST25VF032B", 0xbf254a, 0x0, 64 * 1024, 64, RD_NORM, SECT_4K | SST_WR}, - {"SST25VF064C", 0xbf254b, 0x0, 64 * 1024, 128, RD_NORM, SECT_4K}, - {"SST25WF512", 0xbf2501, 0x0, 64 * 1024, 1, RD_NORM, SECT_4K | SST_WR}, - {"SST25WF010", 0xbf2502, 0x0, 64 * 1024, 2, RD_NORM, SECT_4K | SST_WR}, - {"SST25WF020", 0xbf2503, 0x0, 64 * 1024, 4, RD_NORM, SECT_4K | SST_WR}, - {"SST25WF040", 0xbf2504, 0x0, 64 * 1024, 8, RD_NORM, SECT_4K | SST_WR}, - {"SST25WF040B", 0x621613, 0x0, 64 * 1024, 8, RD_NORM, SECT_4K}, - {"SST25WF080", 0xbf2505, 0x0, 64 * 1024, 16, RD_NORM, SECT_4K | SST_WR}, + {"SST25VF040B", 0xbf258d, 0x0, 64 * 1024, 8, SECT_4K | SST_WR}, + {"SST25VF080B", 0xbf258e, 0x0, 64 * 1024, 16, SECT_4K | SST_WR}, + {"SST25VF016B", 0xbf2541, 0x0, 64 * 1024, 32, SECT_4K | SST_WR}, + {"SST25VF032B", 0xbf254a, 0x0, 64 * 1024, 64, SECT_4K | SST_WR}, + {"SST25VF064C", 0xbf254b, 0x0, 64 * 1024, 128, SECT_4K}, + {"SST25WF512", 0xbf2501, 0x0, 64 * 1024, 1, SECT_4K | SST_WR}, + {"SST25WF010", 0xbf2502, 0x0, 64 * 1024, 2, SECT_4K | SST_WR}, + {"SST25WF020", 0xbf2503, 0x0, 64 * 1024, 4, SECT_4K | SST_WR}, + {"SST25WF040", 0xbf2504, 0x0, 64 * 1024, 8, SECT_4K | SST_WR}, + {"SST25WF040B", 0x621613, 0x0, 64 * 1024, 8, SECT_4K}, + {"SST25WF080", 0xbf2505, 0x0, 64 * 1024, 16, SECT_4K | SST_WR}, #endif #ifdef CONFIG_SPI_FLASH_WINBOND /* WINBOND */ - {"W25P80", 0xef2014, 0x0, 64 * 1024, 16, RD_NORM, 0}, - {"W25P16", 0xef2015, 0x0, 64 * 1024, 32, RD_NORM, 0}, - {"W25P32", 0xef2016, 0x0, 64 * 1024, 64, RD_NORM, 0}, - {"W25X40", 0xef3013, 0x0, 64 * 1024, 8, RD_NORM, SECT_4K}, - {"W25X16", 0xef3015, 0x0, 64 * 1024, 32, RD_NORM, SECT_4K}, - {"W25X32", 0xef3016, 0x0, 64 * 1024, 64, RD_NORM, SECT_4K}, - {"W25X64", 0xef3017, 0x0, 64 * 1024, 128, RD_NORM, SECT_4K}, - {"W25Q80BL", 0xef4014, 0x0, 64 * 1024, 16, RD_FULL, WR_QPP | SECT_4K}, - {"W25Q16CL", 0xef4015, 0x0, 64 * 1024, 32, RD_FULL, WR_QPP | SECT_4K}, - {"W25Q32BV", 0xef4016, 0x0, 64 * 1024, 64, RD_FULL, WR_QPP | SECT_4K}, - {"W25Q64CV", 0xef4017, 0x0, 64 * 1024, 128, RD_FULL, WR_QPP | SECT_4K}, - {"W25Q128BV", 0xef4018, 0x0, 64 * 1024, 256, RD_FULL, WR_QPP | SECT_4K}, - {"W25Q256", 0xef4019, 0x0, 64 * 1024, 512, RD_FULL, WR_QPP | SECT_4K}, - {"W25Q80BW", 0xef5014, 0x0, 64 * 1024, 16, RD_FULL, WR_QPP | SECT_4K}, - {"W25Q16DW", 0xef6015, 0x0, 64 * 1024, 32, RD_FULL, WR_QPP | SECT_4K}, - {"W25Q32DW", 0xef6016, 0x0, 64 * 1024, 64, RD_FULL, WR_QPP | SECT_4K}, - {"W25Q64DW", 0xef6017, 0x0, 64 * 1024, 128, RD_FULL, WR_QPP | SECT_4K}, - {"W25Q128FW", 0xef6018, 0x0, 64 * 1024, 256, RD_FULL, WR_QPP | SECT_4K}, + {"W25P80", 0xef2014, 0x0, 64 * 1024, 16, 0}, + {"W25P16", 0xef2015, 0x0, 64 * 1024, 32, 0}, + {"W25P32", 0xef2016, 0x0, 64 * 1024, 64, 0}, + {"W25X40", 0xef3013, 0x0, 64 * 1024, 8, SECT_4K}, + {"W25X16", 0xef3015, 0x0, 64 * 1024, 32, SECT_4K}, + {"W25X32", 0xef3016, 0x0, 64 * 1024, 64, SECT_4K}, + {"W25X64", 0xef3017, 0x0, 64 * 1024, 128, SECT_4K}, + {"W25Q80BL", 0xef4014, 0x0, 64 * 1024, 16, RD_FULL | WR_QPP | SECT_4K}, + {"W25Q16CL", 0xef4015, 0x0, 64 * 1024, 32, RD_FULL | WR_QPP | SECT_4K}, + {"W25Q32BV", 0xef4016, 0x0, 64 * 1024, 64, RD_FULL | WR_QPP | SECT_4K}, + {"W25Q64CV", 0xef4017, 0x0, 64 * 1024, 128, RD_FULL | WR_QPP | SECT_4K}, + {"W25Q128BV", 0xef4018, 0x0, 64 * 1024, 256, RD_FULL | WR_QPP | SECT_4K}, + {"W25Q256", 0xef4019, 0x0, 64 * 1024, 512, RD_FULL | WR_QPP | SECT_4K}, + {"W25Q80BW", 0xef5014, 0x0, 64 * 1024, 16, RD_FULL | WR_QPP | SECT_4K}, + {"W25Q16DW", 0xef6015, 0x0, 64 * 1024, 32, RD_FULL | WR_QPP | SECT_4K}, + {"W25Q32DW", 0xef6016, 0x0, 64 * 1024, 64, RD_FULL | WR_QPP | SECT_4K}, + {"W25Q64DW", 0xef6017, 0x0, 64 * 1024, 128, RD_FULL | WR_QPP | SECT_4K}, + {"W25Q128FW", 0xef6018, 0x0, 64 * 1024, 256, RD_FULL | WR_QPP | SECT_4K}, #endif {}, /* Empty entry to terminate the list */ /* diff --git a/drivers/mtd/spi/spi_flash.c b/drivers/mtd/spi/spi_flash.c index 64d4e0f947..7f6e9ae23e 100644 --- a/drivers/mtd/spi/spi_flash.c +++ b/drivers/mtd/spi/spi_flash.c @@ -1013,15 +1013,8 @@ int spi_flash_scan(struct spi_flash *flash) struct spi_slave *spi = flash->spi; const struct spi_flash_params *params; u16 jedec, ext_jedec; - u8 cmd, idcode[5]; + u8 idcode[5]; int ret; - static u8 spi_read_cmds_array[] = { - CMD_READ_ARRAY_SLOW, - CMD_READ_ARRAY_FAST, - CMD_READ_DUAL_OUTPUT_FAST, - CMD_READ_QUAD_OUTPUT_FAST, - CMD_READ_DUAL_IO_FAST, - CMD_READ_QUAD_IO_FAST }; /* Read the ID codes */ ret = spi_flash_cmd(spi, CMD_READ_ID, idcode, sizeof(idcode)); @@ -1162,14 +1155,14 @@ int spi_flash_scan(struct spi_flash *flash) flash->size <<= 1; #endif +#ifdef CONFIG_SPI_FLASH_USE_4K_SECTORS /* Compute erase sector and command */ if (params->flags & SECT_4K) { flash->erase_cmd = CMD_ERASE_4K; flash->erase_size = 4096 << flash->shift; - } else if (params->flags & SECT_32K) { - flash->erase_cmd = CMD_ERASE_32K; - flash->erase_size = 32768 << flash->shift; - } else { + } else +#endif + { flash->erase_cmd = CMD_ERASE_64K; flash->erase_size = flash->sector_size; } @@ -1177,17 +1170,16 @@ int spi_flash_scan(struct spi_flash *flash) /* Now erase size becomes valid sector size */ flash->sector_size = flash->erase_size; - /* Look for the fastest read cmd */ - cmd = fls(params->e_rd_cmd & spi->mode_rx); - if (cmd) { - cmd = spi_read_cmds_array[cmd - 1]; - flash->read_cmd = cmd; - } else { - /* Go for default supported read cmd */ - flash->read_cmd = CMD_READ_ARRAY_FAST; - } + /* Look for read commands */ + flash->read_cmd = CMD_READ_ARRAY_FAST; + if (spi->mode & SPI_RX_SLOW) + flash->read_cmd = CMD_READ_ARRAY_SLOW; + else if (spi->mode & SPI_RX_QUAD && params->flags & RD_QUAD) + flash->read_cmd = CMD_READ_QUAD_OUTPUT_FAST; + else if (spi->mode & SPI_RX_DUAL && params->flags & RD_DUAL) + flash->read_cmd = CMD_READ_DUAL_OUTPUT_FAST; - /* Not require to look for fastest only two write cmds yet */ + /* Look for write commands */ if (params->flags & WR_QPP && spi->mode & SPI_TX_QUAD) flash->write_cmd = CMD_QUAD_PAGE_PROGRAM; else diff --git a/drivers/mtd/ubi/Kconfig b/drivers/mtd/ubi/Kconfig new file mode 100644 index 0000000000..0c82395317 --- /dev/null +++ b/drivers/mtd/ubi/Kconfig @@ -0,0 +1,98 @@ +menu "UBI support" + +config MTD_UBI + bool "Enable UBI - Unsorted block images" + select CRC32 + help + UBI is a software layer above MTD layer which admits of LVM-like + logical volumes on top of MTD devices, hides some complexities of + flash chips like wear and bad blocks and provides some other useful + capabilities. Please, consult the MTD web site for more details + (www.linux-mtd.infradead.org). + +if MTD_UBI + +config MTD_UBI_WL_THRESHOLD + int "UBI wear-leveling threshold" + default 4096 + range 2 65536 + help + This parameter defines the maximum difference between the highest + erase counter value and the lowest erase counter value of eraseblocks + of UBI devices. When this threshold is exceeded, UBI starts performing + wear leveling by means of moving data from eraseblock with low erase + counter to eraseblocks with high erase counter. + + The default value should be OK for SLC NAND flashes, NOR flashes and + other flashes which have eraseblock life-cycle 100000 or more. + However, in case of MLC NAND flashes which typically have eraseblock + life-cycle less than 10000, the threshold should be lessened (e.g., + to 128 or 256, although it does not have to be power of 2). + +config MTD_UBI_BEB_LIMIT + int "Maximum expected bad eraseblock count per 1024 eraseblocks" + default 20 + range 0 768 + help + This option specifies the maximum bad physical eraseblocks UBI + expects on the MTD device (per 1024 eraseblocks). If the underlying + flash does not admit of bad eraseblocks (e.g. NOR flash), this value + is ignored. + + NAND datasheets often specify the minimum and maximum NVM (Number of + Valid Blocks) for the flashes' endurance lifetime. The maximum + expected bad eraseblocks per 1024 eraseblocks then can be calculated + as "1024 * (1 - MinNVB / MaxNVB)", which gives 20 for most NANDs + (MaxNVB is basically the total count of eraseblocks on the chip). + + To put it differently, if this value is 20, UBI will try to reserve + about 1.9% of physical eraseblocks for bad blocks handling. And that + will be 1.9% of eraseblocks on the entire NAND chip, not just the MTD + partition UBI attaches. This means that if you have, say, a NAND + flash chip admits maximum 40 bad eraseblocks, and it is split on two + MTD partitions of the same size, UBI will reserve 40 eraseblocks when + attaching a partition. + + This option can be overridden by the "mtd=" UBI module parameter or + by the "attach" ioctl. + + Leave the default value if unsure. + +config MTD_UBI_FASTMAP + bool "UBI Fastmap (Experimental feature)" + default n + help + Important: this feature is experimental so far and the on-flash + format for fastmap may change in the next kernel versions + + Fastmap is a mechanism which allows attaching an UBI device + in nearly constant time. Instead of scanning the whole MTD device it + only has to locate a checkpoint (called fastmap) on the device. + The on-flash fastmap contains all information needed to attach + the device. Using fastmap makes only sense on large devices where + attaching by scanning takes long. UBI will not automatically install + a fastmap on old images, but you can set the UBI module parameter + fm_autoconvert to 1 if you want so. Please note that fastmap-enabled + images are still usable with UBI implementations without + fastmap support. On typical flash devices the whole fastmap fits + into one PEB. UBI will reserve PEBs to hold two fastmaps. + + If in doubt, say "N". + +config MTD_UBI_FASTMAP_AUTOCONVERT + int "enable UBI Fastmap autoconvert" + depends on MTD_UBI_FASTMAP + default 0 + help + Set this parameter to enable fastmap automatically on images + without a fastmap. + +config MTD_UBI_FM_DEBUG + int "Enable UBI fastmap debug" + depends on MTD_UBI_FASTMAP + default 0 + help + Enable UBI fastmap debug + +endif # MTD_UBI +endmenu # "Enable UBI - Unsorted block images" diff --git a/drivers/net/Kconfig b/drivers/net/Kconfig index be3ed73e52..302c005aa1 100644 --- a/drivers/net/Kconfig +++ b/drivers/net/Kconfig @@ -175,7 +175,7 @@ config XILINX_AXIEMAC This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs. config XILINX_EMACLITE - depends on DM_ETH && (MICROBLAZE || ARCH_ZYNQ || ARCH_ZYNQMP) + depends on DM_ETH && (MICROBLAZE || ARCH_ZYNQ || ARCH_ZYNQMP || MIPS) select PHYLIB select MII bool "Xilinx Ethernetlite" diff --git a/drivers/net/cpsw.c b/drivers/net/cpsw.c index 81ccc61a60..d17505e088 100644 --- a/drivers/net/cpsw.c +++ b/drivers/net/cpsw.c @@ -21,7 +21,7 @@ #include <net.h> #include <netdev.h> #include <cpsw.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/io.h> #include <phy.h> diff --git a/drivers/net/fec_mxc.c b/drivers/net/fec_mxc.c index e871b3e81b..8e3b839865 100644 --- a/drivers/net/fec_mxc.c +++ b/drivers/net/fec_mxc.c @@ -20,7 +20,7 @@ #include <asm/arch/imx-regs.h> #include <asm/imx-common/sys_proto.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <linux/compiler.h> DECLARE_GLOBAL_DATA_PTR; diff --git a/drivers/net/fm/fm.c b/drivers/net/fm/fm.c index 17a088602b..89f0d6a14e 100644 --- a/drivers/net/fm/fm.c +++ b/drivers/net/fm/fm.c @@ -7,7 +7,7 @@ #include <common.h> #include <malloc.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include "fm.h" #include <fsl_qe.h> /* For struct qe_firmware */ diff --git a/drivers/net/fsl_mdio.c b/drivers/net/fsl_mdio.c index 77b9739a24..bd56166d7b 100644 --- a/drivers/net/fsl_mdio.c +++ b/drivers/net/fsl_mdio.c @@ -11,7 +11,7 @@ #include <phy.h> #include <fsl_mdio.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> void tsec_local_mdio_write(struct tsec_mii_mng __iomem *phyregs, int port_addr, int dev_addr, int regnum, int value) diff --git a/drivers/net/ftmac110.c b/drivers/net/ftmac110.c index 8fa767a1fe..bbe56f1ffb 100644 --- a/drivers/net/ftmac110.c +++ b/drivers/net/ftmac110.c @@ -11,7 +11,7 @@ #include <command.h> #include <malloc.h> #include <net.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/dma-mapping.h> diff --git a/drivers/net/lpc32xx_eth.c b/drivers/net/lpc32xx_eth.c index 2dd69f3816..cbef3359ab 100644 --- a/drivers/net/lpc32xx_eth.c +++ b/drivers/net/lpc32xx_eth.c @@ -12,7 +12,7 @@ #include <malloc.h> #include <miiphy.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/types.h> #include <asm/system.h> #include <asm/byteorder.h> diff --git a/drivers/net/macb.c b/drivers/net/macb.c index 921537f8a4..8c1774e6a9 100644 --- a/drivers/net/macb.c +++ b/drivers/net/macb.c @@ -39,7 +39,7 @@ #include <asm/io.h> #include <asm/dma-mapping.h> #include <asm/arch/clk.h> -#include <asm-generic/errno.h> +#include <linux/errno.h> #include "macb.h" diff --git a/drivers/net/mvgbe.c b/drivers/net/mvgbe.c index a1c7ea054c..c784cdcae2 100644 --- a/drivers/net/mvgbe.c +++ b/drivers/net/mvgbe.c @@ -17,7 +17,7 @@ #include <malloc.h> #include <miiphy.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/types.h> #include <asm/system.h> #include <asm/byteorder.h> diff --git a/drivers/net/mvneta.c b/drivers/net/mvneta.c index fa20f548e5..6d51b9f0c0 100644 --- a/drivers/net/mvneta.c +++ b/drivers/net/mvneta.c @@ -20,7 +20,7 @@ #include <config.h> #include <malloc.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <phy.h> #include <miiphy.h> #include <watchdog.h> diff --git a/drivers/net/mvpp2.c b/drivers/net/mvpp2.c index 900a04c0ee..340b85a710 100644 --- a/drivers/net/mvpp2.c +++ b/drivers/net/mvpp2.c @@ -22,7 +22,7 @@ #include <config.h> #include <malloc.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <phy.h> #include <miiphy.h> #include <watchdog.h> diff --git a/drivers/net/pch_gbe.c b/drivers/net/pch_gbe.c index 137818b390..d40fff0e48 100644 --- a/drivers/net/pch_gbe.c +++ b/drivers/net/pch_gbe.c @@ -118,14 +118,14 @@ static void pch_gbe_rx_descs_init(struct udevice *dev) memset(rx_desc, 0, sizeof(struct pch_gbe_rx_desc) * PCH_GBE_DESC_NUM); for (i = 0; i < PCH_GBE_DESC_NUM; i++) rx_desc->buffer_addr = dm_pci_phys_to_mem(priv->dev, - (u32)(priv->rx_buff[i])); + (ulong)(priv->rx_buff[i])); - writel(dm_pci_phys_to_mem(priv->dev, (u32)rx_desc), + writel(dm_pci_phys_to_mem(priv->dev, (ulong)rx_desc), &mac_regs->rx_dsc_base); writel(sizeof(struct pch_gbe_rx_desc) * (PCH_GBE_DESC_NUM - 1), &mac_regs->rx_dsc_size); - writel(dm_pci_phys_to_mem(priv->dev, (u32)(rx_desc + 1)), + writel(dm_pci_phys_to_mem(priv->dev, (ulong)(rx_desc + 1)), &mac_regs->rx_dsc_sw_p); } @@ -137,11 +137,11 @@ static void pch_gbe_tx_descs_init(struct udevice *dev) memset(tx_desc, 0, sizeof(struct pch_gbe_tx_desc) * PCH_GBE_DESC_NUM); - writel(dm_pci_phys_to_mem(priv->dev, (u32)tx_desc), + writel(dm_pci_phys_to_mem(priv->dev, (ulong)tx_desc), &mac_regs->tx_dsc_base); writel(sizeof(struct pch_gbe_tx_desc) * (PCH_GBE_DESC_NUM - 1), &mac_regs->tx_dsc_size); - writel(dm_pci_phys_to_mem(priv->dev, (u32)(tx_desc + 1)), + writel(dm_pci_phys_to_mem(priv->dev, (ulong)(tx_desc + 1)), &mac_regs->tx_dsc_sw_p); } @@ -251,7 +251,7 @@ static int pch_gbe_send(struct udevice *dev, void *packet, int length) if (length < 64) frame_ctrl |= PCH_GBE_TXD_CTRL_APAD; - tx_desc->buffer_addr = dm_pci_phys_to_mem(priv->dev, (u32)packet); + tx_desc->buffer_addr = dm_pci_phys_to_mem(priv->dev, (ulong)packet); tx_desc->length = length; tx_desc->tx_words_eob = length + 3; tx_desc->tx_frame_ctrl = frame_ctrl; @@ -262,7 +262,7 @@ static int pch_gbe_send(struct udevice *dev, void *packet, int length) if (++priv->tx_idx >= PCH_GBE_DESC_NUM) priv->tx_idx = 0; - writel(dm_pci_phys_to_mem(priv->dev, (u32)(tx_head + priv->tx_idx)), + writel(dm_pci_phys_to_mem(priv->dev, (ulong)(tx_head + priv->tx_idx)), &mac_regs->tx_dsc_sw_p); start = get_timer(0); @@ -283,7 +283,7 @@ static int pch_gbe_recv(struct udevice *dev, int flags, uchar **packetp) struct pch_gbe_priv *priv = dev_get_priv(dev); struct pch_gbe_regs *mac_regs = priv->mac_regs; struct pch_gbe_rx_desc *rx_desc; - u32 hw_desc, buffer_addr, length; + ulong hw_desc, buffer_addr, length; rx_desc = &priv->rx_desc[priv->rx_idx]; @@ -291,7 +291,7 @@ static int pch_gbe_recv(struct udevice *dev, int flags, uchar **packetp) hw_desc = readl(&mac_regs->rx_dsc_hw_p_hld); /* Just return if not receiving any packet */ - if ((u32)rx_desc == hw_desc) + if ((ulong)rx_desc == hw_desc) return -EAGAIN; buffer_addr = dm_pci_mem_to_phys(priv->dev, rx_desc->buffer_addr); @@ -315,7 +315,7 @@ static int pch_gbe_free_pkt(struct udevice *dev, uchar *packet, int length) if (++rx_swp >= PCH_GBE_DESC_NUM) rx_swp = 0; - writel(dm_pci_phys_to_mem(priv->dev, (u32)(rx_head + rx_swp)), + writel(dm_pci_phys_to_mem(priv->dev, (ulong)(rx_head + rx_swp)), &mac_regs->rx_dsc_sw_p); return 0; @@ -421,7 +421,7 @@ int pch_gbe_probe(struct udevice *dev) { struct pch_gbe_priv *priv; struct eth_pdata *plat = dev_get_platdata(dev); - u32 iobase; + void *iobase; /* * The priv structure contains the descriptors and frame buffers which @@ -432,11 +432,9 @@ int pch_gbe_probe(struct udevice *dev) priv->dev = dev; - dm_pci_read_config32(dev, PCI_BASE_ADDRESS_1, &iobase); - iobase &= PCI_BASE_ADDRESS_MEM_MASK; - iobase = dm_pci_mem_to_phys(dev, iobase); + iobase = dm_pci_map_bar(dev, PCI_BASE_ADDRESS_1, PCI_REGION_MEM); - plat->iobase = iobase; + plat->iobase = (ulong)iobase; priv->mac_regs = (struct pch_gbe_regs *)iobase; /* Read MAC address from SROM and initialize dev->enetaddr with it */ diff --git a/drivers/net/phy/mv88e6352.c b/drivers/net/phy/mv88e6352.c index f639a42fa9..d2b3ce617e 100644 --- a/drivers/net/phy/mv88e6352.c +++ b/drivers/net/phy/mv88e6352.c @@ -7,7 +7,7 @@ #include <common.h> #include <miiphy.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <mv88e6352.h> #define SMI_HDR ((0x8 | 0x1) << 12) diff --git a/drivers/net/sh_eth.c b/drivers/net/sh_eth.c index 79c1db2c83..a7c265b980 100644 --- a/drivers/net/sh_eth.c +++ b/drivers/net/sh_eth.c @@ -15,7 +15,7 @@ #include <net.h> #include <netdev.h> #include <miiphy.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include "sh_eth.h" diff --git a/drivers/net/tsec.c b/drivers/net/tsec.c index be0f38288f..7df4c63acf 100644 --- a/drivers/net/tsec.c +++ b/drivers/net/tsec.c @@ -16,7 +16,7 @@ #include <command.h> #include <tsec.h> #include <fsl_mdio.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/processor.h> #include <asm/io.h> diff --git a/drivers/net/vsc7385.c b/drivers/net/vsc7385.c index c6d6dce4ae..072421062b 100644 --- a/drivers/net/vsc7385.c +++ b/drivers/net/vsc7385.c @@ -16,7 +16,7 @@ #include <common.h> #include <console.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include "vsc7385.h" /* diff --git a/drivers/net/xilinx_emaclite.c b/drivers/net/xilinx_emaclite.c index 7b85aa0463..78ff44c561 100644 --- a/drivers/net/xilinx_emaclite.c +++ b/drivers/net/xilinx_emaclite.c @@ -17,8 +17,9 @@ #include <phy.h> #include <miiphy.h> #include <fdtdec.h> -#include <asm-generic/errno.h> +#include <linux/errno.h> #include <linux/kernel.h> +#include <asm/io.h> DECLARE_GLOBAL_DATA_PTR; @@ -154,7 +155,7 @@ static int wait_for_bit(const char *func, u32 *reg, const u32 mask, unsigned long start = get_timer(0); while (1) { - val = readl(reg); + val = __raw_readl(reg); if (!set) val = ~val; @@ -193,16 +194,17 @@ static u32 phyread(struct xemaclite *emaclite, u32 phyaddress, u32 registernum, if (mdio_wait(regs)) return 1; - u32 ctrl_reg = in_be32(®s->mdioctrl); - out_be32(®s->mdioaddr, XEL_MDIOADDR_OP_MASK | - ((phyaddress << XEL_MDIOADDR_PHYADR_SHIFT) | registernum)); - out_be32(®s->mdioctrl, ctrl_reg | XEL_MDIOCTRL_MDIOSTS_MASK); + u32 ctrl_reg = __raw_readl(®s->mdioctrl); + __raw_writel(XEL_MDIOADDR_OP_MASK + | ((phyaddress << XEL_MDIOADDR_PHYADR_SHIFT) + | registernum), ®s->mdioaddr); + __raw_writel(ctrl_reg | XEL_MDIOCTRL_MDIOSTS_MASK, ®s->mdioctrl); if (mdio_wait(regs)) return 1; /* Read data */ - *data = in_be32(®s->mdiord); + *data = __raw_readl(®s->mdiord); return 0; } @@ -220,11 +222,12 @@ static u32 phywrite(struct xemaclite *emaclite, u32 phyaddress, u32 registernum, * Data register. Finally, set the Status bit in the MDIO Control * register to start a MDIO write transaction. */ - u32 ctrl_reg = in_be32(®s->mdioctrl); - out_be32(®s->mdioaddr, ~XEL_MDIOADDR_OP_MASK & - ((phyaddress << XEL_MDIOADDR_PHYADR_SHIFT) | registernum)); - out_be32(®s->mdiowr, data); - out_be32(®s->mdioctrl, ctrl_reg | XEL_MDIOCTRL_MDIOSTS_MASK); + u32 ctrl_reg = __raw_readl(®s->mdioctrl); + __raw_writel(~XEL_MDIOADDR_OP_MASK + & ((phyaddress << XEL_MDIOADDR_PHYADR_SHIFT) + | registernum), ®s->mdioaddr); + __raw_writel(data, ®s->mdiowr); + __raw_writel(ctrl_reg | XEL_MDIOCTRL_MDIOSTS_MASK, ®s->mdioctrl); if (mdio_wait(regs)) return 1; @@ -327,27 +330,27 @@ static int emaclite_start(struct udevice *dev) * TX - TX_PING & TX_PONG initialization */ /* Restart PING TX */ - out_be32(®s->tx_ping_tsr, 0); + __raw_writel(0, ®s->tx_ping_tsr); /* Copy MAC address */ xemaclite_alignedwrite(pdata->enetaddr, ®s->tx_ping, ENET_ADDR_LENGTH); /* Set the length */ - out_be32(®s->tx_ping_tplr, ENET_ADDR_LENGTH); + __raw_writel(ENET_ADDR_LENGTH, ®s->tx_ping_tplr); /* Update the MAC address in the EMAC Lite */ - out_be32(®s->tx_ping_tsr, XEL_TSR_PROG_MAC_ADDR); + __raw_writel(XEL_TSR_PROG_MAC_ADDR, ®s->tx_ping_tsr); /* Wait for EMAC Lite to finish with the MAC address update */ - while ((in_be32 (®s->tx_ping_tsr) & + while ((__raw_readl(®s->tx_ping_tsr) & XEL_TSR_PROG_MAC_ADDR) != 0) ; if (emaclite->txpp) { /* The same operation with PONG TX */ - out_be32(®s->tx_pong_tsr, 0); + __raw_writel(0, ®s->tx_pong_tsr); xemaclite_alignedwrite(pdata->enetaddr, ®s->tx_pong, ENET_ADDR_LENGTH); - out_be32(®s->tx_pong_tplr, ENET_ADDR_LENGTH); - out_be32(®s->tx_pong_tsr, XEL_TSR_PROG_MAC_ADDR); - while ((in_be32(®s->tx_pong_tsr) & + __raw_writel(ENET_ADDR_LENGTH, ®s->tx_pong_tplr); + __raw_writel(XEL_TSR_PROG_MAC_ADDR, ®s->tx_pong_tsr); + while ((__raw_readl(®s->tx_pong_tsr) & XEL_TSR_PROG_MAC_ADDR) != 0) ; } @@ -356,13 +359,13 @@ static int emaclite_start(struct udevice *dev) * RX - RX_PING & RX_PONG initialization */ /* Write out the value to flush the RX buffer */ - out_be32(®s->rx_ping_rsr, XEL_RSR_RECV_IE_MASK); + __raw_writel(XEL_RSR_RECV_IE_MASK, ®s->rx_ping_rsr); if (emaclite->rxpp) - out_be32(®s->rx_pong_rsr, XEL_RSR_RECV_IE_MASK); + __raw_writel(XEL_RSR_RECV_IE_MASK, ®s->rx_pong_rsr); - out_be32(®s->mdioctrl, XEL_MDIOCTRL_MDIOEN_MASK); - if (in_be32(®s->mdioctrl) & XEL_MDIOCTRL_MDIOEN_MASK) + __raw_writel(XEL_MDIOCTRL_MDIOEN_MASK, ®s->mdioctrl); + if (__raw_readl(®s->mdioctrl) & XEL_MDIOCTRL_MDIOEN_MASK) if (!setup_phy(dev)) return -1; @@ -379,9 +382,9 @@ static int xemaclite_txbufferavailable(struct xemaclite *emaclite) * Read the other buffer register * and determine if the other buffer is available */ - tmp = ~in_be32(®s->tx_ping_tsr); + tmp = ~__raw_readl(®s->tx_ping_tsr); if (emaclite->txpp) - tmp |= ~in_be32(®s->tx_pong_tsr); + tmp |= ~__raw_readl(®s->tx_pong_tsr); return !(tmp & XEL_TSR_XMIT_BUSY_MASK); } @@ -405,40 +408,42 @@ static int emaclite_send(struct udevice *dev, void *ptr, int len) if (!maxtry) { printf("Error: Timeout waiting for ethernet TX buffer\n"); /* Restart PING TX */ - out_be32(®s->tx_ping_tsr, 0); + __raw_writel(0, ®s->tx_ping_tsr); if (emaclite->txpp) { - out_be32(®s->tx_pong_tsr, 0); + __raw_writel(0, ®s->tx_pong_tsr); } return -1; } /* Determine if the expected buffer address is empty */ - reg = in_be32(®s->tx_ping_tsr); + reg = __raw_readl(®s->tx_ping_tsr); if ((reg & XEL_TSR_XMIT_BUSY_MASK) == 0) { debug("Send packet from tx_ping buffer\n"); /* Write the frame to the buffer */ xemaclite_alignedwrite(ptr, ®s->tx_ping, len); - out_be32(®s->tx_ping_tplr, len & - (XEL_TPLR_LENGTH_MASK_HI | XEL_TPLR_LENGTH_MASK_LO)); - reg = in_be32(®s->tx_ping_tsr); + __raw_writel(len + & (XEL_TPLR_LENGTH_MASK_HI | XEL_TPLR_LENGTH_MASK_LO), + ®s->tx_ping_tplr); + reg = __raw_readl(®s->tx_ping_tsr); reg |= XEL_TSR_XMIT_BUSY_MASK; - out_be32(®s->tx_ping_tsr, reg); + __raw_writel(reg, ®s->tx_ping_tsr); return 0; } if (emaclite->txpp) { /* Determine if the expected buffer address is empty */ - reg = in_be32(®s->tx_pong_tsr); + reg = __raw_readl(®s->tx_pong_tsr); if ((reg & XEL_TSR_XMIT_BUSY_MASK) == 0) { debug("Send packet from tx_pong buffer\n"); /* Write the frame to the buffer */ xemaclite_alignedwrite(ptr, ®s->tx_pong, len); - out_be32(®s->tx_pong_tplr, len & + __raw_writel(len & (XEL_TPLR_LENGTH_MASK_HI | - XEL_TPLR_LENGTH_MASK_LO)); - reg = in_be32(®s->tx_pong_tsr); + XEL_TPLR_LENGTH_MASK_LO), + ®s->tx_pong_tplr); + reg = __raw_readl(®s->tx_pong_tsr); reg |= XEL_TSR_XMIT_BUSY_MASK; - out_be32(®s->tx_pong_tsr, reg); + __raw_writel(reg, ®s->tx_pong_tsr); return 0; } } @@ -458,7 +463,7 @@ static int emaclite_recv(struct udevice *dev, int flags, uchar **packetp) try_again: if (!emaclite->use_rx_pong_buffer_next) { - reg = in_be32(®s->rx_ping_rsr); + reg = __raw_readl(®s->rx_ping_rsr); debug("Testing data at rx_ping\n"); if ((reg & XEL_RSR_RECV_DONE_MASK) == XEL_RSR_RECV_DONE_MASK) { debug("Data found in rx_ping buffer\n"); @@ -478,7 +483,7 @@ try_again: goto try_again; } } else { - reg = in_be32(®s->rx_pong_rsr); + reg = __raw_readl(®s->rx_pong_rsr); debug("Testing data at rx_pong\n"); if ((reg & XEL_RSR_RECV_DONE_MASK) == XEL_RSR_RECV_DONE_MASK) { debug("Data found in rx_pong buffer\n"); @@ -525,9 +530,9 @@ try_again: length - first_read); /* Acknowledge the frame */ - reg = in_be32(ack); + reg = __raw_readl(ack); reg &= ~XEL_RSR_RECV_DONE_MASK; - out_be32(ack, reg); + __raw_writel(reg, ack); debug("Packet receive from 0x%p, length %dB\n", addr, length); *packetp = etherrxbuff; @@ -595,7 +600,8 @@ static int emaclite_ofdata_to_platdata(struct udevice *dev) int offset = 0; pdata->iobase = (phys_addr_t)dev_get_addr(dev); - emaclite->regs = (struct emaclite_regs *)pdata->iobase; + emaclite->regs = (struct emaclite_regs *)ioremap_nocache(pdata->iobase, + 0x10000); emaclite->phyaddr = -1; diff --git a/drivers/net/zynq_gem.c b/drivers/net/zynq_gem.c index 519699d8ff..8b7c1be5d9 100644 --- a/drivers/net/zynq_gem.c +++ b/drivers/net/zynq_gem.c @@ -24,7 +24,7 @@ #include <asm/system.h> #include <asm/arch/hardware.h> #include <asm/arch/sys_proto.h> -#include <asm-generic/errno.h> +#include <linux/errno.h> DECLARE_GLOBAL_DATA_PTR; diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig index 669e37bb5d..9a7c187446 100644 --- a/drivers/pci/Kconfig +++ b/drivers/pci/Kconfig @@ -39,4 +39,11 @@ config PCI_TEGRA with a total of 5 lanes. Some boards require this for Ethernet support to work (e.g. beaver, jetson-tk1). +config PCI_XILINX + bool "Xilinx AXI Bridge for PCI Express" + depends on DM_PCI + help + Enable support for the Xilinx AXI bridge for PCI express, an IP block + which can be used on some generations of Xilinx FPGAs. + endmenu diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile index f8be9bf1ea..9583e91ceb 100644 --- a/drivers/pci/Makefile +++ b/drivers/pci/Makefile @@ -31,3 +31,4 @@ obj-$(CONFIG_PCI_TEGRA) += pci_tegra.o obj-$(CONFIG_TSI108_PCI) += tsi108_pci.o obj-$(CONFIG_WINBOND_83C553) += w83c553f.o obj-$(CONFIG_PCIE_LAYERSCAPE) += pcie_layerscape.o +obj-$(CONFIG_PCI_XILINX) += pcie_xilinx.o diff --git a/drivers/pci/pci-uclass.c b/drivers/pci/pci-uclass.c index 342b78c0c4..3b00e6a41b 100644 --- a/drivers/pci/pci-uclass.c +++ b/drivers/pci/pci-uclass.c @@ -837,7 +837,7 @@ static int pci_uclass_pre_probe(struct udevice *bus) hose = bus->uclass_priv; /* For bridges, use the top-level PCI controller */ - if (device_get_uclass_id(bus->parent) == UCLASS_ROOT) { + if (!device_is_on_pci_bus(bus)) { hose->ctlr = bus; ret = decode_regions(hose, gd->fdt_blob, bus->parent->of_offset, bus->of_offset); diff --git a/drivers/pci/pci_mvebu.c b/drivers/pci/pci_mvebu.c index 4eedfe1cbb..0f449703de 100644 --- a/drivers/pci/pci_mvebu.c +++ b/drivers/pci/pci_mvebu.c @@ -12,7 +12,7 @@ #include <common.h> #include <pci.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/arch/cpu.h> #include <asm/arch/soc.h> diff --git a/drivers/pci/pcie_xilinx.c b/drivers/pci/pcie_xilinx.c new file mode 100644 index 0000000000..521600180e --- /dev/null +++ b/drivers/pci/pcie_xilinx.c @@ -0,0 +1,220 @@ +/* + * Xilinx AXI Bridge for PCI Express Driver + * + * Copyright (C) 2016 Imagination Technologies + * + * SPDX-License-Identifier: GPL-2.0 + */ + +#include <common.h> +#include <dm.h> +#include <pci.h> + +#include <asm/io.h> + +/** + * struct xilinx_pcie - Xilinx PCIe controller state + * @hose: The parent classes PCI controller state + * @cfg_base: The base address of memory mapped configuration space + */ +struct xilinx_pcie { + struct pci_controller hose; + void *cfg_base; +}; + +/* Register definitions */ +#define XILINX_PCIE_REG_PSCR 0x144 +#define XILINX_PCIE_REG_PSCR_LNKUP BIT(11) + +/** + * pcie_xilinx_link_up() - Check whether the PCIe link is up + * @pcie: Pointer to the PCI controller state + * + * Checks whether the PCIe link for the given device is up or down. + * + * Return: true if the link is up, else false + */ +static bool pcie_xilinx_link_up(struct xilinx_pcie *pcie) +{ + uint32_t pscr = __raw_readl(pcie->cfg_base + XILINX_PCIE_REG_PSCR); + + return pscr & XILINX_PCIE_REG_PSCR_LNKUP; +} + +/** + * pcie_xilinx_config_address() - Calculate the address of a config access + * @pcie: Pointer to the PCI controller state + * @bdf: Identifies the PCIe device to access + * @offset: The offset into the device's configuration space + * @paddress: Pointer to the pointer to write the calculates address to + * + * Calculates the address that should be accessed to perform a PCIe + * configuration space access for a given device identified by the PCIe + * controller device @pcie and the bus, device & function numbers in @bdf. If + * access to the device is not valid then the function will return an error + * code. Otherwise the address to access will be written to the pointer pointed + * to by @paddress. + * + * Return: 0 on success, else -ENODEV + */ +static int pcie_xilinx_config_address(struct xilinx_pcie *pcie, pci_dev_t bdf, + uint offset, void **paddress) +{ + unsigned int bus = PCI_BUS(bdf); + unsigned int dev = PCI_DEV(bdf); + unsigned int func = PCI_FUNC(bdf); + void *addr; + + if ((bus > 0) && !pcie_xilinx_link_up(pcie)) + return -ENODEV; + + /* + * Busses 0 (host-PCIe bridge) & 1 (its immediate child) are + * limited to a single device each. + */ + if ((bus < 2) && (dev > 0)) + return -ENODEV; + + addr = pcie->cfg_base; + addr += bus << 20; + addr += dev << 15; + addr += func << 12; + addr += offset; + *paddress = addr; + + return 0; +} + +/** + * pcie_xilinx_read_config() - Read from configuration space + * @pcie: Pointer to the PCI controller state + * @bdf: Identifies the PCIe device to access + * @offset: The offset into the device's configuration space + * @valuep: A pointer at which to store the read value + * @size: Indicates the size of access to perform + * + * Read a value of size @size from offset @offset within the configuration + * space of the device identified by the bus, device & function numbers in @bdf + * on the PCI bus @bus. + * + * Return: 0 on success, else -ENODEV or -EINVAL + */ +static int pcie_xilinx_read_config(struct udevice *bus, pci_dev_t bdf, + uint offset, ulong *valuep, + enum pci_size_t size) +{ + struct xilinx_pcie *pcie = dev_get_priv(bus); + void *address; + int err; + + err = pcie_xilinx_config_address(pcie, bdf, offset, &address); + if (err < 0) { + *valuep = pci_get_ff(size); + return 0; + } + + switch (size) { + case PCI_SIZE_8: + *valuep = __raw_readb(address); + return 0; + case PCI_SIZE_16: + *valuep = __raw_readw(address); + return 0; + case PCI_SIZE_32: + *valuep = __raw_readl(address); + return 0; + default: + return -EINVAL; + } +} + +/** + * pcie_xilinx_write_config() - Write to configuration space + * @pcie: Pointer to the PCI controller state + * @bdf: Identifies the PCIe device to access + * @offset: The offset into the device's configuration space + * @value: The value to write + * @size: Indicates the size of access to perform + * + * Write the value @value of size @size from offset @offset within the + * configuration space of the device identified by the bus, device & function + * numbers in @bdf on the PCI bus @bus. + * + * Return: 0 on success, else -ENODEV or -EINVAL + */ +static int pcie_xilinx_write_config(struct udevice *bus, pci_dev_t bdf, + uint offset, ulong value, + enum pci_size_t size) +{ + struct xilinx_pcie *pcie = dev_get_priv(bus); + void *address; + int err; + + err = pcie_xilinx_config_address(pcie, bdf, offset, &address); + if (err < 0) + return 0; + + switch (size) { + case PCI_SIZE_8: + __raw_writeb(value, address); + return 0; + case PCI_SIZE_16: + __raw_writew(value, address); + return 0; + case PCI_SIZE_32: + __raw_writel(value, address); + return 0; + default: + return -EINVAL; + } +} + +/** + * pcie_xilinx_ofdata_to_platdata() - Translate from DT to device state + * @dev: A pointer to the device being operated on + * + * Translate relevant data from the device tree pertaining to device @dev into + * state that the driver will later make use of. This state is stored in the + * device's private data structure. + * + * Return: 0 on success, else -EINVAL + */ +static int pcie_xilinx_ofdata_to_platdata(struct udevice *dev) +{ + struct xilinx_pcie *pcie = dev_get_priv(dev); + struct fdt_resource reg_res; + DECLARE_GLOBAL_DATA_PTR; + int err; + + err = fdt_get_resource(gd->fdt_blob, dev->of_offset, "reg", + 0, ®_res); + if (err < 0) { + error("\"reg\" resource not found\n"); + return err; + } + + pcie->cfg_base = map_physmem(reg_res.start, + fdt_resource_size(®_res), + MAP_NOCACHE); + + return 0; +} + +static const struct dm_pci_ops pcie_xilinx_ops = { + .read_config = pcie_xilinx_read_config, + .write_config = pcie_xilinx_write_config, +}; + +static const struct udevice_id pcie_xilinx_ids[] = { + { .compatible = "xlnx,axi-pcie-host-1.00.a" }, + { } +}; + +U_BOOT_DRIVER(pcie_xilinx) = { + .name = "pcie_xilinx", + .id = UCLASS_PCI, + .of_match = pcie_xilinx_ids, + .ops = &pcie_xilinx_ops, + .ofdata_to_platdata = pcie_xilinx_ofdata_to_platdata, + .priv_auto_alloc_size = sizeof(struct xilinx_pcie), +}; diff --git a/drivers/pinctrl/Kconfig b/drivers/pinctrl/Kconfig index f8cfd4bb24..12be3cfe0b 100644 --- a/drivers/pinctrl/Kconfig +++ b/drivers/pinctrl/Kconfig @@ -148,6 +148,15 @@ config PINCTRL_AT91PIO4 This option is to enable the AT91 pinctrl driver for AT91 PIO4 controller which is available on SAMA5D2 SoC. +config ROCKCHIP_RK3399_PINCTRL + bool "Rockchip pin control driver" + depends on DM + help + Support pin multiplexing control on Rockchip rk3399 SoCs. The driver + is controlled by a device tree node which contains both the GPIO + definitions and pin control functions for each available multiplex + function. + config PINCTRL_SANDBOX bool "Sandbox pinctrl driver" depends on SANDBOX diff --git a/drivers/pinctrl/rockchip/Makefile b/drivers/pinctrl/rockchip/Makefile index 64e9587cce..805c833ec9 100644 --- a/drivers/pinctrl/rockchip/Makefile +++ b/drivers/pinctrl/rockchip/Makefile @@ -7,3 +7,4 @@ obj-$(CONFIG_ROCKCHIP_RK3036_PINCTRL) += pinctrl_rk3036.o obj-$(CONFIG_ROCKCHIP_RK3288_PINCTRL) += pinctrl_rk3288.o +obj-$(CONFIG_ROCKCHIP_RK3399_PINCTRL) += pinctrl_rk3399.o diff --git a/drivers/pinctrl/rockchip/pinctrl_rk3399.c b/drivers/pinctrl/rockchip/pinctrl_rk3399.c new file mode 100644 index 0000000000..17ea165eda --- /dev/null +++ b/drivers/pinctrl/rockchip/pinctrl_rk3399.c @@ -0,0 +1,439 @@ +/* + * (C) Copyright 2016 Rockchip Electronics Co., Ltd + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include <common.h> +#include <dm.h> +#include <errno.h> +#include <syscon.h> +#include <asm/io.h> +#include <asm/arch/grf_rk3399.h> +#include <asm/arch/hardware.h> +#include <asm/arch/periph.h> +#include <asm/arch/clock.h> +#include <dm/pinctrl.h> + +DECLARE_GLOBAL_DATA_PTR; + +struct rk3399_pinctrl_priv { + struct rk3399_grf_regs *grf; + struct rk3399_pmugrf_regs *pmugrf; +}; + +enum { + /* GRF_GPIO2B_IOMUX */ + GRF_GPIO2B1_SEL_SHIFT = 0, + GRF_GPIO2B1_SEL_MASK = 3 << GRF_GPIO2B1_SEL_SHIFT, + GRF_SPI2TPM_RXD = 1, + GRF_GPIO2B2_SEL_SHIFT = 2, + GRF_GPIO2B2_SEL_MASK = 3 << GRF_GPIO2B2_SEL_SHIFT, + GRF_SPI2TPM_TXD = 1, + GRF_GPIO2B3_SEL_SHIFT = 6, + GRF_GPIO2B3_SEL_MASK = 3 << GRF_GPIO2B3_SEL_SHIFT, + GRF_SPI2TPM_CLK = 1, + GRF_GPIO2B4_SEL_SHIFT = 8, + GRF_GPIO2B4_SEL_MASK = 3 << GRF_GPIO2B4_SEL_SHIFT, + GRF_SPI2TPM_CSN0 = 1, + + /* GRF_GPIO3A_IOMUX */ + GRF_GPIO3A4_SEL_SHIFT = 8, + GRF_GPIO3A4_SEL_MASK = 3 << GRF_GPIO3A4_SEL_SHIFT, + GRF_SPI0NORCODEC_RXD = 2, + GRF_GPIO3A5_SEL_SHIFT = 10, + GRF_GPIO3A5_SEL_MASK = 3 << GRF_GPIO3A5_SEL_SHIFT, + GRF_SPI0NORCODEC_TXD = 2, + GRF_GPIO3A6_SEL_SHIFT = 12, + GRF_GPIO3A6_SEL_MASK = 3 << GRF_GPIO3A6_SEL_SHIFT, + GRF_SPI0NORCODEC_CLK = 2, + GRF_GPIO3A7_SEL_SHIFT = 14, + GRF_GPIO3A7_SEL_MASK = 3 << GRF_GPIO3A7_SEL_SHIFT, + GRF_SPI0NORCODEC_CSN0 = 2, + + /* GRF_GPIO3B_IOMUX */ + GRF_GPIO3B0_SEL_SHIFT = 0, + GRF_GPIO3B0_SEL_MASK = 3 << GRF_GPIO3B0_SEL_SHIFT, + GRF_SPI0NORCODEC_CSN1 = 2, + + /* GRF_GPIO4B_IOMUX */ + GRF_GPIO4B0_SEL_SHIFT = 0, + GRF_GPIO4B0_SEL_MASK = 3 << GRF_GPIO4B0_SEL_SHIFT, + GRF_SDMMC_DATA0 = 1, + GRF_UART2DBGA_SIN = 2, + GRF_GPIO4B1_SEL_SHIFT = 2, + GRF_GPIO4B1_SEL_MASK = 3 << GRF_GPIO4B1_SEL_SHIFT, + GRF_SDMMC_DATA1 = 1, + GRF_UART2DBGA_SOUT = 2, + GRF_GPIO4B2_SEL_SHIFT = 4, + GRF_GPIO4B2_SEL_MASK = 3 << GRF_GPIO4B2_SEL_SHIFT, + GRF_SDMMC_DATA2 = 1, + GRF_GPIO4B3_SEL_SHIFT = 6, + GRF_GPIO4B3_SEL_MASK = 3 << GRF_GPIO4B3_SEL_SHIFT, + GRF_SDMMC_DATA3 = 1, + GRF_GPIO4B4_SEL_SHIFT = 8, + GRF_GPIO4B4_SEL_MASK = 3 << GRF_GPIO4B4_SEL_SHIFT, + GRF_SDMMC_CLKOUT = 1, + GRF_GPIO4B5_SEL_SHIFT = 10, + GRF_GPIO4B5_SEL_MASK = 3 << GRF_GPIO4B5_SEL_SHIFT, + GRF_SDMMC_CMD = 1, + + /* GRF_GPIO4C_IOMUX */ + GRF_GPIO4C2_SEL_SHIFT = 4, + GRF_GPIO4C2_SEL_MASK = 3 << GRF_GPIO4C2_SEL_SHIFT, + GRF_PWM_0 = 1, + GRF_GPIO4C3_SEL_SHIFT = 6, + GRF_GPIO4C3_SEL_MASK = 3 << GRF_GPIO4C3_SEL_SHIFT, + GRF_UART2DGBC_SIN = 1, + GRF_GPIO4C4_SEL_SHIFT = 8, + GRF_GPIO4C4_SEL_MASK = 3 << GRF_GPIO4C4_SEL_SHIFT, + GRF_UART2DBGC_SOUT = 1, + GRF_GPIO4C6_SEL_SHIFT = 12, + GRF_GPIO4C6_SEL_MASK = 3 << GRF_GPIO4C6_SEL_SHIFT, + GRF_PWM_1 = 1, + + /* PMUGRF_GPIO0A_IOMUX */ + PMUGRF_GPIO0A6_SEL_SHIFT = 12, + PMUGRF_GPIO0A6_SEL_MASK = 3 << PMUGRF_GPIO0A6_SEL_SHIFT, + PMUGRF_PWM_3A = 1, + + /* PMUGRF_GPIO1A_IOMUX */ + PMUGRF_GPIO1A7_SEL_SHIFT = 14, + PMUGRF_GPIO1A7_SEL_MASK = 3 << PMUGRF_GPIO1A7_SEL_SHIFT, + PMUGRF_SPI1EC_RXD = 2, + + /* PMUGRF_GPIO1B_IOMUX */ + PMUGRF_GPIO1B0_SEL_SHIFT = 0, + PMUGRF_GPIO1B0_SEL_MASK = 3 << PMUGRF_GPIO1B0_SEL_SHIFT, + PMUGRF_SPI1EC_TXD = 2, + PMUGRF_GPIO1B1_SEL_SHIFT = 2, + PMUGRF_GPIO1B1_SEL_MASK = 3 << PMUGRF_GPIO1B1_SEL_SHIFT, + PMUGRF_SPI1EC_CLK = 2, + PMUGRF_GPIO1B2_SEL_SHIFT = 4, + PMUGRF_GPIO1B2_SEL_MASK = 3 << PMUGRF_GPIO1B2_SEL_SHIFT, + PMUGRF_SPI1EC_CSN0 = 2, + PMUGRF_GPIO1B6_SEL_SHIFT = 12, + PMUGRF_GPIO1B6_SEL_MASK = 3 << PMUGRF_GPIO1B6_SEL_SHIFT, + PMUGRF_PWM_3B = 1, + PMUGRF_GPIO1B7_SEL_SHIFT = 14, + PMUGRF_GPIO1B7_SEL_MASK = 3 << PMUGRF_GPIO1B7_SEL_SHIFT, + PMUGRF_I2C0PMU_SDA = 2, + + /* PMUGRF_GPIO1C_IOMUX */ + PMUGRF_GPIO1C0_SEL_SHIFT = 0, + PMUGRF_GPIO1C0_SEL_MASK = 3 << PMUGRF_GPIO1C0_SEL_SHIFT, + PMUGRF_I2C0PMU_SCL = 2, + PMUGRF_GPIO1C3_SEL_SHIFT = 6, + PMUGRF_GPIO1C3_SEL_MASK = 3 << PMUGRF_GPIO1C3_SEL_SHIFT, + PMUGRF_PWM_2 = 1, + +}; +static void pinctrl_rk3399_pwm_config(struct rk3399_grf_regs *grf, + struct rk3399_pmugrf_regs *pmugrf, int pwm_id) +{ + switch (pwm_id) { + case PERIPH_ID_PWM0: + rk_clrsetreg(&grf->gpio4c_iomux, + GRF_GPIO4C2_SEL_MASK, + GRF_PWM_0 << GRF_GPIO4C2_SEL_SHIFT); + break; + case PERIPH_ID_PWM1: + rk_clrsetreg(&grf->gpio4c_iomux, + GRF_GPIO4C6_SEL_MASK, + GRF_PWM_1 << GRF_GPIO4C6_SEL_SHIFT); + break; + case PERIPH_ID_PWM2: + rk_clrsetreg(&pmugrf->gpio1c_iomux, + PMUGRF_GPIO1C3_SEL_MASK, + PMUGRF_PWM_2 << PMUGRF_GPIO1C3_SEL_SHIFT); + break; + case PERIPH_ID_PWM3: + if (readl(&pmugrf->soc_con0) & (1 << 5)) + rk_clrsetreg(&pmugrf->gpio1b_iomux, + PMUGRF_GPIO1B6_SEL_MASK, + PMUGRF_PWM_3B << PMUGRF_GPIO1B6_SEL_SHIFT); + else + rk_clrsetreg(&pmugrf->gpio0a_iomux, + PMUGRF_GPIO0A6_SEL_MASK, + PMUGRF_PWM_3A << PMUGRF_GPIO0A6_SEL_SHIFT); + break; + default: + debug("pwm id = %d iomux error!\n", pwm_id); + break; + } +} + +static void pinctrl_rk3399_i2c_config(struct rk3399_grf_regs *grf, + struct rk3399_pmugrf_regs *pmugrf, + int i2c_id) +{ + switch (i2c_id) { + case PERIPH_ID_I2C0: + rk_clrsetreg(&pmugrf->gpio1b_iomux, + PMUGRF_GPIO1B7_SEL_MASK, + PMUGRF_I2C0PMU_SDA << PMUGRF_GPIO1B7_SEL_SHIFT); + rk_clrsetreg(&pmugrf->gpio1c_iomux, + PMUGRF_GPIO1C0_SEL_MASK, + PMUGRF_I2C0PMU_SCL << PMUGRF_GPIO1C0_SEL_SHIFT); + break; + case PERIPH_ID_I2C1: + case PERIPH_ID_I2C2: + case PERIPH_ID_I2C3: + case PERIPH_ID_I2C4: + case PERIPH_ID_I2C5: + default: + debug("i2c id = %d iomux error!\n", i2c_id); + break; + } +} + +static void pinctrl_rk3399_lcdc_config(struct rk3399_grf_regs *grf, int lcd_id) +{ + switch (lcd_id) { + case PERIPH_ID_LCDC0: + break; + default: + debug("lcdc id = %d iomux error!\n", lcd_id); + break; + } +} + +static int pinctrl_rk3399_spi_config(struct rk3399_grf_regs *grf, + struct rk3399_pmugrf_regs *pmugrf, + enum periph_id spi_id, int cs) +{ + switch (spi_id) { + case PERIPH_ID_SPI0: + switch (cs) { + case 0: + rk_clrsetreg(&grf->gpio3a_iomux, + GRF_GPIO3A7_SEL_MASK, + GRF_SPI0NORCODEC_CSN0 + << GRF_GPIO3A7_SEL_SHIFT); + break; + case 1: + rk_clrsetreg(&grf->gpio3b_iomux, + GRF_GPIO3B0_SEL_MASK, + GRF_SPI0NORCODEC_CSN1 + << GRF_GPIO3B0_SEL_SHIFT); + break; + default: + goto err; + } + rk_clrsetreg(&grf->gpio3a_iomux, + GRF_GPIO3A4_SEL_MASK | GRF_GPIO3A5_SEL_SHIFT + | GRF_GPIO3A6_SEL_SHIFT, + GRF_SPI0NORCODEC_RXD << GRF_GPIO3A4_SEL_SHIFT + | GRF_SPI0NORCODEC_RXD << GRF_GPIO3A5_SEL_SHIFT + | GRF_SPI0NORCODEC_RXD << GRF_GPIO3A6_SEL_SHIFT); + break; + case PERIPH_ID_SPI1: + if (cs != 0) + goto err; + rk_clrsetreg(&pmugrf->gpio1a_iomux, + PMUGRF_GPIO1A7_SEL_MASK, + PMUGRF_SPI1EC_RXD << PMUGRF_GPIO1A7_SEL_SHIFT); + rk_clrsetreg(&pmugrf->gpio1b_iomux, + PMUGRF_GPIO1B0_SEL_MASK | PMUGRF_GPIO1B1_SEL_MASK + | PMUGRF_GPIO1B2_SEL_MASK, + PMUGRF_SPI1EC_TXD << PMUGRF_GPIO1B0_SEL_SHIFT + | PMUGRF_SPI1EC_CLK << PMUGRF_GPIO1B1_SEL_SHIFT + | PMUGRF_SPI1EC_CSN0 << PMUGRF_GPIO1B2_SEL_SHIFT); + break; + case PERIPH_ID_SPI2: + if (cs != 0) + goto err; + rk_clrsetreg(&grf->gpio2b_iomux, + GRF_GPIO2B1_SEL_MASK | GRF_GPIO2B2_SEL_MASK + | GRF_GPIO2B3_SEL_MASK | GRF_GPIO2B4_SEL_MASK, + GRF_SPI2TPM_RXD << GRF_GPIO2B1_SEL_SHIFT + | GRF_SPI2TPM_TXD << GRF_GPIO2B2_SEL_SHIFT + | GRF_SPI2TPM_CLK << GRF_GPIO2B3_SEL_SHIFT + | GRF_SPI2TPM_CSN0 << GRF_GPIO2B4_SEL_SHIFT); + break; + default: + goto err; + } + + return 0; +err: + debug("rkspi: periph%d cs=%d not supported", spi_id, cs); + return -ENOENT; +} + +static void pinctrl_rk3399_uart_config(struct rk3399_grf_regs *grf, + struct rk3399_pmugrf_regs *pmugrf, + int uart_id) +{ + switch (uart_id) { + case PERIPH_ID_UART2: + /* Using channel-C by default */ + rk_clrsetreg(&grf->gpio4c_iomux, + GRF_GPIO4C3_SEL_MASK, + GRF_UART2DGBC_SIN << GRF_GPIO4C3_SEL_SHIFT); + rk_clrsetreg(&grf->gpio4c_iomux, + GRF_GPIO4C4_SEL_MASK, + GRF_UART2DBGC_SOUT << GRF_GPIO4C4_SEL_SHIFT); + break; + case PERIPH_ID_UART0: + case PERIPH_ID_UART1: + case PERIPH_ID_UART3: + case PERIPH_ID_UART4: + default: + debug("uart id = %d iomux error!\n", uart_id); + break; + } +} + +static void pinctrl_rk3399_sdmmc_config(struct rk3399_grf_regs *grf, int mmc_id) +{ + switch (mmc_id) { + case PERIPH_ID_EMMC: + break; + case PERIPH_ID_SDCARD: + rk_clrsetreg(&grf->gpio4b_iomux, + GRF_GPIO4B0_SEL_MASK | GRF_GPIO4B1_SEL_MASK + | GRF_GPIO4B2_SEL_MASK | GRF_GPIO4B3_SEL_MASK + | GRF_GPIO4B4_SEL_MASK | GRF_GPIO4B5_SEL_MASK, + GRF_SDMMC_DATA0 << GRF_GPIO4B0_SEL_SHIFT + | GRF_SDMMC_DATA1 << GRF_GPIO4B1_SEL_SHIFT + | GRF_SDMMC_DATA2 << GRF_GPIO4B2_SEL_SHIFT + | GRF_SDMMC_DATA3 << GRF_GPIO4B3_SEL_SHIFT + | GRF_SDMMC_CLKOUT << GRF_GPIO4B4_SEL_SHIFT + | GRF_SDMMC_CMD << GRF_GPIO4B5_SEL_SHIFT); + break; + default: + debug("mmc id = %d iomux error!\n", mmc_id); + break; + } +} + +static int rk3399_pinctrl_request(struct udevice *dev, int func, int flags) +{ + struct rk3399_pinctrl_priv *priv = dev_get_priv(dev); + + debug("%s: func=%x, flags=%x\n", __func__, func, flags); + switch (func) { + case PERIPH_ID_PWM0: + case PERIPH_ID_PWM1: + case PERIPH_ID_PWM2: + case PERIPH_ID_PWM3: + case PERIPH_ID_PWM4: + pinctrl_rk3399_pwm_config(priv->grf, priv->pmugrf, func); + break; + case PERIPH_ID_I2C0: + case PERIPH_ID_I2C1: + case PERIPH_ID_I2C2: + case PERIPH_ID_I2C3: + case PERIPH_ID_I2C4: + case PERIPH_ID_I2C5: + pinctrl_rk3399_i2c_config(priv->grf, priv->pmugrf, func); + break; + case PERIPH_ID_SPI0: + case PERIPH_ID_SPI1: + case PERIPH_ID_SPI2: + pinctrl_rk3399_spi_config(priv->grf, priv->pmugrf, func, flags); + break; + case PERIPH_ID_UART0: + case PERIPH_ID_UART1: + case PERIPH_ID_UART2: + case PERIPH_ID_UART3: + case PERIPH_ID_UART4: + pinctrl_rk3399_uart_config(priv->grf, priv->pmugrf, func); + break; + case PERIPH_ID_LCDC0: + case PERIPH_ID_LCDC1: + pinctrl_rk3399_lcdc_config(priv->grf, func); + break; + case PERIPH_ID_SDMMC0: + case PERIPH_ID_SDMMC1: + pinctrl_rk3399_sdmmc_config(priv->grf, func); + break; + default: + return -EINVAL; + } + + return 0; +} + +static int rk3399_pinctrl_get_periph_id(struct udevice *dev, + struct udevice *periph) +{ + u32 cell[3]; + int ret; + + ret = fdtdec_get_int_array(gd->fdt_blob, periph->of_offset, + "interrupts", cell, ARRAY_SIZE(cell)); + if (ret < 0) + return -EINVAL; + + switch (cell[1]) { + case 68: + return PERIPH_ID_SPI0; + case 53: + return PERIPH_ID_SPI1; + case 52: + return PERIPH_ID_SPI2; + case 57: + return PERIPH_ID_I2C0; + case 59: /* Note strange order */ + return PERIPH_ID_I2C1; + case 35: + return PERIPH_ID_I2C2; + case 34: + return PERIPH_ID_I2C3; + case 56: + return PERIPH_ID_I2C4; + case 38: + return PERIPH_ID_I2C5; + case 65: + return PERIPH_ID_SDMMC1; + } + + return -ENOENT; +} + +static int rk3399_pinctrl_set_state_simple(struct udevice *dev, + struct udevice *periph) +{ + int func; + + func = rk3399_pinctrl_get_periph_id(dev, periph); + if (func < 0) + return func; + + return rk3399_pinctrl_request(dev, func, 0); +} + +static struct pinctrl_ops rk3399_pinctrl_ops = { + .set_state_simple = rk3399_pinctrl_set_state_simple, + .request = rk3399_pinctrl_request, + .get_periph_id = rk3399_pinctrl_get_periph_id, +}; + +static int rk3399_pinctrl_probe(struct udevice *dev) +{ + struct rk3399_pinctrl_priv *priv = dev_get_priv(dev); + int ret = 0; + + priv->grf = syscon_get_first_range(ROCKCHIP_SYSCON_GRF); + priv->pmugrf = syscon_get_first_range(ROCKCHIP_SYSCON_PMUGRF); + debug("%s: grf=%p, pmugrf=%p\n", __func__, priv->grf, priv->pmugrf); + + return ret; +} + +static const struct udevice_id rk3399_pinctrl_ids[] = { + { .compatible = "rockchip,rk3399-pinctrl" }, + { } +}; + +U_BOOT_DRIVER(pinctrl_rk3399) = { + .name = "rockchip_rk3399_pinctrl", + .id = UCLASS_PINCTRL, + .of_match = rk3399_pinctrl_ids, + .priv_auto_alloc_size = sizeof(struct rk3399_pinctrl_priv), + .ops = &rk3399_pinctrl_ops, + .bind = dm_scan_fdt_dev, + .probe = rk3399_pinctrl_probe, +}; diff --git a/drivers/pinctrl/uniphier/Kconfig b/drivers/pinctrl/uniphier/Kconfig index 7febea2908..689e576566 100644 --- a/drivers/pinctrl/uniphier/Kconfig +++ b/drivers/pinctrl/uniphier/Kconfig @@ -3,6 +3,12 @@ if ARCH_UNIPHIER config PINCTRL_UNIPHIER bool +config PINCTRL_UNIPHIER_SLD3 + bool "UniPhier PH1-sLD3 SoC pinctrl driver" + depends on ARCH_UNIPHIER_SLD3 + default y + select PINCTRL_UNIPHIER + config PINCTRL_UNIPHIER_LD4 bool "UniPhier PH1-LD4 SoC pinctrl driver" depends on ARCH_UNIPHIER_LD4 diff --git a/drivers/pinctrl/uniphier/Makefile b/drivers/pinctrl/uniphier/Makefile index 4de251b810..fd003ad199 100644 --- a/drivers/pinctrl/uniphier/Makefile +++ b/drivers/pinctrl/uniphier/Makefile @@ -4,6 +4,7 @@ obj-y += pinctrl-uniphier-core.o +obj-$(CONFIG_PINCTRL_UNIPHIER_SLD3) += pinctrl-uniphier-sld3.o obj-$(CONFIG_PINCTRL_UNIPHIER_LD4) += pinctrl-uniphier-ld4.o obj-$(CONFIG_PINCTRL_UNIPHIER_PRO4) += pinctrl-uniphier-pro4.o obj-$(CONFIG_PINCTRL_UNIPHIER_SLD8) += pinctrl-uniphier-sld8.o diff --git a/drivers/pinctrl/uniphier/pinctrl-uniphier-core.c b/drivers/pinctrl/uniphier/pinctrl-uniphier-core.c index 3f891f1581..51144b8e73 100644 --- a/drivers/pinctrl/uniphier/pinctrl-uniphier-core.c +++ b/drivers/pinctrl/uniphier/pinctrl-uniphier-core.c @@ -13,6 +13,10 @@ #include "pinctrl-uniphier.h" +#define UNIPHIER_PINCTRL_PINMUX_BASE 0x1000 +#define UNIPHIER_PINCTRL_LOAD_PINMUX 0x1700 +#define UNIPHIER_PINCTRL_IECTRL 0x1d00 + static const char *uniphier_pinctrl_dummy_name = "_dummy"; static int uniphier_pinctrl_get_groups_count(struct udevice *dev) @@ -101,8 +105,10 @@ static void uniphier_pinmux_set_one(struct udevice *dev, unsigned pin, int muxval) { struct uniphier_pinctrl_priv *priv = dev_get_priv(dev); - unsigned mux_bits, reg_stride, reg, reg_end, shift, mask; - bool load_pinctrl; + unsigned reg, reg_end, shift, mask; + unsigned mux_bits = 8; + unsigned reg_stride = 4; + bool load_pinctrl = false; u32 tmp; /* some pins need input-enabling */ @@ -111,24 +117,18 @@ static void uniphier_pinmux_set_one(struct udevice *dev, unsigned pin, if (muxval < 0) return; /* dedicated pin; nothing to do for pin-mux */ + if (priv->socdata->caps & UNIPHIER_PINCTRL_CAPS_MUX_4BIT) + mux_bits = 4; + if (priv->socdata->caps & UNIPHIER_PINCTRL_CAPS_DBGMUX_SEPARATE) { /* * Mode offset bit * Normal 4 * n shift+3:shift * Debug 4 * n shift+7:shift+4 */ - mux_bits = 4; + mux_bits /= 2; reg_stride = 8; load_pinctrl = true; - } else { - /* - * Mode offset bit - * Normal 8 * n shift+3:shift - * Debug 8 * n + 4 shift+3:shift - */ - mux_bits = 8; - reg_stride = 4; - load_pinctrl = false; } reg = UNIPHIER_PINCTRL_PINMUX_BASE + pin * mux_bits / 32 * reg_stride; diff --git a/drivers/pinctrl/uniphier/pinctrl-uniphier-ld11.c b/drivers/pinctrl/uniphier/pinctrl-uniphier-ld11.c index e42602bc82..1d318d824c 100644 --- a/drivers/pinctrl/uniphier/pinctrl-uniphier-ld11.c +++ b/drivers/pinctrl/uniphier/pinctrl-uniphier-ld11.c @@ -28,6 +28,12 @@ static const int i2c4_muxvals[] = {1, 1}; static const unsigned nand_pins[] = {3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17}; static const int nand_muxvals[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; +static const unsigned system_bus_pins[] = {1, 2, 6, 7, 8, 9, 10, 11, 12, 13, + 14, 15, 16, 17}; +static const int system_bus_muxvals[] = {0, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2}; +static const unsigned system_bus_cs1_pins[] = {0}; +static const int system_bus_cs1_muxvals[] = {0}; static const unsigned uart0_pins[] = {54, 55}; static const int uart0_muxvals[] = {0, 0}; static const unsigned uart1_pins[] = {58, 59}; @@ -52,6 +58,8 @@ static const struct uniphier_pinctrl_group uniphier_ld11_groups[] = { UNIPHIER_PINCTRL_GROUP(i2c3), UNIPHIER_PINCTRL_GROUP(i2c4), UNIPHIER_PINCTRL_GROUP(nand), + UNIPHIER_PINCTRL_GROUP_SPL(system_bus), + UNIPHIER_PINCTRL_GROUP_SPL(system_bus_cs1), UNIPHIER_PINCTRL_GROUP_SPL(uart0), UNIPHIER_PINCTRL_GROUP_SPL(uart1), UNIPHIER_PINCTRL_GROUP_SPL(uart2), @@ -69,6 +77,7 @@ static const char * const uniphier_ld11_functions[] = { UNIPHIER_PINMUX_FUNCTION(i2c3), UNIPHIER_PINMUX_FUNCTION(i2c4), UNIPHIER_PINMUX_FUNCTION(nand), + UNIPHIER_PINMUX_FUNCTION_SPL(system_bus), UNIPHIER_PINMUX_FUNCTION_SPL(uart0), UNIPHIER_PINMUX_FUNCTION_SPL(uart1), UNIPHIER_PINMUX_FUNCTION_SPL(uart2), diff --git a/drivers/pinctrl/uniphier/pinctrl-uniphier-ld20.c b/drivers/pinctrl/uniphier/pinctrl-uniphier-ld20.c index d6ae51248a..4ca39e6d98 100644 --- a/drivers/pinctrl/uniphier/pinctrl-uniphier-ld20.c +++ b/drivers/pinctrl/uniphier/pinctrl-uniphier-ld20.c @@ -34,6 +34,12 @@ static const unsigned nand_pins[] = {3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, static const int nand_muxvals[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; static const unsigned sd_pins[] = {10, 11, 12, 13, 14, 15, 16, 17}; static const int sd_muxvals[] = {3, 3, 3, 3, 3, 3, 3, 3}; /* No SDVOLC */ +static const unsigned system_bus_pins[] = {1, 2, 6, 7, 8, 9, 10, 11, 12, 13, + 14, 15, 16, 17}; +static const int system_bus_muxvals[] = {0, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2}; +static const unsigned system_bus_cs1_pins[] = {0}; +static const int system_bus_cs1_muxvals[] = {0}; static const unsigned uart0_pins[] = {54, 55}; static const int uart0_muxvals[] = {0, 0}; static const unsigned uart1_pins[] = {58, 59}; @@ -62,6 +68,8 @@ static const struct uniphier_pinctrl_group uniphier_ld20_groups[] = { UNIPHIER_PINCTRL_GROUP(i2c4), UNIPHIER_PINCTRL_GROUP(nand), UNIPHIER_PINCTRL_GROUP(sd), + UNIPHIER_PINCTRL_GROUP_SPL(system_bus), + UNIPHIER_PINCTRL_GROUP_SPL(system_bus_cs1), UNIPHIER_PINCTRL_GROUP_SPL(uart0), UNIPHIER_PINCTRL_GROUP_SPL(uart1), UNIPHIER_PINCTRL_GROUP_SPL(uart2), @@ -82,6 +90,7 @@ static const char * const uniphier_ld20_functions[] = { UNIPHIER_PINMUX_FUNCTION(i2c4), UNIPHIER_PINMUX_FUNCTION(nand), UNIPHIER_PINMUX_FUNCTION(sd), + UNIPHIER_PINMUX_FUNCTION_SPL(system_bus), UNIPHIER_PINMUX_FUNCTION_SPL(uart0), UNIPHIER_PINMUX_FUNCTION_SPL(uart1), UNIPHIER_PINMUX_FUNCTION_SPL(uart2), diff --git a/drivers/pinctrl/uniphier/pinctrl-uniphier-ld4.c b/drivers/pinctrl/uniphier/pinctrl-uniphier-ld4.c index 955858a6aa..9b3db9d812 100644 --- a/drivers/pinctrl/uniphier/pinctrl-uniphier-ld4.c +++ b/drivers/pinctrl/uniphier/pinctrl-uniphier-ld4.c @@ -51,6 +51,18 @@ static const unsigned nand_cs1_pins[] = {22, 23}; static const int nand_cs1_muxvals[] = {0, 0}; static const unsigned sd_pins[] = {44, 45, 46, 47, 48, 49, 50, 51, 52}; static const int sd_muxvals[] = {0, 0, 0, 0, 0, 0, 0, 0, 0}; +static const unsigned system_bus_pins[] = {16, 17, 18, 19, 20, 165, 166, 167, + 168, 169, 170, 171, 172, 173}; +static const int system_bus_muxvals[] = {0, 0, 0, 0, 0, -1, -1, -1, -1, -1, -1, + -1, -1, -1}; +static const unsigned system_bus_cs0_pins[] = {155}; +static const int system_bus_cs0_muxvals[] = {1}; +static const unsigned system_bus_cs1_pins[] = {174}; +static const int system_bus_cs1_muxvals[] = {-1}; +static const unsigned system_bus_cs2_pins[] = {64}; +static const int system_bus_cs2_muxvals[] = {1}; +static const unsigned system_bus_cs3_pins[] = {156}; +static const int system_bus_cs3_muxvals[] = {1}; static const unsigned uart0_pins[] = {85, 88}; static const int uart0_muxvals[] = {1, 1}; static const unsigned uart1_pins[] = {155, 156}; @@ -82,6 +94,11 @@ static const struct uniphier_pinctrl_group uniphier_ld4_groups[] = { UNIPHIER_PINCTRL_GROUP(nand), UNIPHIER_PINCTRL_GROUP(nand_cs1), UNIPHIER_PINCTRL_GROUP(sd), + UNIPHIER_PINCTRL_GROUP(system_bus), + UNIPHIER_PINCTRL_GROUP(system_bus_cs0), + UNIPHIER_PINCTRL_GROUP(system_bus_cs1), + UNIPHIER_PINCTRL_GROUP(system_bus_cs2), + UNIPHIER_PINCTRL_GROUP(system_bus_cs3), UNIPHIER_PINCTRL_GROUP_SPL(uart0), UNIPHIER_PINCTRL_GROUP_SPL(uart1), UNIPHIER_PINCTRL_GROUP_SPL(uart1b), @@ -103,6 +120,7 @@ static const char * const uniphier_ld4_functions[] = { UNIPHIER_PINMUX_FUNCTION(i2c3), UNIPHIER_PINMUX_FUNCTION(nand), UNIPHIER_PINMUX_FUNCTION(sd), + UNIPHIER_PINMUX_FUNCTION(system_bus), UNIPHIER_PINMUX_FUNCTION_SPL(uart0), UNIPHIER_PINMUX_FUNCTION_SPL(uart1), UNIPHIER_PINMUX_FUNCTION_SPL(uart2), diff --git a/drivers/pinctrl/uniphier/pinctrl-uniphier-ld6b.c b/drivers/pinctrl/uniphier/pinctrl-uniphier-ld6b.c index 5f9407ed21..80d782c8d6 100644 --- a/drivers/pinctrl/uniphier/pinctrl-uniphier-ld6b.c +++ b/drivers/pinctrl/uniphier/pinctrl-uniphier-ld6b.c @@ -48,6 +48,20 @@ static const unsigned nand_cs1_pins[] = {37, 38}; static const int nand_cs1_muxvals[] = {0, 0}; static const unsigned sd_pins[] = {47, 48, 49, 50, 51, 52, 53, 54, 55}; static const int sd_muxvals[] = {0, 0, 0, 0, 0, 0, 0, 0, 0}; +static const unsigned system_bus_pins[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, + 11, 12, 13}; +static const int system_bus_muxvals[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0}; +static const unsigned system_bus_cs1_pins[] = {14}; +static const int system_bus_cs1_muxvals[] = {0}; +static const unsigned system_bus_cs2_pins[] = {37}; +static const int system_bus_cs2_muxvals[] = {6}; +static const unsigned system_bus_cs3_pins[] = {38}; +static const int system_bus_cs3_muxvals[] = {6}; +static const unsigned system_bus_cs4_pins[] = {115}; +static const int system_bus_cs4_muxvals[] = {6}; +static const unsigned system_bus_cs5_pins[] = {55}; +static const int system_bus_cs5_muxvals[] = {6}; static const unsigned uart0_pins[] = {135, 136}; static const int uart0_muxvals[] = {3, 3}; static const unsigned uart0b_pins[] = {11, 12}; @@ -81,6 +95,12 @@ static const struct uniphier_pinctrl_group uniphier_ld6b_groups[] = { UNIPHIER_PINCTRL_GROUP(nand), UNIPHIER_PINCTRL_GROUP(nand_cs1), UNIPHIER_PINCTRL_GROUP(sd), + UNIPHIER_PINCTRL_GROUP(system_bus), + UNIPHIER_PINCTRL_GROUP(system_bus_cs1), + UNIPHIER_PINCTRL_GROUP(system_bus_cs2), + UNIPHIER_PINCTRL_GROUP(system_bus_cs3), + UNIPHIER_PINCTRL_GROUP(system_bus_cs4), + UNIPHIER_PINCTRL_GROUP(system_bus_cs5), UNIPHIER_PINCTRL_GROUP_SPL(uart0), UNIPHIER_PINCTRL_GROUP_SPL(uart0b), UNIPHIER_PINCTRL_GROUP_SPL(uart1), @@ -103,6 +123,7 @@ static const char * const uniphier_ld6b_functions[] = { UNIPHIER_PINMUX_FUNCTION(i2c3), UNIPHIER_PINMUX_FUNCTION(nand), UNIPHIER_PINMUX_FUNCTION(sd), + UNIPHIER_PINMUX_FUNCTION(system_bus), UNIPHIER_PINMUX_FUNCTION_SPL(uart0), UNIPHIER_PINMUX_FUNCTION_SPL(uart1), UNIPHIER_PINMUX_FUNCTION_SPL(uart2), diff --git a/drivers/pinctrl/uniphier/pinctrl-uniphier-pro4.c b/drivers/pinctrl/uniphier/pinctrl-uniphier-pro4.c index 6f349dcd2e..f1624dab3f 100644 --- a/drivers/pinctrl/uniphier/pinctrl-uniphier-pro4.c +++ b/drivers/pinctrl/uniphier/pinctrl-uniphier-pro4.c @@ -53,6 +53,26 @@ static const int sd_muxvals[] = {0, 0, 0, 0, 0, 0, 0, 0, 0}; static const unsigned sd1_pins[] = {319, 320, 321, 322, 323, 324, 325, 326, 327}; static const int sd1_muxvals[] = {0, 0, 0, 0, 0, 0, 0, 0, 0}; +static const unsigned system_bus_pins[] = {25, 26, 27, 28, 29, 30, 31, 32, 33, + 34, 35, 36, 37, 38}; +static const int system_bus_muxvals[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0}; +static const unsigned system_bus_cs0_pins[] = {318}; +static const int system_bus_cs0_muxvals[] = {5}; +static const unsigned system_bus_cs1_pins[] = {24}; +static const int system_bus_cs1_muxvals[] = {0}; +static const unsigned system_bus_cs2_pins[] = {315}; +static const int system_bus_cs2_muxvals[] = {5}; +static const unsigned system_bus_cs3_pins[] = {313}; +static const int system_bus_cs3_muxvals[] = {5}; +static const unsigned system_bus_cs4_pins[] = {305}; +static const int system_bus_cs4_muxvals[] = {5}; +static const unsigned system_bus_cs5_pins[] = {303}; +static const int system_bus_cs5_muxvals[] = {6}; +static const unsigned system_bus_cs6_pins[] = {307}; +static const int system_bus_cs6_muxvals[] = {6}; +static const unsigned system_bus_cs7_pins[] = {312}; +static const int system_bus_cs7_muxvals[] = {6}; static const unsigned uart0_pins[] = {127, 128}; static const int uart0_muxvals[] = {0, 0}; static const unsigned uart1_pins[] = {129, 130}; @@ -86,6 +106,15 @@ static const struct uniphier_pinctrl_group uniphier_pro4_groups[] = { UNIPHIER_PINCTRL_GROUP(nand_cs1), UNIPHIER_PINCTRL_GROUP(sd), UNIPHIER_PINCTRL_GROUP(sd1), + UNIPHIER_PINCTRL_GROUP(system_bus), + UNIPHIER_PINCTRL_GROUP(system_bus_cs0), + UNIPHIER_PINCTRL_GROUP(system_bus_cs1), + UNIPHIER_PINCTRL_GROUP(system_bus_cs2), + UNIPHIER_PINCTRL_GROUP(system_bus_cs3), + UNIPHIER_PINCTRL_GROUP(system_bus_cs4), + UNIPHIER_PINCTRL_GROUP(system_bus_cs5), + UNIPHIER_PINCTRL_GROUP(system_bus_cs6), + UNIPHIER_PINCTRL_GROUP(system_bus_cs7), UNIPHIER_PINCTRL_GROUP_SPL(uart0), UNIPHIER_PINCTRL_GROUP_SPL(uart1), UNIPHIER_PINCTRL_GROUP_SPL(uart2), @@ -109,6 +138,7 @@ static const char * const uniphier_pro4_functions[] = { UNIPHIER_PINMUX_FUNCTION(nand), UNIPHIER_PINMUX_FUNCTION(sd), UNIPHIER_PINMUX_FUNCTION(sd1), + UNIPHIER_PINMUX_FUNCTION(system_bus), UNIPHIER_PINMUX_FUNCTION_SPL(uart0), UNIPHIER_PINMUX_FUNCTION_SPL(uart1), UNIPHIER_PINMUX_FUNCTION_SPL(uart2), diff --git a/drivers/pinctrl/uniphier/pinctrl-uniphier-pro5.c b/drivers/pinctrl/uniphier/pinctrl-uniphier-pro5.c index 268cdea42a..9670f254e2 100644 --- a/drivers/pinctrl/uniphier/pinctrl-uniphier-pro5.c +++ b/drivers/pinctrl/uniphier/pinctrl-uniphier-pro5.c @@ -50,6 +50,26 @@ static const unsigned nand_cs1_pins[] = {26, 27}; static const int nand_cs1_muxvals[] = {0, 0}; static const unsigned sd_pins[] = {250, 251, 252, 253, 254, 255, 256, 257, 258}; static const int sd_muxvals[] = {0, 0, 0, 0, 0, 0, 0, 0, 0}; +static const unsigned system_bus_pins[] = {4, 5, 6, 7, 8, 9, 10, 11, 12, 13, + 14, 15, 16, 17}; +static const int system_bus_muxvals[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0}; +static const unsigned system_bus_cs0_pins[] = {105}; +static const int system_bus_cs0_muxvals[] = {1}; +static const unsigned system_bus_cs1_pins[] = {18}; +static const int system_bus_cs1_muxvals[] = {0}; +static const unsigned system_bus_cs2_pins[] = {106}; +static const int system_bus_cs2_muxvals[] = {1}; +static const unsigned system_bus_cs3_pins[] = {100}; +static const int system_bus_cs3_muxvals[] = {1}; +static const unsigned system_bus_cs4_pins[] = {101}; +static const int system_bus_cs4_muxvals[] = {1}; +static const unsigned system_bus_cs5_pins[] = {102}; +static const int system_bus_cs5_muxvals[] = {1}; +static const unsigned system_bus_cs6_pins[] = {69}; +static const int system_bus_cs6_muxvals[] = {5}; +static const unsigned system_bus_cs7_pins[] = {70}; +static const int system_bus_cs7_muxvals[] = {5}; static const unsigned uart0_pins[] = {47, 48}; static const int uart0_muxvals[] = {0, 0}; static const unsigned uart0b_pins[] = {227, 228}; @@ -81,6 +101,15 @@ static const struct uniphier_pinctrl_group uniphier_pro5_groups[] = { UNIPHIER_PINCTRL_GROUP(nand), UNIPHIER_PINCTRL_GROUP(nand_cs1), UNIPHIER_PINCTRL_GROUP(sd), + UNIPHIER_PINCTRL_GROUP(system_bus), + UNIPHIER_PINCTRL_GROUP(system_bus_cs0), + UNIPHIER_PINCTRL_GROUP(system_bus_cs1), + UNIPHIER_PINCTRL_GROUP(system_bus_cs2), + UNIPHIER_PINCTRL_GROUP(system_bus_cs3), + UNIPHIER_PINCTRL_GROUP(system_bus_cs4), + UNIPHIER_PINCTRL_GROUP(system_bus_cs5), + UNIPHIER_PINCTRL_GROUP(system_bus_cs6), + UNIPHIER_PINCTRL_GROUP(system_bus_cs7), UNIPHIER_PINCTRL_GROUP_SPL(uart0), UNIPHIER_PINCTRL_GROUP_SPL(uart0b), UNIPHIER_PINCTRL_GROUP_SPL(uart1), @@ -101,6 +130,7 @@ static const char * const uniphier_pro5_functions[] = { UNIPHIER_PINMUX_FUNCTION(i2c6), UNIPHIER_PINMUX_FUNCTION(nand), UNIPHIER_PINMUX_FUNCTION(sd), + UNIPHIER_PINMUX_FUNCTION(system_bus), UNIPHIER_PINMUX_FUNCTION_SPL(uart0), UNIPHIER_PINMUX_FUNCTION_SPL(uart1), UNIPHIER_PINMUX_FUNCTION_SPL(uart2), diff --git a/drivers/pinctrl/uniphier/pinctrl-uniphier-pxs2.c b/drivers/pinctrl/uniphier/pinctrl-uniphier-pxs2.c index b534274317..1d291703f4 100644 --- a/drivers/pinctrl/uniphier/pinctrl-uniphier-pxs2.c +++ b/drivers/pinctrl/uniphier/pinctrl-uniphier-pxs2.c @@ -53,6 +53,12 @@ static const unsigned nand_cs1_pins[] = {37, 38}; static const int nand_cs1_muxvals[] = {8, 8}; static const unsigned sd_pins[] = {47, 48, 49, 50, 51, 52, 53, 54, 55}; static const int sd_muxvals[] = {8, 8, 8, 8, 8, 8, 8, 8, 8}; +static const unsigned system_bus_pins[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, + 11, 12, 13}; +static const int system_bus_muxvals[] = {8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8}; +static const unsigned system_bus_cs1_pins[] = {14}; +static const int system_bus_cs1_muxvals[] = {8}; static const unsigned uart0_pins[] = {217, 218}; static const int uart0_muxvals[] = {8, 8}; static const unsigned uart0b_pins[] = {179, 180}; @@ -89,6 +95,8 @@ static const struct uniphier_pinctrl_group uniphier_pxs2_groups[] = { UNIPHIER_PINCTRL_GROUP(nand), UNIPHIER_PINCTRL_GROUP(nand_cs1), UNIPHIER_PINCTRL_GROUP(sd), + UNIPHIER_PINCTRL_GROUP(system_bus), + UNIPHIER_PINCTRL_GROUP(system_bus_cs1), UNIPHIER_PINCTRL_GROUP_SPL(uart0), UNIPHIER_PINCTRL_GROUP_SPL(uart0b), UNIPHIER_PINCTRL_GROUP_SPL(uart1), @@ -114,6 +122,7 @@ static const char * const uniphier_pxs2_functions[] = { UNIPHIER_PINMUX_FUNCTION(i2c6), UNIPHIER_PINMUX_FUNCTION(nand), UNIPHIER_PINMUX_FUNCTION(sd), + UNIPHIER_PINMUX_FUNCTION(system_bus), UNIPHIER_PINMUX_FUNCTION_SPL(uart0), UNIPHIER_PINMUX_FUNCTION_SPL(uart1), UNIPHIER_PINMUX_FUNCTION_SPL(uart2), diff --git a/drivers/pinctrl/uniphier/pinctrl-uniphier-sld3.c b/drivers/pinctrl/uniphier/pinctrl-uniphier-sld3.c new file mode 100644 index 0000000000..d3a507edc1 --- /dev/null +++ b/drivers/pinctrl/uniphier/pinctrl-uniphier-sld3.c @@ -0,0 +1,128 @@ +/* + * Copyright (C) 2016 Socionext Inc. + * Author: Masahiro Yamada <yamada.masahiro@socionext.com> + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include <dm/device.h> +#include <dm/pinctrl.h> + +#include "pinctrl-uniphier.h" + +static const unsigned emmc_pins[] = {55, 56, 60}; +static const int emmc_muxvals[] = {1, 1, 1}; +static const unsigned emmc_dat8_pins[] = {57}; +static const int emmc_dat8_muxvals[] = {1}; +static const unsigned ether_mii_pins[] = {35, 107, 108, 109, 110, 111, 112, + 113}; +static const int ether_mii_muxvals[] = {1, 2, 2, 2, 2, 2, 2, 2}; +static const unsigned ether_rmii_pins[] = {35}; +static const int ether_rmii_muxvals[] = {1}; +static const unsigned i2c0_pins[] = {36}; +static const int i2c0_muxvals[] = {0}; +static const unsigned nand_pins[] = {38, 39, 40, 58, 59}; +static const int nand_muxvals[] = {1, 1, 1, 1, 1}; +static const unsigned nand_cs1_pins[] = {41}; +static const int nand_cs1_muxvals[] = {1}; +static const unsigned sd_pins[] = {42, 43, 44, 45}; +static const int sd_muxvals[] = {1, 1, 1, 1}; +static const unsigned system_bus_pins[] = {46, 50, 51, 53, 54, 73, 74, 75, 76, + 77, 78, 79, 80, 88, 89, 91, 92, 99}; +static const int system_bus_muxvals[] = {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1}; +static const unsigned system_bus_cs0_pins[] = {93}; +static const int system_bus_cs0_muxvals[] = {1}; +static const unsigned system_bus_cs1_pins[] = {94}; +static const int system_bus_cs1_muxvals[] = {1}; +static const unsigned system_bus_cs2_pins[] = {95}; +static const int system_bus_cs2_muxvals[] = {1}; +static const unsigned system_bus_cs3_pins[] = {96}; +static const int system_bus_cs3_muxvals[] = {1}; +static const unsigned system_bus_cs4_pins[] = {81}; +static const int system_bus_cs4_muxvals[] = {1}; +static const unsigned system_bus_cs5_pins[] = {82}; +static const int system_bus_cs5_muxvals[] = {1}; +static const unsigned uart0_pins[] = {63, 64}; +static const int uart0_muxvals[] = {0, 1}; +static const unsigned uart1_pins[] = {65, 66}; +static const int uart1_muxvals[] = {0, 1}; +static const unsigned uart2_pins[] = {96, 102}; +static const int uart2_muxvals[] = {2, 2}; +static const unsigned usb0_pins[] = {13, 14}; +static const int usb0_muxvals[] = {0, 1}; +static const unsigned usb1_pins[] = {15, 16}; +static const int usb1_muxvals[] = {0, 1}; +static const unsigned usb2_pins[] = {17, 18}; +static const int usb2_muxvals[] = {0, 1}; +static const unsigned usb3_pins[] = {19, 20}; +static const int usb3_muxvals[] = {0, 1}; + +static const struct uniphier_pinctrl_group uniphier_sld3_groups[] = { + UNIPHIER_PINCTRL_GROUP_SPL(emmc), + UNIPHIER_PINCTRL_GROUP_SPL(emmc_dat8), + UNIPHIER_PINCTRL_GROUP(ether_mii), + UNIPHIER_PINCTRL_GROUP(ether_rmii), + UNIPHIER_PINCTRL_GROUP(i2c0), + UNIPHIER_PINCTRL_GROUP(nand), + UNIPHIER_PINCTRL_GROUP(nand_cs1), + UNIPHIER_PINCTRL_GROUP(sd), + UNIPHIER_PINCTRL_GROUP(system_bus), + UNIPHIER_PINCTRL_GROUP(system_bus_cs0), + UNIPHIER_PINCTRL_GROUP(system_bus_cs1), + UNIPHIER_PINCTRL_GROUP(system_bus_cs2), + UNIPHIER_PINCTRL_GROUP(system_bus_cs3), + UNIPHIER_PINCTRL_GROUP(system_bus_cs4), + UNIPHIER_PINCTRL_GROUP(system_bus_cs5), + UNIPHIER_PINCTRL_GROUP_SPL(uart0), + UNIPHIER_PINCTRL_GROUP_SPL(uart1), + UNIPHIER_PINCTRL_GROUP_SPL(uart2), + UNIPHIER_PINCTRL_GROUP(usb0), + UNIPHIER_PINCTRL_GROUP(usb1), + UNIPHIER_PINCTRL_GROUP(usb2), + UNIPHIER_PINCTRL_GROUP(usb3) +}; + +static const char * const uniphier_sld3_functions[] = { + UNIPHIER_PINMUX_FUNCTION_SPL(emmc), + UNIPHIER_PINMUX_FUNCTION(ether_mii), + UNIPHIER_PINMUX_FUNCTION(ether_rmii), + UNIPHIER_PINMUX_FUNCTION(i2c0), + UNIPHIER_PINMUX_FUNCTION(nand), + UNIPHIER_PINMUX_FUNCTION(sd), + UNIPHIER_PINMUX_FUNCTION(system_bus), + UNIPHIER_PINMUX_FUNCTION_SPL(uart0), + UNIPHIER_PINMUX_FUNCTION_SPL(uart1), + UNIPHIER_PINMUX_FUNCTION_SPL(uart2), + UNIPHIER_PINMUX_FUNCTION(usb0), + UNIPHIER_PINMUX_FUNCTION(usb1), + UNIPHIER_PINMUX_FUNCTION(usb2), + UNIPHIER_PINMUX_FUNCTION(usb3), +}; + +static struct uniphier_pinctrl_socdata uniphier_sld3_pinctrl_socdata = { + .groups = uniphier_sld3_groups, + .groups_count = ARRAY_SIZE(uniphier_sld3_groups), + .functions = uniphier_sld3_functions, + .functions_count = ARRAY_SIZE(uniphier_sld3_functions), + .caps = UNIPHIER_PINCTRL_CAPS_MUX_4BIT, +}; + +static int uniphier_sld3_pinctrl_probe(struct udevice *dev) +{ + return uniphier_pinctrl_probe(dev, &uniphier_sld3_pinctrl_socdata); +} + +static const struct udevice_id uniphier_sld3_pinctrl_match[] = { + { .compatible = "socionext,uniphier-sld3-pinctrl" }, + { /* sentinel */ } +}; + +U_BOOT_DRIVER(uniphier_sld3_pinctrl) = { + .name = "uniphier-sld3-pinctrl", + .id = UCLASS_PINCTRL, + .of_match = of_match_ptr(uniphier_sld3_pinctrl_match), + .probe = uniphier_sld3_pinctrl_probe, + .priv_auto_alloc_size = sizeof(struct uniphier_pinctrl_priv), + .ops = &uniphier_pinctrl_ops, +}; diff --git a/drivers/pinctrl/uniphier/pinctrl-uniphier-sld8.c b/drivers/pinctrl/uniphier/pinctrl-uniphier-sld8.c index a85e055dae..471fb673f7 100644 --- a/drivers/pinctrl/uniphier/pinctrl-uniphier-sld8.c +++ b/drivers/pinctrl/uniphier/pinctrl-uniphier-sld8.c @@ -65,6 +65,20 @@ static const unsigned nand_cs1_pins[] = {22, 23}; static const int nand_cs1_muxvals[] = {0, 0}; static const unsigned sd_pins[] = {32, 33, 34, 35, 36, 37, 38, 39, 40}; static const int sd_muxvals[] = {0, 0, 0, 0, 0, 0, 0, 0, 0}; +static const unsigned system_bus_pins[] = {136, 137, 138, 139, 140, 141, 142, + 143, 144, 145, 146, 147, 148, 149}; +static const int system_bus_muxvals[] = {-1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1}; +static const unsigned system_bus_cs1_pins[] = {150}; +static const int system_bus_cs1_muxvals[] = {-1}; +static const unsigned system_bus_cs2_pins[] = {10}; +static const int system_bus_cs2_muxvals[] = {1}; +static const unsigned system_bus_cs3_pins[] = {11}; +static const int system_bus_cs3_muxvals[] = {1}; +static const unsigned system_bus_cs4_pins[] = {12}; +static const int system_bus_cs4_muxvals[] = {1}; +static const unsigned system_bus_cs5_pins[] = {13}; +static const int system_bus_cs5_muxvals[] = {1}; static const unsigned uart0_pins[] = {70, 71}; static const int uart0_muxvals[] = {3, 3}; static const unsigned uart1_pins[] = {114, 115}; @@ -92,6 +106,12 @@ static const struct uniphier_pinctrl_group uniphier_sld8_groups[] = { UNIPHIER_PINCTRL_GROUP(nand), UNIPHIER_PINCTRL_GROUP(nand_cs1), UNIPHIER_PINCTRL_GROUP(sd), + UNIPHIER_PINCTRL_GROUP(system_bus), + UNIPHIER_PINCTRL_GROUP(system_bus_cs1), + UNIPHIER_PINCTRL_GROUP(system_bus_cs2), + UNIPHIER_PINCTRL_GROUP(system_bus_cs3), + UNIPHIER_PINCTRL_GROUP(system_bus_cs4), + UNIPHIER_PINCTRL_GROUP(system_bus_cs5), UNIPHIER_PINCTRL_GROUP_SPL(uart0), UNIPHIER_PINCTRL_GROUP_SPL(uart1), UNIPHIER_PINCTRL_GROUP_SPL(uart2), @@ -111,6 +131,7 @@ static const char * const uniphier_sld8_functions[] = { UNIPHIER_PINMUX_FUNCTION(i2c3), UNIPHIER_PINMUX_FUNCTION(nand), UNIPHIER_PINMUX_FUNCTION(sd), + UNIPHIER_PINMUX_FUNCTION(system_bus), UNIPHIER_PINMUX_FUNCTION_SPL(uart0), UNIPHIER_PINMUX_FUNCTION_SPL(uart1), UNIPHIER_PINMUX_FUNCTION_SPL(uart2), diff --git a/drivers/pinctrl/uniphier/pinctrl-uniphier.h b/drivers/pinctrl/uniphier/pinctrl-uniphier.h index 4de5b03c8d..5c3db2ab60 100644 --- a/drivers/pinctrl/uniphier/pinctrl-uniphier.h +++ b/drivers/pinctrl/uniphier/pinctrl-uniphier.h @@ -13,10 +13,6 @@ #include <linux/kernel.h> #include <linux/types.h> -#define UNIPHIER_PINCTRL_PINMUX_BASE 0x1000 -#define UNIPHIER_PINCTRL_LOAD_PINMUX 0x1700 -#define UNIPHIER_PINCTRL_IECTRL 0x1d00 - #define UNIPHIER_PIN_ATTR_PACKED(iectrl) (iectrl) static inline unsigned int uniphier_pin_get_iectrl(unsigned long data) @@ -71,8 +67,9 @@ struct uniphier_pinctrl_socdata { const char * const *functions; int functions_count; unsigned caps; -#define UNIPHIER_PINCTRL_CAPS_PERPIN_IECTRL BIT(1) -#define UNIPHIER_PINCTRL_CAPS_DBGMUX_SEPARATE BIT(0) +#define UNIPHIER_PINCTRL_CAPS_PERPIN_IECTRL BIT(2) +#define UNIPHIER_PINCTRL_CAPS_DBGMUX_SEPARATE BIT(1) +#define UNIPHIER_PINCTRL_CAPS_MUX_4BIT BIT(0) }; #define UNIPHIER_PINCTRL_PIN(a, b) \ diff --git a/drivers/power/axp209.c b/drivers/power/axp209.c index fc162a149e..731b75e50a 100644 --- a/drivers/power/axp209.c +++ b/drivers/power/axp209.c @@ -167,6 +167,22 @@ int axp_init(void) return rc; } + /* + * Turn off LDOIO regulators / tri-state GPIO pins, when rebooting + * from android these are sometimes on. + */ + rc = pmic_bus_write(AXP_GPIO0_CTRL, AXP_GPIO_CTRL_INPUT); + if (rc) + return rc; + + rc = pmic_bus_write(AXP_GPIO1_CTRL, AXP_GPIO_CTRL_INPUT); + if (rc) + return rc; + + rc = pmic_bus_write(AXP_GPIO2_CTRL, AXP_GPIO_CTRL_INPUT); + if (rc) + return rc; + return 0; } diff --git a/drivers/power/axp221.c b/drivers/power/axp221.c index 727ab09806..109d3f4686 100644 --- a/drivers/power/axp221.c +++ b/drivers/power/axp221.c @@ -223,6 +223,18 @@ int axp_init(void) if (!(axp_chip_id == 0x6 || axp_chip_id == 0x7 || axp_chip_id == 0x17)) return -ENODEV; + /* + * Turn off LDOIO regulators / tri-state GPIO pins, when rebooting + * from android these are sometimes on. + */ + ret = pmic_bus_write(AXP_GPIO0_CTRL, AXP_GPIO_CTRL_INPUT); + if (ret) + return ret; + + ret = pmic_bus_write(AXP_GPIO1_CTRL, AXP_GPIO_CTRL_INPUT); + if (ret) + return ret; + return 0; } diff --git a/drivers/power/axp809.c b/drivers/power/axp809.c index c8b76cf9b7..c5b608d2f0 100644 --- a/drivers/power/axp809.c +++ b/drivers/power/axp809.c @@ -217,13 +217,7 @@ int axp_set_sw(bool on) int axp_init(void) { - int ret; - - ret = pmic_bus_init(); - if (ret) - return ret; - - return 0; + return pmic_bus_init(); } int do_poweroff(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) diff --git a/drivers/power/pmic/pmic_tps62362.c b/drivers/power/pmic/pmic_tps62362.c index 2123685a6a..23f9a9c3bc 100644 --- a/drivers/power/pmic/pmic_tps62362.c +++ b/drivers/power/pmic/pmic_tps62362.c @@ -7,7 +7,7 @@ #include <common.h> #include <i2c.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <power/pmic.h> #include <power/tps62362.h> diff --git a/drivers/power/pmic/pmic_tps65218.c b/drivers/power/pmic/pmic_tps65218.c index 0fd0ad478a..f32fa40863 100644 --- a/drivers/power/pmic/pmic_tps65218.c +++ b/drivers/power/pmic/pmic_tps65218.c @@ -7,7 +7,7 @@ #include <common.h> #include <i2c.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <power/pmic.h> #include <power/tps65218.h> diff --git a/drivers/pwm/rk_pwm.c b/drivers/pwm/rk_pwm.c index 2d289a4c07..9254f5bc39 100644 --- a/drivers/pwm/rk_pwm.c +++ b/drivers/pwm/rk_pwm.c @@ -6,15 +6,13 @@ */ #include <common.h> +#include <clk.h> #include <div64.h> #include <dm.h> #include <pwm.h> #include <regmap.h> #include <syscon.h> #include <asm/io.h> -#include <asm/arch/clock.h> -#include <asm/arch/cru_rk3288.h> -#include <asm/arch/grf_rk3288.h> #include <asm/arch/pwm.h> #include <power/regulator.h> @@ -22,7 +20,7 @@ DECLARE_GLOBAL_DATA_PTR; struct rk_pwm_priv { struct rk3288_pwm *regs; - struct rk3288_grf *grf; + ulong freq; }; static int rk_pwm_set_config(struct udevice *dev, uint channel, uint period_ns, @@ -38,8 +36,8 @@ static int rk_pwm_set_config(struct udevice *dev, uint channel, uint period_ns, RK_PWM_DISABLE, ®s->ctrl); - period = lldiv((uint64_t)(PD_BUS_PCLK_HZ / 1000) * period_ns, 1000000); - duty = lldiv((uint64_t)(PD_BUS_PCLK_HZ / 1000) * duty_ns, 1000000); + period = lldiv((uint64_t)(priv->freq / 1000) * period_ns, 1000000); + duty = lldiv((uint64_t)(priv->freq / 1000) * duty_ns, 1000000); writel(period, ®s->period_hpr); writel(duty, ®s->duty_lpr); @@ -62,13 +60,8 @@ static int rk_pwm_set_enable(struct udevice *dev, uint channel, bool enable) static int rk_pwm_ofdata_to_platdata(struct udevice *dev) { struct rk_pwm_priv *priv = dev_get_priv(dev); - struct regmap *map; priv->regs = (struct rk3288_pwm *)dev_get_addr(dev); - map = syscon_get_regmap_by_driver_data(ROCKCHIP_SYSCON_GRF); - if (IS_ERR(map)) - return PTR_ERR(map); - priv->grf = regmap_get_range(map, 0); return 0; } @@ -76,8 +69,15 @@ static int rk_pwm_ofdata_to_platdata(struct udevice *dev) static int rk_pwm_probe(struct udevice *dev) { struct rk_pwm_priv *priv = dev_get_priv(dev); - - rk_setreg(&priv->grf->soc_con2, 1 << 0); + struct clk clk; + int ret = 0; + + ret = clk_get_by_index(dev, 0, &clk); + if (ret < 0) { + debug("%s get clock fail!\n", __func__); + return -EINVAL; + } + priv->freq = clk_get_rate(&clk); return 0; } diff --git a/drivers/qe/qe.c b/drivers/qe/qe.c index 2b98984ef2..4231594776 100644 --- a/drivers/qe/qe.c +++ b/drivers/qe/qe.c @@ -7,11 +7,11 @@ * SPDX-License-Identifier: GPL-2.0+ */ -#include "common.h" +#include <common.h> #include <command.h> -#include "asm/errno.h" -#include "asm/io.h" -#include "linux/immap_qe.h" +#include <linux/errno.h> +#include <asm/io.h> +#include <linux/immap_qe.h> #include <fsl_qe.h> #ifdef CONFIG_LS102XA #include <asm/arch/immap_ls102xa.h> diff --git a/drivers/qe/uccf.c b/drivers/qe/uccf.c index e011886505..bab5453128 100644 --- a/drivers/qe/uccf.c +++ b/drivers/qe/uccf.c @@ -7,11 +7,11 @@ * SPDX-License-Identifier: GPL-2.0+ */ -#include "common.h" -#include "malloc.h" -#include "asm/errno.h" -#include "asm/io.h" -#include "linux/immap_qe.h" +#include <common.h> +#include <malloc.h> +#include <linux/errno.h> +#include <asm/io.h> +#include <linux/immap_qe.h> #include "uccf.h" #include <fsl_qe.h> diff --git a/drivers/qe/uec.c b/drivers/qe/uec.c index 468c92ebce..5fd956adce 100644 --- a/drivers/qe/uec.c +++ b/drivers/qe/uec.c @@ -6,12 +6,12 @@ * SPDX-License-Identifier: GPL-2.0+ */ -#include "common.h" -#include "net.h" -#include "malloc.h" -#include "asm/errno.h" -#include "asm/io.h" -#include "linux/immap_qe.h" +#include <common.h> +#include <net.h> +#include <malloc.h> +#include <linux/errno.h> +#include <asm/io.h> +#include <linux/immap_qe.h> #include "uccf.h" #include "uec.h" #include "uec_phy.h" diff --git a/drivers/qe/uec_phy.c b/drivers/qe/uec_phy.c index 272874d3b0..96042703e3 100644 --- a/drivers/qe/uec_phy.c +++ b/drivers/qe/uec_phy.c @@ -10,12 +10,12 @@ * SPDX-License-Identifier: GPL-2.0+ */ -#include "common.h" -#include "net.h" -#include "malloc.h" -#include "asm/errno.h" -#include "linux/immap_qe.h" -#include "asm/io.h" +#include <common.h> +#include <net.h> +#include <malloc.h> +#include <linux/errno.h> +#include <linux/immap_qe.h> +#include <asm/io.h> #include "uccf.h" #include "uec.h" #include "uec_phy.h" diff --git a/drivers/rtc/at91sam9_rtt.c b/drivers/rtc/at91sam9_rtt.c index a684ad6a6f..18fb09d0ac 100644 --- a/drivers/rtc/at91sam9_rtt.c +++ b/drivers/rtc/at91sam9_rtt.c @@ -23,7 +23,7 @@ #include <command.h> #include <rtc.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/hardware.h> #include <asm/arch/at91_rtt.h> #include <asm/arch/at91_gpbr.h> diff --git a/drivers/rtc/m48t35ax.c b/drivers/rtc/m48t35ax.c index 021b91f731..36011a5b88 100644 --- a/drivers/rtc/m48t35ax.c +++ b/drivers/rtc/m48t35ax.c @@ -127,10 +127,8 @@ void rtc_reset (void) static uchar rtc_read (uchar reg) { - uchar val; - val = *(unsigned char *) + return *(unsigned char *) ((CONFIG_SYS_NVRAM_BASE_ADDR + CONFIG_SYS_NVRAM_SIZE - 8) + reg); - return val; } static void rtc_write (uchar reg, uchar val) diff --git a/drivers/serial/ns16550.c b/drivers/serial/ns16550.c index 88fca15357..765499dab6 100644 --- a/drivers/serial/ns16550.c +++ b/drivers/serial/ns16550.c @@ -5,6 +5,7 @@ */ #include <common.h> +#include <clk.h> #include <dm.h> #include <errno.h> #include <fdtdec.h> @@ -12,6 +13,7 @@ #include <serial.h> #include <watchdog.h> #include <linux/types.h> +#include <linux/compiler.h> #include <asm/io.h> DECLARE_GLOBAL_DATA_PTR; @@ -352,6 +354,8 @@ int ns16550_serial_ofdata_to_platdata(struct udevice *dev) { struct ns16550_platdata *plat = dev->platdata; fdt_addr_t addr; + __maybe_unused struct clk clk; + __maybe_unused int err; /* try Processor Local Bus device first */ addr = dev_get_addr(dev); @@ -397,9 +401,23 @@ int ns16550_serial_ofdata_to_platdata(struct udevice *dev) "reg-offset", 0); plat->reg_shift = fdtdec_get_int(gd->fdt_blob, dev->of_offset, "reg-shift", 0); - plat->clock = fdtdec_get_int(gd->fdt_blob, dev->of_offset, - "clock-frequency", - CONFIG_SYS_NS16550_CLK); + +#ifdef CONFIG_CLK + err = clk_get_by_index(dev, 0, &clk); + if (!err) { + err = clk_get_rate(&clk); + if (!IS_ERR_VALUE(err)) + plat->clock = err; + } else if (err != -ENODEV && err != -ENOSYS) { + debug("ns16550 failed to get clock\n"); + return err; + } +#endif + + if (!plat->clock) + plat->clock = fdtdec_get_int(gd->fdt_blob, dev->of_offset, + "clock-frequency", + CONFIG_SYS_NS16550_CLK); if (!plat->clock) { debug("ns16550 clock not defined\n"); return -EINVAL; diff --git a/drivers/serial/serial_uniphier.c b/drivers/serial/serial_uniphier.c index ab607b7e65..4ea5304b1d 100644 --- a/drivers/serial/serial_uniphier.c +++ b/drivers/serial/serial_uniphier.c @@ -9,7 +9,7 @@ #include <linux/io.h> #include <linux/serial_reg.h> #include <linux/sizes.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <dm/device.h> #include <serial.h> #include <fdtdec.h> diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig index aca385d5e5..5da66a6de0 100644 --- a/drivers/spi/Kconfig +++ b/drivers/spi/Kconfig @@ -61,13 +61,6 @@ config FSL_DSPI this Freescale DSPI IP core. LS102xA and Colibri VF50/VF61 platforms use this driver. -config FSL_QSPI - bool "Freescale QSPI driver" - help - Enable the Freescale Quad-SPI (QSPI) driver. This driver can be - used to access the SPI NOR flash on platforms embedding this - Freescale IP core. - config ICH_SPI bool "Intel ICH SPI driver" help @@ -188,6 +181,13 @@ config FSL_ESPI access the SPI interface and SPI NOR flash on platforms embedding this Freescale eSPI IP core. +config FSL_QSPI + bool "Freescale QSPI driver" + help + Enable the Freescale Quad-SPI (QSPI) driver. This driver can be + used to access the SPI NOR flash on platforms embedding this + Freescale IP core. + config TI_QSPI bool "TI QSPI driver" help diff --git a/drivers/spi/cadence_qspi.c b/drivers/spi/cadence_qspi.c index a5244fff4d..1051afb74c 100644 --- a/drivers/spi/cadence_qspi.c +++ b/drivers/spi/cadence_qspi.c @@ -10,7 +10,7 @@ #include <fdtdec.h> #include <malloc.h> #include <spi.h> -#include <asm/errno.h> +#include <linux/errno.h> #include "cadence_qspi.h" #define CQSPI_STIG_READ 0 @@ -251,7 +251,7 @@ static int cadence_spi_xfer(struct udevice *dev, unsigned int bitlen, break; case CQSPI_INDIRECT_READ: err = cadence_qspi_apb_indirect_read_setup(plat, - priv->cmd_len, dm_plat->mode_rx, cmd_buf); + priv->cmd_len, dm_plat->mode, cmd_buf); if (!err) { err = cadence_qspi_apb_indirect_read_execute (plat, data_bytes, din); diff --git a/drivers/spi/cadence_qspi_apb.c b/drivers/spi/cadence_qspi_apb.c index 1d68379c93..e285d3c1e7 100644 --- a/drivers/spi/cadence_qspi_apb.c +++ b/drivers/spi/cadence_qspi_apb.c @@ -27,7 +27,7 @@ #include <common.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <wait_bit.h> #include <spi.h> #include "cadence_qspi.h" diff --git a/drivers/spi/ich.c b/drivers/spi/ich.c index 00b2fed7b7..caf0103dc3 100644 --- a/drivers/spi/ich.c +++ b/drivers/spi/ich.c @@ -649,10 +649,8 @@ static int ich_spi_child_pre_probe(struct udevice *dev) * ICH 7 SPI controller only supports array read command * and byte program command for SST flash */ - if (plat->ich_version == ICHV_7) { - slave->mode_rx = SPI_RX_SLOW; - slave->mode = SPI_TX_BYTE; - } + if (plat->ich_version == ICHV_7) + slave->mode = SPI_RX_SLOW | SPI_TX_BYTE; return 0; } diff --git a/drivers/spi/mxc_spi.c b/drivers/spi/mxc_spi.c index 08815994fe..fc2786e270 100644 --- a/drivers/spi/mxc_spi.c +++ b/drivers/spi/mxc_spi.c @@ -7,7 +7,7 @@ #include <common.h> #include <malloc.h> #include <spi.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/gpio.h> #include <asm/arch/imx-regs.h> diff --git a/drivers/spi/mxs_spi.c b/drivers/spi/mxs_spi.c index 627644b56b..61daeba7b1 100644 --- a/drivers/spi/mxs_spi.c +++ b/drivers/spi/mxs_spi.c @@ -14,7 +14,7 @@ #include <malloc.h> #include <memalign.h> #include <spi.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/arch/clock.h> #include <asm/arch/imx-regs.h> diff --git a/drivers/spi/rk_spi.c b/drivers/spi/rk_spi.c index bc6dfd8862..105ee4a3ba 100644 --- a/drivers/spi/rk_spi.c +++ b/drivers/spi/rk_spi.c @@ -14,7 +14,7 @@ #include <dm.h> #include <errno.h> #include <spi.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/arch/clock.h> #include <asm/arch/periph.h> diff --git a/drivers/spi/sandbox_spi.c b/drivers/spi/sandbox_spi.c index bad56603ba..092b13b00b 100644 --- a/drivers/spi/sandbox_spi.c +++ b/drivers/spi/sandbox_spi.c @@ -15,7 +15,7 @@ #include <spi_flash.h> #include <os.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/spi.h> #include <asm/state.h> #include <dm/device-internal.h> diff --git a/drivers/spi/spi-uclass.c b/drivers/spi/spi-uclass.c index 247abfa72b..d9c49e4e8c 100644 --- a/drivers/spi/spi-uclass.c +++ b/drivers/spi/spi-uclass.c @@ -164,7 +164,6 @@ static int spi_child_pre_probe(struct udevice *dev) slave->max_hz = plat->max_hz; slave->mode = plat->mode; - slave->mode_rx = plat->mode_rx; slave->wordlen = SPI_DEFAULT_WORDLEN; return 0; @@ -381,7 +380,7 @@ void spi_free_slave(struct spi_slave *slave) int spi_slave_ofdata_to_platdata(const void *blob, int node, struct dm_spi_slave_platdata *plat) { - int mode = 0, mode_rx = 0; + int mode = 0; int value; plat->cs = fdtdec_get_int(blob, node, "reg", -1); @@ -413,24 +412,22 @@ int spi_slave_ofdata_to_platdata(const void *blob, int node, break; } - plat->mode = mode; - value = fdtdec_get_uint(blob, node, "spi-rx-bus-width", 1); switch (value) { case 1: break; case 2: - mode_rx |= SPI_RX_DUAL; + mode |= SPI_RX_DUAL; break; case 4: - mode_rx |= SPI_RX_QUAD; + mode |= SPI_RX_QUAD; break; default: error("spi-rx-bus-width %d not supported\n", value); break; } - plat->mode_rx = mode_rx; + plat->mode = mode; return 0; } diff --git a/drivers/spi/ti_qspi.c b/drivers/spi/ti_qspi.c index bb72cb03ec..52520dff63 100644 --- a/drivers/spi/ti_qspi.c +++ b/drivers/spi/ti_qspi.c @@ -23,6 +23,9 @@ DECLARE_GLOBAL_DATA_PTR; #define QSPI_TIMEOUT 2000000 #define QSPI_FCLK 192000000 #define QSPI_DRA7XX_FCLK 76800000 +#define QSPI_WLEN_MAX_BITS 128 +#define QSPI_WLEN_MAX_BYTES (QSPI_WLEN_MAX_BITS >> 3) +#define QSPI_WLEN_MASK QSPI_WLEN(QSPI_WLEN_MAX_BITS) /* clock control */ #define QSPI_CLK_EN BIT(31) #define QSPI_CLK_DIV_MAX 0xffff @@ -223,20 +226,34 @@ static int __ti_qspi_xfer(struct ti_qspi_priv *priv, unsigned int bitlen, priv->cmd |= QSPI_3_PIN; priv->cmd |= 0xfff; -/* FIXME: This delay is required for successfull - * completion of read/write/erase. Once its root - * caused, it will be remove from the driver. - */ -#ifdef CONFIG_AM43XX - udelay(100); -#endif - while (words--) { + while (words) { + u8 xfer_len = 0; + if (txp) { - debug("tx cmd %08x dc %08x data %02x\n", - priv->cmd | QSPI_WR_SNGL, priv->dc, *txp); - writel(*txp++, &priv->base->data); - writel(priv->cmd | QSPI_WR_SNGL, - &priv->base->cmd); + u32 cmd = priv->cmd; + + if (words >= QSPI_WLEN_MAX_BYTES) { + u32 *txbuf = (u32 *)txp; + u32 data; + + data = cpu_to_be32(*txbuf++); + writel(data, &priv->base->data3); + data = cpu_to_be32(*txbuf++); + writel(data, &priv->base->data2); + data = cpu_to_be32(*txbuf++); + writel(data, &priv->base->data1); + data = cpu_to_be32(*txbuf++); + writel(data, &priv->base->data); + cmd &= ~QSPI_WLEN_MASK; + cmd |= QSPI_WLEN(QSPI_WLEN_MAX_BITS); + xfer_len = QSPI_WLEN_MAX_BYTES; + } else { + writeb(*txp, &priv->base->data); + xfer_len = 1; + } + debug("tx cmd %08x dc %08x\n", + cmd | QSPI_WR_SNGL, priv->dc); + writel(cmd | QSPI_WR_SNGL, &priv->base->cmd); status = readl(&priv->base->status); timeout = QSPI_TIMEOUT; while ((status & QSPI_WC_BUSY) != QSPI_XFER_DONE) { @@ -246,6 +263,7 @@ static int __ti_qspi_xfer(struct ti_qspi_priv *priv, unsigned int bitlen, } status = readl(&priv->base->status); } + txp += xfer_len; debug("tx done, status %08x\n", status); } if (rxp) { @@ -262,9 +280,11 @@ static int __ti_qspi_xfer(struct ti_qspi_priv *priv, unsigned int bitlen, status = readl(&priv->base->status); } *rxp++ = readl(&priv->base->data); + xfer_len = 1; debug("rx done, status %08x, read %02x\n", status, *(rxp-1)); } + words -= xfer_len; } /* Terminate frame */ @@ -336,7 +356,7 @@ static void ti_spi_setup_spi_register(struct ti_qspi_priv *priv) QSPI_SETUP0_NUM_D_BYTES_8_BITS | QSPI_SETUP0_READ_QUAD | QSPI_CMD_WRITE | QSPI_NUM_DUMMY_BITS); - slave->mode_rx = SPI_RX_QUAD; + slave->mode |= SPI_RX_QUAD; #else memval |= QSPI_CMD_READ | QSPI_SETUP0_NUM_A_BYTES | QSPI_SETUP0_NUM_D_BYTES_NO_BITS | @@ -422,7 +442,7 @@ static void __ti_qspi_setup_memorymap(struct ti_qspi_priv *priv, bool enable) { u32 memval; - u32 mode = slave->mode_rx & (SPI_RX_QUAD | SPI_RX_DUAL); + u32 mode = slave->mode & (SPI_RX_QUAD | SPI_RX_DUAL); if (!enable) { writel(0, &priv->base->setup0); @@ -436,7 +456,7 @@ static void __ti_qspi_setup_memorymap(struct ti_qspi_priv *priv, memval |= QSPI_CMD_READ_QUAD; memval |= QSPI_SETUP0_NUM_D_BYTES_8_BITS; memval |= QSPI_SETUP0_READ_QUAD; - slave->mode_rx = SPI_RX_QUAD; + slave->mode |= SPI_RX_QUAD; break; case SPI_RX_DUAL: memval |= QSPI_CMD_READ_DUAL; diff --git a/drivers/spi/zynq_spi.c b/drivers/spi/zynq_spi.c index 09ae1be7e9..15ca271ea4 100644 --- a/drivers/spi/zynq_spi.c +++ b/drivers/spi/zynq_spi.c @@ -92,7 +92,8 @@ static void zynq_spi_init_hw(struct zynq_spi_priv *priv) u32 confr; /* Disable SPI */ - writel(~ZYNQ_SPI_ENR_SPI_EN_MASK, ®s->enr); + confr = ZYNQ_SPI_ENR_SPI_EN_MASK; + writel(~confr, ®s->enr); /* Disable Interrupts */ writel(ZYNQ_SPI_IXR_ALL_MASK, ®s->idr); @@ -173,8 +174,10 @@ static int zynq_spi_release_bus(struct udevice *dev) struct udevice *bus = dev->parent; struct zynq_spi_priv *priv = dev_get_priv(bus); struct zynq_spi_regs *regs = priv->regs; + u32 confr; - writel(~ZYNQ_SPI_ENR_SPI_EN_MASK, ®s->enr); + confr = ZYNQ_SPI_ENR_SPI_EN_MASK; + writel(~confr, ®s->enr); return 0; } @@ -230,7 +233,7 @@ static int zynq_spi_xfer(struct udevice *dev, unsigned int bitlen, /* Read the data from RX FIFO */ status = readl(®s->isr); - while (status & ZYNQ_SPI_IXR_RXNEMPTY_MASK) { + while ((status & ZYNQ_SPI_IXR_RXNEMPTY_MASK) && rx_len) { buf = readl(®s->rxdr); if (rx_buf) *rx_buf++ = buf; diff --git a/drivers/tpm/tpm_tis_infineon.c b/drivers/tpm/tpm_tis_infineon.c index a4b6741676..ef3ff0dbf6 100644 --- a/drivers/tpm/tpm_tis_infineon.c +++ b/drivers/tpm/tpm_tis_infineon.c @@ -25,7 +25,7 @@ #include <fdtdec.h> #include <i2c.h> #include <tpm.h> -#include <asm-generic/errno.h> +#include <linux/errno.h> #include <linux/compiler.h> #include <linux/types.h> #include <linux/unaligned/be_byteshift.h> diff --git a/drivers/usb/gadget/at91_udc.c b/drivers/usb/gadget/at91_udc.c index 4070803b65..f5bc277fa6 100644 --- a/drivers/usb/gadget/at91_udc.c +++ b/drivers/usb/gadget/at91_udc.c @@ -15,7 +15,7 @@ #undef PACKET_TRACE #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/gpio.h> #include <asm/hardware.h> diff --git a/drivers/usb/gadget/atmel_usba_udc.c b/drivers/usb/gadget/atmel_usba_udc.c index 1e23d09c77..ad31703c73 100644 --- a/drivers/usb/gadget/atmel_usba_udc.c +++ b/drivers/usb/gadget/atmel_usba_udc.c @@ -9,7 +9,7 @@ */ #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/gpio.h> #include <asm/hardware.h> #include <linux/list.h> diff --git a/drivers/usb/gadget/ci_udc.c b/drivers/usb/gadget/ci_udc.c index d36bcf6467..05c01ce5d6 100644 --- a/drivers/usb/gadget/ci_udc.c +++ b/drivers/usb/gadget/ci_udc.c @@ -14,7 +14,7 @@ #include <net.h> #include <malloc.h> #include <asm/byteorder.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/unaligned.h> #include <linux/types.h> diff --git a/drivers/usb/gadget/config.c b/drivers/usb/gadget/config.c index 64284b06f8..525dc79d27 100644 --- a/drivers/usb/gadget/config.c +++ b/drivers/usb/gadget/config.c @@ -11,7 +11,7 @@ #include <common.h> #include <asm/unaligned.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <linux/list.h> #include <linux/string.h> diff --git a/drivers/usb/gadget/dwc2_udc_otg.c b/drivers/usb/gadget/dwc2_udc_otg.c index 029927f8ac..d72bfdfdd8 100644 --- a/drivers/usb/gadget/dwc2_udc_otg.c +++ b/drivers/usb/gadget/dwc2_udc_otg.c @@ -19,7 +19,7 @@ */ #undef DEBUG #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <linux/list.h> #include <malloc.h> diff --git a/drivers/usb/gadget/dwc2_udc_otg_phy.c b/drivers/usb/gadget/dwc2_udc_otg_phy.c index e0cbbc0757..0c4620d56d 100644 --- a/drivers/usb/gadget/dwc2_udc_otg_phy.c +++ b/drivers/usb/gadget/dwc2_udc_otg_phy.c @@ -19,7 +19,7 @@ */ #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <linux/list.h> #include <malloc.h> diff --git a/drivers/usb/gadget/dwc2_udc_otg_priv.h b/drivers/usb/gadget/dwc2_udc_otg_priv.h index b2c1fc4105..c40ecf8aca 100644 --- a/drivers/usb/gadget/dwc2_udc_otg_priv.h +++ b/drivers/usb/gadget/dwc2_udc_otg_priv.h @@ -8,7 +8,7 @@ #ifndef __DWC2_UDC_OTG_PRIV__ #define __DWC2_UDC_OTG_PRIV__ -#include <asm/errno.h> +#include <linux/errno.h> #include <linux/sizes.h> #include <linux/usb/ch9.h> #include <linux/usb/gadget.h> diff --git a/drivers/usb/gadget/epautoconf.c b/drivers/usb/gadget/epautoconf.c index a53a6dcda3..6d6dbcb09c 100644 --- a/drivers/usb/gadget/epautoconf.c +++ b/drivers/usb/gadget/epautoconf.c @@ -13,7 +13,7 @@ #include <common.h> #include <linux/usb/ch9.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <linux/usb/gadget.h> #include <asm/unaligned.h> #include "gadget_chips.h" diff --git a/drivers/usb/gadget/ether.c b/drivers/usb/gadget/ether.c index 9b06f028d6..497b981129 100644 --- a/drivers/usb/gadget/ether.c +++ b/drivers/usb/gadget/ether.c @@ -10,7 +10,7 @@ #include <common.h> #include <console.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <linux/netdevice.h> #include <linux/usb/ch9.h> #include <linux/usb/cdc.h> diff --git a/drivers/usb/gadget/fotg210.c b/drivers/usb/gadget/fotg210.c index 1d8f58fd72..e061b2e8a6 100644 --- a/drivers/usb/gadget/fotg210.c +++ b/drivers/usb/gadget/fotg210.c @@ -13,7 +13,7 @@ #include <net.h> #include <malloc.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <linux/types.h> #include <linux/usb/ch9.h> #include <linux/usb/gadget.h> diff --git a/drivers/usb/gadget/rndis.c b/drivers/usb/gadget/rndis.c index 48463db0b2..844a0c7236 100644 --- a/drivers/usb/gadget/rndis.c +++ b/drivers/usb/gadget/rndis.c @@ -28,7 +28,7 @@ #include <asm/byteorder.h> #include <asm/unaligned.h> -#include <asm/errno.h> +#include <linux/errno.h> #undef RNDIS_PM #undef RNDIS_WAKEUP @@ -41,8 +41,6 @@ #define ETH_ZLEN 60 /* Min. octets in frame sans FCS */ #define ETH_DATA_LEN 1500 /* Max. octets in payload */ #define ETH_FRAME_LEN PKTSIZE_ALIGN /* Max. octets in frame sans FCS */ -#define ENOTSUPP 524 /* Operation is not supported */ - /* * The driver for your USB chip needs to support ep0 OUT to work with diff --git a/drivers/usb/gadget/usbstring.c b/drivers/usb/gadget/usbstring.c index 3e24fbf80e..67e98c065d 100644 --- a/drivers/usb/gadget/usbstring.c +++ b/drivers/usb/gadget/usbstring.c @@ -8,7 +8,7 @@ */ #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <linux/usb/ch9.h> #include <linux/usb/gadget.h> diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig index e0699d41ac..61e13d76e6 100644 --- a/drivers/usb/host/Kconfig +++ b/drivers/usb/host/Kconfig @@ -15,19 +15,19 @@ config USB_XHCI_HCD if USB_XHCI_HCD -config USB_XHCI_UNIPHIER - bool "Support for UniPhier on-chip xHCI USB controller" - depends on ARCH_UNIPHIER - default y - ---help--- - Enables support for the on-chip xHCI controller on UniPhier SoCs. - config USB_XHCI_DWC3 bool "DesignWare USB3 DRD Core Support" help Say Y or if your system has a Dual Role SuperSpeed USB controller based on the DesignWare USB3 IP Core. +config USB_XHCI_ROCKCHIP + bool "Support for Rockchip on-chip xHCI USB controller" + depends on ARCH_ROCKCHIP + default y + help + Enables support for the on-chip xHCI controller on Rockchip SoCs. + endif # USB_XHCI_HCD config USB_EHCI_HCD diff --git a/drivers/usb/host/Makefile b/drivers/usb/host/Makefile index 620d114795..de253284fb 100644 --- a/drivers/usb/host/Makefile +++ b/drivers/usb/host/Makefile @@ -56,13 +56,13 @@ obj-$(CONFIG_USB_EHCI_ZYNQ) += ehci-zynq.o # xhci obj-$(CONFIG_USB_XHCI_HCD) += xhci.o xhci-mem.o xhci-ring.o obj-$(CONFIG_USB_XHCI_DWC3) += xhci-dwc3.o +obj-$(CONFIG_USB_XHCI_ROCKCHIP) += xhci-rockchip.o obj-$(CONFIG_USB_XHCI_ZYNQMP) += xhci-zynqmp.o obj-$(CONFIG_USB_XHCI_KEYSTONE) += xhci-keystone.o obj-$(CONFIG_USB_XHCI_EXYNOS) += xhci-exynos5.o obj-$(CONFIG_USB_XHCI_FSL) += xhci-fsl.o obj-$(CONFIG_USB_XHCI_OMAP) += xhci-omap.o obj-$(CONFIG_USB_XHCI_PCI) += xhci-pci.o -obj-$(CONFIG_USB_XHCI_UNIPHIER) += xhci-uniphier.o # designware obj-$(CONFIG_USB_DWC2) += dwc2.o diff --git a/drivers/usb/host/ehci-atmel.c b/drivers/usb/host/ehci-atmel.c index d65bbe986c..2b138c5153 100644 --- a/drivers/usb/host/ehci-atmel.c +++ b/drivers/usb/host/ehci-atmel.c @@ -128,17 +128,6 @@ static int ehci_atmel_probe(struct udevice *dev) return ehci_register(dev, hccr, hcor, NULL, 0, USB_INIT_HOST); } -static int ehci_atmel_remove(struct udevice *dev) -{ - int ret; - - ret = ehci_deregister(dev); - if (ret) - return ret; - - return 0; -} - static const struct udevice_id ehci_usb_ids[] = { { .compatible = "atmel,at91sam9g45-ehci", }, { } @@ -149,7 +138,7 @@ U_BOOT_DRIVER(ehci_atmel) = { .id = UCLASS_USB, .of_match = ehci_usb_ids, .probe = ehci_atmel_probe, - .remove = ehci_atmel_remove, + .remove = ehci_deregister, .ops = &ehci_usb_ops, .platdata_auto_alloc_size = sizeof(struct usb_platdata), .priv_auto_alloc_size = sizeof(struct ehci_atmel_priv), diff --git a/drivers/usb/host/ehci-exynos.c b/drivers/usb/host/ehci-exynos.c index bede04b748..53281d78b3 100644 --- a/drivers/usb/host/ehci-exynos.c +++ b/drivers/usb/host/ehci-exynos.c @@ -18,7 +18,7 @@ #include <asm/arch/system.h> #include <asm/arch/power.h> #include <asm/gpio.h> -#include <asm-generic/errno.h> +#include <linux/errno.h> #include <linux/compat.h> #include "ehci.h" diff --git a/drivers/usb/host/ehci-fsl.c b/drivers/usb/host/ehci-fsl.c index f5e3ae796e..9c32921826 100644 --- a/drivers/usb/host/ehci-fsl.c +++ b/drivers/usb/host/ehci-fsl.c @@ -118,17 +118,6 @@ static int ehci_fsl_probe(struct udevice *dev) return ehci_register(dev, hccr, hcor, &fsl_ehci_ops, 0, USB_INIT_HOST); } -static int ehci_fsl_remove(struct udevice *dev) -{ - int ret; - - ret = ehci_deregister(dev); - if (ret) - return ret; - - return 0; -} - static const struct udevice_id ehci_usb_ids[] = { { .compatible = "fsl-usb2-mph", }, { .compatible = "fsl-usb2-dr", }, @@ -141,7 +130,7 @@ U_BOOT_DRIVER(ehci_fsl) = { .of_match = ehci_usb_ids, .ofdata_to_platdata = ehci_fsl_ofdata_to_platdata, .probe = ehci_fsl_probe, - .remove = ehci_fsl_remove, + .remove = ehci_deregister, .ops = &ehci_usb_ops, .platdata_auto_alloc_size = sizeof(struct usb_platdata), .priv_auto_alloc_size = sizeof(struct ehci_fsl_priv), diff --git a/drivers/usb/host/ehci-generic.c b/drivers/usb/host/ehci-generic.c index e0377ca1c9..2190adba67 100644 --- a/drivers/usb/host/ehci-generic.c +++ b/drivers/usb/host/ehci-generic.c @@ -6,6 +6,7 @@ #include <common.h> #include <clk.h> +#include <reset.h> #include <asm/io.h> #include <dm.h> #include "ehci.h" @@ -37,6 +38,18 @@ static int ehci_usb_probe(struct udevice *dev) clk_free(&clk); } + for (i = 0; ; i++) { + struct reset_ctl reset; + int ret; + + ret = reset_get_by_index(dev, i, &reset); + if (ret < 0) + break; + if (reset_deassert(&reset)) + printf("failed to deassert reset %d\n", i); + reset_free(&reset); + } + hccr = map_physmem(dev_get_addr(dev), 0x100, MAP_NOCACHE); hcor = (struct ehci_hcor *)((uintptr_t)hccr + HC_LENGTH(ehci_readl(&hccr->cr_capbase))); @@ -44,11 +57,6 @@ static int ehci_usb_probe(struct udevice *dev) return ehci_register(dev, hccr, hcor, NULL, 0, USB_INIT_HOST); } -static int ehci_usb_remove(struct udevice *dev) -{ - return ehci_deregister(dev); -} - static const struct udevice_id ehci_usb_ids[] = { { .compatible = "generic-ehci" }, { } @@ -59,7 +67,7 @@ U_BOOT_DRIVER(ehci_generic) = { .id = UCLASS_USB, .of_match = ehci_usb_ids, .probe = ehci_usb_probe, - .remove = ehci_usb_remove, + .remove = ehci_deregister, .ops = &ehci_usb_ops, .priv_auto_alloc_size = sizeof(struct generic_ehci), .flags = DM_FLAG_ALLOC_PRIV_DMA, diff --git a/drivers/usb/host/ehci-marvell.c b/drivers/usb/host/ehci-marvell.c index 5b0f46aaef..253fcb3c96 100644 --- a/drivers/usb/host/ehci-marvell.c +++ b/drivers/usb/host/ehci-marvell.c @@ -94,17 +94,6 @@ static int ehci_mvebu_probe(struct udevice *dev) return ehci_register(dev, hccr, hcor, NULL, 0, USB_INIT_HOST); } -static int ehci_mvebu_remove(struct udevice *dev) -{ - int ret; - - ret = ehci_deregister(dev); - if (ret) - return ret; - - return 0; -} - static const struct udevice_id ehci_usb_ids[] = { { .compatible = "marvell,orion-ehci", }, { } @@ -115,7 +104,7 @@ U_BOOT_DRIVER(ehci_mvebu) = { .id = UCLASS_USB, .of_match = ehci_usb_ids, .probe = ehci_mvebu_probe, - .remove = ehci_mvebu_remove, + .remove = ehci_deregister, .ops = &ehci_usb_ops, .platdata_auto_alloc_size = sizeof(struct usb_platdata), .priv_auto_alloc_size = sizeof(struct ehci_mvebu_priv), diff --git a/drivers/usb/host/ehci-mx6.c b/drivers/usb/host/ehci-mx6.c index 602fec5394..48889c1956 100644 --- a/drivers/usb/host/ehci-mx6.c +++ b/drivers/usb/host/ehci-mx6.c @@ -451,17 +451,6 @@ static int ehci_usb_probe(struct udevice *dev) return ehci_register(dev, hccr, hcor, &mx6_ehci_ops, 0, priv->init_type); } -static int ehci_usb_remove(struct udevice *dev) -{ - int ret; - - ret = ehci_deregister(dev); - if (ret) - return ret; - - return 0; -} - static const struct udevice_id mx6_usb_ids[] = { { .compatible = "fsl,imx27-usb" }, { } @@ -472,7 +461,7 @@ U_BOOT_DRIVER(usb_mx6) = { .id = UCLASS_USB, .of_match = mx6_usb_ids, .probe = ehci_usb_probe, - .remove = ehci_usb_remove, + .remove = ehci_deregister, .ops = &ehci_usb_ops, .platdata_auto_alloc_size = sizeof(struct usb_platdata), .priv_auto_alloc_size = sizeof(struct ehci_mx6_priv_data), diff --git a/drivers/usb/host/ehci-pci.c b/drivers/usb/host/ehci-pci.c index f21a1fa773..6fc24792af 100644 --- a/drivers/usb/host/ehci-pci.c +++ b/drivers/usb/host/ehci-pci.c @@ -126,17 +126,6 @@ static int ehci_pci_probe(struct udevice *dev) return ehci_register(dev, hccr, hcor, NULL, 0, USB_INIT_HOST); } -static int ehci_pci_remove(struct udevice *dev) -{ - int ret; - - ret = ehci_deregister(dev); - if (ret) - return ret; - - return 0; -} - static const struct udevice_id ehci_pci_ids[] = { { .compatible = "ehci-pci" }, { } @@ -146,7 +135,7 @@ U_BOOT_DRIVER(ehci_pci) = { .name = "ehci_pci", .id = UCLASS_USB, .probe = ehci_pci_probe, - .remove = ehci_pci_remove, + .remove = ehci_deregister, .of_match = ehci_pci_ids, .ops = &ehci_usb_ops, .platdata_auto_alloc_size = sizeof(struct usb_platdata), diff --git a/drivers/usb/host/ehci-tegra.c b/drivers/usb/host/ehci-tegra.c index 31d54ab285..eb54df471d 100644 --- a/drivers/usb/host/ehci-tegra.c +++ b/drivers/usb/host/ehci-tegra.c @@ -8,7 +8,7 @@ #include <common.h> #include <dm.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm-generic/gpio.h> #include <asm/arch/clock.h> @@ -846,17 +846,6 @@ static int ehci_usb_probe(struct udevice *dev) plat->init_type); } -static int ehci_usb_remove(struct udevice *dev) -{ - int ret; - - ret = ehci_deregister(dev); - if (ret) - return ret; - - return 0; -} - static const struct udevice_id ehci_usb_ids[] = { { .compatible = "nvidia,tegra20-ehci", .data = USB_CTLR_T20 }, { .compatible = "nvidia,tegra30-ehci", .data = USB_CTLR_T30 }, @@ -871,7 +860,7 @@ U_BOOT_DRIVER(usb_ehci) = { .of_match = ehci_usb_ids, .ofdata_to_platdata = ehci_usb_ofdata_to_platdata, .probe = ehci_usb_probe, - .remove = ehci_usb_remove, + .remove = ehci_deregister, .ops = &ehci_usb_ops, .platdata_auto_alloc_size = sizeof(struct usb_platdata), .priv_auto_alloc_size = sizeof(struct fdt_usb), diff --git a/drivers/usb/host/ehci-zynq.c b/drivers/usb/host/ehci-zynq.c index 76642cdad7..1e3b8001f3 100644 --- a/drivers/usb/host/ehci-zynq.c +++ b/drivers/usb/host/ehci-zynq.c @@ -73,17 +73,6 @@ static int ehci_zynq_probe(struct udevice *dev) return ehci_register(dev, hccr, hcor, NULL, 0, plat->init_type); } -static int ehci_zynq_remove(struct udevice *dev) -{ - int ret; - - ret = ehci_deregister(dev); - if (ret) - return ret; - - return 0; -} - static const struct udevice_id ehci_zynq_ids[] = { { .compatible = "xlnx,zynq-usb-2.20a" }, { } @@ -95,7 +84,7 @@ U_BOOT_DRIVER(ehci_zynq) = { .of_match = ehci_zynq_ids, .ofdata_to_platdata = ehci_zynq_ofdata_to_platdata, .probe = ehci_zynq_probe, - .remove = ehci_zynq_remove, + .remove = ehci_deregister, .ops = &ehci_usb_ops, .platdata_auto_alloc_size = sizeof(struct usb_platdata), .priv_auto_alloc_size = sizeof(struct zynq_ehci_priv), diff --git a/drivers/usb/host/xhci-exynos5.c b/drivers/usb/host/xhci-exynos5.c index 28416ed106..82fcd84ef2 100644 --- a/drivers/usb/host/xhci-exynos5.c +++ b/drivers/usb/host/xhci-exynos5.c @@ -24,7 +24,7 @@ #include <asm/arch/power.h> #include <asm/arch/xhci-exynos.h> #include <asm/gpio.h> -#include <asm-generic/errno.h> +#include <linux/errno.h> #include <linux/compat.h> #include <linux/usb/dwc3.h> diff --git a/drivers/usb/host/xhci-fsl.c b/drivers/usb/host/xhci-fsl.c index bdcd4f1c99..bda5b5f913 100644 --- a/drivers/usb/host/xhci-fsl.c +++ b/drivers/usb/host/xhci-fsl.c @@ -10,7 +10,7 @@ #include <common.h> #include <usb.h> -#include <asm-generic/errno.h> +#include <linux/errno.h> #include <linux/compat.h> #include <linux/usb/xhci-fsl.h> #include <linux/usb/dwc3.h> @@ -129,15 +129,10 @@ static int xhci_fsl_probe(struct udevice *dev) static int xhci_fsl_remove(struct udevice *dev) { struct xhci_fsl_priv *priv = dev_get_priv(dev); - int ret; fsl_xhci_core_exit(&priv->ctx); - ret = xhci_deregister(dev); - if (ret) - return ret; - - return 0; + return xhci_deregister(dev); } static const struct udevice_id xhci_usb_ids[] = { diff --git a/drivers/usb/host/xhci-keystone.c b/drivers/usb/host/xhci-keystone.c index 924fb7616f..f322a803fe 100644 --- a/drivers/usb/host/xhci-keystone.c +++ b/drivers/usb/host/xhci-keystone.c @@ -14,7 +14,7 @@ #include <asm/io.h> #include <linux/usb/dwc3.h> #include <asm/arch/xhci-keystone.h> -#include <asm-generic/errno.h> +#include <linux/errno.h> #include <linux/list.h> #include "xhci.h" diff --git a/drivers/usb/host/xhci-mem.c b/drivers/usb/host/xhci-mem.c index 37444526f7..62db51d018 100644 --- a/drivers/usb/host/xhci-mem.c +++ b/drivers/usb/host/xhci-mem.c @@ -20,7 +20,7 @@ #include <usb.h> #include <malloc.h> #include <asm/cache.h> -#include <asm-generic/errno.h> +#include <linux/errno.h> #include "xhci.h" diff --git a/drivers/usb/host/xhci-omap.c b/drivers/usb/host/xhci-omap.c index fd19f79f0f..b881b198fc 100644 --- a/drivers/usb/host/xhci-omap.c +++ b/drivers/usb/host/xhci-omap.c @@ -11,7 +11,7 @@ #include <common.h> #include <usb.h> -#include <asm-generic/errno.h> +#include <linux/errno.h> #include <asm/omap_common.h> #include <asm/arch/cpu.h> #include <asm/arch/sys_proto.h> diff --git a/drivers/usb/host/xhci-ring.c b/drivers/usb/host/xhci-ring.c index 5a1391fbe3..2675a8f649 100644 --- a/drivers/usb/host/xhci-ring.c +++ b/drivers/usb/host/xhci-ring.c @@ -18,7 +18,7 @@ #include <asm/byteorder.h> #include <usb.h> #include <asm/unaligned.h> -#include <asm-generic/errno.h> +#include <linux/errno.h> #include "xhci.h" diff --git a/drivers/usb/host/xhci-rockchip.c b/drivers/usb/host/xhci-rockchip.c new file mode 100644 index 0000000000..8cbcb8f923 --- /dev/null +++ b/drivers/usb/host/xhci-rockchip.c @@ -0,0 +1,211 @@ +/* + * Copyright (c) 2016 Rockchip, Inc. + * Authors: Daniel Meng <daniel.meng@rock-chips.com> + * + * SPDX-License-Identifier: GPL-2.0+ + */ +#include <common.h> +#include <dm.h> +#include <fdtdec.h> +#include <libfdt.h> +#include <malloc.h> +#include <usb.h> +#include <watchdog.h> +#include <asm/gpio.h> +#include <linux/errno.h> +#include <linux/compat.h> +#include <linux/usb/dwc3.h> + +#include "xhci.h" + +DECLARE_GLOBAL_DATA_PTR; + +struct rockchip_xhci_platdata { + fdt_addr_t hcd_base; + fdt_addr_t phy_base; + struct gpio_desc vbus_gpio; +}; + +/* + * Contains pointers to register base addresses + * for the usb controller. + */ +struct rockchip_xhci { + struct usb_platdata usb_plat; + struct xhci_ctrl ctrl; + struct xhci_hccr *hcd; + struct dwc3 *dwc3_reg; +}; + +static int xhci_usb_ofdata_to_platdata(struct udevice *dev) +{ + struct rockchip_xhci_platdata *plat = dev_get_platdata(dev); + struct udevice *child; + int ret = 0; + + /* + * Get the base address for XHCI controller from the device node + */ + plat->hcd_base = dev_get_addr(dev); + if (plat->hcd_base == FDT_ADDR_T_NONE) { + debug("Can't get the XHCI register base address\n"); + return -ENXIO; + } + + /* Get the base address for usbphy from the device node */ + for (device_find_first_child(dev, &child); child; + device_find_next_child(&child)) { + if (!of_device_is_compatible(child, "rockchip,rk3399-usb3-phy")) + continue; + plat->phy_base = dev_get_addr(child); + break; + } + + if (plat->phy_base == FDT_ADDR_T_NONE) { + debug("Can't get the usbphy register address\n"); + return -ENXIO; + } + + /* Vbus gpio */ + ret = gpio_request_by_name(dev, "rockchip,vbus-gpio", 0, + &plat->vbus_gpio, GPIOD_IS_OUT); + if (ret) + debug("rockchip,vbus-gpio node missing!"); + + return 0; +} + +/* + * rockchip_dwc3_phy_setup() - Configure USB PHY Interface of DWC3 Core + * @dwc: Pointer to our controller context structure + * @dev: Pointer to ulcass device + */ +static void rockchip_dwc3_phy_setup(struct dwc3 *dwc3_reg, + struct udevice *dev) +{ + u32 reg; + const void *blob = gd->fdt_blob; + u32 utmi_bits; + + /* Set dwc3 usb2 phy config */ + reg = readl(&dwc3_reg->g_usb2phycfg[0]); + + if (fdtdec_get_bool(blob, dev->of_offset, + "snps,dis-enblslpm-quirk")) + reg &= ~DWC3_GUSB2PHYCFG_ENBLSLPM; + + utmi_bits = fdtdec_get_int(blob, dev->of_offset, + "snps,phyif-utmi-bits", -1); + if (utmi_bits == 16) { + reg |= DWC3_GUSB2PHYCFG_PHYIF; + reg &= ~DWC3_GUSB2PHYCFG_USBTRDTIM_MASK; + reg |= DWC3_GUSB2PHYCFG_USBTRDTIM_16BIT; + } else if (utmi_bits == 8) { + reg &= ~DWC3_GUSB2PHYCFG_PHYIF; + reg &= ~DWC3_GUSB2PHYCFG_USBTRDTIM_MASK; + reg |= DWC3_GUSB2PHYCFG_USBTRDTIM_8BIT; + } + + if (fdtdec_get_bool(blob, dev->of_offset, + "snps,dis-u2-freeclk-exists-quirk")) + reg &= ~DWC3_GUSB2PHYCFG_U2_FREECLK_EXISTS; + + if (fdtdec_get_bool(blob, dev->of_offset, + "snps,dis-u2-susphy-quirk")) + reg &= ~DWC3_GUSB2PHYCFG_SUSPHY; + + writel(reg, &dwc3_reg->g_usb2phycfg[0]); +} + +static int rockchip_xhci_core_init(struct rockchip_xhci *rkxhci, + struct udevice *dev) +{ + int ret; + + ret = dwc3_core_init(rkxhci->dwc3_reg); + if (ret) { + debug("failed to initialize core\n"); + return ret; + } + + rockchip_dwc3_phy_setup(rkxhci->dwc3_reg, dev); + + /* We are hard-coding DWC3 core to Host Mode */ + dwc3_set_mode(rkxhci->dwc3_reg, DWC3_GCTL_PRTCAP_HOST); + + return 0; +} + +static int rockchip_xhci_core_exit(struct rockchip_xhci *rkxhci) +{ + return 0; +} + +static int xhci_usb_probe(struct udevice *dev) +{ + struct rockchip_xhci_platdata *plat = dev_get_platdata(dev); + struct rockchip_xhci *ctx = dev_get_priv(dev); + struct xhci_hcor *hcor; + int ret; + + ctx->hcd = (struct xhci_hccr *)plat->hcd_base; + ctx->dwc3_reg = (struct dwc3 *)((char *)(ctx->hcd) + DWC3_REG_OFFSET); + hcor = (struct xhci_hcor *)((uint64_t)ctx->hcd + + HC_LENGTH(xhci_readl(&ctx->hcd->cr_capbase))); + + /* setup the Vbus gpio here */ + if (dm_gpio_is_valid(&plat->vbus_gpio)) + dm_gpio_set_value(&plat->vbus_gpio, 1); + + ret = rockchip_xhci_core_init(ctx, dev); + if (ret) { + debug("XHCI: failed to initialize controller\n"); + return ret; + } + + return xhci_register(dev, ctx->hcd, hcor); +} + +static int xhci_usb_remove(struct udevice *dev) +{ + struct rockchip_xhci *ctx = dev_get_priv(dev); + int ret; + + ret = xhci_deregister(dev); + if (ret) + return ret; + ret = rockchip_xhci_core_exit(ctx); + if (ret) + return ret; + + return 0; +} + +static const struct udevice_id xhci_usb_ids[] = { + { .compatible = "rockchip,rk3399-xhci" }, + { } +}; + +U_BOOT_DRIVER(usb_xhci) = { + .name = "xhci_rockchip", + .id = UCLASS_USB, + .of_match = xhci_usb_ids, + .ofdata_to_platdata = xhci_usb_ofdata_to_platdata, + .probe = xhci_usb_probe, + .remove = xhci_usb_remove, + .ops = &xhci_usb_ops, + .bind = dm_scan_fdt_dev, + .platdata_auto_alloc_size = sizeof(struct rockchip_xhci_platdata), + .priv_auto_alloc_size = sizeof(struct rockchip_xhci), + .flags = DM_FLAG_ALLOC_PRIV_DMA, +}; + +static const struct udevice_id usb_phy_ids[] = { + { .compatible = "rockchip,rk3399-usb3-phy" }, + { } +}; + +U_BOOT_DRIVER(usb_phy) = { + .name = "usb_phy_rockchip", + .of_match = usb_phy_ids, +}; diff --git a/drivers/usb/host/xhci-uniphier.c b/drivers/usb/host/xhci-uniphier.c deleted file mode 100644 index 1b3f3d22de..0000000000 --- a/drivers/usb/host/xhci-uniphier.c +++ /dev/null @@ -1,85 +0,0 @@ -/* - * Copyright (C) 2015 Masahiro Yamada <yamada.masahiro@socionext.com> - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#include <common.h> -#include <linux/err.h> -#include <linux/io.h> -#include <usb.h> -#include <fdtdec.h> -#include "xhci.h" - -static int get_uniphier_xhci_base(int index, struct xhci_hccr **base) -{ - DECLARE_GLOBAL_DATA_PTR; - int node_list[2]; - fdt_addr_t addr; - int count; - - count = fdtdec_find_aliases_for_id(gd->fdt_blob, "usb", - COMPAT_SOCIONEXT_XHCI, node_list, - ARRAY_SIZE(node_list)); - - if (index >= count) - return -ENODEV; - - addr = fdtdec_get_addr(gd->fdt_blob, node_list[index], "reg"); - if (addr == FDT_ADDR_T_NONE) - return -ENODEV; - - *base = (struct xhci_hccr *)addr; - - return 0; -} - -#define USB3_RST_CTRL 0x00100040 -#define IOMMU_RST_N (1 << 5) -#define LINK_RST_N (1 << 4) - -static void uniphier_xhci_reset(void __iomem *base, int on) -{ - u32 tmp; - - tmp = readl(base + USB3_RST_CTRL); - - if (on) - tmp &= ~(IOMMU_RST_N | LINK_RST_N); - else - tmp |= IOMMU_RST_N | LINK_RST_N; - - writel(tmp, base + USB3_RST_CTRL); -} - -int xhci_hcd_init(int index, struct xhci_hccr **hccr, struct xhci_hcor **hcor) -{ - int ret; - struct xhci_hccr *cr; - struct xhci_hcor *or; - - ret = get_uniphier_xhci_base(index, &cr); - if (ret < 0) - return ret; - - uniphier_xhci_reset(cr, 0); - - or = (void *)cr + HC_LENGTH(xhci_readl(&cr->cr_capbase)); - - *hccr = cr; - *hcor = or; - - return 0; -} - -void xhci_hcd_stop(int index) -{ - int ret; - struct xhci_hccr *cr; - - ret = get_uniphier_xhci_base(index, &cr); - if (ret < 0) - return; - - uniphier_xhci_reset(cr, 1); -} diff --git a/drivers/usb/host/xhci-zynqmp.c b/drivers/usb/host/xhci-zynqmp.c index a7353698d7..cec1bc46d0 100644 --- a/drivers/usb/host/xhci-zynqmp.c +++ b/drivers/usb/host/xhci-zynqmp.c @@ -12,7 +12,7 @@ #include <common.h> #include <usb.h> -#include <asm-generic/errno.h> +#include <linux/errno.h> #include <asm/arch-zynqmp/hardware.h> #include <linux/compat.h> #include <linux/usb/dwc3.h> diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c index cb8a04b793..3201177476 100644 --- a/drivers/usb/host/xhci.c +++ b/drivers/usb/host/xhci.c @@ -28,7 +28,7 @@ #include <watchdog.h> #include <asm/cache.h> #include <asm/unaligned.h> -#include <asm-generic/errno.h> +#include <linux/errno.h> #include "xhci.h" #ifndef CONFIG_USB_MAX_CONTROLLER_COUNT diff --git a/drivers/usb/musb-new/musb_core.c b/drivers/usb/musb-new/musb_core.c index dd0443c02e..84cb21b0d6 100644 --- a/drivers/usb/musb-new/musb_core.c +++ b/drivers/usb/musb-new/musb_core.c @@ -79,7 +79,7 @@ #else #include <common.h> #include <usb.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <linux/usb/ch9.h> #include <linux/usb/gadget.h> #include <linux/usb/musb.h> diff --git a/drivers/usb/musb-new/musb_core.h b/drivers/usb/musb-new/musb_core.h index 2fe4ed51b3..4ae0ae2659 100644 --- a/drivers/usb/musb-new/musb_core.h +++ b/drivers/usb/musb-new/musb_core.h @@ -21,7 +21,7 @@ #include <linux/usb.h> #include <linux/usb/otg.h> #else -#include <asm/errno.h> +#include <linux/errno.h> #endif #include <linux/usb/ch9.h> #include <linux/usb/gadget.h> diff --git a/drivers/usb/musb-new/musb_gadget.h b/drivers/usb/musb-new/musb_gadget.h index ddd567bbb5..bd1d4f61ff 100644 --- a/drivers/usb/musb-new/musb_gadget.h +++ b/drivers/usb/musb-new/musb_gadget.h @@ -14,7 +14,7 @@ #include <linux/list.h> #ifdef __UBOOT__ #include <asm/byteorder.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <linux/usb/ch9.h> #include <linux/usb/gadget.h> #endif diff --git a/drivers/usb/musb-new/musb_uboot.c b/drivers/usb/musb-new/musb_uboot.c index 6ce528c81e..ea71f75947 100644 --- a/drivers/usb/musb-new/musb_uboot.c +++ b/drivers/usb/musb-new/musb_uboot.c @@ -4,7 +4,7 @@ #ifdef CONFIG_ARCH_SUNXI #include <asm/arch/usb_phy.h> #endif -#include <asm/errno.h> +#include <linux/errno.h> #include <linux/usb/ch9.h> #include <linux/usb/gadget.h> diff --git a/drivers/usb/musb-new/sunxi.c b/drivers/usb/musb-new/sunxi.c index c016a0bb54..469377fe4e 100644 --- a/drivers/usb/musb-new/sunxi.c +++ b/drivers/usb/musb-new/sunxi.c @@ -201,10 +201,11 @@ static irqreturn_t sunxi_musb_interrupt(int irq, void *__hci) /* musb_core does not call enable / disable in a balanced manner <sigh> */ static bool enabled = false; -static struct musb *sunxi_musb; static int sunxi_musb_enable(struct musb *musb) { + int ret; + pr_debug("%s():\n", __func__); musb_ep_select(musb->mregs, 0); @@ -217,26 +218,17 @@ static int sunxi_musb_enable(struct musb *musb) musb_writeb(musb->mregs, USBC_REG_o_VEND0, 0); if (is_host_enabled(musb)) { - int id = sunxi_usb_phy_id_detect(0); - - if (id == 1 && sunxi_usb_phy_power_is_on(0)) - sunxi_usb_phy_power_off(0); - - if (!sunxi_usb_phy_power_is_on(0)) { - int vbus = sunxi_usb_phy_vbus_detect(0); - if (vbus == 1) { - printf("A charger is plugged into the OTG: "); - return -ENODEV; - } + ret = sunxi_usb_phy_vbus_detect(0); + if (ret == 1) { + printf("A charger is plugged into the OTG: "); + return -ENODEV; } - - if (id == 1) { + ret = sunxi_usb_phy_id_detect(0); + if (ret == 1) { printf("No host cable detected: "); return -ENODEV; } - - if (!sunxi_usb_phy_power_is_on(0)) - sunxi_usb_phy_power_on(0); + sunxi_usb_phy_power_on(0); /* port power on */ } USBC_ForceVbusValidToHigh(musb->mregs); @@ -252,6 +244,9 @@ static void sunxi_musb_disable(struct musb *musb) if (!enabled) return; + if (is_host_enabled(musb)) + sunxi_usb_phy_power_off(0); /* port power off */ + USBC_ForceVbusValidToLow(musb->mregs); mdelay(200); /* Wait for the current session to timeout */ @@ -313,7 +308,9 @@ static struct musb_hdrc_platform_data musb_plat = { }; #ifdef CONFIG_USB_MUSB_HOST -int musb_usb_probe(struct udevice *dev) +static int musb_usb_remove(struct udevice *dev); + +static int musb_usb_probe(struct udevice *dev) { struct musb_host_data *host = dev_get_priv(dev); struct usb_bus_priv *priv = dev_get_uclass_priv(dev); @@ -321,23 +318,21 @@ int musb_usb_probe(struct udevice *dev) priv->desc_before_addr = true; - if (!sunxi_musb) { - sunxi_musb = musb_init_controller(&musb_plat, NULL, - (void *)SUNXI_USB0_BASE); - } - - host->host = sunxi_musb; + host->host = musb_init_controller(&musb_plat, NULL, + (void *)SUNXI_USB0_BASE); if (!host->host) return -EIO; ret = musb_lowlevel_init(host); if (ret == 0) printf("MUSB OTG\n"); + else + musb_usb_remove(dev); return ret; } -int musb_usb_remove(struct udevice *dev) +static int musb_usb_remove(struct udevice *dev) { struct musb_host_data *host = dev_get_priv(dev); struct sunxi_ccm_reg *ccm = (struct sunxi_ccm_reg *)SUNXI_CCM_BASE; @@ -350,6 +345,9 @@ int musb_usb_remove(struct udevice *dev) #endif clrbits_le32(&ccm->ahb_gate0, 1 << AHB_GATE_OFFSET_USB0); + free(host->host); + host->host = NULL; + return 0; } diff --git a/drivers/usb/phy/omap_usb_phy.c b/drivers/usb/phy/omap_usb_phy.c index 1993da16ea..7c7fba21f4 100644 --- a/drivers/usb/phy/omap_usb_phy.c +++ b/drivers/usb/phy/omap_usb_phy.c @@ -11,7 +11,7 @@ #include <common.h> #include <usb.h> -#include <asm-generic/errno.h> +#include <linux/errno.h> #include <asm/omap_common.h> #include <asm/arch/cpu.h> #include <asm/arch/sys_proto.h> diff --git a/drivers/video/ati_radeon_fb.c b/drivers/video/ati_radeon_fb.c index 574895155d..07a29eaba1 100644 --- a/drivers/video/ati_radeon_fb.c +++ b/drivers/video/ati_radeon_fb.c @@ -22,7 +22,7 @@ #include <bios_emul.h> #include <pci.h> #include <asm/processor.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <malloc.h> #include <video_fb.h> diff --git a/drivers/video/bridge/ptn3460.c b/drivers/video/bridge/ptn3460.c index 2e2ae7c5a6..f9d3720c8f 100644 --- a/drivers/video/bridge/ptn3460.c +++ b/drivers/video/bridge/ptn3460.c @@ -11,14 +11,9 @@ static int ptn3460_attach(struct udevice *dev) { - int ret; - debug("%s: %s\n", __func__, dev->name); - ret = video_bridge_set_active(dev, true); - if (ret) - return ret; - return 0; + return video_bridge_set_active(dev, true); } struct video_bridge_ops ptn3460_ops = { diff --git a/drivers/video/broadwell_igd.c b/drivers/video/broadwell_igd.c index ce4f296d0a..4286fd0648 100644 --- a/drivers/video/broadwell_igd.c +++ b/drivers/video/broadwell_igd.c @@ -323,10 +323,7 @@ err: static unsigned long gtt_read(struct broadwell_igd_priv *priv, unsigned long reg) { - u32 val; - - val = readl(priv->regs + reg); - return val; + return readl(priv->regs + reg); } static void gtt_write(struct broadwell_igd_priv *priv, unsigned long reg, diff --git a/drivers/video/da8xx-fb.c b/drivers/video/da8xx-fb.c index 468f385d8d..bbd384df5e 100644 --- a/drivers/video/da8xx-fb.c +++ b/drivers/video/da8xx-fb.c @@ -19,7 +19,7 @@ #include <linux/list.h> #include <linux/fb.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/arch/hardware.h> diff --git a/drivers/video/exynos/exynos_dp_lowlevel.c b/drivers/video/exynos/exynos_dp_lowlevel.c index f9784738bb..aae78a8159 100644 --- a/drivers/video/exynos/exynos_dp_lowlevel.c +++ b/drivers/video/exynos/exynos_dp_lowlevel.c @@ -881,11 +881,7 @@ void exynos_dp_set_lane_count(struct exynos_dp *dp_regs, unsigned char count) unsigned int exynos_dp_get_lane_count(struct exynos_dp *dp_regs) { - unsigned int reg; - - reg = readl(&dp_regs->lane_count_set); - - return reg; + return readl(&dp_regs->lane_count_set); } unsigned char exynos_dp_get_lanex_pre_emphasis(struct exynos_dp *dp_regs, diff --git a/drivers/video/exynos/exynos_fb.c b/drivers/video/exynos/exynos_fb.c index 97228cd3cc..5483d6613f 100644 --- a/drivers/video/exynos/exynos_fb.c +++ b/drivers/video/exynos/exynos_fb.c @@ -27,7 +27,7 @@ #include <asm/arch/pinmux.h> #include <asm/arch/system.h> #include <asm/gpio.h> -#include <asm-generic/errno.h> +#include <linux/errno.h> DECLARE_GLOBAL_DATA_PTR; diff --git a/drivers/video/ipu_common.c b/drivers/video/ipu_common.c index 5676a0f083..f8d4488fce 100644 --- a/drivers/video/ipu_common.c +++ b/drivers/video/ipu_common.c @@ -16,7 +16,7 @@ #include <linux/types.h> #include <linux/err.h> #include <asm/io.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/arch/imx-regs.h> #include <asm/arch/crm_regs.h> #include <div64.h> diff --git a/drivers/video/ipu_disp.c b/drivers/video/ipu_disp.c index cbac9f72fc..47d741796e 100644 --- a/drivers/video/ipu_disp.c +++ b/drivers/video/ipu_disp.c @@ -15,7 +15,7 @@ #include <common.h> #include <linux/types.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/arch/imx-regs.h> #include <asm/arch/sys_proto.h> diff --git a/drivers/video/mx3fb.c b/drivers/video/mx3fb.c index 3f10d5c2d9..51d06d6677 100644 --- a/drivers/video/mx3fb.c +++ b/drivers/video/mx3fb.c @@ -12,7 +12,7 @@ #include <asm/arch/imx-regs.h> #include <asm/arch/clock.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include "videomodes.h" diff --git a/drivers/video/mxc_ipuv3_fb.c b/drivers/video/mxc_ipuv3_fb.c index 265274b9d6..0d0a0a97ff 100644 --- a/drivers/video/mxc_ipuv3_fb.c +++ b/drivers/video/mxc_ipuv3_fb.c @@ -12,7 +12,7 @@ */ #include <common.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/global_data.h> #include <linux/string.h> #include <linux/list.h> diff --git a/drivers/video/mxsfb.c b/drivers/video/mxsfb.c index ddbb118d70..3cc03cadee 100644 --- a/drivers/video/mxsfb.c +++ b/drivers/video/mxsfb.c @@ -12,7 +12,7 @@ #include <asm/arch/imx-regs.h> #include <asm/arch/clock.h> #include <asm/arch/sys_proto.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/imx-common/dma.h> diff --git a/drivers/video/s3c-fb.c b/drivers/video/s3c-fb.c index 521eb75a82..bea3e69dd3 100644 --- a/drivers/video/s3c-fb.c +++ b/drivers/video/s3c-fb.c @@ -11,7 +11,7 @@ #include <malloc.h> #include <video_fb.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> #include <asm/arch/s3c24x0_cpu.h> diff --git a/drivers/video/tegra124/display.c b/drivers/video/tegra124/display.c index 2f1f0df20e..d8999c3c68 100644 --- a/drivers/video/tegra124/display.c +++ b/drivers/video/tegra124/display.c @@ -326,13 +326,7 @@ static int display_update_config_from_edid(struct udevice *dp_dev, int *panel_bppp, struct display_timing *timing) { - int ret; - - ret = display_read_timing(dp_dev, timing); - if (ret) - return ret; - - return 0; + return display_read_timing(dp_dev, timing); } static int display_init(struct udevice *dev, void *lcdbase, diff --git a/drivers/video/vidconsole-uclass.c b/drivers/video/vidconsole-uclass.c index c8cc05e3c2..e9a90b1b9b 100644 --- a/drivers/video/vidconsole-uclass.c +++ b/drivers/video/vidconsole-uclass.c @@ -190,7 +190,6 @@ static int vidconsole_post_probe(struct udevice *dev) { struct vidconsole_priv *priv = dev_get_uclass_priv(dev); struct stdio_dev *sdev = &priv->sdev; - int ret; if (!priv->tab_width_frac) priv->tab_width_frac = VID_TO_POS(priv->x_charsize) * 8; @@ -206,11 +205,8 @@ static int vidconsole_post_probe(struct udevice *dev) sdev->putc = vidconsole_putc; sdev->puts = vidconsole_puts; sdev->priv = dev; - ret = stdio_register(sdev); - if (ret) - return ret; - return 0; + return stdio_register(sdev); } UCLASS_DRIVER(vidconsole) = { diff --git a/examples/standalone/mem_to_mem_idma2intr.c b/examples/standalone/mem_to_mem_idma2intr.c index 17da8db9b9..ce6e6c4a10 100644 --- a/examples/standalone/mem_to_mem_idma2intr.c +++ b/examples/standalone/mem_to_mem_idma2intr.c @@ -186,13 +186,6 @@ int ctrlc (void) } return 0; } -void * memset(void * s,int c,size_t count) -{ - char *xs = (char *) s; - while (count--) - *xs++ = c; - return s; -} int memcmp(const void * cs,const void * ct,size_t count) { const unsigned char *su1, *su2; diff --git a/fs/ext4/ext4_common.c b/fs/ext4/ext4_common.c index eb49fce04c..e78185b53b 100644 --- a/fs/ext4/ext4_common.c +++ b/fs/ext4/ext4_common.c @@ -33,20 +33,156 @@ struct ext2_data *ext4fs_root; struct ext2fs_node *ext4fs_file; -uint32_t *ext4fs_indir1_block; +__le32 *ext4fs_indir1_block; int ext4fs_indir1_size; int ext4fs_indir1_blkno = -1; -uint32_t *ext4fs_indir2_block; +__le32 *ext4fs_indir2_block; int ext4fs_indir2_size; int ext4fs_indir2_blkno = -1; -uint32_t *ext4fs_indir3_block; +__le32 *ext4fs_indir3_block; int ext4fs_indir3_size; int ext4fs_indir3_blkno = -1; struct ext2_inode *g_parent_inode; static int symlinknest; #if defined(CONFIG_EXT4_WRITE) +struct ext2_block_group *ext4fs_get_group_descriptor + (const struct ext_filesystem *fs, uint32_t bg_idx) +{ + return (struct ext2_block_group *)(fs->gdtable + (bg_idx * fs->gdsize)); +} + +static inline void ext4fs_sb_free_inodes_dec(struct ext2_sblock *sb) +{ + sb->free_inodes = cpu_to_le32(le32_to_cpu(sb->free_inodes) - 1); +} + +static inline void ext4fs_sb_free_blocks_dec(struct ext2_sblock *sb) +{ + uint64_t free_blocks = le32_to_cpu(sb->free_blocks); + free_blocks += (uint64_t)le32_to_cpu(sb->free_blocks_high) << 32; + free_blocks--; + + sb->free_blocks = cpu_to_le32(free_blocks & 0xffffffff); + sb->free_blocks_high = cpu_to_le16(free_blocks >> 32); +} + +static inline void ext4fs_bg_free_inodes_dec + (struct ext2_block_group *bg, const struct ext_filesystem *fs) +{ + uint32_t free_inodes = le16_to_cpu(bg->free_inodes); + if (fs->gdsize == 64) + free_inodes += le16_to_cpu(bg->free_inodes_high) << 16; + free_inodes--; + + bg->free_inodes = cpu_to_le16(free_inodes & 0xffff); + if (fs->gdsize == 64) + bg->free_inodes_high = cpu_to_le16(free_inodes >> 16); +} + +static inline void ext4fs_bg_free_blocks_dec + (struct ext2_block_group *bg, const struct ext_filesystem *fs) +{ + uint32_t free_blocks = le16_to_cpu(bg->free_blocks); + if (fs->gdsize == 64) + free_blocks += le16_to_cpu(bg->free_blocks_high) << 16; + free_blocks--; + + bg->free_blocks = cpu_to_le16(free_blocks & 0xffff); + if (fs->gdsize == 64) + bg->free_blocks_high = cpu_to_le16(free_blocks >> 16); +} + +static inline void ext4fs_bg_itable_unused_dec + (struct ext2_block_group *bg, const struct ext_filesystem *fs) +{ + uint32_t free_inodes = le16_to_cpu(bg->bg_itable_unused); + if (fs->gdsize == 64) + free_inodes += le16_to_cpu(bg->bg_itable_unused_high) << 16; + free_inodes--; + + bg->bg_itable_unused = cpu_to_le16(free_inodes & 0xffff); + if (fs->gdsize == 64) + bg->bg_itable_unused_high = cpu_to_le16(free_inodes >> 16); +} + +uint64_t ext4fs_sb_get_free_blocks(const struct ext2_sblock *sb) +{ + uint64_t free_blocks = le32_to_cpu(sb->free_blocks); + free_blocks += (uint64_t)le32_to_cpu(sb->free_blocks_high) << 32; + return free_blocks; +} + +void ext4fs_sb_set_free_blocks(struct ext2_sblock *sb, uint64_t free_blocks) +{ + sb->free_blocks = cpu_to_le32(free_blocks & 0xffffffff); + sb->free_blocks_high = cpu_to_le16(free_blocks >> 32); +} + +uint32_t ext4fs_bg_get_free_blocks(const struct ext2_block_group *bg, + const struct ext_filesystem *fs) +{ + uint32_t free_blocks = le16_to_cpu(bg->free_blocks); + if (fs->gdsize == 64) + free_blocks += le16_to_cpu(bg->free_blocks_high) << 16; + return free_blocks; +} + +static inline +uint32_t ext4fs_bg_get_free_inodes(const struct ext2_block_group *bg, + const struct ext_filesystem *fs) +{ + uint32_t free_inodes = le16_to_cpu(bg->free_inodes); + if (fs->gdsize == 64) + free_inodes += le16_to_cpu(bg->free_inodes_high) << 16; + return free_inodes; +} + +static inline uint16_t ext4fs_bg_get_flags(const struct ext2_block_group *bg) +{ + return le16_to_cpu(bg->bg_flags); +} + +static inline void ext4fs_bg_set_flags(struct ext2_block_group *bg, + uint16_t flags) +{ + bg->bg_flags = cpu_to_le16(flags); +} + +/* Block number of the block bitmap */ +uint64_t ext4fs_bg_get_block_id(const struct ext2_block_group *bg, + const struct ext_filesystem *fs) +{ + uint64_t block_nr = le32_to_cpu(bg->block_id); + if (fs->gdsize == 64) + block_nr += (uint64_t)le32_to_cpu(bg->block_id_high) << 32; + return block_nr; +} + +/* Block number of the inode bitmap */ +uint64_t ext4fs_bg_get_inode_id(const struct ext2_block_group *bg, + const struct ext_filesystem *fs) +{ + uint64_t block_nr = le32_to_cpu(bg->inode_id); + if (fs->gdsize == 64) + block_nr += (uint64_t)le32_to_cpu(bg->inode_id_high) << 32; + return block_nr; +} +#endif + +/* Block number of the inode table */ +uint64_t ext4fs_bg_get_inode_table_id(const struct ext2_block_group *bg, + const struct ext_filesystem *fs) +{ + uint64_t block_nr = le32_to_cpu(bg->inode_table_id); + if (fs->gdsize == 64) + block_nr += + (uint64_t)le32_to_cpu(bg->inode_table_id_high) << 32; + return block_nr; +} + +#if defined(CONFIG_EXT4_WRITE) uint32_t ext4fs_div_roundup(uint32_t size, uint32_t n) { uint32_t res = size / n; @@ -112,7 +248,7 @@ static int _get_new_inode_no(unsigned char *buffer) while (*ptr == 255) { ptr++; count += 8; - if (count > ext4fs_root->sblock.inodes_per_group) + if (count > le32_to_cpu(ext4fs_root->sblock.inodes_per_group)) return -1; } @@ -138,18 +274,12 @@ static int _get_new_inode_no(unsigned char *buffer) static int _get_new_blk_no(unsigned char *buffer) { - unsigned char input; - int operand, status; + int operand; int count = 0; - int j = 0; + int i; unsigned char *ptr = buffer; struct ext_filesystem *fs = get_fs(); - if (fs->blksz != 1024) - count = 0; - else - count = 1; - while (*ptr == 255) { ptr++; count += 8; @@ -157,21 +287,17 @@ static int _get_new_blk_no(unsigned char *buffer) return -1; } - for (j = 0; j < fs->blksz; j++) { - input = *ptr; - int i = 0; - while (i <= 7) { - operand = 1 << i; - status = input & operand; - if (status) { - i++; - count++; - } else { - *ptr |= operand; - return count; - } + if (fs->blksz == 1024) + count += 1; + + for (i = 0; i <= 7; i++) { + operand = 1 << i; + if (*ptr & operand) { + count++; + } else { + *ptr |= operand; + return count; } - ptr = ptr + 1; } return -1; @@ -249,7 +375,7 @@ int ext4fs_set_inode_bmap(int inode_no, unsigned char *buffer, int index) unsigned char *ptr = buffer; unsigned char operand; - inode_no -= (index * ext4fs_root->sblock.inodes_per_group); + inode_no -= (index * le32_to_cpu(ext4fs_root->sblock.inodes_per_group)); i = inode_no / 8; remainder = inode_no % 8; if (remainder == 0) { @@ -274,7 +400,7 @@ void ext4fs_reset_inode_bmap(int inode_no, unsigned char *buffer, int index) unsigned char *ptr = buffer; unsigned char operand; - inode_no -= (index * ext4fs_root->sblock.inodes_per_group); + inode_no -= (index * le32_to_cpu(ext4fs_root->sblock.inodes_per_group)); i = inode_no / 8; remainder = inode_no % 8; if (remainder == 0) { @@ -289,19 +415,20 @@ void ext4fs_reset_inode_bmap(int inode_no, unsigned char *buffer, int index) *ptr = *ptr & ~(operand); } -int ext4fs_checksum_update(unsigned int i) +uint16_t ext4fs_checksum_update(uint32_t i) { struct ext2_block_group *desc; struct ext_filesystem *fs = get_fs(); - __u16 crc = 0; + uint16_t crc = 0; + __le32 le32_i = cpu_to_le32(i); - desc = (struct ext2_block_group *)&fs->bgd[i]; - if (fs->sb->feature_ro_compat & EXT4_FEATURE_RO_COMPAT_GDT_CSUM) { + desc = ext4fs_get_group_descriptor(fs, i); + if (le32_to_cpu(fs->sb->feature_ro_compat) & EXT4_FEATURE_RO_COMPAT_GDT_CSUM) { int offset = offsetof(struct ext2_block_group, bg_checksum); crc = ext2fs_crc16(~0, fs->sb->unique_id, sizeof(fs->sb->unique_id)); - crc = ext2fs_crc16(crc, &i, sizeof(i)); + crc = ext2fs_crc16(crc, &le32_i, sizeof(le32_i)); crc = ext2fs_crc16(crc, desc, offset); offset += sizeof(desc->bg_checksum); /* skip checksum */ assert(offset == sizeof(*desc)); @@ -322,7 +449,7 @@ static int check_void_in_dentry(struct ext2_dirent *dir, char *filename) dentry_length = sizeof(struct ext2_dirent) + dir->namelen + padding_factor; - sizeof_void_space = dir->direntlen - dentry_length; + sizeof_void_space = le16_to_cpu(dir->direntlen) - dentry_length; if (sizeof_void_space == 0) return 0; @@ -333,58 +460,57 @@ static int check_void_in_dentry(struct ext2_dirent *dir, char *filename) new_entry_byte_reqd = strlen(filename) + sizeof(struct ext2_dirent) + padding_factor; if (sizeof_void_space >= new_entry_byte_reqd) { - dir->direntlen = dentry_length; + dir->direntlen = cpu_to_le16(dentry_length); return sizeof_void_space; } return 0; } -void ext4fs_update_parent_dentry(char *filename, int *p_ino, int file_type) +int ext4fs_update_parent_dentry(char *filename, int file_type) { unsigned int *zero_buffer = NULL; char *root_first_block_buffer = NULL; - int direct_blk_idx; - long int root_blknr; + int blk_idx; long int first_block_no_of_root = 0; - long int previous_blknr = -1; int totalbytes = 0; - short int padding_factor = 0; unsigned int new_entry_byte_reqd; - unsigned int last_entry_dirlen; int sizeof_void_space = 0; int templength = 0; - int inodeno; + int inodeno = -1; int status; struct ext_filesystem *fs = get_fs(); /* directory entry */ struct ext2_dirent *dir; char *temp_dir = NULL; + uint32_t new_blk_no; + uint32_t new_size; + uint32_t new_blockcnt; + uint32_t directory_blocks; zero_buffer = zalloc(fs->blksz); if (!zero_buffer) { printf("No Memory\n"); - return; + return -1; } root_first_block_buffer = zalloc(fs->blksz); if (!root_first_block_buffer) { free(zero_buffer); printf("No Memory\n"); - return; + return -1; } + new_entry_byte_reqd = ROUND(strlen(filename) + + sizeof(struct ext2_dirent), 4); restart: + directory_blocks = le32_to_cpu(g_parent_inode->size) >> + LOG2_BLOCK_SIZE(ext4fs_root); + blk_idx = directory_blocks - 1; +restart_read: /* read the block no allocated to a file */ - for (direct_blk_idx = 0; direct_blk_idx < INDIRECT_BLOCKS; - direct_blk_idx++) { - root_blknr = read_allocated_block(g_parent_inode, - direct_blk_idx); - if (root_blknr == 0) { - first_block_no_of_root = previous_blknr; - break; - } - previous_blknr = root_blknr; - } + first_block_no_of_root = read_allocated_block(g_parent_inode, blk_idx); + if (first_block_no_of_root <= 0) + goto fail; status = ext4fs_devread((lbaint_t)first_block_no_of_root * fs->sect_perblk, @@ -396,66 +522,63 @@ restart: goto fail; dir = (struct ext2_dirent *)root_first_block_buffer; totalbytes = 0; - while (dir->direntlen > 0) { - /* - * blocksize-totalbytes because last directory length - * i.e. dir->direntlen is free availble space in the - * block that means it is a last entry of directory - * entry - */ - /* traversing the each directory entry */ - if (fs->blksz - totalbytes == dir->direntlen) { - if (strlen(filename) % 4 != 0) - padding_factor = 4 - (strlen(filename) % 4); - - new_entry_byte_reqd = strlen(filename) + - sizeof(struct ext2_dirent) + padding_factor; - padding_factor = 0; - /* - * update last directory entry length to its - * length because we are creating new directory - * entry - */ - if (dir->namelen % 4 != 0) - padding_factor = 4 - (dir->namelen % 4); - - last_entry_dirlen = dir->namelen + - sizeof(struct ext2_dirent) + padding_factor; - if ((fs->blksz - totalbytes - last_entry_dirlen) < - new_entry_byte_reqd) { - printf("1st Block Full:Allocate new block\n"); - - if (direct_blk_idx == INDIRECT_BLOCKS - 1) { + while (le16_to_cpu(dir->direntlen) > 0) { + unsigned short used_len = ROUND(dir->namelen + + sizeof(struct ext2_dirent), 4); + + /* last entry of block */ + if (fs->blksz - totalbytes == le16_to_cpu(dir->direntlen)) { + + /* check if new entry fits */ + if ((used_len + new_entry_byte_reqd) <= + le16_to_cpu(dir->direntlen)) { + dir->direntlen = cpu_to_le16(used_len); + break; + } else { + if (blk_idx > 0) { + printf("Block full, trying previous\n"); + blk_idx--; + goto restart_read; + } + printf("All blocks full: Allocate new\n"); + + if (le32_to_cpu(g_parent_inode->flags) & + EXT4_EXTENTS_FL) { + printf("Directory uses extents\n"); + goto fail; + } + if (directory_blocks >= INDIRECT_BLOCKS) { printf("Directory exceeds limit\n"); goto fail; } - g_parent_inode->b.blocks.dir_blocks - [direct_blk_idx] = ext4fs_get_new_blk_no(); - if (g_parent_inode->b.blocks.dir_blocks - [direct_blk_idx] == -1) { + new_blk_no = ext4fs_get_new_blk_no(); + if (new_blk_no == -1) { printf("no block left to assign\n"); goto fail; } - put_ext4(((uint64_t) - ((uint64_t)g_parent_inode->b. - blocks.dir_blocks[direct_blk_idx] * - (uint64_t)fs->blksz)), zero_buffer, fs->blksz); - g_parent_inode->size = - g_parent_inode->size + fs->blksz; - g_parent_inode->blockcnt = - g_parent_inode->blockcnt + fs->sect_perblk; + put_ext4((uint64_t)new_blk_no * fs->blksz, zero_buffer, fs->blksz); + g_parent_inode->b.blocks. + dir_blocks[directory_blocks] = + cpu_to_le32(new_blk_no); + + new_size = le32_to_cpu(g_parent_inode->size); + new_size += fs->blksz; + g_parent_inode->size = cpu_to_le32(new_size); + + new_blockcnt = le32_to_cpu(g_parent_inode->blockcnt); + new_blockcnt += fs->sect_perblk; + g_parent_inode->blockcnt = cpu_to_le32(new_blockcnt); + if (ext4fs_put_metadata (root_first_block_buffer, first_block_no_of_root)) goto fail; goto restart; } - dir->direntlen = last_entry_dirlen; - break; } - templength = dir->direntlen; + templength = le16_to_cpu(dir->direntlen); totalbytes = totalbytes + templength; sizeof_void_space = check_void_in_dentry(dir, filename); if (sizeof_void_space) @@ -465,7 +588,7 @@ restart: } /* make a pointer ready for creating next directory entry */ - templength = dir->direntlen; + templength = le16_to_cpu(dir->direntlen); totalbytes = totalbytes + templength; dir = (struct ext2_dirent *)((char *)dir + templength); @@ -475,11 +598,11 @@ restart: printf("no inode left to assign\n"); goto fail; } - dir->inode = inodeno; + dir->inode = cpu_to_le32(inodeno); if (sizeof_void_space) - dir->direntlen = sizeof_void_space; + dir->direntlen = cpu_to_le16(sizeof_void_space); else - dir->direntlen = fs->blksz - totalbytes; + dir->direntlen = cpu_to_le16(fs->blksz - totalbytes); dir->namelen = strlen(filename); dir->filetype = FILETYPE_REG; /* regular file */ @@ -487,8 +610,6 @@ restart: temp_dir = temp_dir + sizeof(struct ext2_dirent); memcpy(temp_dir, filename, strlen(filename)); - *p_ino = inodeno; - /* update or write the 1st block of root inode */ if (ext4fs_put_metadata(root_first_block_buffer, first_block_no_of_root)) @@ -497,82 +618,65 @@ restart: fail: free(zero_buffer); free(root_first_block_buffer); + + return inodeno; } static int search_dir(struct ext2_inode *parent_inode, char *dirname) { int status; - int inodeno; - int totalbytes; - int templength; - int direct_blk_idx; + int inodeno = 0; + int offset; + int blk_idx; long int blknr; - int found = 0; - char *ptr = NULL; - unsigned char *block_buffer = NULL; + char *block_buffer = NULL; struct ext2_dirent *dir = NULL; - struct ext2_dirent *previous_dir = NULL; struct ext_filesystem *fs = get_fs(); + uint32_t directory_blocks; + char *direntname; - /* read the block no allocated to a file */ - for (direct_blk_idx = 0; direct_blk_idx < INDIRECT_BLOCKS; - direct_blk_idx++) { - blknr = read_allocated_block(parent_inode, direct_blk_idx); - if (blknr == 0) - goto fail; + directory_blocks = le32_to_cpu(parent_inode->size) >> + LOG2_BLOCK_SIZE(ext4fs_root); + + block_buffer = zalloc(fs->blksz); + if (!block_buffer) + goto fail; - /* read the blocks of parenet inode */ - block_buffer = zalloc(fs->blksz); - if (!block_buffer) + /* get the block no allocated to a file */ + for (blk_idx = 0; blk_idx < directory_blocks; blk_idx++) { + blknr = read_allocated_block(parent_inode, blk_idx); + if (blknr <= 0) goto fail; + /* read the directory block */ status = ext4fs_devread((lbaint_t)blknr * fs->sect_perblk, 0, fs->blksz, (char *)block_buffer); if (status == 0) goto fail; - dir = (struct ext2_dirent *)block_buffer; - ptr = (char *)dir; - totalbytes = 0; - while (dir->direntlen >= 0) { - /* - * blocksize-totalbytes because last directory - * length i.e.,*dir->direntlen is free availble - * space in the block that means - * it is a last entry of directory entry - */ - if (strlen(dirname) == dir->namelen) { - if (strncmp(dirname, ptr + - sizeof(struct ext2_dirent), - dir->namelen) == 0) { - previous_dir->direntlen += - dir->direntlen; - inodeno = dir->inode; - dir->inode = 0; - found = 1; - break; - } - } + offset = 0; + do { + dir = (struct ext2_dirent *)(block_buffer + offset); + direntname = (char*)(dir) + sizeof(struct ext2_dirent); - if (fs->blksz - totalbytes == dir->direntlen) + int direntlen = le16_to_cpu(dir->direntlen); + if (direntlen < sizeof(struct ext2_dirent)) break; - /* traversing the each directory entry */ - templength = dir->direntlen; - totalbytes = totalbytes + templength; - previous_dir = dir; - dir = (struct ext2_dirent *)((char *)dir + templength); - ptr = (char *)dir; - } + if (dir->inode && (strlen(dirname) == dir->namelen) && + (strncmp(dirname, direntname, dir->namelen) == 0)) { + inodeno = le32_to_cpu(dir->inode); + break; + } + + offset += direntlen; + + } while (offset < fs->blksz); - if (found == 1) { + if (inodeno > 0) { free(block_buffer); - block_buffer = NULL; return inodeno; } - - free(block_buffer); - block_buffer = NULL; } fail: @@ -720,7 +824,7 @@ end: if (matched_inode_no != -1) { ext4fs_iget(matched_inode_no, &temp_inode); - if (temp_inode.mode & S_IFDIR) { + if (le16_to_cpu(temp_inode.mode) & S_IFDIR) { printf("It is a Directory\n"); result_inode_no = -1; goto fail; @@ -748,15 +852,13 @@ fail: return result_inode_no; } -static int check_filename(char *filename, unsigned int blknr) +static int unlink_filename(char *filename, unsigned int blknr) { - unsigned int first_block_no_of_root; int totalbytes = 0; int templength = 0; int status, inodeno; int found = 0; char *root_first_block_buffer = NULL; - char *root_first_block_addr = NULL; struct ext2_dirent *dir = NULL; struct ext2_dirent *previous_dir = NULL; char *ptr = NULL; @@ -764,46 +866,48 @@ static int check_filename(char *filename, unsigned int blknr) int ret = -1; /* get the first block of root */ - first_block_no_of_root = blknr; root_first_block_buffer = zalloc(fs->blksz); if (!root_first_block_buffer) return -ENOMEM; - root_first_block_addr = root_first_block_buffer; - status = ext4fs_devread((lbaint_t)first_block_no_of_root * - fs->sect_perblk, 0, + status = ext4fs_devread((lbaint_t)blknr * fs->sect_perblk, 0, fs->blksz, root_first_block_buffer); if (status == 0) goto fail; - if (ext4fs_log_journal(root_first_block_buffer, first_block_no_of_root)) + if (ext4fs_log_journal(root_first_block_buffer, blknr)) goto fail; dir = (struct ext2_dirent *)root_first_block_buffer; ptr = (char *)dir; totalbytes = 0; - while (dir->direntlen >= 0) { + while (le16_to_cpu(dir->direntlen) >= 0) { /* * blocksize-totalbytes because last * directory length i.e., *dir->direntlen * is free availble space in the block that * means it is a last entry of directory entry */ - if (strlen(filename) == dir->namelen) { - if (strncmp(filename, ptr + sizeof(struct ext2_dirent), - dir->namelen) == 0) { - printf("file found deleting\n"); - previous_dir->direntlen += dir->direntlen; - inodeno = dir->inode; + if (dir->inode && (strlen(filename) == dir->namelen) && + (strncmp(ptr + sizeof(struct ext2_dirent), + filename, dir->namelen) == 0)) { + printf("file found, deleting\n"); + inodeno = le32_to_cpu(dir->inode); + if (previous_dir) { + uint16_t new_len; + new_len = le16_to_cpu(previous_dir->direntlen); + new_len += le16_to_cpu(dir->direntlen); + previous_dir->direntlen = cpu_to_le16(new_len); + } else { dir->inode = 0; - found = 1; - break; } + found = 1; + break; } - if (fs->blksz - totalbytes == dir->direntlen) + if (fs->blksz - totalbytes == le16_to_cpu(dir->direntlen)) break; /* traversing the each directory entry */ - templength = dir->direntlen; + templength = le16_to_cpu(dir->direntlen); totalbytes = totalbytes + templength; previous_dir = dir; dir = (struct ext2_dirent *)((char *)dir + templength); @@ -812,8 +916,7 @@ static int check_filename(char *filename, unsigned int blknr) if (found == 1) { - if (ext4fs_put_metadata(root_first_block_addr, - first_block_no_of_root)) + if (ext4fs_put_metadata(root_first_block_buffer, blknr)) goto fail; ret = inodeno; } @@ -823,19 +926,22 @@ fail: return ret; } -int ext4fs_filename_check(char *filename) +int ext4fs_filename_unlink(char *filename) { - short direct_blk_idx = 0; + int blk_idx; long int blknr = -1; int inodeno = -1; + uint32_t directory_blocks; + + directory_blocks = le32_to_cpu(g_parent_inode->size) >> + LOG2_BLOCK_SIZE(ext4fs_root); /* read the block no allocated to a file */ - for (direct_blk_idx = 0; direct_blk_idx < INDIRECT_BLOCKS; - direct_blk_idx++) { - blknr = read_allocated_block(g_parent_inode, direct_blk_idx); - if (blknr == 0) + for (blk_idx = 0; blk_idx < directory_blocks; blk_idx++) { + blknr = read_allocated_block(g_parent_inode, blk_idx); + if (blknr <= 0) break; - inodeno = check_filename(filename, blknr); + inodeno = unlink_filename(filename, blknr); if (inodeno != -1) return inodeno; } @@ -843,53 +949,54 @@ int ext4fs_filename_check(char *filename) return -1; } -long int ext4fs_get_new_blk_no(void) +uint32_t ext4fs_get_new_blk_no(void) { short i; short status; int remainder; unsigned int bg_idx; static int prev_bg_bitmap_index = -1; - unsigned int blk_per_grp = ext4fs_root->sblock.blocks_per_group; + unsigned int blk_per_grp = le32_to_cpu(ext4fs_root->sblock.blocks_per_group); struct ext_filesystem *fs = get_fs(); char *journal_buffer = zalloc(fs->blksz); char *zero_buffer = zalloc(fs->blksz); if (!journal_buffer || !zero_buffer) goto fail; - struct ext2_block_group *bgd = (struct ext2_block_group *)fs->gdtable; if (fs->first_pass_bbmap == 0) { for (i = 0; i < fs->no_blkgrp; i++) { - if (bgd[i].free_blocks) { - if (bgd[i].bg_flags & EXT4_BG_BLOCK_UNINIT) { - put_ext4(((uint64_t) ((uint64_t)bgd[i].block_id * - (uint64_t)fs->blksz)), - zero_buffer, fs->blksz); - bgd[i].bg_flags = - bgd[i]. - bg_flags & ~EXT4_BG_BLOCK_UNINIT; + struct ext2_block_group *bgd = NULL; + bgd = ext4fs_get_group_descriptor(fs, i); + if (ext4fs_bg_get_free_blocks(bgd, fs)) { + uint16_t bg_flags = ext4fs_bg_get_flags(bgd); + uint64_t b_bitmap_blk = + ext4fs_bg_get_block_id(bgd, fs); + if (bg_flags & EXT4_BG_BLOCK_UNINIT) { memcpy(fs->blk_bmaps[i], zero_buffer, fs->blksz); + put_ext4(b_bitmap_blk * fs->blksz, + fs->blk_bmaps[i], fs->blksz); + bg_flags &= ~EXT4_BG_BLOCK_UNINIT; + ext4fs_bg_set_flags(bgd, bg_flags); } fs->curr_blkno = _get_new_blk_no(fs->blk_bmaps[i]); if (fs->curr_blkno == -1) - /* if block bitmap is completely fill */ + /* block bitmap is completely filled */ continue; fs->curr_blkno = fs->curr_blkno + (i * fs->blksz * 8); fs->first_pass_bbmap++; - bgd[i].free_blocks--; - fs->sb->free_blocks--; - status = ext4fs_devread((lbaint_t) - bgd[i].block_id * - fs->sect_perblk, 0, - fs->blksz, + ext4fs_bg_free_blocks_dec(bgd, fs); + ext4fs_sb_free_blocks_dec(fs->sb); + status = ext4fs_devread(b_bitmap_blk * + fs->sect_perblk, + 0, fs->blksz, journal_buffer); if (status == 0) goto fail; if (ext4fs_log_journal(journal_buffer, - bgd[i].block_id)) + b_bitmap_blk)) goto fail; goto success; } else { @@ -899,8 +1006,8 @@ long int ext4fs_get_new_blk_no(void) goto fail; } else { -restart: fs->curr_blkno++; +restart: /* get the blockbitmap index respective to blockno */ bg_idx = fs->curr_blkno / blk_per_grp; if (fs->blksz == 1024) { @@ -916,45 +1023,47 @@ restart: if (bg_idx >= fs->no_blkgrp) goto fail; - if (bgd[bg_idx].free_blocks == 0) { + struct ext2_block_group *bgd = NULL; + bgd = ext4fs_get_group_descriptor(fs, bg_idx); + if (ext4fs_bg_get_free_blocks(bgd, fs) == 0) { debug("block group %u is full. Skipping\n", bg_idx); - fs->curr_blkno = fs->curr_blkno + blk_per_grp; - fs->curr_blkno--; + fs->curr_blkno = (bg_idx + 1) * blk_per_grp; + if (fs->blksz == 1024) + fs->curr_blkno += 1; goto restart; } - if (bgd[bg_idx].bg_flags & EXT4_BG_BLOCK_UNINIT) { - memset(zero_buffer, '\0', fs->blksz); - put_ext4(((uint64_t) ((uint64_t)bgd[bg_idx].block_id * - (uint64_t)fs->blksz)), zero_buffer, fs->blksz); + uint16_t bg_flags = ext4fs_bg_get_flags(bgd); + uint64_t b_bitmap_blk = ext4fs_bg_get_block_id(bgd, fs); + if (bg_flags & EXT4_BG_BLOCK_UNINIT) { memcpy(fs->blk_bmaps[bg_idx], zero_buffer, fs->blksz); - bgd[bg_idx].bg_flags = bgd[bg_idx].bg_flags & - ~EXT4_BG_BLOCK_UNINIT; + put_ext4(b_bitmap_blk * fs->blksz, + zero_buffer, fs->blksz); + bg_flags &= ~EXT4_BG_BLOCK_UNINIT; + ext4fs_bg_set_flags(bgd, bg_flags); } if (ext4fs_set_block_bmap(fs->curr_blkno, fs->blk_bmaps[bg_idx], bg_idx) != 0) { debug("going for restart for the block no %ld %u\n", fs->curr_blkno, bg_idx); + fs->curr_blkno++; goto restart; } /* journal backup */ if (prev_bg_bitmap_index != bg_idx) { - memset(journal_buffer, '\0', fs->blksz); - status = ext4fs_devread((lbaint_t)bgd[bg_idx].block_id - * fs->sect_perblk, + status = ext4fs_devread(b_bitmap_blk * fs->sect_perblk, 0, fs->blksz, journal_buffer); if (status == 0) goto fail; - if (ext4fs_log_journal(journal_buffer, - bgd[bg_idx].block_id)) + if (ext4fs_log_journal(journal_buffer, b_bitmap_blk)) goto fail; prev_bg_bitmap_index = bg_idx; } - bgd[bg_idx].free_blocks--; - fs->sb->free_blocks--; + ext4fs_bg_free_blocks_dec(bgd, fs); + ext4fs_sb_free_blocks_dec(fs->sb); goto success; } success: @@ -975,51 +1084,55 @@ int ext4fs_get_new_inode_no(void) short status; unsigned int ibmap_idx; static int prev_inode_bitmap_index = -1; - unsigned int inodes_per_grp = ext4fs_root->sblock.inodes_per_group; + unsigned int inodes_per_grp = le32_to_cpu(ext4fs_root->sblock.inodes_per_group); struct ext_filesystem *fs = get_fs(); char *journal_buffer = zalloc(fs->blksz); char *zero_buffer = zalloc(fs->blksz); if (!journal_buffer || !zero_buffer) goto fail; - struct ext2_block_group *bgd = (struct ext2_block_group *)fs->gdtable; + int has_gdt_chksum = le32_to_cpu(fs->sb->feature_ro_compat) & + EXT4_FEATURE_RO_COMPAT_GDT_CSUM ? 1 : 0; if (fs->first_pass_ibmap == 0) { for (i = 0; i < fs->no_blkgrp; i++) { - if (bgd[i].free_inodes) { - if (bgd[i].bg_itable_unused != - bgd[i].free_inodes) - bgd[i].bg_itable_unused = - bgd[i].free_inodes; - if (bgd[i].bg_flags & EXT4_BG_INODE_UNINIT) { - put_ext4(((uint64_t) - ((uint64_t)bgd[i].inode_id * - (uint64_t)fs->blksz)), + uint32_t free_inodes; + struct ext2_block_group *bgd = NULL; + bgd = ext4fs_get_group_descriptor(fs, i); + free_inodes = ext4fs_bg_get_free_inodes(bgd, fs); + if (free_inodes) { + uint16_t bg_flags = ext4fs_bg_get_flags(bgd); + uint64_t i_bitmap_blk = + ext4fs_bg_get_inode_id(bgd, fs); + if (has_gdt_chksum) + bgd->bg_itable_unused = free_inodes; + if (bg_flags & EXT4_BG_INODE_UNINIT) { + put_ext4(i_bitmap_blk * fs->blksz, zero_buffer, fs->blksz); - bgd[i].bg_flags = bgd[i].bg_flags & - ~EXT4_BG_INODE_UNINIT; + bg_flags &= ~EXT4_BG_INODE_UNINIT; + ext4fs_bg_set_flags(bgd, bg_flags); memcpy(fs->inode_bmaps[i], zero_buffer, fs->blksz); } fs->curr_inode_no = _get_new_inode_no(fs->inode_bmaps[i]); if (fs->curr_inode_no == -1) - /* if block bitmap is completely fill */ + /* inode bitmap is completely filled */ continue; fs->curr_inode_no = fs->curr_inode_no + (i * inodes_per_grp); fs->first_pass_ibmap++; - bgd[i].free_inodes--; - bgd[i].bg_itable_unused--; - fs->sb->free_inodes--; - status = ext4fs_devread((lbaint_t) - bgd[i].inode_id * - fs->sect_perblk, 0, - fs->blksz, + ext4fs_bg_free_inodes_dec(bgd, fs); + if (has_gdt_chksum) + ext4fs_bg_itable_unused_dec(bgd, fs); + ext4fs_sb_free_inodes_dec(fs->sb); + status = ext4fs_devread(i_bitmap_blk * + fs->sect_perblk, + 0, fs->blksz, journal_buffer); if (status == 0) goto fail; if (ext4fs_log_journal(journal_buffer, - bgd[i].inode_id)) + i_bitmap_blk)) goto fail; goto success; } else @@ -1031,13 +1144,16 @@ restart: fs->curr_inode_no++; /* get the blockbitmap index respective to blockno */ ibmap_idx = fs->curr_inode_no / inodes_per_grp; - if (bgd[ibmap_idx].bg_flags & EXT4_BG_INODE_UNINIT) { - memset(zero_buffer, '\0', fs->blksz); - put_ext4(((uint64_t) ((uint64_t)bgd[ibmap_idx].inode_id * - (uint64_t)fs->blksz)), zero_buffer, - fs->blksz); - bgd[ibmap_idx].bg_flags = - bgd[ibmap_idx].bg_flags & ~EXT4_BG_INODE_UNINIT; + struct ext2_block_group *bgd = + ext4fs_get_group_descriptor(fs, ibmap_idx); + uint16_t bg_flags = ext4fs_bg_get_flags(bgd); + uint64_t i_bitmap_blk = ext4fs_bg_get_inode_id(bgd, fs); + + if (bg_flags & EXT4_BG_INODE_UNINIT) { + put_ext4(i_bitmap_blk * fs->blksz, + zero_buffer, fs->blksz); + bg_flags &= ~EXT4_BG_INODE_UNINIT; + ext4fs_bg_set_flags(bgd, bg_flags); memcpy(fs->inode_bmaps[ibmap_idx], zero_buffer, fs->blksz); } @@ -1052,25 +1168,19 @@ restart: /* journal backup */ if (prev_inode_bitmap_index != ibmap_idx) { - memset(journal_buffer, '\0', fs->blksz); - status = ext4fs_devread((lbaint_t) - bgd[ibmap_idx].inode_id - * fs->sect_perblk, + status = ext4fs_devread(i_bitmap_blk * fs->sect_perblk, 0, fs->blksz, journal_buffer); if (status == 0) goto fail; if (ext4fs_log_journal(journal_buffer, - bgd[ibmap_idx].inode_id)) + le32_to_cpu(bgd->inode_id))) goto fail; prev_inode_bitmap_index = ibmap_idx; } - if (bgd[ibmap_idx].bg_itable_unused != - bgd[ibmap_idx].free_inodes) - bgd[ibmap_idx].bg_itable_unused = - bgd[ibmap_idx].free_inodes; - bgd[ibmap_idx].free_inodes--; - bgd[ibmap_idx].bg_itable_unused--; - fs->sb->free_inodes--; + ext4fs_bg_free_inodes_dec(bgd, fs); + if (has_gdt_chksum) + bgd->bg_itable_unused = bgd->free_inodes; + ext4fs_sb_free_inodes_dec(fs->sb); goto success; } @@ -1097,8 +1207,8 @@ static void alloc_single_indirect_block(struct ext2_inode *file_inode, long int actual_block_no; long int si_blockno; /* si :single indirect */ - unsigned int *si_buffer = NULL; - unsigned int *si_start_addr = NULL; + __le32 *si_buffer = NULL; + __le32 *si_start_addr = NULL; struct ext_filesystem *fs = get_fs(); if (*total_remaining_blocks != 0) { @@ -1128,7 +1238,7 @@ static void alloc_single_indirect_block(struct ext2_inode *file_inode, printf("no block left to assign\n"); goto fail; } - *si_buffer = actual_block_no; + *si_buffer = cpu_to_le32(actual_block_no); debug("SIAB %u: %u\n", *si_buffer, *total_remaining_blocks); @@ -1141,7 +1251,7 @@ static void alloc_single_indirect_block(struct ext2_inode *file_inode, /* write the block to disk */ put_ext4(((uint64_t) ((uint64_t)si_blockno * (uint64_t)fs->blksz)), si_start_addr, fs->blksz); - file_inode->b.blocks.indir_block = si_blockno; + file_inode->b.blocks.indir_block = cpu_to_le32(si_blockno); } fail: free(si_start_addr); @@ -1158,10 +1268,10 @@ static void alloc_double_indirect_block(struct ext2_inode *file_inode, /* di:double indirect */ long int di_blockno_parent; long int di_blockno_child; - unsigned int *di_parent_buffer = NULL; - unsigned int *di_child_buff = NULL; - unsigned int *di_block_start_addr = NULL; - unsigned int *di_child_buff_start = NULL; + __le32 *di_parent_buffer = NULL; + __le32 *di_child_buff = NULL; + __le32 *di_block_start_addr = NULL; + __le32 *di_child_buff_start = NULL; struct ext_filesystem *fs = get_fs(); if (*total_remaining_blocks != 0) { @@ -1205,7 +1315,7 @@ static void alloc_double_indirect_block(struct ext2_inode *file_inode, goto fail; di_child_buff_start = di_child_buff; - *di_parent_buffer = di_blockno_child; + *di_parent_buffer = cpu_to_le32(di_blockno_child); di_parent_buffer++; (*no_blks_reqd)++; debug("DICB %ld: %u\n", di_blockno_child, @@ -1228,7 +1338,7 @@ static void alloc_double_indirect_block(struct ext2_inode *file_inode, printf("no block left to assign\n"); goto fail; } - *di_child_buff = actual_block_no; + *di_child_buff = cpu_to_le32(actual_block_no); debug("DIAB %ld: %u\n", actual_block_no, *total_remaining_blocks); @@ -1248,7 +1358,7 @@ static void alloc_double_indirect_block(struct ext2_inode *file_inode, } put_ext4(((uint64_t) ((uint64_t)di_blockno_parent * (uint64_t)fs->blksz)), di_block_start_addr, fs->blksz); - file_inode->b.blocks.double_indir_block = di_blockno_parent; + file_inode->b.blocks.double_indir_block = cpu_to_le32(di_blockno_parent); } fail: free(di_block_start_addr); @@ -1266,12 +1376,12 @@ static void alloc_triple_indirect_block(struct ext2_inode *file_inode, long int ti_gp_blockno; long int ti_parent_blockno; long int ti_child_blockno; - unsigned int *ti_gp_buff = NULL; - unsigned int *ti_parent_buff = NULL; - unsigned int *ti_child_buff = NULL; - unsigned int *ti_gp_buff_start_addr = NULL; - unsigned int *ti_pbuff_start_addr = NULL; - unsigned int *ti_cbuff_start_addr = NULL; + __le32 *ti_gp_buff = NULL; + __le32 *ti_parent_buff = NULL; + __le32 *ti_child_buff = NULL; + __le32 *ti_gp_buff_start_addr = NULL; + __le32 *ti_pbuff_start_addr = NULL; + __le32 *ti_cbuff_start_addr = NULL; struct ext_filesystem *fs = get_fs(); if (*total_remaining_blocks != 0) { /* triple indirect grand parent block connecting to inode */ @@ -1301,7 +1411,7 @@ static void alloc_triple_indirect_block(struct ext2_inode *file_inode, goto fail; ti_pbuff_start_addr = ti_parent_buff; - *ti_gp_buff = ti_parent_blockno; + *ti_gp_buff = cpu_to_le32(ti_parent_blockno); ti_gp_buff++; (*no_blks_reqd)++; debug("TIPB %ld: %u\n", ti_parent_blockno, @@ -1319,7 +1429,7 @@ static void alloc_triple_indirect_block(struct ext2_inode *file_inode, goto fail1; ti_cbuff_start_addr = ti_child_buff; - *ti_parent_buff = ti_child_blockno; + *ti_parent_buff = cpu_to_le32(ti_child_blockno); ti_parent_buff++; (*no_blks_reqd)++; debug("TICB %ld: %u\n", ti_parent_blockno, @@ -1335,7 +1445,7 @@ static void alloc_triple_indirect_block(struct ext2_inode *file_inode, free(ti_cbuff_start_addr); goto fail1; } - *ti_child_buff = actual_block_no; + *ti_child_buff = cpu_to_le32(actual_block_no); debug("TIAB %ld: %u\n", actual_block_no, *total_remaining_blocks); @@ -1364,7 +1474,7 @@ static void alloc_triple_indirect_block(struct ext2_inode *file_inode, /* write the grand parent block */ put_ext4(((uint64_t) ((uint64_t)ti_gp_blockno * (uint64_t)fs->blksz)), ti_gp_buff_start_addr, fs->blksz); - file_inode->b.blocks.triple_indir_block = ti_gp_blockno; + file_inode->b.blocks.triple_indir_block = cpu_to_le32(ti_gp_blockno); free(ti_gp_buff_start_addr); return; } @@ -1389,7 +1499,7 @@ void ext4fs_allocate_blocks(struct ext2_inode *file_inode, printf("no block left to assign\n"); return; } - file_inode->b.blocks.dir_blocks[i] = direct_blockno; + file_inode->b.blocks.dir_blocks[i] = cpu_to_le32(direct_blockno); debug("DB %ld: %u\n", direct_blockno, total_remaining_blocks); total_remaining_blocks--; @@ -1420,7 +1530,7 @@ static struct ext4_extent_header *ext4fs_get_extent_block index = (struct ext4_extent_idx *)(ext_block + 1); if (le16_to_cpu(ext_block->eh_magic) != EXT4_EXT_MAGIC) - return 0; + return NULL; if (ext_block->eh_depth == 0) return ext_block; @@ -1432,7 +1542,7 @@ static struct ext4_extent_header *ext4fs_get_extent_block } while (fileblock >= le32_to_cpu(index[i].ei_block)); if (--i < 0) - return 0; + return NULL; block = le16_to_cpu(index[i].ei_leaf_hi); block = (block << 32) + le32_to_cpu(index[i].ei_leaf_lo); @@ -1441,7 +1551,7 @@ static struct ext4_extent_header *ext4fs_get_extent_block buf)) ext_block = (struct ext4_extent_header *)buf; else - return 0; + return NULL; } } @@ -1451,20 +1561,20 @@ static int ext4fs_blockgroup long int blkno; unsigned int blkoff, desc_per_blk; int log2blksz = get_fs()->dev_desc->log2blksz; + int desc_size = get_fs()->gdsize; - desc_per_blk = EXT2_BLOCK_SIZE(data) / sizeof(struct ext2_block_group); + desc_per_blk = EXT2_BLOCK_SIZE(data) / desc_size; - blkno = __le32_to_cpu(data->sblock.first_data_block) + 1 + + blkno = le32_to_cpu(data->sblock.first_data_block) + 1 + group / desc_per_blk; - blkoff = (group % desc_per_blk) * sizeof(struct ext2_block_group); + blkoff = (group % desc_per_blk) * desc_size; debug("ext4fs read %d group descriptor (blkno %ld blkoff %u)\n", group, blkno, blkoff); return ext4fs_devread((lbaint_t)blkno << (LOG2_BLOCK_SIZE(data) - log2blksz), - blkoff, sizeof(struct ext2_block_group), - (char *)blkgrp); + blkoff, desc_size, (char *)blkgrp); } int ext4fs_read_inode(struct ext2_data *data, int ino, struct ext2_inode *inode) @@ -1479,14 +1589,14 @@ int ext4fs_read_inode(struct ext2_data *data, int ino, struct ext2_inode *inode) /* It is easier to calculate if the first inode is 0. */ ino--; - status = ext4fs_blockgroup(data, ino / __le32_to_cpu + status = ext4fs_blockgroup(data, ino / le32_to_cpu (sblock->inodes_per_group), &blkgrp); if (status == 0) return 0; inodes_per_block = EXT2_BLOCK_SIZE(data) / fs->inodesz; - blkno = __le32_to_cpu(blkgrp.inode_table_id) + - (ino % __le32_to_cpu(sblock->inodes_per_group)) / inodes_per_block; + blkno = ext4fs_bg_get_inode_table_id(&blkgrp, fs) + + (ino % le32_to_cpu(sblock->inodes_per_group)) / inodes_per_block; blkoff = (ino % inodes_per_block) * fs->inodesz; /* Read the inode. */ status = ext4fs_devread((lbaint_t)blkno << (LOG2_BLOCK_SIZE(data) - @@ -1559,7 +1669,7 @@ long int read_allocated_block(struct ext2_inode *inode, int fileblock) /* Direct blocks. */ if (fileblock < INDIRECT_BLOCKS) - blknr = __le32_to_cpu(inode->b.blocks.dir_blocks[fileblock]); + blknr = le32_to_cpu(inode->b.blocks.dir_blocks[fileblock]); /* Indirect. */ else if (fileblock < (INDIRECT_BLOCKS + (blksz / 4))) { @@ -1586,23 +1696,23 @@ long int read_allocated_block(struct ext2_inode *inode, int fileblock) } ext4fs_indir1_size = blksz; } - if ((__le32_to_cpu(inode->b.blocks.indir_block) << + if ((le32_to_cpu(inode->b.blocks.indir_block) << log2_blksz) != ext4fs_indir1_blkno) { status = - ext4fs_devread((lbaint_t)__le32_to_cpu + ext4fs_devread((lbaint_t)le32_to_cpu (inode->b.blocks. indir_block) << log2_blksz, 0, blksz, (char *)ext4fs_indir1_block); if (status == 0) { printf("** SI ext2fs read block (indir 1)" "failed. **\n"); - return 0; + return -1; } ext4fs_indir1_blkno = - __le32_to_cpu(inode->b.blocks. + le32_to_cpu(inode->b.blocks. indir_block) << log2_blksz; } - blknr = __le32_to_cpu(ext4fs_indir1_block + blknr = le32_to_cpu(ext4fs_indir1_block [fileblock - INDIRECT_BLOCKS]); } /* Double indirect. */ @@ -1635,10 +1745,10 @@ long int read_allocated_block(struct ext2_inode *inode, int fileblock) } ext4fs_indir1_size = blksz; } - if ((__le32_to_cpu(inode->b.blocks.double_indir_block) << + if ((le32_to_cpu(inode->b.blocks.double_indir_block) << log2_blksz) != ext4fs_indir1_blkno) { status = - ext4fs_devread((lbaint_t)__le32_to_cpu + ext4fs_devread((lbaint_t)le32_to_cpu (inode->b.blocks. double_indir_block) << log2_blksz, 0, blksz, @@ -1649,7 +1759,7 @@ long int read_allocated_block(struct ext2_inode *inode, int fileblock) return -1; } ext4fs_indir1_blkno = - __le32_to_cpu(inode->b.blocks.double_indir_block) << + le32_to_cpu(inode->b.blocks.double_indir_block) << log2_blksz; } @@ -1676,9 +1786,9 @@ long int read_allocated_block(struct ext2_inode *inode, int fileblock) } ext4fs_indir2_size = blksz; } - if ((__le32_to_cpu(ext4fs_indir1_block[rblock / perblock]) << + if ((le32_to_cpu(ext4fs_indir1_block[rblock / perblock]) << log2_blksz) != ext4fs_indir2_blkno) { - status = ext4fs_devread((lbaint_t)__le32_to_cpu + status = ext4fs_devread((lbaint_t)le32_to_cpu (ext4fs_indir1_block [rblock / perblock]) << log2_blksz, 0, @@ -1690,12 +1800,12 @@ long int read_allocated_block(struct ext2_inode *inode, int fileblock) return -1; } ext4fs_indir2_blkno = - __le32_to_cpu(ext4fs_indir1_block[rblock + le32_to_cpu(ext4fs_indir1_block[rblock / perblock]) << log2_blksz; } - blknr = __le32_to_cpu(ext4fs_indir2_block[rblock % perblock]); + blknr = le32_to_cpu(ext4fs_indir2_block[rblock % perblock]); } /* Tripple indirect. */ else { @@ -1727,11 +1837,11 @@ long int read_allocated_block(struct ext2_inode *inode, int fileblock) } ext4fs_indir1_size = blksz; } - if ((__le32_to_cpu(inode->b.blocks.triple_indir_block) << + if ((le32_to_cpu(inode->b.blocks.triple_indir_block) << log2_blksz) != ext4fs_indir1_blkno) { status = ext4fs_devread ((lbaint_t) - __le32_to_cpu(inode->b.blocks.triple_indir_block) + le32_to_cpu(inode->b.blocks.triple_indir_block) << log2_blksz, 0, blksz, (char *)ext4fs_indir1_block); if (status == 0) { @@ -1740,7 +1850,7 @@ long int read_allocated_block(struct ext2_inode *inode, int fileblock) return -1; } ext4fs_indir1_blkno = - __le32_to_cpu(inode->b.blocks.triple_indir_block) << + le32_to_cpu(inode->b.blocks.triple_indir_block) << log2_blksz; } @@ -1767,11 +1877,11 @@ long int read_allocated_block(struct ext2_inode *inode, int fileblock) } ext4fs_indir2_size = blksz; } - if ((__le32_to_cpu(ext4fs_indir1_block[rblock / + if ((le32_to_cpu(ext4fs_indir1_block[rblock / perblock_parent]) << log2_blksz) != ext4fs_indir2_blkno) { - status = ext4fs_devread((lbaint_t)__le32_to_cpu + status = ext4fs_devread((lbaint_t)le32_to_cpu (ext4fs_indir1_block [rblock / perblock_parent]) << @@ -1783,7 +1893,7 @@ long int read_allocated_block(struct ext2_inode *inode, int fileblock) return -1; } ext4fs_indir2_blkno = - __le32_to_cpu(ext4fs_indir1_block[rblock / + le32_to_cpu(ext4fs_indir1_block[rblock / perblock_parent]) << log2_blksz; } @@ -1811,12 +1921,12 @@ long int read_allocated_block(struct ext2_inode *inode, int fileblock) } ext4fs_indir3_size = blksz; } - if ((__le32_to_cpu(ext4fs_indir2_block[rblock + if ((le32_to_cpu(ext4fs_indir2_block[rblock / perblock_child]) << log2_blksz) != ext4fs_indir3_blkno) { status = - ext4fs_devread((lbaint_t)__le32_to_cpu + ext4fs_devread((lbaint_t)le32_to_cpu (ext4fs_indir2_block [(rblock / perblock_child) % (blksz / 4)]) << log2_blksz, 0, @@ -1827,14 +1937,14 @@ long int read_allocated_block(struct ext2_inode *inode, int fileblock) return -1; } ext4fs_indir3_blkno = - __le32_to_cpu(ext4fs_indir2_block[(rblock / + le32_to_cpu(ext4fs_indir2_block[(rblock / perblock_child) % (blksz / 4)]) << log2_blksz; } - blknr = __le32_to_cpu(ext4fs_indir3_block + blknr = le32_to_cpu(ext4fs_indir3_block [rblock % perblock_child]); } debug("read_allocated_block %ld\n", blknr); @@ -1907,7 +2017,7 @@ int ext4fs_iterate_dir(struct ext2fs_node *dir, char *name, return 0; } /* Search the file. */ - while (fpos < __le32_to_cpu(diro->inode.size)) { + while (fpos < le32_to_cpu(diro->inode.size)) { struct ext2_dirent dirent; status = ext4fs_read_file(diro, fpos, @@ -1939,7 +2049,7 @@ int ext4fs_iterate_dir(struct ext2fs_node *dir, char *name, return 0; fdiro->data = diro->data; - fdiro->ino = __le32_to_cpu(dirent.inode); + fdiro->ino = le32_to_cpu(dirent.inode); filename[dirent.namelen] = '\0'; @@ -1954,7 +2064,7 @@ int ext4fs_iterate_dir(struct ext2fs_node *dir, char *name, type = FILETYPE_REG; } else { status = ext4fs_read_inode(diro->data, - __le32_to_cpu + le32_to_cpu (dirent.inode), &fdiro->inode); if (status == 0) { @@ -1963,15 +2073,15 @@ int ext4fs_iterate_dir(struct ext2fs_node *dir, char *name, } fdiro->inode_read = 1; - if ((__le16_to_cpu(fdiro->inode.mode) & + if ((le16_to_cpu(fdiro->inode.mode) & FILETYPE_INO_MASK) == FILETYPE_INO_DIRECTORY) { type = FILETYPE_DIRECTORY; - } else if ((__le16_to_cpu(fdiro->inode.mode) + } else if ((le16_to_cpu(fdiro->inode.mode) & FILETYPE_INO_MASK) == FILETYPE_INO_SYMLINK) { type = FILETYPE_SYMLINK; - } else if ((__le16_to_cpu(fdiro->inode.mode) + } else if ((le16_to_cpu(fdiro->inode.mode) & FILETYPE_INO_MASK) == FILETYPE_INO_REG) { type = FILETYPE_REG; @@ -1990,7 +2100,7 @@ int ext4fs_iterate_dir(struct ext2fs_node *dir, char *name, } else { if (fdiro->inode_read == 0) { status = ext4fs_read_inode(diro->data, - __le32_to_cpu( + le32_to_cpu( dirent.inode), &fdiro->inode); if (status == 0) { @@ -2014,12 +2124,12 @@ int ext4fs_iterate_dir(struct ext2fs_node *dir, char *name, break; } printf("%10u %s\n", - __le32_to_cpu(fdiro->inode.size), + le32_to_cpu(fdiro->inode.size), filename); } free(fdiro); } - fpos += __le16_to_cpu(dirent.direntlen); + fpos += le16_to_cpu(dirent.direntlen); } return 0; } @@ -2034,25 +2144,25 @@ static char *ext4fs_read_symlink(struct ext2fs_node *node) if (!diro->inode_read) { status = ext4fs_read_inode(diro->data, diro->ino, &diro->inode); if (status == 0) - return 0; + return NULL; } - symlink = zalloc(__le32_to_cpu(diro->inode.size) + 1); + symlink = zalloc(le32_to_cpu(diro->inode.size) + 1); if (!symlink) - return 0; + return NULL; - if (__le32_to_cpu(diro->inode.size) < sizeof(diro->inode.b.symlink)) { + if (le32_to_cpu(diro->inode.size) < sizeof(diro->inode.b.symlink)) { strncpy(symlink, diro->inode.b.symlink, - __le32_to_cpu(diro->inode.size)); + le32_to_cpu(diro->inode.size)); } else { status = ext4fs_read_file(diro, 0, - __le32_to_cpu(diro->inode.size), + le32_to_cpu(diro->inode.size), symlink, &actread); if ((status < 0) || (actread == 0)) { free(symlink); - return 0; + return NULL; } } - symlink[__le32_to_cpu(diro->inode.size)] = '\0'; + symlink[le32_to_cpu(diro->inode.size)] = '\0'; return symlink; } @@ -2200,7 +2310,7 @@ int ext4fs_open(const char *filename, loff_t *len) if (status == 0) goto fail; } - *len = __le32_to_cpu(fdiro->inode.size); + *len = le32_to_cpu(fdiro->inode.size); ext4fs_file = fdiro; return 0; @@ -2226,26 +2336,27 @@ int ext4fs_mount(unsigned part_length) goto fail; /* Make sure this is an ext2 filesystem. */ - if (__le16_to_cpu(data->sblock.magic) != EXT2_MAGIC) + if (le16_to_cpu(data->sblock.magic) != EXT2_MAGIC) goto fail; - /* - * The 64bit feature was enabled when metadata_csum was enabled - * and we do not support metadata_csum (and cannot reliably find - * files when it is set. Refuse to mount. - */ - if (data->sblock.feature_incompat & EXT4_FEATURE_INCOMPAT_64BIT) { - printf("Unsupported feature found (64bit, possibly metadata_csum), not mounting\n"); - goto fail; - } - if (__le32_to_cpu(data->sblock.revision_level == 0)) + if (le32_to_cpu(data->sblock.revision_level) == 0) { fs->inodesz = 128; - else - fs->inodesz = __le16_to_cpu(data->sblock.inode_size); + } else { + debug("EXT4 features COMPAT: %08x INCOMPAT: %08x RO_COMPAT: %08x\n", + __le32_to_cpu(data->sblock.feature_compatibility), + __le32_to_cpu(data->sblock.feature_incompat), + __le32_to_cpu(data->sblock.feature_ro_compat)); + + fs->inodesz = le16_to_cpu(data->sblock.inode_size); + fs->gdsize = le32_to_cpu(data->sblock.feature_incompat) & + EXT4_FEATURE_INCOMPAT_64BIT ? + le16_to_cpu(data->sblock.descriptor_size) : 32; + } - debug("EXT2 rev %d, inode_size %d\n", - __le32_to_cpu(data->sblock.revision_level), fs->inodesz); + debug("EXT2 rev %d, inode_size %d, descriptor size %d\n", + le32_to_cpu(data->sblock.revision_level), + fs->inodesz, fs->gdsize); data->diropen.data = data; data->diropen.ino = 2; diff --git a/fs/ext4/ext4_common.h b/fs/ext4/ext4_common.h index 48fd2ac51d..04d56028a0 100644 --- a/fs/ext4/ext4_common.h +++ b/fs/ext4/ext4_common.h @@ -24,7 +24,7 @@ #include <ext_common.h> #include <ext4fs.h> #include <malloc.h> -#include <asm/errno.h> +#include <linux/errno.h> #if defined(CONFIG_EXT4_WRITE) #include "ext4_journal.h" #include "crc16.h" @@ -59,10 +59,10 @@ int ext4fs_iterate_dir(struct ext2fs_node *dir, char *name, #if defined(CONFIG_EXT4_WRITE) uint32_t ext4fs_div_roundup(uint32_t size, uint32_t n); -int ext4fs_checksum_update(unsigned int i); +uint16_t ext4fs_checksum_update(unsigned int i); int ext4fs_get_parent_inode_num(const char *dirname, char *dname, int flags); -void ext4fs_update_parent_dentry(char *filename, int *p_ino, int file_type); -long int ext4fs_get_new_blk_no(void); +int ext4fs_update_parent_dentry(char *filename, int file_type); +uint32_t ext4fs_get_new_blk_no(void); int ext4fs_get_new_inode_no(void); void ext4fs_reset_block_bmap(long int blockno, unsigned char *buffer, int index); @@ -74,5 +74,17 @@ void ext4fs_allocate_blocks(struct ext2_inode *file_inode, unsigned int total_remaining_blocks, unsigned int *total_no_of_block); void put_ext4(uint64_t off, void *buf, uint32_t size); +struct ext2_block_group *ext4fs_get_group_descriptor + (const struct ext_filesystem *fs, uint32_t bg_idx); +uint64_t ext4fs_bg_get_block_id(const struct ext2_block_group *bg, + const struct ext_filesystem *fs); +uint64_t ext4fs_bg_get_inode_id(const struct ext2_block_group *bg, + const struct ext_filesystem *fs); +uint64_t ext4fs_bg_get_inode_table_id(const struct ext2_block_group *bg, + const struct ext_filesystem *fs); +uint64_t ext4fs_sb_get_free_blocks(const struct ext2_sblock *sb); +void ext4fs_sb_set_free_blocks(struct ext2_sblock *sb, uint64_t free_blocks); +uint32_t ext4fs_bg_get_free_blocks(const struct ext2_block_group *bg, + const struct ext_filesystem *fs); #endif #endif diff --git a/fs/ext4/ext4_journal.c b/fs/ext4/ext4_journal.c index 3f613351a4..5a25be4c8a 100644 --- a/fs/ext4/ext4_journal.c +++ b/fs/ext4/ext4_journal.c @@ -151,7 +151,7 @@ int ext4fs_log_gdt(char *gd_table) * journal_buffer -- Buffer containing meta data * blknr -- Block number on disk of the meta data buffer */ -int ext4fs_log_journal(char *journal_buffer, long int blknr) +int ext4fs_log_journal(char *journal_buffer, uint32_t blknr) { struct ext_filesystem *fs = get_fs(); short i; @@ -183,14 +183,18 @@ int ext4fs_log_journal(char *journal_buffer, long int blknr) * metadata_buffer -- Buffer containing meta data * blknr -- Block number on disk of the meta data buffer */ -int ext4fs_put_metadata(char *metadata_buffer, long int blknr) +int ext4fs_put_metadata(char *metadata_buffer, uint32_t blknr) { struct ext_filesystem *fs = get_fs(); if (!metadata_buffer) { printf("Invalid input arguments %s\n", __func__); return -EINVAL; } - dirty_block_ptr[gd_index]->buf = zalloc(fs->blksz); + if (dirty_block_ptr[gd_index]->buf) + assert(dirty_block_ptr[gd_index]->blknr == blknr); + else + dirty_block_ptr[gd_index]->buf = zalloc(fs->blksz); + if (!dirty_block_ptr[gd_index]->buf) return -ENOMEM; memcpy(dirty_block_ptr[gd_index]->buf, metadata_buffer, fs->blksz); @@ -215,7 +219,7 @@ void print_revoke_blks(char *revk_blk) printf("total bytes %d\n", max); while (offset < max) { - blocknr = be32_to_cpu(*((long int *)(revk_blk + offset))); + blocknr = be32_to_cpu(*((__be32 *)(revk_blk + offset))); printf("revoke blknr is %ld\n", blocknr); offset += 4; } @@ -302,7 +306,7 @@ int check_blknr_for_revoke(long int blknr, int sequence_no) max = be32_to_cpu(header->r_count); while (offset < max) { - blocknr = be32_to_cpu(*((long int *) + blocknr = be32_to_cpu(*((__be32 *) (revk_blk + offset))); if (blocknr == blknr) goto found; @@ -420,7 +424,7 @@ int ext4fs_check_journal_state(int recovery_flag) temp_buff); jsb = (struct journal_superblock_t *) temp_buff; - if (fs->sb->feature_incompat & EXT3_FEATURE_INCOMPAT_RECOVER) { + if (le32_to_cpu(fs->sb->feature_incompat) & EXT3_FEATURE_INCOMPAT_RECOVER) { if (recovery_flag == RECOVER) printf("Recovery required\n"); } else { @@ -517,11 +521,14 @@ int ext4fs_check_journal_state(int recovery_flag) end: if (recovery_flag == RECOVER) { + uint32_t new_feature_incompat; jsb->s_start = cpu_to_be32(1); jsb->s_sequence = cpu_to_be32(be32_to_cpu(jsb->s_sequence) + 1); /* get the superblock */ ext4_read_superblock((char *)fs->sb); - fs->sb->feature_incompat |= EXT3_FEATURE_INCOMPAT_RECOVER; + new_feature_incompat = le32_to_cpu(fs->sb->feature_incompat); + new_feature_incompat |= EXT3_FEATURE_INCOMPAT_RECOVER; + fs->sb->feature_incompat = cpu_to_le32(new_feature_incompat); /* Update the super block */ put_ext4((uint64_t) (SUPERBLOCK_SIZE), diff --git a/fs/ext4/ext4_journal.h b/fs/ext4/ext4_journal.h index d926094bec..3d05ad5315 100644 --- a/fs/ext4/ext4_journal.h +++ b/fs/ext4/ext4_journal.h @@ -49,9 +49,9 @@ struct dirty_blocks { /* Standard header for all descriptor blocks: */ struct journal_header_t { - __u32 h_magic; - __u32 h_blocktype; - __u32 h_sequence; + __be32 h_magic; + __be32 h_blocktype; + __be32 h_sequence; }; /* The journal superblock. All fields are in big-endian byte order. */ @@ -60,35 +60,35 @@ struct journal_superblock_t { struct journal_header_t s_header; /* Static information describing the journal */ - __u32 s_blocksize; /* journal device blocksize */ - __u32 s_maxlen; /* total blocks in journal file */ - __u32 s_first; /* first block of log information */ + __be32 s_blocksize; /* journal device blocksize */ + __be32 s_maxlen; /* total blocks in journal file */ + __be32 s_first; /* first block of log information */ /* Dynamic information describing the current state of the log */ - __u32 s_sequence; /* first commit ID expected in log */ - __u32 s_start; /* blocknr of start of log */ + __be32 s_sequence; /* first commit ID expected in log */ + __be32 s_start; /* blocknr of start of log */ /* Error value, as set by journal_abort(). */ - __s32 s_errno; + __be32 s_errno; /* Remaining fields are only valid in a version-2 superblock */ - __u32 s_feature_compat; /* compatible feature set */ - __u32 s_feature_incompat; /* incompatible feature set */ - __u32 s_feature_ro_compat; /* readonly-compatible feature set */ + __be32 s_feature_compat; /* compatible feature set */ + __be32 s_feature_incompat; /* incompatible feature set */ + __be32 s_feature_ro_compat; /* readonly-compatible feature set */ /* 0x0030 */ __u8 s_uuid[16]; /* 128-bit uuid for journal */ /* 0x0040 */ - __u32 s_nr_users; /* Nr of filesystems sharing log */ + __be32 s_nr_users; /* Nr of filesystems sharing log */ - __u32 s_dynsuper; /* Blocknr of dynamic superblock copy */ + __be32 s_dynsuper; /* Blocknr of dynamic superblock copy */ /* 0x0048 */ - __u32 s_max_transaction; /* Limit of journal blocks per trans. */ - __u32 s_max_trans_data; /* Limit of data blocks per trans. */ + __be32 s_max_transaction; /* Limit of journal blocks per trans. */ + __be32 s_max_trans_data; /* Limit of data blocks per trans. */ /* 0x0050 */ - __u32 s_padding[44]; + __be32 s_padding[44]; /* 0x0100 */ __u8 s_users[16 * 48]; /* ids of all fs'es sharing the log */ @@ -96,13 +96,13 @@ struct journal_superblock_t { } ; struct ext3_journal_block_tag { - uint32_t block; - uint32_t flags; + __be32 block; + __be32 flags; }; struct journal_revoke_header_t { struct journal_header_t r_header; - int r_count; /* Count of bytes used in the block */ + __be32 r_count; /* Count of bytes used in the block */ }; struct revoke_blk_list { @@ -115,8 +115,8 @@ extern struct ext2_data *ext4fs_root; int ext4fs_init_journal(void); int ext4fs_log_gdt(char *gd_table); int ext4fs_check_journal_state(int recovery_flag); -int ext4fs_log_journal(char *journal_buffer, long int blknr); -int ext4fs_put_metadata(char *metadata_buffer, long int blknr); +int ext4fs_log_journal(char *journal_buffer, uint32_t blknr); +int ext4fs_put_metadata(char *metadata_buffer, uint32_t blknr); void ext4fs_update_journal(void); void ext4fs_dump_metadata(void); void ext4fs_push_revoke_blk(char *buffer); diff --git a/fs/ext4/ext4_write.c b/fs/ext4/ext4_write.c index e027916763..d710a86d59 100644 --- a/fs/ext4/ext4_write.c +++ b/fs/ext4/ext4_write.c @@ -28,26 +28,67 @@ #include <div64.h> #include "ext4_common.h" +static inline void ext4fs_sb_free_inodes_inc(struct ext2_sblock *sb) +{ + sb->free_inodes = cpu_to_le32(le32_to_cpu(sb->free_inodes) + 1); +} + +static inline void ext4fs_sb_free_blocks_inc(struct ext2_sblock *sb) +{ + sb->free_blocks = cpu_to_le32(le32_to_cpu(sb->free_blocks) + 1); +} + +static inline void ext4fs_bg_free_inodes_inc + (struct ext2_block_group *bg, const struct ext_filesystem *fs) +{ + uint32_t free_inodes = le16_to_cpu(bg->free_inodes); + if (fs->gdsize == 64) + free_inodes += le16_to_cpu(bg->free_inodes_high) << 16; + free_inodes++; + + bg->free_inodes = cpu_to_le16(free_inodes & 0xffff); + if (fs->gdsize == 64) + bg->free_inodes_high = cpu_to_le16(free_inodes >> 16); +} + +static inline void ext4fs_bg_free_blocks_inc + (struct ext2_block_group *bg, const struct ext_filesystem *fs) +{ + uint32_t free_blocks = le16_to_cpu(bg->free_blocks); + if (fs->gdsize == 64) + free_blocks += le16_to_cpu(bg->free_blocks_high) << 16; + free_blocks++; + + bg->free_blocks = cpu_to_le16(free_blocks & 0xffff); + if (fs->gdsize == 64) + bg->free_blocks_high = cpu_to_le16(free_blocks >> 16); +} + static void ext4fs_update(void) { short i; ext4fs_update_journal(); struct ext_filesystem *fs = get_fs(); + struct ext2_block_group *bgd = NULL; /* update super block */ put_ext4((uint64_t)(SUPERBLOCK_SIZE), (struct ext2_sblock *)fs->sb, (uint32_t)SUPERBLOCK_SIZE); - /* update block groups */ + /* update block bitmaps */ for (i = 0; i < fs->no_blkgrp; i++) { - fs->bgd[i].bg_checksum = ext4fs_checksum_update(i); - put_ext4((uint64_t)((uint64_t)fs->bgd[i].block_id * (uint64_t)fs->blksz), + bgd = ext4fs_get_group_descriptor(fs, i); + bgd->bg_checksum = cpu_to_le16(ext4fs_checksum_update(i)); + uint64_t b_bitmap_blk = ext4fs_bg_get_block_id(bgd, fs); + put_ext4(b_bitmap_blk * fs->blksz, fs->blk_bmaps[i], fs->blksz); } - /* update inode table groups */ + /* update inode bitmaps */ for (i = 0; i < fs->no_blkgrp; i++) { - put_ext4((uint64_t) ((uint64_t)fs->bgd[i].inode_id * (uint64_t)fs->blksz), + bgd = ext4fs_get_group_descriptor(fs, i); + uint64_t i_bitmap_blk = ext4fs_bg_get_inode_id(bgd, fs); + put_ext4(i_bitmap_blk * fs->blksz, fs->inode_bmaps[i], fs->blksz); } @@ -65,15 +106,12 @@ static void ext4fs_update(void) int ext4fs_get_bgdtable(void) { int status; - int grp_desc_size; struct ext_filesystem *fs = get_fs(); - grp_desc_size = sizeof(struct ext2_block_group); - fs->no_blk_pergdt = (fs->no_blkgrp * grp_desc_size) / fs->blksz; - if ((fs->no_blkgrp * grp_desc_size) % fs->blksz) - fs->no_blk_pergdt++; + int gdsize_total = ROUND(fs->no_blkgrp * fs->gdsize, fs->blksz); + fs->no_blk_pergdt = gdsize_total / fs->blksz; /* allocate memory for gdtable */ - fs->gdtable = zalloc(fs->blksz * fs->no_blk_pergdt); + fs->gdtable = zalloc(gdsize_total); if (!fs->gdtable) return -ENOMEM; /* read the group descriptor table */ @@ -99,24 +137,22 @@ static void delete_single_indirect_block(struct ext2_inode *inode) { struct ext2_block_group *bgd = NULL; static int prev_bg_bmap_idx = -1; - long int blknr; + uint32_t blknr; int remainder; int bg_idx; int status; - unsigned int blk_per_grp = ext4fs_root->sblock.blocks_per_group; + uint32_t blk_per_grp = le32_to_cpu(ext4fs_root->sblock.blocks_per_group); struct ext_filesystem *fs = get_fs(); char *journal_buffer = zalloc(fs->blksz); if (!journal_buffer) { printf("No memory\n"); return; } - /* get block group descriptor table */ - bgd = (struct ext2_block_group *)fs->gdtable; /* deleting the single indirect block associated with inode */ if (inode->b.blocks.indir_block != 0) { - debug("SIPB releasing %u\n", inode->b.blocks.indir_block); - blknr = inode->b.blocks.indir_block; + blknr = le32_to_cpu(inode->b.blocks.indir_block); + debug("SIPB releasing %u\n", blknr); bg_idx = blknr / blk_per_grp; if (fs->blksz == 1024) { remainder = blknr % blk_per_grp; @@ -124,18 +160,19 @@ static void delete_single_indirect_block(struct ext2_inode *inode) bg_idx--; } ext4fs_reset_block_bmap(blknr, fs->blk_bmaps[bg_idx], bg_idx); - bgd[bg_idx].free_blocks++; - fs->sb->free_blocks++; + /* get block group descriptor table */ + bgd = ext4fs_get_group_descriptor(fs, bg_idx); + ext4fs_bg_free_blocks_inc(bgd, fs); + ext4fs_sb_free_blocks_inc(fs->sb); /* journal backup */ if (prev_bg_bmap_idx != bg_idx) { - status = - ext4fs_devread((lbaint_t)bgd[bg_idx].block_id * - fs->sect_perblk, 0, fs->blksz, - journal_buffer); + uint64_t b_bitmap_blk = ext4fs_bg_get_block_id(bgd, fs); + status = ext4fs_devread( + b_bitmap_blk * fs->sect_perblk, + 0, fs->blksz, journal_buffer); if (status == 0) goto fail; - if (ext4fs_log_journal - (journal_buffer, bgd[bg_idx].block_id)) + if (ext4fs_log_journal(journal_buffer, b_bitmap_blk)) goto fail; prev_bg_bmap_idx = bg_idx; } @@ -149,12 +186,12 @@ static void delete_double_indirect_block(struct ext2_inode *inode) int i; short status; static int prev_bg_bmap_idx = -1; - long int blknr; + uint32_t blknr; int remainder; int bg_idx; - unsigned int blk_per_grp = ext4fs_root->sblock.blocks_per_group; - unsigned int *di_buffer = NULL; - unsigned int *DIB_start_addr = NULL; + uint32_t blk_per_grp = le32_to_cpu(ext4fs_root->sblock.blocks_per_group); + __le32 *di_buffer = NULL; + void *dib_start_addr = NULL; struct ext2_block_group *bgd = NULL; struct ext_filesystem *fs = get_fs(); char *journal_buffer = zalloc(fs->blksz); @@ -162,8 +199,6 @@ static void delete_double_indirect_block(struct ext2_inode *inode) printf("No memory\n"); return; } - /* get the block group descriptor table */ - bgd = (struct ext2_block_group *)fs->gdtable; if (inode->b.blocks.double_indir_block != 0) { di_buffer = zalloc(fs->blksz); @@ -171,8 +206,8 @@ static void delete_double_indirect_block(struct ext2_inode *inode) printf("No memory\n"); return; } - DIB_start_addr = (unsigned int *)di_buffer; - blknr = inode->b.blocks.double_indir_block; + dib_start_addr = di_buffer; + blknr = le32_to_cpu(inode->b.blocks.double_indir_block); status = ext4fs_devread((lbaint_t)blknr * fs->sect_perblk, 0, fs->blksz, (char *)di_buffer); for (i = 0; i < fs->blksz / sizeof(int); i++) { @@ -180,21 +215,24 @@ static void delete_double_indirect_block(struct ext2_inode *inode) break; debug("DICB releasing %u\n", *di_buffer); - bg_idx = *di_buffer / blk_per_grp; + bg_idx = le32_to_cpu(*di_buffer) / blk_per_grp; if (fs->blksz == 1024) { - remainder = *di_buffer % blk_per_grp; + remainder = le32_to_cpu(*di_buffer) % blk_per_grp; if (!remainder) bg_idx--; } - ext4fs_reset_block_bmap(*di_buffer, + /* get block group descriptor table */ + bgd = ext4fs_get_group_descriptor(fs, bg_idx); + ext4fs_reset_block_bmap(le32_to_cpu(*di_buffer), fs->blk_bmaps[bg_idx], bg_idx); di_buffer++; - bgd[bg_idx].free_blocks++; - fs->sb->free_blocks++; + ext4fs_bg_free_blocks_inc(bgd, fs); + ext4fs_sb_free_blocks_inc(fs->sb); /* journal backup */ if (prev_bg_bmap_idx != bg_idx) { - status = ext4fs_devread((lbaint_t) - bgd[bg_idx].block_id + uint64_t b_bitmap_blk = + ext4fs_bg_get_block_id(bgd, fs); + status = ext4fs_devread(b_bitmap_blk * fs->sect_perblk, 0, fs->blksz, journal_buffer); @@ -202,41 +240,41 @@ static void delete_double_indirect_block(struct ext2_inode *inode) goto fail; if (ext4fs_log_journal(journal_buffer, - bgd[bg_idx].block_id)) + b_bitmap_blk)) goto fail; prev_bg_bmap_idx = bg_idx; } } /* removing the parent double indirect block */ - blknr = inode->b.blocks.double_indir_block; + blknr = le32_to_cpu(inode->b.blocks.double_indir_block); bg_idx = blknr / blk_per_grp; if (fs->blksz == 1024) { remainder = blknr % blk_per_grp; if (!remainder) bg_idx--; } + /* get block group descriptor table */ + bgd = ext4fs_get_group_descriptor(fs, bg_idx); ext4fs_reset_block_bmap(blknr, fs->blk_bmaps[bg_idx], bg_idx); - bgd[bg_idx].free_blocks++; - fs->sb->free_blocks++; + ext4fs_bg_free_blocks_inc(bgd, fs); + ext4fs_sb_free_blocks_inc(fs->sb); /* journal backup */ if (prev_bg_bmap_idx != bg_idx) { - memset(journal_buffer, '\0', fs->blksz); - status = ext4fs_devread((lbaint_t)bgd[bg_idx].block_id * - fs->sect_perblk, 0, fs->blksz, - journal_buffer); + uint64_t b_bitmap_blk = ext4fs_bg_get_block_id(bgd, fs); + status = ext4fs_devread(b_bitmap_blk * fs->sect_perblk, + 0, fs->blksz, journal_buffer); if (status == 0) goto fail; - if (ext4fs_log_journal(journal_buffer, - bgd[bg_idx].block_id)) + if (ext4fs_log_journal(journal_buffer, b_bitmap_blk)) goto fail; prev_bg_bmap_idx = bg_idx; } - debug("DIPB releasing %ld\n", blknr); + debug("DIPB releasing %d\n", blknr); } fail: - free(DIB_start_addr); + free(dib_start_addr); free(journal_buffer); } @@ -245,14 +283,14 @@ static void delete_triple_indirect_block(struct ext2_inode *inode) int i, j; short status; static int prev_bg_bmap_idx = -1; - long int blknr; + uint32_t blknr; int remainder; int bg_idx; - unsigned int blk_per_grp = ext4fs_root->sblock.blocks_per_group; - unsigned int *tigp_buffer = NULL; - unsigned int *tib_start_addr = NULL; - unsigned int *tip_buffer = NULL; - unsigned int *tipb_start_addr = NULL; + uint32_t blk_per_grp = le32_to_cpu(ext4fs_root->sblock.blocks_per_group); + __le32 *tigp_buffer = NULL; + void *tib_start_addr = NULL; + __le32 *tip_buffer = NULL; + void *tipb_start_addr = NULL; struct ext2_block_group *bgd = NULL; struct ext_filesystem *fs = get_fs(); char *journal_buffer = zalloc(fs->blksz); @@ -260,8 +298,6 @@ static void delete_triple_indirect_block(struct ext2_inode *inode) printf("No memory\n"); return; } - /* get block group descriptor table */ - bgd = (struct ext2_block_group *)fs->gdtable; if (inode->b.blocks.triple_indir_block != 0) { tigp_buffer = zalloc(fs->blksz); @@ -269,8 +305,8 @@ static void delete_triple_indirect_block(struct ext2_inode *inode) printf("No memory\n"); return; } - tib_start_addr = (unsigned int *)tigp_buffer; - blknr = inode->b.blocks.triple_indir_block; + tib_start_addr = tigp_buffer; + blknr = le32_to_cpu(inode->b.blocks.triple_indir_block); status = ext4fs_devread((lbaint_t)blknr * fs->sect_perblk, 0, fs->blksz, (char *)tigp_buffer); for (i = 0; i < fs->blksz / sizeof(int); i++) { @@ -281,33 +317,36 @@ static void delete_triple_indirect_block(struct ext2_inode *inode) tip_buffer = zalloc(fs->blksz); if (!tip_buffer) goto fail; - tipb_start_addr = (unsigned int *)tip_buffer; - status = ext4fs_devread((lbaint_t)(*tigp_buffer) * + tipb_start_addr = tip_buffer; + status = ext4fs_devread((lbaint_t)le32_to_cpu(*tigp_buffer) * fs->sect_perblk, 0, fs->blksz, (char *)tip_buffer); for (j = 0; j < fs->blksz / sizeof(int); j++) { - if (*tip_buffer == 0) + if (le32_to_cpu(*tip_buffer) == 0) break; - bg_idx = *tip_buffer / blk_per_grp; + bg_idx = le32_to_cpu(*tip_buffer) / blk_per_grp; if (fs->blksz == 1024) { - remainder = *tip_buffer % blk_per_grp; + remainder = le32_to_cpu(*tip_buffer) % blk_per_grp; if (!remainder) bg_idx--; } - ext4fs_reset_block_bmap(*tip_buffer, + ext4fs_reset_block_bmap(le32_to_cpu(*tip_buffer), fs->blk_bmaps[bg_idx], bg_idx); tip_buffer++; - bgd[bg_idx].free_blocks++; - fs->sb->free_blocks++; + /* get block group descriptor table */ + bgd = ext4fs_get_group_descriptor(fs, bg_idx); + ext4fs_bg_free_blocks_inc(bgd, fs); + ext4fs_sb_free_blocks_inc(fs->sb); /* journal backup */ if (prev_bg_bmap_idx != bg_idx) { + uint64_t b_bitmap_blk = + ext4fs_bg_get_block_id(bgd, fs); status = ext4fs_devread( - (lbaint_t) - bgd[bg_idx].block_id * + b_bitmap_blk * fs->sect_perblk, 0, fs->blksz, journal_buffer); @@ -315,8 +354,7 @@ static void delete_triple_indirect_block(struct ext2_inode *inode) goto fail; if (ext4fs_log_journal(journal_buffer, - bgd[bg_idx]. - block_id)) + b_bitmap_blk)) goto fail; prev_bg_bmap_idx = bg_idx; } @@ -328,38 +366,41 @@ static void delete_triple_indirect_block(struct ext2_inode *inode) * removing the grand parent blocks * which is connected to inode */ - bg_idx = *tigp_buffer / blk_per_grp; + bg_idx = le32_to_cpu(*tigp_buffer) / blk_per_grp; if (fs->blksz == 1024) { - remainder = *tigp_buffer % blk_per_grp; + remainder = le32_to_cpu(*tigp_buffer) % blk_per_grp; if (!remainder) bg_idx--; } - ext4fs_reset_block_bmap(*tigp_buffer, + ext4fs_reset_block_bmap(le32_to_cpu(*tigp_buffer), fs->blk_bmaps[bg_idx], bg_idx); tigp_buffer++; - bgd[bg_idx].free_blocks++; - fs->sb->free_blocks++; + /* get block group descriptor table */ + bgd = ext4fs_get_group_descriptor(fs, bg_idx); + ext4fs_bg_free_blocks_inc(bgd, fs); + ext4fs_sb_free_blocks_inc(fs->sb); /* journal backup */ if (prev_bg_bmap_idx != bg_idx) { + uint64_t b_bitmap_blk = + ext4fs_bg_get_block_id(bgd, fs); memset(journal_buffer, '\0', fs->blksz); - status = - ext4fs_devread((lbaint_t) - bgd[bg_idx].block_id * - fs->sect_perblk, 0, - fs->blksz, journal_buffer); + status = ext4fs_devread(b_bitmap_blk * + fs->sect_perblk, 0, + fs->blksz, + journal_buffer); if (status == 0) goto fail; if (ext4fs_log_journal(journal_buffer, - bgd[bg_idx].block_id)) + b_bitmap_blk)) goto fail; prev_bg_bmap_idx = bg_idx; } } /* removing the grand parent triple indirect block */ - blknr = inode->b.blocks.triple_indir_block; + blknr = le32_to_cpu(inode->b.blocks.triple_indir_block); bg_idx = blknr / blk_per_grp; if (fs->blksz == 1024) { remainder = blknr % blk_per_grp; @@ -367,23 +408,23 @@ static void delete_triple_indirect_block(struct ext2_inode *inode) bg_idx--; } ext4fs_reset_block_bmap(blknr, fs->blk_bmaps[bg_idx], bg_idx); - bgd[bg_idx].free_blocks++; - fs->sb->free_blocks++; + /* get block group descriptor table */ + bgd = ext4fs_get_group_descriptor(fs, bg_idx); + ext4fs_bg_free_blocks_inc(bgd, fs); + ext4fs_sb_free_blocks_inc(fs->sb); /* journal backup */ if (prev_bg_bmap_idx != bg_idx) { - memset(journal_buffer, '\0', fs->blksz); - status = ext4fs_devread((lbaint_t)bgd[bg_idx].block_id * - fs->sect_perblk, 0, fs->blksz, - journal_buffer); + uint64_t b_bitmap_blk = ext4fs_bg_get_block_id(bgd, fs); + status = ext4fs_devread(b_bitmap_blk * fs->sect_perblk, + 0, fs->blksz, journal_buffer); if (status == 0) goto fail; - if (ext4fs_log_journal(journal_buffer, - bgd[bg_idx].block_id)) + if (ext4fs_log_journal(journal_buffer, b_bitmap_blk)) goto fail; prev_bg_bmap_idx = bg_idx; } - debug("tigp buffer itself releasing %ld\n", blknr); + debug("tigp buffer itself releasing %d\n", blknr); } fail: free(tib_start_addr); @@ -402,126 +443,87 @@ static int ext4fs_delete_file(int inodeno) int ibmap_idx; char *read_buffer = NULL; char *start_block_address = NULL; - unsigned int no_blocks; + uint32_t no_blocks; static int prev_bg_bmap_idx = -1; unsigned int inodes_per_block; - long int blkno; + uint32_t blkno; unsigned int blkoff; - unsigned int blk_per_grp = ext4fs_root->sblock.blocks_per_group; - unsigned int inode_per_grp = ext4fs_root->sblock.inodes_per_group; + uint32_t blk_per_grp = le32_to_cpu(ext4fs_root->sblock.blocks_per_group); + uint32_t inode_per_grp = le32_to_cpu(ext4fs_root->sblock.inodes_per_group); struct ext2_inode *inode_buffer = NULL; struct ext2_block_group *bgd = NULL; struct ext_filesystem *fs = get_fs(); char *journal_buffer = zalloc(fs->blksz); if (!journal_buffer) return -ENOMEM; - /* get the block group descriptor table */ - bgd = (struct ext2_block_group *)fs->gdtable; status = ext4fs_read_inode(ext4fs_root, inodeno, &inode); if (status == 0) goto fail; /* read the block no allocated to a file */ - no_blocks = inode.size / fs->blksz; - if (inode.size % fs->blksz) + no_blocks = le32_to_cpu(inode.size) / fs->blksz; + if (le32_to_cpu(inode.size) % fs->blksz) no_blocks++; if (le32_to_cpu(inode.flags) & EXT4_EXTENTS_FL) { - struct ext2fs_node *node_inode = - zalloc(sizeof(struct ext2fs_node)); - if (!node_inode) - goto fail; - node_inode->data = ext4fs_root; - node_inode->ino = inodeno; - node_inode->inode_read = 0; - memcpy(&(node_inode->inode), &inode, sizeof(struct ext2_inode)); - - for (i = 0; i < no_blocks; i++) { - blknr = read_allocated_block(&(node_inode->inode), i); - bg_idx = blknr / blk_per_grp; - if (fs->blksz == 1024) { - remainder = blknr % blk_per_grp; - if (!remainder) - bg_idx--; - } - ext4fs_reset_block_bmap(blknr, fs->blk_bmaps[bg_idx], - bg_idx); - debug("EXT4_EXTENTS Block releasing %ld: %d\n", - blknr, bg_idx); - - bgd[bg_idx].free_blocks++; - fs->sb->free_blocks++; - - /* journal backup */ - if (prev_bg_bmap_idx != bg_idx) { - status = - ext4fs_devread((lbaint_t) - bgd[bg_idx].block_id * - fs->sect_perblk, 0, - fs->blksz, journal_buffer); - if (status == 0) - goto fail; - if (ext4fs_log_journal(journal_buffer, - bgd[bg_idx].block_id)) - goto fail; - prev_bg_bmap_idx = bg_idx; - } - } - if (node_inode) { - free(node_inode); - node_inode = NULL; - } + /* FIXME delete extent index blocks, i.e. eh_depth >= 1 */ + struct ext4_extent_header *eh = + (struct ext4_extent_header *) + inode.b.blocks.dir_blocks; + debug("del: dep=%d entries=%d\n", eh->eh_depth, eh->eh_entries); } else { - delete_single_indirect_block(&inode); delete_double_indirect_block(&inode); delete_triple_indirect_block(&inode); + } - /* read the block no allocated to a file */ - no_blocks = inode.size / fs->blksz; - if (inode.size % fs->blksz) - no_blocks++; - for (i = 0; i < no_blocks; i++) { - blknr = read_allocated_block(&inode, i); - bg_idx = blknr / blk_per_grp; - if (fs->blksz == 1024) { - remainder = blknr % blk_per_grp; - if (!remainder) - bg_idx--; - } - ext4fs_reset_block_bmap(blknr, fs->blk_bmaps[bg_idx], - bg_idx); - debug("ActualB releasing %ld: %d\n", blknr, bg_idx); - - bgd[bg_idx].free_blocks++; - fs->sb->free_blocks++; - /* journal backup */ - if (prev_bg_bmap_idx != bg_idx) { - memset(journal_buffer, '\0', fs->blksz); - status = ext4fs_devread((lbaint_t) - bgd[bg_idx].block_id - * fs->sect_perblk, - 0, fs->blksz, - journal_buffer); - if (status == 0) - goto fail; - if (ext4fs_log_journal(journal_buffer, - bgd[bg_idx].block_id)) - goto fail; - prev_bg_bmap_idx = bg_idx; - } + /* release data blocks */ + for (i = 0; i < no_blocks; i++) { + blknr = read_allocated_block(&inode, i); + if (blknr == 0) + continue; + if (blknr < 0) + goto fail; + bg_idx = blknr / blk_per_grp; + if (fs->blksz == 1024) { + remainder = blknr % blk_per_grp; + if (!remainder) + bg_idx--; + } + ext4fs_reset_block_bmap(blknr, fs->blk_bmaps[bg_idx], + bg_idx); + debug("EXT4 Block releasing %ld: %d\n", blknr, bg_idx); + + /* get block group descriptor table */ + bgd = ext4fs_get_group_descriptor(fs, bg_idx); + ext4fs_bg_free_blocks_inc(bgd, fs); + ext4fs_sb_free_blocks_inc(fs->sb); + /* journal backup */ + if (prev_bg_bmap_idx != bg_idx) { + uint64_t b_bitmap_blk = ext4fs_bg_get_block_id(bgd, fs); + status = ext4fs_devread(b_bitmap_blk * fs->sect_perblk, + 0, fs->blksz, + journal_buffer); + if (status == 0) + goto fail; + if (ext4fs_log_journal(journal_buffer, b_bitmap_blk)) + goto fail; + prev_bg_bmap_idx = bg_idx; } } + /* release inode */ /* from the inode no to blockno */ inodes_per_block = fs->blksz / fs->inodesz; ibmap_idx = inodeno / inode_per_grp; /* get the block no */ inodeno--; - blkno = __le32_to_cpu(bgd[ibmap_idx].inode_table_id) + - (inodeno % __le32_to_cpu(inode_per_grp)) / inodes_per_block; + /* get block group descriptor table */ + bgd = ext4fs_get_group_descriptor(fs, ibmap_idx); + blkno = ext4fs_bg_get_inode_table_id(bgd, fs) + + (inodeno % inode_per_grp) / inodes_per_block; /* get the offset of the inode */ blkoff = ((inodeno) % inodes_per_block) * fs->inodesz; @@ -541,7 +543,7 @@ static int ext4fs_delete_file(int inodeno) read_buffer = read_buffer + blkoff; inode_buffer = (struct ext2_inode *)read_buffer; - memset(inode_buffer, '\0', sizeof(struct ext2_inode)); + memset(inode_buffer, '\0', fs->inodesz); /* write the inode to original position in inode table */ if (ext4fs_put_metadata(start_block_address, blkno)) @@ -550,15 +552,15 @@ static int ext4fs_delete_file(int inodeno) /* update the respective inode bitmaps */ inodeno++; ext4fs_reset_inode_bmap(inodeno, fs->inode_bmaps[ibmap_idx], ibmap_idx); - bgd[ibmap_idx].free_inodes++; - fs->sb->free_inodes++; + ext4fs_bg_free_inodes_inc(bgd, fs); + ext4fs_sb_free_inodes_inc(fs->sb); /* journal backup */ memset(journal_buffer, '\0', fs->blksz); - status = ext4fs_devread((lbaint_t)bgd[ibmap_idx].inode_id * + status = ext4fs_devread(ext4fs_bg_get_inode_id(bgd, fs) * fs->sect_perblk, 0, fs->blksz, journal_buffer); if (status == 0) goto fail; - if (ext4fs_log_journal(journal_buffer, bgd[ibmap_idx].inode_id)) + if (ext4fs_log_journal(journal_buffer, ext4fs_bg_get_inode_id(bgd, fs))) goto fail; ext4fs_update(); @@ -585,12 +587,11 @@ int ext4fs_init(void) { short status; int i; - unsigned int real_free_blocks = 0; + uint32_t real_free_blocks = 0; struct ext_filesystem *fs = get_fs(); /* populate fs */ fs->blksz = EXT2_BLOCK_SIZE(ext4fs_root); - fs->inodesz = INODE_SIZE_FILESYSTEM(ext4fs_root); fs->sect_perblk = fs->blksz >> fs->dev_desc->log2blksz; /* get the superblock */ @@ -606,9 +607,9 @@ int ext4fs_init(void) /* get total no of blockgroups */ fs->no_blkgrp = (uint32_t)ext4fs_div_roundup( - (ext4fs_root->sblock.total_blocks - - ext4fs_root->sblock.first_data_block), - ext4fs_root->sblock.blocks_per_group); + le32_to_cpu(ext4fs_root->sblock.total_blocks) + - le32_to_cpu(ext4fs_root->sblock.first_data_block), + le32_to_cpu(ext4fs_root->sblock.blocks_per_group)); /* get the block group descriptor table */ fs->gdtable_blkno = ((EXT2_MIN_BLOCK_SIZE == fs->blksz) + 1); @@ -616,7 +617,6 @@ int ext4fs_init(void) printf("Error in getting the block group descriptor table\n"); goto fail; } - fs->bgd = (struct ext2_block_group *)fs->gdtable; /* load all the available bitmap block of the partition */ fs->blk_bmaps = zalloc(fs->no_blkgrp * sizeof(char *)); @@ -629,8 +629,9 @@ int ext4fs_init(void) } for (i = 0; i < fs->no_blkgrp; i++) { - status = - ext4fs_devread((lbaint_t)fs->bgd[i].block_id * + struct ext2_block_group *bgd = + ext4fs_get_group_descriptor(fs, i); + status = ext4fs_devread(ext4fs_bg_get_block_id(bgd, fs) * fs->sect_perblk, 0, fs->blksz, (char *)fs->blk_bmaps[i]); if (status == 0) @@ -648,7 +649,9 @@ int ext4fs_init(void) } for (i = 0; i < fs->no_blkgrp; i++) { - status = ext4fs_devread((lbaint_t)fs->bgd[i].inode_id * + struct ext2_block_group *bgd = + ext4fs_get_group_descriptor(fs, i); + status = ext4fs_devread(ext4fs_bg_get_inode_id(bgd, fs) * fs->sect_perblk, 0, fs->blksz, (char *)fs->inode_bmaps[i]); @@ -662,10 +665,14 @@ int ext4fs_init(void) * with the blockgroups freeblocks when improper * reboot of a linux kernel */ - for (i = 0; i < fs->no_blkgrp; i++) - real_free_blocks = real_free_blocks + fs->bgd[i].free_blocks; - if (real_free_blocks != fs->sb->free_blocks) - fs->sb->free_blocks = real_free_blocks; + for (i = 0; i < fs->no_blkgrp; i++) { + struct ext2_block_group *bgd = + ext4fs_get_group_descriptor(fs, i); + real_free_blocks = real_free_blocks + + ext4fs_bg_get_free_blocks(bgd, fs); + } + if (real_free_blocks != ext4fs_sb_get_free_blocks(fs->sb)) + ext4fs_sb_set_free_blocks(fs->sb, real_free_blocks); return 0; fail: @@ -679,8 +686,9 @@ void ext4fs_deinit(void) int i; struct ext2_inode inode_journal; struct journal_superblock_t *jsb; - long int blknr; + uint32_t blknr; struct ext_filesystem *fs = get_fs(); + uint32_t new_feature_incompat; /* free journal */ char *temp_buff = zalloc(fs->blksz); @@ -692,7 +700,7 @@ void ext4fs_deinit(void) ext4fs_devread((lbaint_t)blknr * fs->sect_perblk, 0, fs->blksz, temp_buff); jsb = (struct journal_superblock_t *)temp_buff; - jsb->s_start = cpu_to_be32(0); + jsb->s_start = 0; put_ext4((uint64_t) ((uint64_t)blknr * (uint64_t)fs->blksz), (struct journal_superblock_t *)temp_buff, fs->blksz); free(temp_buff); @@ -701,7 +709,9 @@ void ext4fs_deinit(void) /* get the superblock */ ext4_read_superblock((char *)fs->sb); - fs->sb->feature_incompat &= ~EXT3_FEATURE_INCOMPAT_RECOVER; + new_feature_incompat = le32_to_cpu(fs->sb->feature_incompat); + new_feature_incompat &= ~EXT3_FEATURE_INCOMPAT_RECOVER; + fs->sb->feature_incompat = cpu_to_le32(new_feature_incompat); put_ext4((uint64_t)(SUPERBLOCK_SIZE), (struct ext2_sblock *)fs->sb, (uint32_t)SUPERBLOCK_SIZE); free(fs->sb); @@ -728,7 +738,6 @@ void ext4fs_deinit(void) free(fs->gdtable); fs->gdtable = NULL; - fs->bgd = NULL; /* * reinitiliazed the global inode and * block bitmap first execution check variables @@ -739,12 +748,16 @@ void ext4fs_deinit(void) fs->curr_blkno = 0; } +/* + * Write data to filesystem blocks. Uses same optimization for + * contigous sectors as ext4fs_read_file + */ static int ext4fs_write_file(struct ext2_inode *file_inode, int pos, unsigned int len, char *buf) { int i; int blockcnt; - unsigned int filesize = __le32_to_cpu(file_inode->size); + uint32_t filesize = le32_to_cpu(file_inode->size); struct ext_filesystem *fs = get_fs(); int log2blksz = fs->dev_desc->log2blksz; int log2_fs_blocksize = LOG2_BLOCK_SIZE(ext4fs_root) - log2blksz; @@ -765,7 +778,7 @@ static int ext4fs_write_file(struct ext2_inode *file_inode, int blockend = fs->blksz; int skipfirst = 0; blknr = read_allocated_block(file_inode, i); - if (blknr < 0) + if (blknr <= 0) return -1; blknr = blknr << log2_fs_blocksize; @@ -839,11 +852,12 @@ int ext4fs_write(const char *fname, unsigned char *buffer, struct ext2_sblock *sblock = &(ext4fs_root->sblock); unsigned int inodes_per_block; unsigned int ibmap_idx; + struct ext2_block_group *bgd = NULL; struct ext_filesystem *fs = get_fs(); ALLOC_CACHE_ALIGN_BUFFER(char, filename, 256); memset(filename, 0x00, 256); - g_parent_inode = zalloc(sizeof(struct ext2_inode)); + g_parent_inode = zalloc(fs->inodesz); if (!g_parent_inode) goto fail; @@ -857,8 +871,13 @@ int ext4fs_write(const char *fname, unsigned char *buffer, goto fail; if (ext4fs_iget(parent_inodeno, g_parent_inode)) goto fail; + /* do not mess up a directory using hash trees */ + if (le32_to_cpu(g_parent_inode->flags) & EXT4_INDEX_FL) { + printf("hash tree directory\n"); + goto fail; + } /* check if the filename is already present in root */ - existing_file_inodeno = ext4fs_filename_check(filename); + existing_file_inodeno = ext4fs_filename_unlink(filename); if (existing_file_inodeno != -1) { ret = ext4fs_delete_file(existing_file_inodeno); fs->first_pass_bbmap = 0; @@ -878,39 +897,42 @@ int ext4fs_write(const char *fname, unsigned char *buffer, } blocks_remaining = blks_reqd_for_file; /* test for available space in partition */ - if (fs->sb->free_blocks < blks_reqd_for_file) { + if (le32_to_cpu(fs->sb->free_blocks) < blks_reqd_for_file) { printf("Not enough space on partition !!!\n"); goto fail; } - ext4fs_update_parent_dentry(filename, &inodeno, FILETYPE_REG); + inodeno = ext4fs_update_parent_dentry(filename, FILETYPE_REG); + if (inodeno == -1) + goto fail; /* prepare file inode */ inode_buffer = zalloc(fs->inodesz); if (!inode_buffer) goto fail; file_inode = (struct ext2_inode *)inode_buffer; - file_inode->mode = S_IFREG | S_IRWXU | - S_IRGRP | S_IROTH | S_IXGRP | S_IXOTH; + file_inode->mode = cpu_to_le16(S_IFREG | S_IRWXU | + S_IRGRP | S_IROTH | S_IXGRP | S_IXOTH); /* ToDo: Update correct time */ - file_inode->mtime = timestamp; - file_inode->atime = timestamp; - file_inode->ctime = timestamp; - file_inode->nlinks = 1; - file_inode->size = sizebytes; + file_inode->mtime = cpu_to_le32(timestamp); + file_inode->atime = cpu_to_le32(timestamp); + file_inode->ctime = cpu_to_le32(timestamp); + file_inode->nlinks = cpu_to_le16(1); + file_inode->size = cpu_to_le32(sizebytes); /* Allocate data blocks */ ext4fs_allocate_blocks(file_inode, blocks_remaining, &blks_reqd_for_file); - file_inode->blockcnt = (blks_reqd_for_file * fs->blksz) >> - fs->dev_desc->log2blksz; + file_inode->blockcnt = cpu_to_le32((blks_reqd_for_file * fs->blksz) >> + fs->dev_desc->log2blksz); temp_ptr = zalloc(fs->blksz); if (!temp_ptr) goto fail; - ibmap_idx = inodeno / ext4fs_root->sblock.inodes_per_group; + ibmap_idx = inodeno / le32_to_cpu(ext4fs_root->sblock.inodes_per_group); inodeno--; - itable_blkno = __le32_to_cpu(fs->bgd[ibmap_idx].inode_table_id) + - (inodeno % __le32_to_cpu(sblock->inodes_per_group)) / + bgd = ext4fs_get_group_descriptor(fs, ibmap_idx); + itable_blkno = ext4fs_bg_get_inode_table_id(bgd, fs) + + (inodeno % le32_to_cpu(sblock->inodes_per_group)) / inodes_per_block; blkoff = (inodeno % inodes_per_block) * fs->inodesz; ext4fs_devread((lbaint_t)itable_blkno * fs->sect_perblk, 0, fs->blksz, @@ -924,13 +946,15 @@ int ext4fs_write(const char *fname, unsigned char *buffer, /* copy the file content into data blocks */ if (ext4fs_write_file(file_inode, 0, sizebytes, (char *)buffer) == -1) { printf("Error in copying content\n"); + /* FIXME: Deallocate data blocks */ goto fail; } - ibmap_idx = parent_inodeno / ext4fs_root->sblock.inodes_per_group; + ibmap_idx = parent_inodeno / le32_to_cpu(ext4fs_root->sblock.inodes_per_group); parent_inodeno--; - parent_itable_blkno = __le32_to_cpu(fs->bgd[ibmap_idx].inode_table_id) + + bgd = ext4fs_get_group_descriptor(fs, ibmap_idx); + parent_itable_blkno = ext4fs_bg_get_inode_table_id(bgd, fs) + (parent_inodeno % - __le32_to_cpu(sblock->inodes_per_group)) / inodes_per_block; + le32_to_cpu(sblock->inodes_per_group)) / inodes_per_block; blkoff = (parent_inodeno % inodes_per_block) * fs->inodesz; if (parent_itable_blkno != itable_blkno) { memset(temp_ptr, '\0', fs->blksz); @@ -939,22 +963,18 @@ int ext4fs_write(const char *fname, unsigned char *buffer, if (ext4fs_log_journal(temp_ptr, parent_itable_blkno)) goto fail; - memcpy(temp_ptr + blkoff, g_parent_inode, - sizeof(struct ext2_inode)); + memcpy(temp_ptr + blkoff, g_parent_inode, fs->inodesz); if (ext4fs_put_metadata(temp_ptr, parent_itable_blkno)) goto fail; - free(temp_ptr); } else { /* * If parent and child fall in same inode table block * both should be kept in 1 buffer */ - memcpy(temp_ptr + blkoff, g_parent_inode, - sizeof(struct ext2_inode)); + memcpy(temp_ptr + blkoff, g_parent_inode, fs->inodesz); gd_index--; if (ext4fs_put_metadata(temp_ptr, itable_blkno)) goto fail; - free(temp_ptr); } ext4fs_update(); ext4fs_deinit(); @@ -965,6 +985,7 @@ int ext4fs_write(const char *fname, unsigned char *buffer, fs->curr_inode_no = 0; free(inode_buffer); free(g_parent_inode); + free(temp_ptr); g_parent_inode = NULL; return 0; @@ -972,6 +993,7 @@ fail: ext4fs_deinit(); free(inode_buffer); free(g_parent_inode); + free(temp_ptr); g_parent_inode = NULL; return -1; diff --git a/fs/ext4/ext4fs.c b/fs/ext4/ext4fs.c index 43c8897793..3078737770 100644 --- a/fs/ext4/ext4fs.c +++ b/fs/ext4/ext4fs.c @@ -55,7 +55,7 @@ int ext4fs_read_file(struct ext2fs_node *node, loff_t pos, int log2blksz = fs->dev_desc->log2blksz; int log2_fs_blocksize = LOG2_BLOCK_SIZE(node->data) - log2blksz; int blocksize = (1 << (log2_fs_blocksize + log2blksz)); - unsigned int filesize = __le32_to_cpu(node->inode.size); + unsigned int filesize = le32_to_cpu(node->inode.size); lbaint_t previous_block_number = -1; lbaint_t delayed_start = 0; lbaint_t delayed_extent = 0; diff --git a/fs/fat/fat.c b/fs/fat/fat.c index 826bd85286..df9f2b5656 100644 --- a/fs/fat/fat.c +++ b/fs/fat/fat.c @@ -876,6 +876,7 @@ int do_fat_read_at(const char *filename, loff_t pos, void *buffer, } mydata->fatbufnum = -1; + mydata->fat_dirty = 0; mydata->fatbuf = memalign(ARCH_DMA_MINALIGN, FATBUFSIZE); if (mydata->fatbuf == NULL) { debug("Error: allocating memory\n"); diff --git a/fs/fat/fat_write.c b/fs/fat/fat_write.c index eb3a916948..0583af310a 100644 --- a/fs/fat/fat_write.c +++ b/fs/fat/fat_write.c @@ -104,13 +104,19 @@ static __u8 num_of_fats; /* * Write fat buffer into block device */ -static int flush_fat_buffer(fsdata *mydata) +static int flush_dirty_fat_buffer(fsdata *mydata) { int getsize = FATBUFBLOCKS; __u32 fatlength = mydata->fatlength; __u8 *bufptr = mydata->fatbuf; __u32 startblock = mydata->fatbufnum * FATBUFBLOCKS; + debug("debug: evicting %d, dirty: %d\n", mydata->fatbufnum, + (int)mydata->fat_dirty); + + if ((!mydata->fat_dirty) || (mydata->fatbufnum == -1)) + return 0; + startblock += mydata->fat_sect; if (getsize > fatlength) @@ -130,6 +136,7 @@ static int flush_fat_buffer(fsdata *mydata) return -1; } } + mydata->fat_dirty = 0; return 0; } @@ -183,14 +190,11 @@ static __u32 get_fatent_value(fsdata *mydata, __u32 entry) if (getsize > fatlength) getsize = fatlength; - fatlength *= mydata->sect_size; /* We want it in bytes now */ startblock += mydata->fat_sect; /* Offset from start of disk */ /* Write back the fatbuf to the disk */ - if (mydata->fatbufnum != -1) { - if (flush_fat_buffer(mydata) < 0) - return -1; - } + if (flush_dirty_fat_buffer(mydata) < 0) + return -1; if (disk_read(startblock, getsize, bufptr) < 0) { debug("Error reading FAT blocks\n"); @@ -326,10 +330,8 @@ fill_dir_slot(fsdata *mydata, dir_entry **dentptr, const char *l_name) dir_slot *slotptr = (dir_slot *)get_contents_vfatname_block; __u8 counter = 0, checksum; int idx = 0, ret; - char s_name[16]; - /* Get short file name and checksum value */ - strncpy(s_name, (*dentptr)->name, 16); + /* Get short file name checksum value */ checksum = mkcksum((*dentptr)->name, (*dentptr)->ext); do { @@ -497,10 +499,8 @@ static int set_fatent_value(fsdata *mydata, __u32 entry, __u32 entry_value) if (getsize > fatlength) getsize = fatlength; - if (mydata->fatbufnum != -1) { - if (flush_fat_buffer(mydata) < 0) - return -1; - } + if (flush_dirty_fat_buffer(mydata) < 0) + return -1; if (disk_read(startblock, getsize, bufptr) < 0) { debug("Error reading FAT blocks\n"); @@ -509,6 +509,9 @@ static int set_fatent_value(fsdata *mydata, __u32 entry, __u32 entry_value) mydata->fatbufnum = bufnum; } + /* Mark as dirty */ + mydata->fat_dirty = 1; + /* Set the actual entry */ switch (mydata->fatsize) { case 32: @@ -525,7 +528,8 @@ static int set_fatent_value(fsdata *mydata, __u32 entry, __u32 entry_value) } /* - * Determine the entry value at index 'entry' in a FAT (16/32) table + * Determine the next free cluster after 'entry' in a FAT (16/32) table + * and link it to 'entry'. EOC marker is not set on returned entry. */ static __u32 determine_fatent(fsdata *mydata, __u32 entry) { @@ -534,6 +538,7 @@ static __u32 determine_fatent(fsdata *mydata, __u32 entry) while (1) { next_fat = get_fatent_value(mydata, next_entry); if (next_fat == 0) { + /* found free entry, link to entry */ set_fatent_value(mydata, entry, next_entry); break; } @@ -648,7 +653,7 @@ static void flush_dir_table(fsdata *mydata, dir_entry **dentptr) dir_curclust = dir_newclust; - if (flush_fat_buffer(mydata) < 0) + if (flush_dirty_fat_buffer(mydata) < 0) return; memset(get_dentfromdir_block, 0x00, @@ -678,7 +683,7 @@ static int clear_fatent(fsdata *mydata, __u32 entry) } /* Flush fat buffer */ - if (flush_fat_buffer(mydata) < 0) + if (flush_dirty_fat_buffer(mydata) < 0) return -1; return 0; @@ -1014,6 +1019,7 @@ static int do_fat_write(const char *filename, void *buffer, loff_t size, } mydata->fatbufnum = -1; + mydata->fat_dirty = 0; mydata->fatbuf = memalign(ARCH_DMA_MINALIGN, FATBUFSIZE); if (mydata->fatbuf == NULL) { debug("Error: allocating memory\n"); @@ -1114,7 +1120,7 @@ static int do_fat_write(const char *filename, void *buffer, loff_t size, debug("attempt to write 0x%llx bytes\n", *actwrite); /* Flush fat buffer */ - ret = flush_fat_buffer(mydata); + ret = flush_dirty_fat_buffer(mydata); if (ret) { printf("Error: flush fat buffer\n"); goto exit; diff --git a/fs/jffs2/jffs2_1pass.c b/fs/jffs2/jffs2_1pass.c index f771e94f91..ed60c5ba5c 100644 --- a/fs/jffs2/jffs2_1pass.c +++ b/fs/jffs2/jffs2_1pass.c @@ -122,7 +122,7 @@ #include <jffs2/jffs2.h> #include <jffs2/jffs2_1pass.h> #include <linux/compat.h> -#include <asm/errno.h> +#include <linux/errno.h> #include "jffs2_private.h" diff --git a/fs/yaffs2/yaffs_mtdif.c b/fs/yaffs2/yaffs_mtdif.c index 6fcba047f9..636c7770e2 100644 --- a/fs/yaffs2/yaffs_mtdif.c +++ b/fs/yaffs2/yaffs_mtdif.c @@ -19,10 +19,10 @@ #include "yaffs_mtdif.h" -#include "linux/mtd/mtd.h" -#include "linux/types.h" -#include "linux/time.h" -#include "linux/mtd/nand.h" +#include <linux/mtd/mtd.h> +#include <linux/types.h> +#include <linux/time.h> +#include <linux/mtd/nand.h> static inline void translate_spare2oob(const struct yaffs_spare *spare, u8 *oob) diff --git a/fs/yaffs2/yaffs_mtdif2.c b/fs/yaffs2/yaffs_mtdif2.c index 234cb706df..0d9d5cc4b1 100644 --- a/fs/yaffs2/yaffs_mtdif2.c +++ b/fs/yaffs2/yaffs_mtdif2.c @@ -15,16 +15,16 @@ /* XXX U-BOOT XXX */ #include <common.h> -#include "asm/errno.h" +#include <linux/errno.h> #include "yportenv.h" #include "yaffs_trace.h" #include "yaffs_mtdif2.h" -#include "linux/mtd/mtd.h" -#include "linux/types.h" -#include "linux/time.h" +#include <linux/mtd/mtd.h> +#include <linux/types.h> +#include <linux/time.h> #include "yaffs_trace.h" #include "yaffs_packedtags2.h" diff --git a/fs/yaffs2/ydirectenv.h b/fs/yaffs2/ydirectenv.h index 2b3e84fd38..d274f22e84 100644 --- a/fs/yaffs2/ydirectenv.h +++ b/fs/yaffs2/ydirectenv.h @@ -75,7 +75,7 @@ void yaffs_qsort(void *aa, size_t n, size_t es, #define YAFFS_ROOT_MODE 0666 #define YAFFS_LOSTNFOUND_MODE 0666 -#include "linux/list.h" +#include <linux/list.h> #include "yaffsfs.h" diff --git a/include/clk.h b/include/clk.h index dc18b0310a..fe1f8922c6 100644 --- a/include/clk.h +++ b/include/clk.h @@ -9,6 +9,7 @@ #ifndef _CLK_H_ #define _CLK_H_ +#include <linux/errno.h> #include <linux/types.h> /** @@ -59,7 +60,7 @@ struct clk { unsigned long id; }; -#if CONFIG_IS_ENABLED(OF_CONTROL) +#if CONFIG_IS_ENABLED(OF_CONTROL) && CONFIG_IS_ENABLED(CLK) struct phandle_2_cell; int clk_get_by_index_platdata(struct udevice *dev, int index, struct phandle_2_cell *cells, struct clk *clk); @@ -97,19 +98,6 @@ int clk_get_by_index(struct udevice *dev, int index, struct clk *clk); * @return 0 if OK, or a negative error code. */ int clk_get_by_name(struct udevice *dev, const char *name, struct clk *clk); -#else -static inline int clk_get_by_index(struct udevice *dev, int index, - struct clk *clk) -{ - return -ENOSYS; -} - -static inline int clk_get_by_name(struct udevice *dev, const char *name, - struct clk *clk) -{ - return -ENOSYS; -} -#endif /** * clk_request - Request a clock by provider-specific ID. @@ -174,5 +162,17 @@ int clk_enable(struct clk *clk); int clk_disable(struct clk *clk); int soc_clk_dump(void); +#else +static inline int clk_get_by_index(struct udevice *dev, int index, + struct clk *clk) +{ + return -ENOSYS; +} +static inline int clk_get_by_name(struct udevice *dev, const char *name, + struct clk *clk) +{ + return -ENOSYS; +} +#endif #endif diff --git a/include/common.h b/include/common.h index e9f0dea308..a8d833b989 100644 --- a/include/common.h +++ b/include/common.h @@ -866,17 +866,20 @@ int getc(void); int tstc(void); /* stdout */ -#if defined(CONFIG_SPL_BUILD) && !defined(CONFIG_SPL_SERIAL_SUPPORT) -#define putc(...) do { } while (0) -#define puts(...) do { } while (0) -#define printf(...) do { } while (0) -#define vprintf(...) do { } while (0) -#else +#if !defined(CONFIG_SPL_BUILD) || \ + (defined(CONFIG_TPL_BUILD) && defined(CONFIG_TPL_SERIAL_SUPPORT)) || \ + (defined(CONFIG_SPL_BUILD) && !defined(CONFIG_TPL_BUILD) && \ + defined(CONFIG_SPL_SERIAL_SUPPORT)) void putc(const char c); void puts(const char *s); int printf(const char *fmt, ...) __attribute__ ((format (__printf__, 1, 2))); int vprintf(const char *fmt, va_list args); +#else +#define putc(...) do { } while (0) +#define puts(...) do { } while (0) +#define printf(...) do { } while (0) +#define vprintf(...) do { } while (0) #endif /* stderr */ diff --git a/include/config_cmd_all.h b/include/config_cmd_all.h index b5fd6c68e8..0c4f645930 100644 --- a/include/config_cmd_all.h +++ b/include/config_cmd_all.h @@ -48,7 +48,6 @@ #define CONFIG_SCSI /* SCSI Support */ #define CONFIG_CMD_SDRAM /* SDRAM DIMM SPD info printout */ #define CONFIG_CMD_TERMINAL /* built-in Serial Terminal */ -#define CONFIG_CMD_UBI /* UBI Support */ #define CONFIG_CMD_UBIFS /* UBIFS Support */ #define CONFIG_CMD_UNIVERSE /* Tundra Universe Support */ #define CONFIG_CMD_UNZIP /* unzip from memory to memory */ diff --git a/include/configs/B4860QDS.h b/include/configs/B4860QDS.h index 2a8aeeead5..8710307d8c 100644 --- a/include/configs/B4860QDS.h +++ b/include/configs/B4860QDS.h @@ -21,15 +21,8 @@ #define CONFIG_RAMBOOT_TEXT_BASE CONFIG_SYS_TEXT_BASE #define CONFIG_RESET_VECTOR_ADDRESS 0xfffffffc #else -#define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT -#define CONFIG_SPL_ENV_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT #define CONFIG_SPL_FLUSH_IMAGE #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_DRIVERS_MISC_SUPPORT #define CONFIG_FSL_LAW /* Use common FSL init code */ #define CONFIG_SYS_TEXT_BASE 0x00201000 #define CONFIG_SPL_TEXT_BASE 0xFFFD8000 @@ -37,7 +30,6 @@ #define CONFIG_SPL_MAX_SIZE 0x28000 #define RESET_VECTOR_OFFSET 0x27FFC #define BOOT_PAGE_OFFSET 0x27000 -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SYS_NAND_U_BOOT_SIZE (768 << 10) #define CONFIG_SYS_NAND_U_BOOT_DST 0x00200000 #define CONFIG_SYS_NAND_U_BOOT_START 0x00200000 diff --git a/include/configs/BSC9131RDB.h b/include/configs/BSC9131RDB.h index a0ca0db27c..92c69e5cf2 100644 --- a/include/configs/BSC9131RDB.h +++ b/include/configs/BSC9131RDB.h @@ -28,8 +28,6 @@ #ifdef CONFIG_NAND #define CONFIG_SPL_INIT_MINIMAL -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_BOOT #define CONFIG_SPL_FLUSH_IMAGE #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" diff --git a/include/configs/BSC9132QDS.h b/include/configs/BSC9132QDS.h index eb6ddae74b..4276f653cd 100644 --- a/include/configs/BSC9132QDS.h +++ b/include/configs/BSC9132QDS.h @@ -44,8 +44,6 @@ #ifdef CONFIG_NAND #define CONFIG_SPL_INIT_MINIMAL -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_BOOT #define CONFIG_SPL_FLUSH_IMAGE #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" diff --git a/include/configs/C29XPCIE.h b/include/configs/C29XPCIE.h index f75919dc89..a61e25cc88 100644 --- a/include/configs/C29XPCIE.h +++ b/include/configs/C29XPCIE.h @@ -27,15 +27,8 @@ #ifdef CONFIG_TPL_BUILD #define CONFIG_SPL_NAND_BOOT #define CONFIG_SPL_FLUSH_IMAGE -#define CONFIG_SPL_ENV_SUPPORT #define CONFIG_SPL_NAND_INIT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_DRIVERS_MISC_SUPPORT -#define CONFIG_SPL_NAND_SUPPORT -#define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT +#define CONFIG_TPL_DRIVERS_MISC_SUPPORT #define CONFIG_SPL_COMMON_INIT_DDR #define CONFIG_SPL_MAX_SIZE (128 << 10) #define CONFIG_SPL_TEXT_BASE 0xf8f81000 @@ -46,8 +39,6 @@ #define CONFIG_SYS_NAND_U_BOOT_OFFS ((128 + 128) << 10) #elif defined(CONFIG_SPL_BUILD) #define CONFIG_SPL_INIT_MINIMAL -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_MINIMAL #define CONFIG_SPL_FLUSH_IMAGE #define CONFIG_SPL_TEXT_BASE 0xff800000 diff --git a/include/configs/M54418TWR.h b/include/configs/M54418TWR.h index 63b0a1e0ed..9754bbd899 100644 --- a/include/configs/M54418TWR.h +++ b/include/configs/M54418TWR.h @@ -40,7 +40,6 @@ /* Command line configuration */ #undef CONFIG_CMD_DATE #undef CONFIG_CMD_JFFS2 -#undef CONFIG_CMD_UBI #undef CONFIG_CMD_NAND #define CONFIG_CMD_REGINFO diff --git a/include/configs/MIP405.h b/include/configs/MIP405.h index 5da0005c9b..bf75209775 100644 --- a/include/configs/MIP405.h +++ b/include/configs/MIP405.h @@ -17,7 +17,6 @@ * (easy to change) ***********************************************************/ #define CONFIG_405GP 1 /* This is a PPC405 CPU */ -#define CONFIG_MIP405 1 /* ...on a MIP405 board */ #define CONFIG_SYS_TEXT_BASE 0xFFF80000 @@ -57,9 +56,6 @@ #define CONFIG_CMD_SAVES #define CONFIG_CMD_BSP -#if !defined(CONFIG_MIP405T) -#endif - /************************************************************** * I2C Stuff: * the MIP405 is equiped with an Atmel 24C128/256 EEPROM at address @@ -312,7 +308,7 @@ /************************************************************ * IDE/ATA stuff ************************************************************/ -#if defined(CONFIG_MIP405T) +#if defined(CONFIG_TARGET_MIP405T) #define CONFIG_SYS_IDE_MAXBUS 1 /* MIP405T has only one IDE bus */ #else #define CONFIG_SYS_IDE_MAXBUS 2 /* max. 2 IDE busses */ @@ -358,7 +354,7 @@ /************************************************************ * USB support EXPERIMENTAL ************************************************************/ -#if !defined(CONFIG_MIP405T) +#if !defined(CONFIG_TARGET_MIP405T) #define CONFIG_USB_UHCI #define CONFIG_USB_KEYBOARD @@ -377,21 +373,4 @@ ************************************************************/ #define CONFIG_BZIP2 1 -/************************************************************ - * Ident - ************************************************************/ - -#define VERSION_TAG "released" -#if !defined(CONFIG_MIP405T) -#define CONFIG_ISO_STRING "MEV-10072-001" -#else -#define CONFIG_ISO_STRING "MEV-10082-001" -#endif - -#if !defined(CONFIG_BOOT_PCI) -#define CONFIG_IDENT_STRING "\n(c) 2003 by MPL AG Switzerland, " CONFIG_ISO_STRING " " VERSION_TAG -#else -#define CONFIG_IDENT_STRING "\n(c) 2003 by MPL AG Switzerland, PCI_BOOT Version" -#endif - #endif /* __CONFIG_H */ diff --git a/include/configs/MPC8313ERDB.h b/include/configs/MPC8313ERDB.h index 1c4e082d4e..90b14294b0 100644 --- a/include/configs/MPC8313ERDB.h +++ b/include/configs/MPC8313ERDB.h @@ -22,8 +22,6 @@ #ifdef CONFIG_NAND #define CONFIG_SPL_INIT_MINIMAL -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_FLUSH_IMAGE #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" #define CONFIG_SPL_MPC83XX_WAIT_FOR_NAND diff --git a/include/configs/P1010RDB.h b/include/configs/P1010RDB.h index 0c84622b4d..ab8993bf11 100644 --- a/include/configs/P1010RDB.h +++ b/include/configs/P1010RDB.h @@ -19,17 +19,9 @@ #define CONFIG_NAND_FSL_IFC #ifdef CONFIG_SDCARD -#define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT -#define CONFIG_SPL_DRIVERS_MISC_SUPPORT -#define CONFIG_SPL_ENV_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT #define CONFIG_SPL_MMC_MINIMAL #define CONFIG_SPL_FLUSH_IMAGE #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT #define CONFIG_FSL_LAW /* Use common FSL init code */ #define CONFIG_SYS_TEXT_BASE 0x11001000 #define CONFIG_SPL_TEXT_BASE 0xD0001000 @@ -53,18 +45,9 @@ #define CONFIG_SYS_TEXT_BASE 0x11000000 #define CONFIG_RESET_VECTOR_ADDRESS 0x110bfffc #else -#define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT -#define CONFIG_SPL_DRIVERS_MISC_SUPPORT -#define CONFIG_SPL_ENV_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_FLASH_MINIMAL #define CONFIG_SPL_FLUSH_IMAGE #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT #define CONFIG_FSL_LAW /* Use common FSL init code */ #define CONFIG_SYS_TEXT_BASE 0x11001000 #define CONFIG_SPL_TEXT_BASE 0xD0001000 @@ -86,8 +69,6 @@ #ifdef CONFIG_NAND #ifdef CONFIG_SECURE_BOOT #define CONFIG_SPL_INIT_MINIMAL -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_BOOT #define CONFIG_SPL_FLUSH_IMAGE #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" @@ -106,15 +87,7 @@ #ifdef CONFIG_TPL_BUILD #define CONFIG_SPL_NAND_BOOT #define CONFIG_SPL_FLUSH_IMAGE -#define CONFIG_SPL_ENV_SUPPORT #define CONFIG_SPL_NAND_INIT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_NAND_SUPPORT -#define CONFIG_SPL_DRIVERS_MISC_SUPPORT -#define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT #define CONFIG_SPL_COMMON_INIT_DDR #define CONFIG_SPL_MAX_SIZE (128 << 10) #define CONFIG_SPL_TEXT_BASE 0xD0001000 @@ -125,8 +98,6 @@ #define CONFIG_SYS_NAND_U_BOOT_OFFS ((128 + 128) << 10) #elif defined(CONFIG_SPL_BUILD) #define CONFIG_SPL_INIT_MINIMAL -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_MINIMAL #define CONFIG_SPL_FLUSH_IMAGE #define CONFIG_SPL_TEXT_BASE 0xff800000 diff --git a/include/configs/P1022DS.h b/include/configs/P1022DS.h index 9fbc128384..41e3ee8f52 100644 --- a/include/configs/P1022DS.h +++ b/include/configs/P1022DS.h @@ -14,16 +14,9 @@ #define CONFIG_DISPLAY_BOARDINFO #ifdef CONFIG_SDCARD -#define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT -#define CONFIG_SPL_ENV_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT #define CONFIG_SPL_MMC_MINIMAL #define CONFIG_SPL_FLUSH_IMAGE #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT #define CONFIG_FSL_LAW /* Use common FSL init code */ #define CONFIG_SYS_TEXT_BASE 0x11001000 #define CONFIG_SPL_TEXT_BASE 0xf8f81000 @@ -42,17 +35,9 @@ #endif #ifdef CONFIG_SPIFLASH -#define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT -#define CONFIG_SPL_ENV_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_FLASH_MINIMAL #define CONFIG_SPL_FLUSH_IMAGE #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT #define CONFIG_FSL_LAW /* Use common FSL init code */ #define CONFIG_SYS_TEXT_BASE 0x11001000 #define CONFIG_SPL_TEXT_BASE 0xf8f81000 @@ -78,14 +63,7 @@ #ifdef CONFIG_TPL_BUILD #define CONFIG_SPL_NAND_BOOT #define CONFIG_SPL_FLUSH_IMAGE -#define CONFIG_SPL_ENV_SUPPORT #define CONFIG_SPL_NAND_INIT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_NAND_SUPPORT -#define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT #define CONFIG_SPL_COMMON_INIT_DDR #define CONFIG_SPL_MAX_SIZE (128 << 10) #define CONFIG_SPL_TEXT_BASE 0xf8f81000 @@ -96,8 +74,6 @@ #define CONFIG_SYS_NAND_U_BOOT_OFFS ((128 + 128) << 10) #elif defined(CONFIG_SPL_BUILD) #define CONFIG_SPL_INIT_MINIMAL -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_FLUSH_IMAGE #define CONFIG_SPL_TEXT_BASE 0xff800000 #define CONFIG_SPL_MAX_SIZE 4096 diff --git a/include/configs/PATI.h b/include/configs/PATI.h index e96fbc5aac..ebabdffc31 100644 --- a/include/configs/PATI.h +++ b/include/configs/PATI.h @@ -252,9 +252,4 @@ */ #define CONFIG_SYS_DER 0x00000000 -#define VERSION_TAG "released" -#define CONFIG_ISO_STRING "MEV-10084-001" - -#define CONFIG_IDENT_STRING "\n(c) 2003 by MPL AG Switzerland, " CONFIG_ISO_STRING " " VERSION_TAG - #endif /* __CONFIG_H */ diff --git a/include/configs/PIP405.h b/include/configs/PIP405.h index ecb126b9e3..7d08f0c5d9 100644 --- a/include/configs/PIP405.h +++ b/include/configs/PIP405.h @@ -333,11 +333,4 @@ ************************************************************/ #define CONFIG_BZIP2 1 -/************************************************************ - * Ident - ************************************************************/ -#define VERSION_TAG "released" -#define CONFIG_ISO_STRING "MEV-10066-001" -#define CONFIG_IDENT_STRING "\n(c) 2002 by MPL AG Switzerland, " CONFIG_ISO_STRING " " VERSION_TAG - #endif /* __CONFIG_H */ diff --git a/include/configs/PLU405.h b/include/configs/PLU405.h index 391a697735..53e51e5135 100644 --- a/include/configs/PLU405.h +++ b/include/configs/PLU405.h @@ -374,7 +374,6 @@ /* * UBI */ -#define CONFIG_CMD_UBI #define CONFIG_RBTREE #define CONFIG_MTD_DEVICE #define CONFIG_MTD_PARTITIONS diff --git a/include/configs/T102xQDS.h b/include/configs/T102xQDS.h index 2218907a4e..f7f0acbbed 100644 --- a/include/configs/T102xQDS.h +++ b/include/configs/T102xQDS.h @@ -43,15 +43,8 @@ #ifdef CONFIG_RAMBOOT_PBL #define CONFIG_SYS_FSL_PBL_PBI board/freescale/t102xqds/t1024_pbi.cfg #define CONFIG_SYS_FSL_PBL_RCW board/freescale/t102xqds/t1024_rcw.cfg -#define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT -#define CONFIG_SPL_ENV_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT #define CONFIG_SPL_FLUSH_IMAGE #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_DRIVERS_MISC_SUPPORT #define CONFIG_FSL_LAW /* Use common FSL init code */ #define CONFIG_SYS_TEXT_BASE 0x00201000 #define CONFIG_SPL_TEXT_BASE 0xFFFD8000 @@ -67,7 +60,6 @@ #endif #ifdef CONFIG_NAND -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SYS_NAND_U_BOOT_SIZE (768 << 10) #define CONFIG_SYS_NAND_U_BOOT_DST 0x00200000 #define CONFIG_SYS_NAND_U_BOOT_START 0x00200000 @@ -78,8 +70,6 @@ #ifdef CONFIG_SPIFLASH #define CONFIG_RESET_VECTOR_ADDRESS 0x200FFC -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_FLASH_MINIMAL #define CONFIG_SYS_SPI_FLASH_U_BOOT_SIZE (768 << 10) #define CONFIG_SYS_SPI_FLASH_U_BOOT_DST (0x00200000) @@ -94,7 +84,6 @@ #ifdef CONFIG_SDCARD #define CONFIG_RESET_VECTOR_ADDRESS 0x200FFC -#define CONFIG_SPL_MMC_SUPPORT #define CONFIG_SPL_MMC_MINIMAL #define CONFIG_SYS_MMC_U_BOOT_SIZE (768 << 10) #define CONFIG_SYS_MMC_U_BOOT_DST (0x00200000) diff --git a/include/configs/T102xRDB.h b/include/configs/T102xRDB.h index d5fd3e956c..e61c80dd05 100644 --- a/include/configs/T102xRDB.h +++ b/include/configs/T102xRDB.h @@ -50,15 +50,8 @@ #elif defined(CONFIG_T1023RDB) #define CONFIG_SYS_FSL_PBL_RCW board/freescale/t102xrdb/t1023_rcw.cfg #endif -#define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT -#define CONFIG_SPL_ENV_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT #define CONFIG_SPL_FLUSH_IMAGE #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_DRIVERS_MISC_SUPPORT #define CONFIG_FSL_LAW /* Use common FSL init code */ #define CONFIG_SYS_TEXT_BASE 0x30001000 #define CONFIG_SPL_TEXT_BASE 0xFFFD8000 @@ -74,7 +67,6 @@ #endif #ifdef CONFIG_NAND -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SYS_NAND_U_BOOT_SIZE (768 << 10) #define CONFIG_SYS_NAND_U_BOOT_DST 0x30000000 #define CONFIG_SYS_NAND_U_BOOT_START 0x30000000 @@ -85,8 +77,6 @@ #ifdef CONFIG_SPIFLASH #define CONFIG_RESET_VECTOR_ADDRESS 0x30000FFC -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_FLASH_MINIMAL #define CONFIG_SYS_SPI_FLASH_U_BOOT_SIZE (768 << 10) #define CONFIG_SYS_SPI_FLASH_U_BOOT_DST (0x30000000) @@ -101,7 +91,6 @@ #ifdef CONFIG_SDCARD #define CONFIG_RESET_VECTOR_ADDRESS 0x30000FFC -#define CONFIG_SPL_MMC_SUPPORT #define CONFIG_SPL_MMC_MINIMAL #define CONFIG_SYS_MMC_U_BOOT_SIZE (768 << 10) #define CONFIG_SYS_MMC_U_BOOT_DST (0x30000000) diff --git a/include/configs/T104xRDB.h b/include/configs/T104xRDB.h index 07c511f1d9..02633b641b 100644 --- a/include/configs/T104xRDB.h +++ b/include/configs/T104xRDB.h @@ -43,15 +43,8 @@ $(SRCTREE)/board/freescale/t104xrdb/t1040d4_rcw.cfg $(SRCTREE)/board/freescale/t104xrdb/t1042d4_rcw.cfg #endif -#define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT -#define CONFIG_SPL_ENV_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT #define CONFIG_SPL_FLUSH_IMAGE #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_DRIVERS_MISC_SUPPORT #define CONFIG_FSL_LAW /* Use common FSL init code */ #define CONFIG_SYS_TEXT_BASE 0x30001000 #define CONFIG_SPL_TEXT_BASE 0xFFFD8000 @@ -67,7 +60,6 @@ $(SRCTREE)/board/freescale/t104xrdb/t1042d4_rcw.cfg #define BOOT_PAGE_OFFSET 0x27000 #ifdef CONFIG_NAND -#define CONFIG_SPL_NAND_SUPPORT #ifdef CONFIG_SECURE_BOOT #define CONFIG_U_BOOT_HDR_SIZE (16 << 10) /* @@ -88,8 +80,6 @@ $(SRCTREE)/board/freescale/t104xrdb/t1042d4_rcw.cfg #ifdef CONFIG_SPIFLASH #define CONFIG_RESET_VECTOR_ADDRESS 0x30000FFC -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_FLASH_MINIMAL #define CONFIG_SYS_SPI_FLASH_U_BOOT_SIZE (768 << 10) #define CONFIG_SYS_SPI_FLASH_U_BOOT_DST (0x30000000) @@ -104,7 +94,6 @@ $(SRCTREE)/board/freescale/t104xrdb/t1042d4_rcw.cfg #ifdef CONFIG_SDCARD #define CONFIG_RESET_VECTOR_ADDRESS 0x30000FFC -#define CONFIG_SPL_MMC_SUPPORT #define CONFIG_SPL_MMC_MINIMAL #define CONFIG_SYS_MMC_U_BOOT_SIZE (768 << 10) #define CONFIG_SYS_MMC_U_BOOT_DST (0x30000000) diff --git a/include/configs/T208xQDS.h b/include/configs/T208xQDS.h index 065ffcd697..1c7b59cf0e 100644 --- a/include/configs/T208xQDS.h +++ b/include/configs/T208xQDS.h @@ -53,15 +53,8 @@ #define CONFIG_SYS_FSL_PBL_RCW board/freescale/t208xqds/t2081_rcw.cfg #endif -#define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT -#define CONFIG_SPL_ENV_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT #define CONFIG_SPL_FLUSH_IMAGE #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_DRIVERS_MISC_SUPPORT #define CONFIG_FSL_LAW /* Use common FSL init code */ #define CONFIG_SYS_TEXT_BASE 0x00201000 #define CONFIG_SPL_TEXT_BASE 0xFFFD8000 @@ -77,7 +70,6 @@ #endif #ifdef CONFIG_NAND -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SYS_NAND_U_BOOT_SIZE (768 << 10) #define CONFIG_SYS_NAND_U_BOOT_DST 0x00200000 #define CONFIG_SYS_NAND_U_BOOT_START 0x00200000 @@ -88,8 +80,6 @@ #ifdef CONFIG_SPIFLASH #define CONFIG_RESET_VECTOR_ADDRESS 0x200FFC -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_FLASH_MINIMAL #define CONFIG_SYS_SPI_FLASH_U_BOOT_SIZE (768 << 10) #define CONFIG_SYS_SPI_FLASH_U_BOOT_DST (0x00200000) @@ -104,7 +94,6 @@ #ifdef CONFIG_SDCARD #define CONFIG_RESET_VECTOR_ADDRESS 0x200FFC -#define CONFIG_SPL_MMC_SUPPORT #define CONFIG_SPL_MMC_MINIMAL #define CONFIG_SYS_MMC_U_BOOT_SIZE (768 << 10) #define CONFIG_SYS_MMC_U_BOOT_DST (0x00200000) diff --git a/include/configs/T208xRDB.h b/include/configs/T208xRDB.h index 1a8c62e73e..7879eb3248 100644 --- a/include/configs/T208xRDB.h +++ b/include/configs/T208xRDB.h @@ -42,15 +42,8 @@ #define CONFIG_SYS_FSL_PBL_PBI board/freescale/t208xrdb/t2080_pbi.cfg #define CONFIG_SYS_FSL_PBL_RCW board/freescale/t208xrdb/t2080_rcw.cfg -#define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT -#define CONFIG_SPL_ENV_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT #define CONFIG_SPL_FLUSH_IMAGE #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_DRIVERS_MISC_SUPPORT #define CONFIG_FSL_LAW /* Use common FSL init code */ #define CONFIG_SYS_TEXT_BASE 0x00201000 #define CONFIG_SPL_TEXT_BASE 0xFFFD8000 @@ -66,7 +59,6 @@ #endif #ifdef CONFIG_NAND -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SYS_NAND_U_BOOT_SIZE (768 << 10) #define CONFIG_SYS_NAND_U_BOOT_DST 0x00200000 #define CONFIG_SYS_NAND_U_BOOT_START 0x00200000 @@ -77,8 +69,6 @@ #ifdef CONFIG_SPIFLASH #define CONFIG_RESET_VECTOR_ADDRESS 0x200FFC -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_FLASH_MINIMAL #define CONFIG_SYS_SPI_FLASH_U_BOOT_SIZE (768 << 10) #define CONFIG_SYS_SPI_FLASH_U_BOOT_DST (0x00200000) @@ -93,7 +83,6 @@ #ifdef CONFIG_SDCARD #define CONFIG_RESET_VECTOR_ADDRESS 0x200FFC -#define CONFIG_SPL_MMC_SUPPORT #define CONFIG_SPL_MMC_MINIMAL #define CONFIG_SYS_MMC_U_BOOT_SIZE (768 << 10) #define CONFIG_SYS_MMC_U_BOOT_DST (0x00200000) diff --git a/include/configs/T4240QDS.h b/include/configs/T4240QDS.h index 06f03aa297..aac2e10d0e 100644 --- a/include/configs/T4240QDS.h +++ b/include/configs/T4240QDS.h @@ -25,15 +25,8 @@ #define CONFIG_RAMBOOT_TEXT_BASE CONFIG_SYS_TEXT_BASE #define CONFIG_RESET_VECTOR_ADDRESS 0xfffffffc #else -#define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT -#define CONFIG_SPL_ENV_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT #define CONFIG_SPL_FLUSH_IMAGE #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_DRIVERS_MISC_SUPPORT #define CONFIG_FSL_LAW /* Use common FSL init code */ #define CONFIG_SYS_TEXT_BASE 0x00201000 #define CONFIG_SPL_TEXT_BASE 0xFFFD8000 @@ -43,7 +36,6 @@ #define BOOT_PAGE_OFFSET 0x27000 #ifdef CONFIG_NAND -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SYS_NAND_U_BOOT_SIZE (768 << 10) #define CONFIG_SYS_NAND_U_BOOT_DST 0x00200000 #define CONFIG_SYS_NAND_U_BOOT_START 0x00200000 @@ -54,7 +46,6 @@ #ifdef CONFIG_SDCARD #define CONFIG_RESET_VECTOR_ADDRESS 0x200FFC -#define CONFIG_SPL_MMC_SUPPORT #define CONFIG_SPL_MMC_MINIMAL #define CONFIG_SYS_MMC_U_BOOT_SIZE (768 << 10) #define CONFIG_SYS_MMC_U_BOOT_DST 0x00200000 diff --git a/include/configs/T4240RDB.h b/include/configs/T4240RDB.h index 38ad503817..92b401dde8 100644 --- a/include/configs/T4240RDB.h +++ b/include/configs/T4240RDB.h @@ -25,15 +25,8 @@ #define CONFIG_RAMBOOT_TEXT_BASE CONFIG_SYS_TEXT_BASE #define CONFIG_RESET_VECTOR_ADDRESS 0xfffffffc #else -#define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT -#define CONFIG_SPL_ENV_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT #define CONFIG_SPL_FLUSH_IMAGE #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_DRIVERS_MISC_SUPPORT #define CONFIG_FSL_LAW /* Use common FSL init code */ #define CONFIG_SYS_TEXT_BASE 0x00201000 #define CONFIG_SPL_TEXT_BASE 0xFFFD8000 @@ -44,7 +37,6 @@ #ifdef CONFIG_SDCARD #define CONFIG_RESET_VECTOR_ADDRESS 0x200FFC -#define CONFIG_SPL_MMC_SUPPORT #define CONFIG_SPL_MMC_MINIMAL #define CONFIG_SYS_MMC_U_BOOT_SIZE (768 << 10) #define CONFIG_SYS_MMC_U_BOOT_DST 0x00200000 diff --git a/include/configs/VCMA9.h b/include/configs/VCMA9.h index c5a7d6859d..913b099c56 100644 --- a/include/configs/VCMA9.h +++ b/include/configs/VCMA9.h @@ -151,12 +151,6 @@ #define CONFIG_LZO #define CONFIG_LZMA -/* Ident */ -/*#define VERSION_TAG "released"*/ -#define VERSION_TAG "unstable" -#define CONFIG_IDENT_STRING "\n(c) 2003 - 2011 by MPL AG Switzerland, " \ - "MEV-10080-001 " VERSION_TAG - /* Physical Memory Map */ #define CONFIG_NR_DRAM_BANKS 1 /* we have 1 bank of DRAM */ #define PHYS_SDRAM_1 0x30000000 /* SDRAM Bank #1 */ @@ -198,7 +192,6 @@ #define MULTI_PURPOSE_SOCKET_ADDR 0x08000000 /* File system */ -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS #define CONFIG_CMD_JFFS2 #define CONFIG_YAFFS2 diff --git a/include/configs/a3m071.h b/include/configs/a3m071.h index ab2477c4d5..cc211c5e20 100644 --- a/include/configs/a3m071.h +++ b/include/configs/a3m071.h @@ -75,7 +75,6 @@ #define CONFIG_LZO /* needed for UBI */ #define CONFIG_RBTREE /* needed for UBI */ #define CONFIG_CMD_MTDPARTS -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS /* @@ -397,18 +396,13 @@ */ #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_BOARD_INIT -#define CONFIG_SPL_NOR_SUPPORT #define CONFIG_SPL_TEXT_BASE 0xfc000000 -#define CONFIG_SPL_LIBCOMMON_SUPPORT /* image.c */ -#define CONFIG_SPL_LIBGENERIC_SUPPORT /* string.c */ -#define CONFIG_SPL_SERIAL_SUPPORT /* Place BSS for SPL near end of SDRAM */ #define CONFIG_SPL_BSS_START_ADDR ((128 - 1) << 20) #define CONFIG_SPL_BSS_MAX_SIZE (64 << 10) #define CONFIG_SPL_OS_BOOT -#define CONFIG_SPL_ENV_SUPPORT /* Place patched DT blob (fdt) at this address */ #define CONFIG_SYS_SPL_ARGS_ADDR 0x01800000 diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h index f12ee0465e..6b5ed484b3 100644 --- a/include/configs/am335x_evm.h +++ b/include/configs/am335x_evm.h @@ -206,16 +206,12 @@ /* SPL */ #ifndef CONFIG_NOR_BOOT -#define CONFIG_SPL_POWER_SUPPORT -#define CONFIG_SPL_YMODEM_SUPPORT - /* Bootcount using the RTC block */ #define CONFIG_BOOTCOUNT_LIMIT #define CONFIG_BOOTCOUNT_AM33XX #define CONFIG_SYS_BOOTCOUNT_BE /* USB gadget RNDIS */ -#define CONFIG_SPL_MUSB_NEW_SUPPORT #define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/am33xx/u-boot-spl.lds" #endif @@ -326,19 +322,12 @@ #if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_USBETH_SUPPORT) /* Remove other SPL modes. */ -#undef CONFIG_SPL_YMODEM_SUPPORT -#undef CONFIG_SPL_NAND_SUPPORT -#undef CONFIG_SPL_MMC_SUPPORT #define CONFIG_ENV_IS_NOWHERE #undef CONFIG_ENV_IS_IN_NAND /* disable host part of MUSB in SPL */ /* disable EFI partitions and partition UUID support */ #undef CONFIG_PARTITION_UUIDS #undef CONFIG_EFI_PARTITION -/* General network SPL */ -#define CONFIG_SPL_NET_SUPPORT -#define CONFIG_SPL_ENV_SUPPORT -#define CONFIG_SPL_NET_VCI_STRING "AM335x U-Boot SPL" #endif /* USB Device Firmware Update support */ @@ -398,8 +387,6 @@ #if defined(CONFIG_SPI_BOOT) /* SPL related */ #undef CONFIG_SPL_OS_BOOT /* Not supported by existing map */ -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x20000 @@ -416,7 +403,6 @@ "-(rootfs)" #elif defined(CONFIG_EMMC_BOOT) #define CONFIG_ENV_IS_IN_MMC -#define CONFIG_SPL_ENV_SUPPORT #define CONFIG_SYS_MMC_ENV_DEV 1 #define CONFIG_SYS_MMC_ENV_PART 2 #define CONFIG_ENV_OFFSET 0x0 diff --git a/include/configs/am335x_igep0033.h b/include/configs/am335x_igep0033.h index a14310a8ed..18db58ad8a 100644 --- a/include/configs/am335x_igep0033.h +++ b/include/configs/am335x_igep0033.h @@ -124,7 +124,6 @@ /* SPL */ #undef CONFIG_SPL_OS_BOOT /* Not supported by existing map */ -#define CONFIG_SPL_YMODEM_SUPPORT #define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/am33xx/u-boot-spl.lds" #define CONFIG_SYS_NAND_5_ADDR_CYCLE diff --git a/include/configs/am335x_shc.h b/include/configs/am335x_shc.h index 9327c3d729..db518a5823 100644 --- a/include/configs/am335x_shc.h +++ b/include/configs/am335x_shc.h @@ -279,8 +279,6 @@ #define CONFIG_POWER_TPS65217 /* SPL */ -#define CONFIG_SPL_POWER_SUPPORT -#define CONFIG_SPL_YMODEM_SUPPORT #define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/am33xx/u-boot-spl.lds" @@ -326,11 +324,6 @@ #if defined CONFIG_SHC_NETBOOT #ifdef CONFIG_SPL_BUILD -#define CONFIG_SPL_NET_SUPPORT -#define CONFIG_SPL_ETH_SUPPORT -#define CONFIG_SPL_NET_VCI_STRING "AM335x U-Boot SPL" -#define CONFIG_SPL_ENV_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT #define CONFIG_ENV_IS_NOWHERE #undef CONFIG_ENV_IS_IN_MMC #endif diff --git a/include/configs/am335x_sl50.h b/include/configs/am335x_sl50.h index 8454872554..833c5c4659 100644 --- a/include/configs/am335x_sl50.h +++ b/include/configs/am335x_sl50.h @@ -80,8 +80,6 @@ #define CONFIG_POWER_TPS65910 /* SPL */ -#define CONFIG_SPL_POWER_SUPPORT -#define CONFIG_SPL_YMODEM_SUPPORT /* Bootcount using the RTC block */ #define CONFIG_BOOTCOUNT_LIMIT @@ -98,9 +96,6 @@ #if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_USBETH_SUPPORT) /* Remove other SPL modes. */ -#undef CONFIG_SPL_YMODEM_SUPPORT -#undef CONFIG_SPL_NAND_SUPPORT -#undef CONFIG_SPL_MMC_SUPPORT #define CONFIG_ENV_IS_NOWHERE #undef CONFIG_ENV_IS_IN_NAND /* disable host part of MUSB in SPL */ @@ -108,16 +103,11 @@ /* disable EFI partitions and partition UUID support */ #undef CONFIG_PARTITION_UUIDS #undef CONFIG_EFI_PARTITION -/* General network SPL */ -#define CONFIG_SPL_NET_SUPPORT -#define CONFIG_SPL_ENV_SUPPORT -#define CONFIG_SPL_NET_VCI_STRING "AM335x U-Boot SPL" #endif #if defined(CONFIG_EMMC_BOOT) #undef CONFIG_ENV_IS_NOWHERE #define CONFIG_ENV_IS_IN_MMC -#define CONFIG_SPL_ENV_SUPPORT #define CONFIG_SYS_MMC_ENV_DEV 1 #define CONFIG_SYS_MMC_ENV_PART 2 #define CONFIG_ENV_OFFSET 0x0 diff --git a/include/configs/am3517_crane.h b/include/configs/am3517_crane.h index 0055803046..698c924ea6 100644 --- a/include/configs/am3517_crane.h +++ b/include/configs/am3517_crane.h @@ -287,18 +287,9 @@ #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img" -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBDISK_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT -#define CONFIG_SPL_FAT_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_BASE #define CONFIG_SPL_NAND_DRIVERS #define CONFIG_SPL_NAND_ECC -#define CONFIG_SPL_POWER_SUPPORT #define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/omap-common/u-boot-spl.lds" /* NAND boot config */ diff --git a/include/configs/am3517_evm.h b/include/configs/am3517_evm.h index 98c29b0d66..e18e39ab04 100644 --- a/include/configs/am3517_evm.h +++ b/include/configs/am3517_evm.h @@ -140,7 +140,6 @@ #define CONFIG_NAND_OMAP_GPMC #define CONFIG_NAND_OMAP_GPMC_PREFETCH #define CONFIG_BCH -#define CONFIG_CMD_UBI /* UBI-formated MTD partition support */ #define CONFIG_CMD_UBIFS /* Read-only UBI volume operations */ #define CONFIG_RBTREE /* required by CONFIG_CMD_UBI */ #define CONFIG_LZO /* required by CONFIG_CMD_UBIFS */ @@ -344,19 +343,9 @@ #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img" -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBDISK_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT -#define CONFIG_SPL_FAT_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_BASE #define CONFIG_SPL_NAND_DRIVERS #define CONFIG_SPL_NAND_ECC -#define CONFIG_SPL_MTD_SUPPORT -#define CONFIG_SPL_POWER_SUPPORT #define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/omap-common/u-boot-spl.lds" #endif /* __CONFIG_H */ diff --git a/include/configs/am43xx_evm.h b/include/configs/am43xx_evm.h index 495dd8afc5..19ccbcbbd9 100644 --- a/include/configs/am43xx_evm.h +++ b/include/configs/am43xx_evm.h @@ -39,8 +39,6 @@ #define CONFIG_SPL_TEXT_BASE CONFIG_ISW_ENTRY_ADDR #define CONFIG_SYS_SPL_ARGS_ADDR (CONFIG_SYS_SDRAM_BASE + \ (128 << 20)) -#define CONFIG_SPL_POWER_SUPPORT -#define CONFIG_SPL_YMODEM_SUPPORT /* Enabling L2 Cache */ #define CONFIG_SYS_L2_PL310 @@ -87,9 +85,6 @@ #define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/omap-common/u-boot-spl.lds" /* SPL USB Support */ -#ifdef CONFIG_SPL_USB_HOST_SUPPORT -#define CONFIG_SPL_USB_SUPPORT -#endif #if defined(CONFIG_SPL_USB_HOST_SUPPORT) || !defined(CONFIG_SPL_BUILD) #define CONFIG_SYS_USB_FAT_BOOT_PARTITION 1 @@ -318,13 +313,9 @@ #define CONFIG_PHYLIB #define PHY_ANEG_TIMEOUT 8000 /* PHY needs longer aneg time at 1G */ -#define CONFIG_SPL_ENV_SUPPORT -#define CONFIG_SPL_NET_VCI_STRING "AM43xx U-Boot SPL" - #if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_ETH_SUPPORT) #undef CONFIG_ENV_IS_IN_FAT #define CONFIG_ENV_IS_NOWHERE -#define CONFIG_SPL_NET_SUPPORT #endif #define CONFIG_SYS_RX_ETH_BUFFER 64 diff --git a/include/configs/am57xx_evm.h b/include/configs/am57xx_evm.h index 3479de40df..d865f415bc 100644 --- a/include/configs/am57xx_evm.h +++ b/include/configs/am57xx_evm.h @@ -104,11 +104,8 @@ #endif /* SPI SPL */ -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_DMA_SUPPORT #define CONFIG_TI_EDMA3 #define CONFIG_SPL_SPI_LOAD -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x40000 /* SPI */ diff --git a/include/configs/amcore.h b/include/configs/amcore.h index 5667680230..fcb82e286c 100644 --- a/include/configs/amcore.h +++ b/include/configs/amcore.h @@ -1,7 +1,7 @@ /* * Sysam AMCORE board configuration * - * (C) Copyright 2015 Angelo Dureghello <angelo@sysam.it> + * (C) Copyright 2016 Angelo Dureghello <angelo@sysam.it> * * SPDX-License-Identifier: GPL-2.0+ */ @@ -19,6 +19,17 @@ #define CONFIG_SYS_BAUDRATE_TABLE { 9600, 19200, 38400, 57600, 115200 } #define CONFIG_BOOTCOMMAND "bootm ffc20000" +#define CONFIG_EXTRA_ENV_SETTINGS \ + "upgrade_uboot=loady; " \ + "protect off 0xffc00000 0xffc1ffff; " \ + "erase 0xffc00000 0xffc1ffff; " \ + "cp.b 0x20000 0xffc00000 ${filesize}\0" \ + "upgrade_kernel=loady; " \ + "erase 0xffc20000 0xffefffff; " \ + "cp.b 0x20000 0xffc20000 ${filesize}\0" \ + "upgrade_jffs2=loady; " \ + "erase 0xfff00000 0xffffffff; " \ + "cp.b 0x20000 0xfff00000 ${filesize}\0" #undef CONFIG_CMD_AES #define CONFIG_CMD_DIAG diff --git a/include/configs/apf27.h b/include/configs/apf27.h index e84cfb5d43..79366bed75 100644 --- a/include/configs/apf27.h +++ b/include/configs/apf27.h @@ -11,7 +11,6 @@ #define __CONFIG_H #define CONFIG_ENV_VERSION 10 -#define CONFIG_IDENT_STRING " apf27 patch 3.10" #define CONFIG_BOARD_NAME apf27 /* @@ -38,10 +37,8 @@ #define CONFIG_SPL_LDSCRIPT "arch/$(ARCH)/cpu/u-boot-spl.lds" #define CONFIG_SPL_MAX_SIZE 2048 #define CONFIG_SPL_TEXT_BASE 0xA0000000 -#define CONFIG_SPL_SERIAL_SUPPORT /* NAND boot config */ -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SYS_NAND_U_BOOT_START CONFIG_SYS_TEXT_BASE #define CONFIG_SYS_NAND_U_BOOT_OFFS 0x800 #define CONFIG_SYS_NAND_U_BOOT_DST CONFIG_SYS_TEXT_BASE @@ -72,7 +69,6 @@ #define CONFIG_CMD_NAND /* NAND support */ #define CONFIG_CMD_NAND_LOCK_UNLOCK #define CONFIG_CMD_NAND_TRIMFFS -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS /* diff --git a/include/configs/apx4devkit.h b/include/configs/apx4devkit.h index 92fea87721..80049f7982 100644 --- a/include/configs/apx4devkit.h +++ b/include/configs/apx4devkit.h @@ -57,7 +57,6 @@ /* UBI and NAND partitioning */ #ifdef CONFIG_CMD_NAND -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS #define CONFIG_CMD_MTDPARTS #define CONFIG_RBTREE diff --git a/include/configs/aristainetos-common.h b/include/configs/aristainetos-common.h index 6dc419e8a5..d6d9838858 100644 --- a/include/configs/aristainetos-common.h +++ b/include/configs/aristainetos-common.h @@ -223,12 +223,8 @@ #define CONFIG_MTD_PARTITIONS #define CONFIG_MTD_DEVICE #define CONFIG_RBTREE -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS -#define CONFIG_MTD_UBI_FASTMAP -#define CONFIG_MTD_UBI_FASTMAP_AUTOCONVERT 1 - #define CONFIG_HW_WATCHDOG #define CONFIG_IMX_WATCHDOG diff --git a/include/configs/arndale.h b/include/configs/arndale.h index b08f341227..74fd9c4227 100644 --- a/include/configs/arndale.h +++ b/include/configs/arndale.h @@ -27,8 +27,6 @@ /* Miscellaneous configurable options */ #define CONFIG_DEFAULT_CONSOLE "console=ttySAC2,115200n8\0" -#define CONFIG_IDENT_STRING " for ARNDALE" - #define CONFIG_ENV_IS_IN_MMC #define CONFIG_ENV_OFFSET (CONFIG_BL2_OFFSET + CONFIG_BL2_SIZE) diff --git a/include/configs/aspenite.h b/include/configs/aspenite.h index c4684843a8..0cc72ca266 100644 --- a/include/configs/aspenite.h +++ b/include/configs/aspenite.h @@ -11,11 +11,6 @@ #define __CONFIG_ASPENITE_H /* - * Version number information - */ -#define CONFIG_IDENT_STRING "\nMarvell-Aspenite DB" - -/* * High Level Configuration Options */ #define CONFIG_SHEEVA_88SV331xV5 1 /* CPU Core subversion */ diff --git a/include/configs/at91sam9m10g45ek.h b/include/configs/at91sam9m10g45ek.h index 37fa3ec630..9968b14d90 100644 --- a/include/configs/at91sam9m10g45ek.h +++ b/include/configs/at91sam9m10g45ek.h @@ -186,11 +186,6 @@ #define CONFIG_SPL_MAX_SIZE 0x010000 #define CONFIG_SPL_STACK 0x310000 -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT - #define CONFIG_SYS_MONITOR_LEN 0x80000 #ifdef CONFIG_SYS_USE_MMC @@ -201,16 +196,12 @@ #define CONFIG_SYS_SPL_MALLOC_SIZE 0x00080000 #define CONFIG_SPL_LDSCRIPT arch/arm/mach-at91/arm926ejs/u-boot-spl.lds -#define CONFIG_SPL_MMC_SUPPORT #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x400 #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x200 #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img" -#define CONFIG_SPL_FAT_SUPPORT -#define CONFIG_SPL_LIBDISK_SUPPORT #elif CONFIG_SYS_USE_NANDFLASH -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_DRIVERS #define CONFIG_SPL_NAND_BASE #define CONFIG_SPL_NAND_ECC diff --git a/include/configs/at91sam9n12ek.h b/include/configs/at91sam9n12ek.h index 5fdda1af39..c3d07a151e 100644 --- a/include/configs/at91sam9n12ek.h +++ b/include/configs/at91sam9n12ek.h @@ -230,11 +230,6 @@ #define CONFIG_SYS_SPL_MALLOC_START 0x20080000 #define CONFIG_SYS_SPL_MALLOC_SIZE 0x80000 -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT - #define CONFIG_SPL_BOARD_INIT #define CONFIG_SYS_MONITOR_LEN (512 << 10) @@ -245,16 +240,12 @@ #ifdef CONFIG_SYS_USE_MMC #define CONFIG_SPL_LDSCRIPT arch/arm/mach-at91/arm926ejs/u-boot-spl.lds -#define CONFIG_SPL_MMC_SUPPORT #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x400 #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x200 #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img" -#define CONFIG_SPL_FAT_SUPPORT -#define CONFIG_SPL_LIBDISK_SUPPORT #elif CONFIG_SYS_USE_NANDFLASH -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_DRIVERS #define CONFIG_SPL_NAND_BASE #define CONFIG_SYS_NAND_U_BOOT_OFFS 0x40000 @@ -267,8 +258,6 @@ #define CONFIG_SPL_GENERATE_ATMEL_PMECC_HEADER #elif CONFIG_SYS_USE_SPIFLASH -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x8400 diff --git a/include/configs/at91sam9x5ek.h b/include/configs/at91sam9x5ek.h index 637c4037dc..edad1dd75b 100644 --- a/include/configs/at91sam9x5ek.h +++ b/include/configs/at91sam9x5ek.h @@ -109,7 +109,6 @@ #define CONFIG_MTD_PARTITIONS #define CONFIG_RBTREE #define CONFIG_LZO -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS #endif @@ -230,11 +229,6 @@ #define CONFIG_SYS_SPL_MALLOC_START 0x20080000 #define CONFIG_SYS_SPL_MALLOC_SIZE 0x80000 -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT - #define CONFIG_SPL_BOARD_INIT #define CONFIG_SYS_MONITOR_LEN (512 << 10) @@ -245,16 +239,12 @@ #ifdef CONFIG_SYS_USE_MMC #define CONFIG_SPL_LDSCRIPT arch/arm/mach-at91/arm926ejs/u-boot-spl.lds -#define CONFIG_SPL_MMC_SUPPORT #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x400 #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x200 #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img" -#define CONFIG_SPL_FAT_SUPPORT -#define CONFIG_SPL_LIBDISK_SUPPORT #elif CONFIG_SYS_USE_NANDFLASH -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_DRIVERS #define CONFIG_SPL_NAND_BASE #define CONFIG_SYS_NAND_U_BOOT_OFFS 0x40000 @@ -267,8 +257,6 @@ #define CONFIG_SPL_GENERATE_ATMEL_PMECC_HEADER #elif CONFIG_SYS_USE_SPIFLASH -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x8400 diff --git a/include/configs/baltos.h b/include/configs/baltos.h index fc56c82553..58df571323 100644 --- a/include/configs/baltos.h +++ b/include/configs/baltos.h @@ -48,7 +48,6 @@ #define CONFIG_MTD_DEVICE #define CONFIG_RBTREE #define CONFIG_LZO -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS /* I2C configuration */ @@ -217,19 +216,13 @@ /* SPL */ #ifndef CONFIG_NOR_BOOT -#define CONFIG_SPL_POWER_SUPPORT -#define CONFIG_SPL_YMODEM_SUPPORT - /* Bootcount using the RTC block */ #define CONFIG_BOOTCOUNT_LIMIT #define CONFIG_BOOTCOUNT_AM33XX /* USB gadget RNDIS */ -/*#define CONFIG_SPL_MUSB_NEW_SUPPORT*/ /* General network SPL, both CPSW and USB gadget RNDIS */ -/*#define CONFIG_SPL_NET_SUPPORT -#define CONFIG_SPL_ENV_SUPPORT #define CONFIG_SPL_NET_VCI_STRING "AM335x U-Boot SPL"*/ #define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/am33xx/u-boot-spl.lds" @@ -291,7 +284,6 @@ /* * Disable CPSW SPL support so we fit within the 101KiB limit. */ -#undef CONFIG_SPL_ETH_SUPPORT #endif /* Network. */ diff --git a/include/configs/bav335x.h b/include/configs/bav335x.h index d8a8c0c63f..82d82f49f2 100644 --- a/include/configs/bav335x.h +++ b/include/configs/bav335x.h @@ -350,16 +350,12 @@ DEFAULT_LINUX_BOOT_ENV \ /* SPL */ #ifndef CONFIG_NOR_BOOT -#define CONFIG_SPL_POWER_SUPPORT -#define CONFIG_SPL_YMODEM_SUPPORT - /* Bootcount using the RTC block */ #define CONFIG_BOOTCOUNT_LIMIT #define CONFIG_BOOTCOUNT_AM33XX #define CONFIG_SYS_BOOTCOUNT_BE /* USB gadget RNDIS */ -#define CONFIG_SPL_MUSB_NEW_SUPPORT #define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/am33xx/u-boot-spl.lds" #endif @@ -465,10 +461,6 @@ DEFAULT_LINUX_BOOT_ENV \ /* disable EFI partitions and partition UUID support */ #undef CONFIG_PARTITION_UUIDS #undef CONFIG_EFI_PARTITION -/* General network SPL */ -#define CONFIG_SPL_NET_SUPPORT -#define CONFIG_SPL_ENV_SUPPORT -#define CONFIG_SPL_NET_VCI_STRING "BAV335x U-Boot SPL" #endif /* USB Device Firmware Update support */ @@ -528,8 +520,6 @@ DEFAULT_LINUX_BOOT_ENV \ #if defined(CONFIG_SPI_BOOT) /* SPL related */ #undef CONFIG_SPL_OS_BOOT /* Not supported by existing map */ -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x20000 @@ -547,7 +537,6 @@ DEFAULT_LINUX_BOOT_ENV \ #elif defined(CONFIG_EMMC_BOOT) #undef CONFIG_ENV_IS_NOWHERE #define CONFIG_ENV_IS_IN_MMC -#define CONFIG_SPL_ENV_SUPPORT #define CONFIG_SYS_MMC_ENV_DEV 1 #define CONFIG_SYS_MMC_ENV_PART 2 #define CONFIG_ENV_OFFSET 0x0 diff --git a/include/configs/boston.h b/include/configs/boston.h new file mode 100644 index 0000000000..e95805408a --- /dev/null +++ b/include/configs/boston.h @@ -0,0 +1,81 @@ +/* + * Copyright (C) 2016 Imagination Technologies + * + * SPDX-License-Identifier: GPL-2.0 + */ + +#ifndef __CONFIGS_BOSTON_H__ +#define __CONFIGS_BOSTON_H__ + +/* + * General board configuration + */ +#define CONFIG_DISPLAY_BOARDINFO + +/* + * CPU + */ +#define CONFIG_SYS_MIPS_TIMER_FREQ 30000000 + +/* + * PCI + */ +#define CONFIG_PCI +#define CONFIG_PCI_PNP +#define CONFIG_CMD_PCI + +/* + * Memory map + */ +#ifdef CONFIG_64BIT +# define CONFIG_SYS_SDRAM_BASE 0xffffffff80000000 +#else +# define CONFIG_SYS_SDRAM_BASE 0x80000000 +#endif + +#define CONFIG_SYS_INIT_SP_OFFSET 0x400000 + +#define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE + +#define CONFIG_SYS_LOAD_ADDR (CONFIG_SYS_SDRAM_BASE + 0x100000) + +#define CONFIG_SYS_MEMTEST_START (CONFIG_SYS_SDRAM_BASE + 0) +#define CONFIG_SYS_MEMTEST_END (CONFIG_SYS_SDRAM_BASE + 0x10000000) + +#define CONFIG_SYS_MALLOC_LEN (256 * 1024) + +/* + * Console + */ +#define CONFIG_SYS_MAXARGS 16 +#define CONFIG_SYS_CBSIZE 256 +#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + \ + sizeof(CONFIG_SYS_PROMPT) + 16) +#define CONFIG_SYS_LONGHELP +#define CONFIG_BAUDRATE 115200 + +/* + * Flash + */ +#define CONFIG_FLASH_CFI_DRIVER +#define CONFIG_SYS_FLASH_CFI +#define CONFIG_SYS_FLASH_PROTECTION +#define CONFIG_SYS_FLASH_USE_BUFFER_WRITE +#define CONFIG_SYS_MAX_FLASH_BANKS_DETECT 1 +#define CONFIG_SYS_MAX_FLASH_SECT 1024 + +/* + * Environment + */ +#define CONFIG_ENV_IS_IN_FLASH +#define CONFIG_ENV_SECT_SIZE 0x20000 +#define CONFIG_ENV_SIZE CONFIG_ENV_SECT_SIZE +#ifdef CONFIG_64BIT +# define CONFIG_ENV_ADDR \ + (0xffffffffb8000000 + (128 << 20) - CONFIG_ENV_SIZE) +#else +# define CONFIG_ENV_ADDR \ + (0xb8000000 + (128 << 20) - CONFIG_ENV_SIZE) +#endif + +#endif /* __CONFIGS_BOSTON_H__ */ diff --git a/include/configs/brppt1.h b/include/configs/brppt1.h index 6a239b59a6..e01d53565c 100644 --- a/include/configs/brppt1.h +++ b/include/configs/brppt1.h @@ -24,9 +24,7 @@ #define CONFIG_HW_WATCHDOG #define CONFIG_OMAP_WATCHDOG -#define CONFIG_SPL_WATCHDOG_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT /* Bootcount using the RTC block */ #define CONFIG_SYS_BOOTCOUNT_ADDR 0x44E3E000 #define CONFIG_BOOTCOUNT_LIMIT @@ -58,7 +56,6 @@ /* RAW SD card / eMMC locations. */ #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x300 /*addr. 0x60000 */ #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x200 /* 256 KB */ - #define CONFIG_SPL_MMC_SUPPORT #endif /* CONFIG_EMMC_BOOT */ /* @@ -90,7 +87,6 @@ #ifdef CONFIG_NAND #define CONFIG_SPL_NAND_AM33XX_BCH /* OMAP4 and later ELM support */ -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_BASE #define CONFIG_SPL_NAND_DRIVERS #define CONFIG_SPL_NAND_ECC @@ -257,8 +253,6 @@ MMCARGS #define CONFIG_OMAP3_SPI #define CONFIG_SF_DEFAULT_SPEED 24000000 -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x20000 #undef CONFIG_ENV_IS_NOWHERE diff --git a/include/configs/brxre1.h b/include/configs/brxre1.h index 11f56bfb4d..1e8426fdb5 100644 --- a/include/configs/brxre1.h +++ b/include/configs/brxre1.h @@ -42,7 +42,6 @@ #define CONFIG_SYS_OMAP24_I2C_SPEED_PSOC 20000 /* GPIO */ -#define CONFIG_SPL_GPIO_SUPPORT /* MMC/SD IP block */ #define CONFIG_MMC @@ -52,7 +51,6 @@ /* RAW SD card / eMMC locations. */ #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x300 /*addr. 0x60000 */ #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x200 /* 256 KB */ -#define CONFIG_SPL_MMC_SUPPORT /* Always 64 KiB env size */ #define CONFIG_ENV_SIZE (64 << 10) diff --git a/include/configs/bur_am335x_common.h b/include/configs/bur_am335x_common.h index 1de5edc301..e425cb9193 100644 --- a/include/configs/bur_am335x_common.h +++ b/include/configs/bur_am335x_common.h @@ -21,7 +21,6 @@ #define CONFIG_SYS_PTV 2 /* Divisor: 2^(PTV+1) => 8 */ #define CONFIG_SYS_TIMERBASE 0x48040000 /* Use Timer2 */ #define CONFIG_SPL_AM33XX_ENABLE_RTC32K_OSC /* enable 32kHz OSC at bootime */ -#define CONFIG_SPL_POWER_SUPPORT #define CONFIG_POWER_TPS65217 #define CONFIG_SYS_NO_FLASH /* have no NOR-flash */ @@ -113,12 +112,7 @@ #define CONFIG_SYS_SPL_MALLOC_SIZE CONFIG_SYS_MALLOC_LEN /* General parts of the framework, required. */ -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT #define CONFIG_SPL_BOARD_INIT -#define CONFIG_SPL_YMODEM_SUPPORT #define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/am33xx/u-boot-spl.lds" #endif /* ! __BUR_AM335X_COMMON_H__ */ diff --git a/include/configs/cgtqmx6eval.h b/include/configs/cgtqmx6eval.h index 9a0469da9f..36a29f1b47 100644 --- a/include/configs/cgtqmx6eval.h +++ b/include/configs/cgtqmx6eval.h @@ -18,10 +18,6 @@ #define CONFIG_MACH_TYPE 4122 #ifdef CONFIG_SPL -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SYS_SPI_U_BOOT_OFFS (64 * 1024) #define CONFIG_SPL_SPI_LOAD #include "imx6_spl.h" diff --git a/include/configs/chromebook_jerry.h b/include/configs/chromebook_jerry.h index d1f5b46089..180527a684 100644 --- a/include/configs/chromebook_jerry.h +++ b/include/configs/chromebook_jerry.h @@ -15,20 +15,13 @@ #include <configs/rk3288_common.h> #define CONFIG_ENV_IS_NOWHERE -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SPI_FLASH_GIGADEVICE #define CONFIG_CMD_SF_TEST -#undef CONFIG_SPL_GPIO_SUPPORT - #define CONFIG_KEYBOARD -#define CONFIG_SPL_POWER_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT - #define CONFIG_SYS_WHITE_ON_BLACK #define CONFIG_CONSOLE_SCROLL_LINES 10 diff --git a/include/configs/clearfog.h b/include/configs/clearfog.h index 6cbdee2fac..39909001f1 100644 --- a/include/configs/clearfog.h +++ b/include/configs/clearfog.h @@ -123,15 +123,8 @@ #define CONFIG_SPL_STACK (0x40000000 + ((192 - 16) << 10)) #define CONFIG_SPL_BOOTROM_SAVE (CONFIG_SPL_STACK + 4) -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT - #if CONFIG_SPL_BOOT_DEVICE == SPL_BOOT_SPI_NOR_FLASH /* SPL related SPI defines */ -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x20000 #define CONFIG_SYS_U_BOOT_OFFS CONFIG_SYS_SPI_U_BOOT_OFFS @@ -139,8 +132,6 @@ #if CONFIG_SPL_BOOT_DEVICE == SPL_BOOT_SDIO_MMC_CARD /* SPL related MMC defines */ -#define CONFIG_SPL_MMC_SUPPORT -#define CONFIG_SPL_LIBDISK_SUPPORT #define CONFIG_SYS_MMC_U_BOOT_OFFS (160 << 10) #define CONFIG_SYS_U_BOOT_OFFS CONFIG_SYS_MMC_U_BOOT_OFFS #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR ((CONFIG_SYS_U_BOOT_OFFS / 512)\ diff --git a/include/configs/cm_fx6.h b/include/configs/cm_fx6.h index c839b03591..46584fdf74 100644 --- a/include/configs/cm_fx6.h +++ b/include/configs/cm_fx6.h @@ -247,11 +247,8 @@ /* SPL */ #include "imx6_spl.h" -#define CONFIG_SPL_MMC_SUPPORT +#undef CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x80 /* offset 64 kb */ -#define CONFIG_SYS_MONITOR_LEN (CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS / 2 * 1024) -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SYS_SPI_U_BOOT_OFFS (64 * 1024) #define CONFIG_SPL_SPI_LOAD diff --git a/include/configs/cm_t35.h b/include/configs/cm_t35.h index 562ba56189..e4c9358d18 100644 --- a/include/configs/cm_t35.h +++ b/include/configs/cm_t35.h @@ -306,19 +306,9 @@ #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img" #define CONFIG_SPL_BOARD_INIT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBDISK_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT -#define CONFIG_SPL_FAT_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_BASE #define CONFIG_SPL_NAND_DRIVERS #define CONFIG_SPL_NAND_ECC -#define CONFIG_SPL_GPIO_SUPPORT -#define CONFIG_SPL_POWER_SUPPORT #define CONFIG_SPL_OMAP3_ID_NAND #define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/omap-common/u-boot-spl.lds" diff --git a/include/configs/cm_t43.h b/include/configs/cm_t43.h index 45fa37a316..92ff251310 100644 --- a/include/configs/cm_t43.h +++ b/include/configs/cm_t43.h @@ -91,8 +91,6 @@ #include <configs/ti_armv7_omap.h> #undef CONFIG_SPL_OS_BOOT -#undef CONFIG_SPL_GPIO_SUPPORT -#undef CONFIG_SPL_NAND_SUPPORT #undef CONFIG_SYS_MONITOR_LEN #undef CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR @@ -153,15 +151,10 @@ /* SPL defines. */ #define CONFIG_SPL_TEXT_BASE 0x40300350 #define CONFIG_SYS_SPL_ARGS_ADDR (CONFIG_SYS_SDRAM_BASE + (128 << 20)) -#define CONFIG_SPL_POWER_SUPPORT #define CONFIG_SYS_SPI_U_BOOT_OFFS (256 * 1024) #define CONFIG_SYS_MONITOR_LEN (512 * 1024) #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x480 -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_POWER_SUPPORT /* EEPROM */ #define CONFIG_CMD_EEPROM diff --git a/include/configs/cm_t54.h b/include/configs/cm_t54.h index 6b51b43bad..ddb1e97b6c 100644 --- a/include/configs/cm_t54.h +++ b/include/configs/cm_t54.h @@ -56,7 +56,6 @@ #define CONFIG_SUPPORT_EMMC_BOOT /* SATA Boot related defines */ -#define CONFIG_SPL_SATA_SUPPORT #define CONFIG_SPL_SATA_BOOT_DEVICE 0 #define CONFIG_SYS_SATA_FAT_BOOT_PARTITION 1 diff --git a/include/configs/colibri_imx7.h b/include/configs/colibri_imx7.h index 2ec392e4b1..ba1adea364 100644 --- a/include/configs/colibri_imx7.h +++ b/include/configs/colibri_imx7.h @@ -188,8 +188,6 @@ /* UBI stuff */ #define CONFIG_RBTREE #define CONFIG_LZO -#define CONFIG_CMD_UBI -#define CONFIG_MTD_UBI_FASTMAP #define CONFIG_CMD_UBIFS /* increases size by almost 60 KB */ /* Dynamic MTD partition support */ diff --git a/include/configs/colibri_t20.h b/include/configs/colibri_t20.h index d9954c1b55..b299e155a5 100644 --- a/include/configs/colibri_t20.h +++ b/include/configs/colibri_t20.h @@ -74,10 +74,8 @@ #define CONFIG_ENV_SIZE (SZ_64K) /* UBI */ -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS /* increases size by almost 60 KB */ #define CONFIG_LZO -#define CONFIG_MTD_UBI_FASTMAP #define CONFIG_RBTREE /* Debug commands */ diff --git a/include/configs/colibri_vf.h b/include/configs/colibri_vf.h index d3e4523af8..0ee08e61d8 100644 --- a/include/configs/colibri_vf.h +++ b/include/configs/colibri_vf.h @@ -70,8 +70,6 @@ #define CONFIG_RBTREE #define CONFIG_LZO -#define CONFIG_CMD_UBI -#define CONFIG_MTD_UBI_FASTMAP #define CONFIG_CMD_UBIFS /* increases size by almost 60 KB */ #define CONFIG_FEC_MXC diff --git a/include/configs/controlcenterd.h b/include/configs/controlcenterd.h index 29189a4336..fbe9c82106 100644 --- a/include/configs/controlcenterd.h +++ b/include/configs/controlcenterd.h @@ -45,12 +45,6 @@ #define CONFIG_ENABLE_36BIT_PHYS #define CONFIG_FSL_LAW /* Use common FSL init code */ -#ifdef CONFIG_TRAILBLAZER -#define CONFIG_IDENT_STRING " controlcenterd trailblazer 0.01" -#else -#define CONFIG_IDENT_STRING " controlcenterd 0.01" -#endif - #ifdef CONFIG_PHYS_64BIT #define CONFIG_ADDR_MAP #define CONFIG_SYS_NUM_ADDR_MAP 16 /* number of TLB1 entries */ diff --git a/include/configs/corvus.h b/include/configs/corvus.h index db90f92d98..6521ddeb16 100644 --- a/include/configs/corvus.h +++ b/include/configs/corvus.h @@ -160,13 +160,7 @@ #define CONFIG_SPL_BSS_START_ADDR CONFIG_SPL_MAX_SIZE #define CONFIG_SPL_BSS_MAX_SIZE (SZ_2K) -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT - #define CONFIG_SPL_BOARD_INIT -#define CONFIG_SPL_GPIO_SUPPORT -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_DRIVERS #define CONFIG_SPL_NAND_BASE #define CONFIG_SPL_NAND_ECC diff --git a/include/configs/da850evm.h b/include/configs/da850evm.h index ef0fd5979e..2403ca3148 100644 --- a/include/configs/da850evm.h +++ b/include/configs/da850evm.h @@ -147,8 +147,6 @@ #define CONFIG_ENV_SPI_MAX_HZ CONFIG_SF_DEFAULT_SPEED #ifdef CONFIG_USE_SPIFLASH -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x8000 #define CONFIG_SYS_SPI_U_BOOT_SIZE 0x40000 @@ -205,7 +203,6 @@ #define CONFIG_SYS_NAND_ECCSIZE 512 #define CONFIG_SYS_NAND_ECCBYTES 10 #define CONFIG_SYS_NAND_OOBSIZE 64 -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_BASE #define CONFIG_SPL_NAND_DRIVERS #define CONFIG_SPL_NAND_ECC @@ -301,7 +298,6 @@ #define CONFIG_MTD_PARTITIONS #define CONFIG_LZO #define CONFIG_RBTREE -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS #endif @@ -340,12 +336,7 @@ #define CONFIG_SYS_SPL_MALLOC_START (CONFIG_SYS_TEXT_BASE - \ CONFIG_SYS_MALLOC_LEN) #define CONFIG_SYS_SPL_MALLOC_SIZE CONFIG_SYS_MALLOC_LEN -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT #define CONFIG_SPL_LDSCRIPT "board/$(BOARDDIR)/u-boot-spl-da850evm.lds" #define CONFIG_SPL_STACK 0x8001ff00 #define CONFIG_SPL_TEXT_BASE 0x80000000 @@ -355,10 +346,7 @@ /* Load U-Boot Image From MMC */ #ifdef CONFIG_SPL_MMC_LOAD -#define CONFIG_SPL_MMC_SUPPORT -#define CONFIG_SPL_LIBDISK_SUPPORT #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x75 -#undef CONFIG_SPL_SPI_SUPPORT #undef CONFIG_SPL_SPI_LOAD #endif diff --git a/include/configs/db-88f6720.h b/include/configs/db-88f6720.h index 4e008124ad..a134889200 100644 --- a/include/configs/db-88f6720.h +++ b/include/configs/db-88f6720.h @@ -91,14 +91,7 @@ #define CONFIG_SPL_STACK (0x40000000 + ((192 - 16) << 10)) #define CONFIG_SPL_BOOTROM_SAVE (CONFIG_SPL_STACK + 4) -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT - /* SPL related SPI defines */ -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x20000 #define CONFIG_SYS_U_BOOT_OFFS CONFIG_SYS_SPI_U_BOOT_OFFS diff --git a/include/configs/db-88f6820-amc.h b/include/configs/db-88f6820-amc.h new file mode 100644 index 0000000000..a6d022191e --- /dev/null +++ b/include/configs/db-88f6820-amc.h @@ -0,0 +1,127 @@ +/* + * Copyright (C) 2014 Stefan Roese <sr@denx.de> + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#ifndef _CONFIG_DB_88F6820_AMC_H +#define _CONFIG_DB_88F6820_AMC_H + +/* + * High Level Configuration Options (easy to change) + */ + +#define CONFIG_DISPLAY_BOARDINFO_LATE + +/* + * TEXT_BASE needs to be below 16MiB, since this area is scrubbed + * for DDR ECC byte filling in the SPL before loading the main + * U-Boot into it. + */ +#define CONFIG_SYS_TEXT_BASE 0x00800000 +#define CONFIG_SYS_TCLK 200000000 /* 200MHz */ + +/* + * Commands configuration + */ +#define CONFIG_SYS_NO_FLASH /* Declare no flash (NOR/SPI) */ +#define CONFIG_CMD_ENV +#define CONFIG_CMD_PCI + +/* I2C */ +#define CONFIG_SYS_I2C +#define CONFIG_SYS_I2C_MVTWSI +#define CONFIG_I2C_MVTWSI_BASE0 MVEBU_TWSI_BASE +#define CONFIG_SYS_I2C_SLAVE 0x0 +#define CONFIG_SYS_I2C_SPEED 100000 + +/* SPI NOR flash default params, used by sf commands */ +#define CONFIG_SF_DEFAULT_BUS 1 +#define CONFIG_SF_DEFAULT_SPEED 1000000 +#define CONFIG_SF_DEFAULT_MODE SPI_MODE_3 + +/* Partition support */ +#define CONFIG_DOS_PARTITION +#define CONFIG_EFI_PARTITION + +/* Additional FS support/configuration */ +#define CONFIG_SUPPORT_VFAT + +/* USB/EHCI configuration */ +#define CONFIG_EHCI_IS_TDI + +/* Environment in SPI NOR flash */ +#define CONFIG_ENV_IS_IN_SPI_FLASH +#define CONFIG_ENV_SPI_BUS 1 +#define CONFIG_ENV_OFFSET (1 << 20) /* 1MiB in */ +#define CONFIG_ENV_SIZE (64 << 10) /* 64KiB */ +#define CONFIG_ENV_SECT_SIZE (256 << 10) /* 256KiB sectors */ + +#define CONFIG_PHY_MARVELL /* there is a marvell phy */ +#define PHY_ANEG_TIMEOUT 8000 /* PHY needs a longer aneg time */ + +/* PCIe support */ +#ifndef CONFIG_SPL_BUILD +#define CONFIG_PCI +#define CONFIG_PCI_MVEBU +#define CONFIG_PCI_PNP +#define CONFIG_PCI_SCAN_SHOW +#endif + +/* NAND */ +#define CONFIG_SYS_NAND_USE_FLASH_BBT +#define CONFIG_SYS_NAND_ONFI_DETECTION + +#define CONFIG_SYS_CONSOLE_INFO_QUIET /* don't print console @ startup */ +#define CONFIG_SYS_ALT_MEMTEST + +/* Keep device tree and initrd in lower memory so the kernel can access them */ +#define CONFIG_EXTRA_ENV_SETTINGS \ + "fdt_high=0x10000000\0" \ + "initrd_high=0x10000000\0" + +/* SPL */ +/* + * Select the boot device here + * + * Currently supported are: + * SPL_BOOT_SPI_NOR_FLASH - Booting via SPI NOR flash + * + * MMC is not populated on this board. + * NAND support may be added in the future. + */ +#define SPL_BOOT_SPI_NOR_FLASH 1 +#define CONFIG_SPL_BOOT_DEVICE SPL_BOOT_SPI_NOR_FLASH + +/* Defines for SPL */ +#define CONFIG_SPL_FRAMEWORK +#define CONFIG_SPL_SIZE (140 << 10) +#define CONFIG_SPL_TEXT_BASE 0x40000030 +#define CONFIG_SPL_MAX_SIZE (CONFIG_SPL_SIZE - 0x0030) + +#define CONFIG_SPL_BSS_START_ADDR (0x40000000 + CONFIG_SPL_SIZE) +#define CONFIG_SPL_BSS_MAX_SIZE (16 << 10) + +#ifdef CONFIG_SPL_BUILD +#define CONFIG_SYS_MALLOC_SIMPLE +#endif + +#define CONFIG_SPL_STACK (0x40000000 + ((192 - 16) << 10)) +#define CONFIG_SPL_BOOTROM_SAVE (CONFIG_SPL_STACK + 4) + +#if CONFIG_SPL_BOOT_DEVICE == SPL_BOOT_SPI_NOR_FLASH +/* SPL related SPI defines */ +#define CONFIG_SPL_SPI_LOAD +#define CONFIG_SYS_SPI_U_BOOT_OFFS 0x24000 +#define CONFIG_SYS_U_BOOT_OFFS CONFIG_SYS_SPI_U_BOOT_OFFS +#endif + +/* + * mv-common.h should be defined after CMD configs since it used them + * to enable certain macros + */ +#include "mv-common.h" +#undef CONFIG_SYS_MAXARGS +#define CONFIG_SYS_MAXARGS 96 + +#endif /* _CONFIG_DB_88F6820_AMC_H */ diff --git a/include/configs/db-88f6820-gp.h b/include/configs/db-88f6820-gp.h index 88614b3f45..48b4b2e09c 100644 --- a/include/configs/db-88f6820-gp.h +++ b/include/configs/db-88f6820-gp.h @@ -124,15 +124,8 @@ #define CONFIG_SPL_STACK (0x40000000 + ((192 - 16) << 10)) #define CONFIG_SPL_BOOTROM_SAVE (CONFIG_SPL_STACK + 4) -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT - #if CONFIG_SPL_BOOT_DEVICE == SPL_BOOT_SPI_NOR_FLASH /* SPL related SPI defines */ -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x24000 #define CONFIG_SYS_U_BOOT_OFFS CONFIG_SYS_SPI_U_BOOT_OFFS @@ -140,8 +133,6 @@ #if CONFIG_SPL_BOOT_DEVICE == SPL_BOOT_SDIO_MMC_CARD /* SPL related MMC defines */ -#define CONFIG_SPL_MMC_SUPPORT -#define CONFIG_SPL_LIBDISK_SUPPORT #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION 1 #define CONFIG_SYS_MMC_U_BOOT_OFFS (160 << 10) #define CONFIG_SYS_U_BOOT_OFFS CONFIG_SYS_MMC_U_BOOT_OFFS diff --git a/include/configs/db-mv784mp-gp.h b/include/configs/db-mv784mp-gp.h index 5cdfd1c8c3..c43dece3f4 100644 --- a/include/configs/db-mv784mp-gp.h +++ b/include/configs/db-mv784mp-gp.h @@ -116,14 +116,7 @@ #define CONFIG_SPL_STACK (0x40000000 + ((192 - 16) << 10)) #define CONFIG_SPL_BOOTROM_SAVE (CONFIG_SPL_STACK + 4) -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT - /* SPL related SPI defines */ -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x20000 #define CONFIG_SYS_U_BOOT_OFFS CONFIG_SYS_SPI_U_BOOT_OFFS diff --git a/include/configs/devkit3250.h b/include/configs/devkit3250.h index abf1394eab..4ad118e0c1 100644 --- a/include/configs/devkit3250.h +++ b/include/configs/devkit3250.h @@ -193,16 +193,12 @@ /* Use the framework and generic lib */ #define CONFIG_SPL_FRAMEWORK -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT /* SPL will use serial */ -#define CONFIG_SPL_SERIAL_SUPPORT /* SPL loads an image from NAND */ #define CONFIG_SPL_NAND_SIMPLE #define CONFIG_SPL_NAND_RAW_ONLY -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_DRIVERS #define CONFIG_SPL_NAND_ECC diff --git a/include/configs/devkit8000.h b/include/configs/devkit8000.h index 5112ef37b9..d17cdbba4b 100644 --- a/include/configs/devkit8000.h +++ b/include/configs/devkit8000.h @@ -199,7 +199,6 @@ #define CONFIG_SYS_SRAM_SIZE 0x10000 /* Defines for SPL */ -#undef CONFIG_SPL_MTD_SUPPORT #undef CONFIG_SPL_TEXT_BASE #define CONFIG_SPL_TEXT_BASE 0x40200000 /*CONFIG_SYS_SRAM_START*/ diff --git a/include/configs/dlvision-10g.h b/include/configs/dlvision-10g.h index 521604e70f..a5384a235b 100644 --- a/include/configs/dlvision-10g.h +++ b/include/configs/dlvision-10g.h @@ -17,7 +17,6 @@ * Include common defines/options for all AMCC eval boards */ #define CONFIG_HOSTNAME dlvsion-10g -#define CONFIG_IDENT_STRING " dlvision-10g 0.06" #include "amcc-common.h" #define CONFIG_BOARD_EARLY_INIT_F diff --git a/include/configs/dlvision.h b/include/configs/dlvision.h index 4dda3194fd..57640da325 100644 --- a/include/configs/dlvision.h +++ b/include/configs/dlvision.h @@ -17,7 +17,6 @@ * Include common defines/options for all AMCC eval boards */ #define CONFIG_HOSTNAME dlvision -#define CONFIG_IDENT_STRING " dlvision 0.02" #include "amcc-common.h" #define CONFIG_BOARD_EARLY_INIT_F /* call board_early_init_f */ diff --git a/include/configs/dns325.h b/include/configs/dns325.h index 7ee274ea78..23c173e8d2 100644 --- a/include/configs/dns325.h +++ b/include/configs/dns325.h @@ -18,7 +18,6 @@ */ #define MACH_TYPE_DNS325 3800 #define CONFIG_MACH_TYPE MACH_TYPE_DNS325 -#define CONFIG_IDENT_STRING "\nD-Link DNS-325" /* * High Level Configuration Options (easy to change) diff --git a/include/configs/dockstar.h b/include/configs/dockstar.h index cd05857e88..781a8b573f 100644 --- a/include/configs/dockstar.h +++ b/include/configs/dockstar.h @@ -13,11 +13,6 @@ #define _CONFIG_DOCKSTAR_H /* - * Version number information - */ -#define CONFIG_IDENT_STRING "\nSeagate FreeAgent DockStar" - -/* * High Level Configuration Options (easy to change) */ #define CONFIG_FEROCEON_88FR131 1 /* CPU Core subversion */ @@ -87,7 +82,6 @@ * File system */ #define CONFIG_CMD_JFFS2 -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS #define CONFIG_RBTREE #define CONFIG_MTD_DEVICE /* needed for mtdparts commands */ diff --git a/include/configs/dra7xx_evm.h b/include/configs/dra7xx_evm.h index 8d5dbc03de..194804c293 100644 --- a/include/configs/dra7xx_evm.h +++ b/include/configs/dra7xx_evm.h @@ -182,11 +182,6 @@ #define CONFIG_SYS_SPI_ARGS_OFFS 0x140000 #define CONFIG_SYS_SPI_ARGS_SIZE 0x80000 #if defined(CONFIG_QSPI_BOOT) -/* In SPL, use the environment and discard MMC support for space. */ -#ifdef CONFIG_SPL_BUILD -#undef CONFIG_SPL_MMC_SUPPORT -#endif -#define CONFIG_SPL_ENV_SUPPORT #define CONFIG_ENV_IS_IN_SPI_FLASH #define CONFIG_SYS_REDUNDAND_ENVIRONMENT #define CONFIG_ENV_SPI_MAX_HZ CONFIG_SF_DEFAULT_SPEED @@ -197,11 +192,8 @@ #endif /* SPI SPL */ -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_DMA_SUPPORT #define CONFIG_TI_EDMA3 #define CONFIG_SPL_SPI_LOAD -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x40000 #define CONFIG_SUPPORT_EMMC_BOOT diff --git a/include/configs/draco.h b/include/configs/draco.h index 889178c283..04240c7899 100644 --- a/include/configs/draco.h +++ b/include/configs/draco.h @@ -48,10 +48,6 @@ #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x300 -#undef CONFIG_SPL_NET_SUPPORT -#undef CONFIG_SPL_NET_VCI_STRING -#undef CONFIG_SPL_ETH_SUPPORT - #undef CONFIG_MII #undef CONFIG_PHY_GIGE #define CONFIG_PHY_SMSC diff --git a/include/configs/dragonboard410c.h b/include/configs/dragonboard410c.h index cc7ab8365d..1b440eaf0f 100644 --- a/include/configs/dragonboard410c.h +++ b/include/configs/dragonboard410c.h @@ -12,8 +12,6 @@ #include <linux/sizes.h> #include <asm/arch/sysmap-apq8016.h> -#define CONFIG_IDENT_STRING "\nQualcomm-DragonBoard 410C" - #define CONFIG_MISC_INIT_R /* To stop autoboot */ /* Physical Memory Map */ diff --git a/include/configs/dreamplug.h b/include/configs/dreamplug.h index c78c949f13..252e5f5d1e 100644 --- a/include/configs/dreamplug.h +++ b/include/configs/dreamplug.h @@ -26,11 +26,6 @@ #endif /* - * Version number information - */ -#define CONFIG_IDENT_STRING "\nMarvell-DreamPlug" - -/* * High Level Configuration Options (easy to change) */ #define CONFIG_SHEEVA_88SV131 1 /* CPU Core subversion */ diff --git a/include/configs/ds414.h b/include/configs/ds414.h index 11c1ec4843..4309c5621d 100644 --- a/include/configs/ds414.h +++ b/include/configs/ds414.h @@ -122,14 +122,7 @@ #define CONFIG_SPL_STACK (0x40000000 + ((192 - 16) << 10)) #define CONFIG_SPL_BOOTROM_SAVE (CONFIG_SPL_STACK + 4) -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT - /* SPL related SPI defines */ -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x24000 diff --git a/include/configs/ea20.h b/include/configs/ea20.h index 910bcd4028..f49284c070 100644 --- a/include/configs/ea20.h +++ b/include/configs/ea20.h @@ -160,7 +160,6 @@ #define CONFIG_MTD_PARTITIONS #define CONFIG_LZO #define CONFIG_RBTREE -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS #define CONFIG_NAND_DAVINCI diff --git a/include/configs/edminiv2.h b/include/configs/edminiv2.h index c30b63bd24..982d526263 100644 --- a/include/configs/edminiv2.h +++ b/include/configs/edminiv2.h @@ -17,10 +17,6 @@ */ #define CONFIG_SPL_FRAMEWORK -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_NOR_SUPPORT #define CONFIG_SPL_TEXT_BASE 0xffff0000 #define CONFIG_SPL_MAX_SIZE 0x0000fff0 #define CONFIG_SPL_STACK 0x00020000 @@ -35,12 +31,6 @@ #define CONFIG_SYS_TEXT_BASE 0x00800000 /* - * Version number information - */ - -#define CONFIG_IDENT_STRING " EDMiniV2" - -/* * High Level Configuration Options (easy to change) */ diff --git a/include/configs/el6x_common.h b/include/configs/el6x_common.h index 55ef612f51..81b79b20e3 100644 --- a/include/configs/el6x_common.h +++ b/include/configs/el6x_common.h @@ -25,10 +25,6 @@ #define CONFIG_MXC_UART #ifdef CONFIG_SPL -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SYS_SPI_U_BOOT_OFFS (64 * 1024) #define CONFIG_SPL_SPI_LOAD #include "imx6_spl.h" diff --git a/include/configs/espresso7420.h b/include/configs/espresso7420.h index c6a756d2b9..0a50154dda 100644 --- a/include/configs/espresso7420.h +++ b/include/configs/espresso7420.h @@ -24,7 +24,6 @@ /* select serial console configuration */ #define CONFIG_DEFAULT_CONSOLE "console=ttySAC1,115200n8\0" -#define CONFIG_IDENT_STRING " for ESPRESSO7420" #define CONFIG_DEFAULT_CONSOLE "console=ttySAC1,115200n8\0" /* DRAM Memory Banks */ diff --git a/include/configs/etamin.h b/include/configs/etamin.h index 4919cfe353..fda18b206d 100644 --- a/include/configs/etamin.h +++ b/include/configs/etamin.h @@ -106,10 +106,6 @@ #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x300 -#undef CONFIG_SPL_NET_SUPPORT -#undef CONFIG_SPL_NET_VCI_STRING -#undef CONFIG_SPL_ETH_SUPPORT - #undef CONFIG_MII #undef CONFIG_PHY_GIGE #define CONFIG_PHY_SMSC diff --git a/include/configs/ethernut5.h b/include/configs/ethernut5.h index ce254b3b43..0895497ed3 100644 --- a/include/configs/ethernut5.h +++ b/include/configs/ethernut5.h @@ -96,7 +96,6 @@ #define CONFIG_CMD_DATE #define CONFIG_CMD_REISER #define CONFIG_CMD_SAVES -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS #define CONFIG_CMD_UNZIP #endif diff --git a/include/configs/evb_rk3288.h b/include/configs/evb_rk3288.h index 342557fff3..390c243cae 100644 --- a/include/configs/evb_rk3288.h +++ b/include/configs/evb_rk3288.h @@ -10,8 +10,6 @@ #define ROCKCHIP_DEVICE_SETTINGS #include <configs/rk3288_common.h> -#define CONFIG_SPL_MMC_SUPPORT - #define CONFIG_ENV_IS_IN_MMC #define CONFIG_SYS_MMC_ENV_DEV 1 /* SPL @ 32k for ~36k diff --git a/include/configs/exynos5-common.h b/include/configs/exynos5-common.h index 421002d0be..51a0d190db 100644 --- a/include/configs/exynos5-common.h +++ b/include/configs/exynos5-common.h @@ -57,10 +57,6 @@ #define COPY_BL2_FNPTR_ADDR 0x02020030 #define CONFIG_SUPPORT_EMMC_BOOT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT - /* specific .lds file */ #define CONFIG_SPL_LDSCRIPT "board/samsung/common/exynos-uboot-spl.lds" diff --git a/include/configs/fennec_rk3288.h b/include/configs/fennec_rk3288.h index 342557fff3..390c243cae 100644 --- a/include/configs/fennec_rk3288.h +++ b/include/configs/fennec_rk3288.h @@ -10,8 +10,6 @@ #define ROCKCHIP_DEVICE_SETTINGS #include <configs/rk3288_common.h> -#define CONFIG_SPL_MMC_SUPPORT - #define CONFIG_ENV_IS_IN_MMC #define CONFIG_SYS_MMC_ENV_DEV 1 /* SPL @ 32k for ~36k diff --git a/include/configs/firefly-rk3288.h b/include/configs/firefly-rk3288.h index a29f55709d..ee924c3816 100644 --- a/include/configs/firefly-rk3288.h +++ b/include/configs/firefly-rk3288.h @@ -14,8 +14,6 @@ #include <configs/rk3288_common.h> -#define CONFIG_SPL_MMC_SUPPORT - #define CONFIG_ENV_IS_IN_MMC #define CONFIG_SYS_MMC_ENV_DEV 0 /* SPL @ 32k for ~36k diff --git a/include/configs/goflexhome.h b/include/configs/goflexhome.h index ffbe66072e..ae6539cb63 100644 --- a/include/configs/goflexhome.h +++ b/include/configs/goflexhome.h @@ -16,11 +16,6 @@ #define _CONFIG_GOFLEXHOME_H /* - * Version number information - */ -#define CONFIG_IDENT_STRING "\nSeagate GoFlex Home" - -/* * High Level Configuration Options (easy to change) */ #define CONFIG_FEROCEON_88FR131 1 /* CPU Core subversion */ diff --git a/include/configs/gplugd.h b/include/configs/gplugd.h index 82b1830999..c1b43fd0fe 100644 --- a/include/configs/gplugd.h +++ b/include/configs/gplugd.h @@ -26,11 +26,6 @@ #endif /* - * Version number information - */ -#define CONFIG_IDENT_STRING "\nMarvell-gplugD" - -/* * High Level Configuration Options */ #define CONFIG_SHEEVA_88SV331xV5 1 /* CPU Core subversion */ diff --git a/include/configs/gr_cpci_ax2000.h b/include/configs/gr_cpci_ax2000.h index 8b573545cd..842ed16190 100644 --- a/include/configs/gr_cpci_ax2000.h +++ b/include/configs/gr_cpci_ax2000.h @@ -340,9 +340,6 @@ /* no DDR2 Controller */ #undef CONFIG_SYS_GRLIB_GAISLER_DDR2SPA1 -/* Identification string */ -#define CONFIG_IDENT_STRING " Gaisler LEON3 GR-CPCI-AX2000" - /* default kernel command line */ #define CONFIG_DEFAULT_KERNEL_COMMAND_LINE "console=ttyS0,38400\0\0" diff --git a/include/configs/gr_ep2s60.h b/include/configs/gr_ep2s60.h index 265f03c1d0..fa10676a44 100644 --- a/include/configs/gr_ep2s60.h +++ b/include/configs/gr_ep2s60.h @@ -306,9 +306,6 @@ /* no DDR2 Controller */ #undef CONFIG_SYS_GRLIB_GAISLER_DDR2SPA1 -/* Identification string */ -#define CONFIG_IDENT_STRING " Gaisler LEON3 EP2S60" - /* default kernel command line */ #define CONFIG_DEFAULT_KERNEL_COMMAND_LINE "console=ttyS0,38400\0\0" diff --git a/include/configs/gr_xc3s_1500.h b/include/configs/gr_xc3s_1500.h index 36acf01631..9e00ff93e4 100644 --- a/include/configs/gr_xc3s_1500.h +++ b/include/configs/gr_xc3s_1500.h @@ -272,9 +272,6 @@ /* no DDR2 Controller */ #undef CONFIG_SYS_GRLIB_GAISLER_DDR2SPA1 -/* Identification string */ -#define CONFIG_IDENT_STRING " Gaisler LEON3 GR-XC3S-1500" - /* default kernel command line */ #define CONFIG_DEFAULT_KERNEL_COMMAND_LINE "console=ttyS0,38400\0\0" diff --git a/include/configs/grsim.h b/include/configs/grsim.h index c2656fbeb2..5736540ff1 100644 --- a/include/configs/grsim.h +++ b/include/configs/grsim.h @@ -292,8 +292,6 @@ /* default kernel command line */ #define CONFIG_DEFAULT_KERNEL_COMMAND_LINE "console=ttyS0,38400\0\0" -#define CONFIG_IDENT_STRING " Gaisler GRSIM" - /* TSIM command: * $ ./tsim-leon3 -mmu -cas * diff --git a/include/configs/grsim_leon2.h b/include/configs/grsim_leon2.h index 59adbdc102..0f3204e6f4 100644 --- a/include/configs/grsim_leon2.h +++ b/include/configs/grsim_leon2.h @@ -287,6 +287,4 @@ /* default kernel command line */ #define CONFIG_DEFAULT_KERNEL_COMMAND_LINE "console=ttyS0,38400\0\0" -#define CONFIG_IDENT_STRING " Gaisler GRSIM LEON2" - #endif /* __CONFIG_H */ diff --git a/include/configs/guruplug.h b/include/configs/guruplug.h index 5907e98f59..5ac29db240 100644 --- a/include/configs/guruplug.h +++ b/include/configs/guruplug.h @@ -11,11 +11,6 @@ #define _CONFIG_GURUPLUG_H /* - * Version number information - */ -#define CONFIG_IDENT_STRING "\nMarvell-GuruPlug" - -/* * High Level Configuration Options (easy to change) */ #define CONFIG_SHEEVA_88SV131 1 /* CPU Core subversion */ diff --git a/include/configs/gw_ventana.h b/include/configs/gw_ventana.h index 92d64a9ce6..f01a74a57b 100644 --- a/include/configs/gw_ventana.h +++ b/include/configs/gw_ventana.h @@ -9,9 +9,6 @@ /* SPL */ #define CONFIG_SPL_BOARD_INIT -#define CONFIG_SPL_NAND_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT -#define CONFIG_SPL_POWER_SUPPORT /* Location in NAND to read U-Boot from */ #define CONFIG_SYS_NAND_U_BOOT_OFFS (14 * SZ_1M) @@ -32,7 +29,6 @@ #include "imx6_spl.h" /* common IMX6 SPL configuration */ #include "mx6_common.h" -#undef CONFIG_SPL_EXT_SUPPORT #undef CONFIG_DISPLAY_BOARDINFO #define CONFIG_DISPLAY_BOARDINFO_LATE @@ -152,7 +148,6 @@ #define CONFIG_CMD_HDMIDETECT /* detect HDMI output device */ #define CONFIG_CMD_GSC #define CONFIG_CMD_EECONFIG /* Gateworks EEPROM config cmd */ -#define CONFIG_CMD_UBI #define CONFIG_RBTREE /* Ethernet support */ diff --git a/include/configs/hikey.h b/include/configs/hikey.h index 5e5aa19b4a..39faf80580 100644 --- a/include/configs/hikey.h +++ b/include/configs/hikey.h @@ -21,8 +21,6 @@ #define CONFIG_SUPPORT_RAW_INITRD -#define CONFIG_IDENT_STRING "hikey" - #define CONFIG_BOARD_EARLY_INIT_F /* Physical Memory Map */ diff --git a/include/configs/hrcon.h b/include/configs/hrcon.h index c5e6828e2b..99dcb75363 100644 --- a/include/configs/hrcon.h +++ b/include/configs/hrcon.h @@ -20,12 +20,6 @@ #define CONFIG_SYS_TEXT_BASE 0xFE000000 -#ifdef CONFIG_HRCON_DH -#define CONFIG_IDENT_STRING " hrcon dh 0.01" -#else -#define CONFIG_IDENT_STRING " hrcon 0.01" -#endif - #define CONFIG_BOARD_EARLY_INIT_F #define CONFIG_BOARD_EARLY_INIT_R #define CONFIG_LAST_STAGE_INIT diff --git a/include/configs/ib62x0.h b/include/configs/ib62x0.h index ab236075d2..f686c7ff57 100644 --- a/include/configs/ib62x0.h +++ b/include/configs/ib62x0.h @@ -10,11 +10,6 @@ #define _CONFIG_IB62x0_H /* - * Version number information - */ -#define CONFIG_IDENT_STRING " RaidSonic ICY BOX IB-NAS62x0" - -/* * High level configuration options */ #define CONFIG_FEROCEON_88FR131 /* CPU Core subversion */ diff --git a/include/configs/iconnect.h b/include/configs/iconnect.h index f0d4250409..633941b7dd 100644 --- a/include/configs/iconnect.h +++ b/include/configs/iconnect.h @@ -10,11 +10,6 @@ #define _CONFIG_ICONNECT_H /* - * Version number information - */ -#define CONFIG_IDENT_STRING " Iomega iConnect" - -/* * High level configuration options */ #define CONFIG_FEROCEON_88FR131 /* CPU Core subversion */ @@ -95,7 +90,6 @@ * File system */ #define CONFIG_CMD_JFFS2 -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS #define CONFIG_RBTREE #define CONFIG_MTD_DEVICE diff --git a/include/configs/ids8313.h b/include/configs/ids8313.h index c9d3b93fb5..112e8856b0 100644 --- a/include/configs/ids8313.h +++ b/include/configs/ids8313.h @@ -533,7 +533,6 @@ /* UBI Support */ #define CONFIG_CMD_NAND_TRIMFFS -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS #define CONFIG_RBTREE #define CONFIG_LZO diff --git a/include/configs/imgtec_xilfpga.h b/include/configs/imgtec_xilfpga.h new file mode 100644 index 0000000000..0a7fe60214 --- /dev/null +++ b/include/configs/imgtec_xilfpga.h @@ -0,0 +1,68 @@ +/* + * Copyright (C) 2016, Imagination Technologies Ltd. + * + * Zubair Lutfullah Kakakhel <Zubair.Kakakhel@imgtec.com> + * + * SPDX-License-Identifier: GPL-2.0+ + * + * Imagination Technologies Ltd. MIPSfpga + */ + +#ifndef __XILFPGA_CONFIG_H +#define __XILFPGA_CONFIG_H + +/* BootROM + MIG is pretty smart. DDR and Cache initialized */ +#define CONFIG_SKIP_LOWLEVEL_INIT + +/*-------------------------------------------- + * CPU configuration + */ +/* CPU Timer rate */ +#define CONFIG_SYS_MIPS_TIMER_FREQ 50000000 + +/* Cache Configuration */ +#define CONFIG_SYS_MIPS_CACHE_MODE CONF_CM_CACHABLE_NONCOHERENT + +/*---------------------------------------------------------------------- + * Memory Layout + */ + +/* SDRAM Configuration (for final code, data, stack, heap) */ +#define CONFIG_SYS_SDRAM_BASE 0x80000000 +#define CONFIG_SYS_SDRAM_SIZE 0x08000000 /* 128 Mbytes */ +#define CONFIG_SYS_INIT_SP_ADDR \ + (CONFIG_SYS_SDRAM_BASE + CONFIG_SYS_SDRAM_SIZE - 0x1000) + +#define CONFIG_SYS_MALLOC_LEN (256 << 10) +#define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE +#define CONFIG_SYS_LOAD_ADDR 0x80500000 /* default load address */ + +/*---------------------------------------------------------------------- + * Commands + */ +#define CONFIG_SYS_LONGHELP /* undef to save memory */ + +/*------------------------------------------------- + * FLASH configuration + */ +#define CONFIG_SYS_NO_FLASH + +/*------------------------------------------------------------ + * Console Configuration + */ +#define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buffer Size */ +#define CONFIG_SYS_MAXARGS 16 /* max number of command args*/ +#define CONFIG_BAUDRATE 115200 + +/* ------------------------------------------------- + * Environment + */ +#define CONFIG_ENV_IS_NOWHERE 1 +#define CONFIG_ENV_SIZE 0x4000 + +/* --------------------------------------------------------------------- + * Board boot configuration + */ +#define CONFIG_TIMESTAMP /* Print image info with timestamp */ + +#endif /* __XILFPGA_CONFIG_H */ diff --git a/include/configs/imx6_spl.h b/include/configs/imx6_spl.h index 9bd9f6e3e4..76d1ca088d 100644 --- a/include/configs/imx6_spl.h +++ b/include/configs/imx6_spl.h @@ -29,17 +29,10 @@ #define CONFIG_SPL_TEXT_BASE 0x00908000 #define CONFIG_SPL_MAX_SIZE 0x10000 #define CONFIG_SPL_STACK 0x0091FFB8 -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT -#define CONFIG_SPL_WATCHDOG_SUPPORT /* NAND support */ #if defined(CONFIG_SPL_NAND_SUPPORT) #define CONFIG_SPL_NAND_MXS -#define CONFIG_SPL_DMA_SUPPORT #endif /* MMC support */ @@ -49,7 +42,6 @@ #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 #define CONFIG_SYS_MONITOR_LEN (CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS/2*1024) #define CONFIG_SPL_ABORT_ON_RAW_IMAGE -#define CONFIG_SPL_EXT_SUPPORT #endif /* SATA support */ @@ -57,13 +49,11 @@ #define CONFIG_SPL_SATA_BOOT_DEVICE 0 #define CONFIG_SYS_SATA_FAT_BOOT_PARTITION 1 #define CONFIG_SPL_ABORT_ON_RAW_IMAGE -#define CONFIG_SPL_EXT_SUPPORT #endif /* Define the payload for FAT/EXT support */ #if defined(CONFIG_SPL_FAT_SUPPORT) || defined(CONFIG_SPL_EXT_SUPPORT) #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img" -#define CONFIG_SPL_LIBDISK_SUPPORT #endif #if defined(CONFIG_MX6SX) || defined(CONFIG_MX6UL) || defined(CONFIG_MX6SL) diff --git a/include/configs/intip.h b/include/configs/intip.h index c5af36579c..5aa8faebee 100644 --- a/include/configs/intip.h +++ b/include/configs/intip.h @@ -24,10 +24,8 @@ #define CONFIG_460EX 1 /* Specific PPC460EX */ #ifdef CONFIG_DEVCONCENTER #define CONFIG_HOSTNAME devconcenter -#define CONFIG_IDENT_STRING " devconcenter 0.06" #else #define CONFIG_HOSTNAME intip -#define CONFIG_IDENT_STRING " intip 0.06" #endif #define CONFIG_440 1 diff --git a/include/configs/io.h b/include/configs/io.h index 544d044019..8c9ee0e1ae 100644 --- a/include/configs/io.h +++ b/include/configs/io.h @@ -17,7 +17,6 @@ * Include common defines/options for all AMCC eval boards */ #define CONFIG_HOSTNAME io -#define CONFIG_IDENT_STRING " io 0.06" #include "amcc-common.h" #define CONFIG_BOARD_EARLY_INIT_F diff --git a/include/configs/io64.h b/include/configs/io64.h index 14ffb33d50..894da84f7e 100644 --- a/include/configs/io64.h +++ b/include/configs/io64.h @@ -36,7 +36,6 @@ * Include common defines/options for all AMCC eval boards */ #define CONFIG_HOSTNAME io64 -#define CONFIG_IDENT_STRING " io64 0.02" #include "amcc-common.h" #define CONFIG_BOARD_EARLY_INIT_F diff --git a/include/configs/iocon.h b/include/configs/iocon.h index d85a76c749..87f56f187b 100644 --- a/include/configs/iocon.h +++ b/include/configs/iocon.h @@ -17,7 +17,6 @@ * Include common defines/options for all AMCC eval boards */ #define CONFIG_HOSTNAME iocon -#define CONFIG_IDENT_STRING " iocon 0.06" #include "amcc-common.h" /* Reclaim some space. */ diff --git a/include/configs/ipam390.h b/include/configs/ipam390.h index 37a5fa40f1..5f07629a59 100644 --- a/include/configs/ipam390.h +++ b/include/configs/ipam390.h @@ -178,7 +178,6 @@ #define CONFIG_SYS_NAND_ECCSIZE 512 #define CONFIG_SYS_NAND_ECCBYTES 10 #define CONFIG_SYS_NAND_OOBSIZE 64 -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_BASE #define CONFIG_SPL_NAND_DRIVERS #define CONFIG_SPL_NAND_ECC @@ -266,7 +265,6 @@ #define CONFIG_MTD_PARTITIONS #define CONFIG_LZO #define CONFIG_RBTREE -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS #define MTDIDS_NAME_STR "davinci_nand.0" @@ -285,9 +283,6 @@ #define CONFIG_SYS_SPL_MALLOC_START (CONFIG_SYS_TEXT_BASE - \ CONFIG_SYS_MALLOC_LEN) #define CONFIG_SYS_SPL_MALLOC_SIZE CONFIG_SYS_MALLOC_LEN -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT #define CONFIG_SPL_LDSCRIPT "board/$(BOARDDIR)/u-boot-spl-ipam390.lds" #define CONFIG_SPL_STACK 0x8001ff00 #define CONFIG_SPL_TEXT_BASE 0x80000000 @@ -309,7 +304,6 @@ #define CONFIG_CMD_SPL_WRITE_SIZE 0x400 /* GPIO support */ -#define CONFIG_SPL_GPIO_SUPPORT #define CONFIG_DA8XX_GPIO #define CONFIG_IPAM390_GPIO_BOOTMODE ((16 * 7) + 14) diff --git a/include/configs/kc1.h b/include/configs/kc1.h index c1a9e643ec..32be5281ca 100644 --- a/include/configs/kc1.h +++ b/include/configs/kc1.h @@ -129,15 +129,6 @@ #define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/omap-common/u-boot-spl.lds" #define CONFIG_SPL_BOARD_INIT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBDISK_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_POWER_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT - #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION 2 /* diff --git a/include/configs/km/keymile-common.h b/include/configs/km/keymile-common.h index 8e1de7c817..4ab96bf939 100644 --- a/include/configs/km/keymile-common.h +++ b/include/configs/km/keymile-common.h @@ -65,7 +65,6 @@ #define CONFIG_BOOTP_HOSTNAME /* UBI Support for all Keymile boards */ -#define CONFIG_CMD_UBI #define CONFIG_RBTREE #define CONFIG_MTD_PARTITIONS #define CONFIG_MTD_DEVICE diff --git a/include/configs/km_kirkwood.h b/include/configs/km_kirkwood.h index b377c41b04..0d78cfaed6 100644 --- a/include/configs/km_kirkwood.h +++ b/include/configs/km_kirkwood.h @@ -23,14 +23,12 @@ /* KM_KIRKWOOD */ #if defined(CONFIG_KM_KIRKWOOD) -#define CONFIG_IDENT_STRING "\nKeymile Kirkwood" #define CONFIG_HOSTNAME km_kirkwood #define CONFIG_KM_DISABLE_PCIE #define CONFIG_KM_IVM_BUS 1 /* I2C2 (Mux-Port 1)*/ /* KM_KIRKWOOD_PCI */ #elif defined(CONFIG_KM_KIRKWOOD_PCI) -#define CONFIG_IDENT_STRING "\nKeymile Kirkwood PCI" #define CONFIG_HOSTNAME km_kirkwood_pci #define CONFIG_KM_IVM_BUS 1 /* I2C2 (Mux-Port 1)*/ #define CONFIG_KM_FPGA_CONFIG @@ -39,7 +37,6 @@ /* KM_KIRKWOOD_128M16 */ #elif defined(CONFIG_KM_KIRKWOOD_128M16) -#define CONFIG_IDENT_STRING "\nKeymile Kirkwood 128M16" #define CONFIG_HOSTNAME km_kirkwood_128m16 #undef CONFIG_SYS_KWD_CONFIG #define CONFIG_SYS_KWD_CONFIG $(CONFIG_BOARDDIR)/kwbimage_128M16_1.cfg @@ -51,10 +48,8 @@ #define CONFIG_KM_IVM_BUS 1 /* I2C2 (Mux-Port 1)*/ # if defined(CONFIG_KM_NUSA) -#define CONFIG_IDENT_STRING "\nKeymile NUSA" #define CONFIG_HOSTNAME kmnusa # elif defined(CONFIG_KM_SUGP1) -#define CONFIG_IDENT_STRING "\nKeymile SUGP1" #define CONFIG_HOSTNAME kmsugp1 #define KM_PCIE_RESET_MPP7 #endif @@ -69,7 +64,6 @@ /* KM_MGCOGE3UN */ #elif defined(CONFIG_KM_MGCOGE3UN) -#define CONFIG_IDENT_STRING "\nKeymile COGE3UN" #define CONFIG_HOSTNAME mgcoge3un #define CONFIG_KM_IVM_BUS 1 /* I2C2 (Mux-Port 1)*/ #undef CONFIG_SYS_KWD_CONFIG @@ -81,7 +75,6 @@ /* KMCOGE5UN */ #elif defined(CONFIG_KM_COGE5UN) -#define CONFIG_IDENT_STRING "\nKeymile COGE5UN" #define CONFIG_KM_IVM_BUS 1 /* I2C2 (Mux-Port 1)*/ #undef CONFIG_SYS_KWD_CONFIG #define CONFIG_SYS_KWD_CONFIG $(CONFIG_BOARDDIR)/kwbimage_256M8_1.cfg @@ -93,7 +86,6 @@ /* KM_PORTL2 */ #elif defined(CONFIG_KM_PORTL2) -#define CONFIG_IDENT_STRING "\nKeymile Port-L2" #define CONFIG_HOSTNAME portl2 #define CONFIG_KM_IVM_BUS 1 /* I2C2 (Mux-Port 1)*/ #define CONFIG_KM_PIGGY4_88E6061 @@ -101,7 +93,6 @@ /* KM_SUV31 */ #elif defined(CONFIG_KM_SUV31) #define CONFIG_KM_IVM_BUS 1 /* I2C2 (Mux-Port 1)*/ -#define CONFIG_IDENT_STRING "\nKeymile SUV31" #define CONFIG_HOSTNAME kmsuv31 #undef CONFIG_SYS_KWD_CONFIG #define CONFIG_SYS_KWD_CONFIG $(CONFIG_BOARDDIR)/kwbimage_128M16_1.cfg diff --git a/include/configs/lacie_kw.h b/include/configs/lacie_kw.h index 9b2c575bad..bd6c83e8a7 100644 --- a/include/configs/lacie_kw.h +++ b/include/configs/lacie_kw.h @@ -12,27 +12,20 @@ */ #if defined(CONFIG_INETSPACE_V2) #define CONFIG_MACH_TYPE MACH_TYPE_INETSPACE_V2 -#define CONFIG_IDENT_STRING " IS v2" #elif defined(CONFIG_NETSPACE_V2) #define CONFIG_MACH_TYPE MACH_TYPE_NETSPACE_V2 -#define CONFIG_IDENT_STRING " NS v2" #elif defined(CONFIG_NETSPACE_LITE_V2) #define MACH_TYPE_NETSPACE_LITE_V2 2983 /* missing in mach-types.h */ #define CONFIG_MACH_TYPE MACH_TYPE_NETSPACE_LITE_V2 -#define CONFIG_IDENT_STRING " NS v2 Lite" #elif defined(CONFIG_NETSPACE_MINI_V2) #define MACH_TYPE_NETSPACE_MINI_V2 2831 /* missing in mach-types.h */ #define CONFIG_MACH_TYPE MACH_TYPE_NETSPACE_MINI_V2 -#define CONFIG_IDENT_STRING " NS v2 Mini" #elif defined(CONFIG_NETSPACE_MAX_V2) #define CONFIG_MACH_TYPE MACH_TYPE_NETSPACE_MAX_V2 -#define CONFIG_IDENT_STRING " NS Max v2" #elif defined(CONFIG_D2NET_V2) #define CONFIG_MACH_TYPE MACH_TYPE_D2NET_V2 -#define CONFIG_IDENT_STRING " D2 v2" #elif defined(CONFIG_NET2BIG_V2) #define CONFIG_MACH_TYPE MACH_TYPE_NET2BIG_V2 -#define CONFIG_IDENT_STRING " 2Big v2" #else #error "Unknown board" #endif diff --git a/include/configs/ls1021aqds.h b/include/configs/ls1021aqds.h index 7a256da1f2..0d72e6993d 100644 --- a/include/configs/ls1021aqds.h +++ b/include/configs/ls1021aqds.h @@ -67,15 +67,6 @@ unsigned long get_board_ddr_clk(void); #endif #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_LDSCRIPT "arch/$(ARCH)/cpu/u-boot-spl.lds" -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_ENV_SUPPORT -#define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_WATCHDOG_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_DRIVERS_MISC_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0xe8 #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x600 @@ -105,15 +96,6 @@ unsigned long get_board_ddr_clk(void); #define CONFIG_SYS_FSL_PBL_RCW board/freescale/ls1021aqds/ls102xa_rcw_nand.cfg #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_LDSCRIPT "arch/$(ARCH)/cpu/u-boot-spl.lds" -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_ENV_SUPPORT -#define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_WATCHDOG_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_NAND_SUPPORT -#define CONFIG_SPL_DRIVERS_MISC_SUPPORT #define CONFIG_SPL_TEXT_BASE 0x10000000 #define CONFIG_SPL_MAX_SIZE 0x1a000 diff --git a/include/configs/ls1021atwr.h b/include/configs/ls1021atwr.h index 90ae770eef..e5ac50e4ee 100644 --- a/include/configs/ls1021atwr.h +++ b/include/configs/ls1021atwr.h @@ -112,14 +112,6 @@ #endif #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_LDSCRIPT "arch/$(ARCH)/cpu/u-boot-spl.lds" -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_ENV_SUPPORT -#define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_WATCHDOG_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0xe8 #ifdef CONFIG_SECURE_BOOT diff --git a/include/configs/ls1043a_common.h b/include/configs/ls1043a_common.h index e55fcb2928..ed0e434702 100644 --- a/include/configs/ls1043a_common.h +++ b/include/configs/ls1043a_common.h @@ -60,15 +60,6 @@ #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_LDSCRIPT "arch/arm/cpu/armv8/u-boot-spl.lds" #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_ENV_SUPPORT -#define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT -#define CONFIG_SPL_WATCHDOG_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_DRIVERS_MISC_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0xf0 #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x500 @@ -91,15 +82,6 @@ #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_LDSCRIPT "arch/arm/cpu/armv8/u-boot-spl.lds" #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_ENV_SUPPORT -#define CONFIG_SPL_WATCHDOG_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT -#define CONFIG_SPL_NAND_SUPPORT -#define CONFIG_SPL_DRIVERS_MISC_SUPPORT #define CONFIG_SPL_TEXT_BASE 0x10000000 #define CONFIG_SPL_MAX_SIZE 0x1a000 #define CONFIG_SPL_STACK 0x1001d000 diff --git a/include/configs/ls2080a_common.h b/include/configs/ls2080a_common.h index 903f6ddad5..42d02986ee 100644 --- a/include/configs/ls2080a_common.h +++ b/include/configs/ls2080a_common.h @@ -259,17 +259,9 @@ unsigned long long get_qixis_addr(void); #define CONFIG_SPL_BSS_START_ADDR 0x80100000 #define CONFIG_SPL_BSS_MAX_SIZE 0x00100000 -#define CONFIG_SPL_DRIVERS_MISC_SUPPORT -#define CONFIG_SPL_ENV_SUPPORT #define CONFIG_SPL_FRAMEWORK -#define CONFIG_SPL_I2C_SUPPORT #define CONFIG_SPL_LDSCRIPT "arch/arm/cpu/armv8/u-boot-spl.lds" -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT #define CONFIG_SPL_MAX_SIZE 0x16000 -#define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT -#define CONFIG_SPL_NAND_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT #define CONFIG_SPL_STACK (CONFIG_SYS_FSL_OCRAM_BASE + 0x9ff0) #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" #define CONFIG_SPL_TEXT_BASE 0x1800a000 diff --git a/include/configs/ls2080a_emu.h b/include/configs/ls2080a_emu.h index 16e37bff4f..cec12ad04c 100644 --- a/include/configs/ls2080a_emu.h +++ b/include/configs/ls2080a_emu.h @@ -9,8 +9,6 @@ #include "ls2080a_common.h" -#define CONFIG_IDENT_STRING " LS2080A-EMU" - #define CONFIG_SYS_CLK_FREQ 100000000 #define CONFIG_DDR_CLK_FREQ 133333333 diff --git a/include/configs/ls2080a_simu.h b/include/configs/ls2080a_simu.h index 7f245b5fad..1851d41b58 100644 --- a/include/configs/ls2080a_simu.h +++ b/include/configs/ls2080a_simu.h @@ -9,8 +9,6 @@ #include "ls2080a_common.h" -#define CONFIG_IDENT_STRING " LS2080A-SIMU" - #define CONFIG_SYS_CLK_FREQ 100000000 #define CONFIG_DDR_CLK_FREQ 133333333 diff --git a/include/configs/lsxl.h b/include/configs/lsxl.h index e878cbe76f..baa35db370 100644 --- a/include/configs/lsxl.h +++ b/include/configs/lsxl.h @@ -12,12 +12,10 @@ * Version number information */ #if defined(CONFIG_LSCHLV2) -#define CONFIG_IDENT_STRING " LS-CHLv2" #define CONFIG_SYS_KWD_CONFIG $(CONFIG_BOARDDIR)/kwbimage-lschl.cfg #define CONFIG_MACH_TYPE 3006 #define CONFIG_SYS_TCLK 166666667 /* 166 MHz */ #elif defined(CONFIG_LSXHL) -#define CONFIG_IDENT_STRING " LS-XHL" #define CONFIG_SYS_KWD_CONFIG $(CONFIG_BOARDDIR)/kwbimage-lsxhl.cfg #define CONFIG_MACH_TYPE 2663 /* CONFIG_SYS_TCLK is 200000000 by default */ diff --git a/include/configs/lwmon5.h b/include/configs/lwmon5.h index da638428a6..7b88ad51d6 100644 --- a/include/configs/lwmon5.h +++ b/include/configs/lwmon5.h @@ -12,11 +12,6 @@ #define __CONFIG_H /* - * Liebherr extra version info - */ -#define CONFIG_IDENT_STRING " - v2.0" - -/* * High Level Configuration Options */ #define CONFIG_LWMON5 1 /* Board is lwmon5 */ diff --git a/include/configs/m28evk.h b/include/configs/m28evk.h index cdd24cd9ce..4b95af3317 100644 --- a/include/configs/m28evk.h +++ b/include/configs/m28evk.h @@ -46,7 +46,6 @@ #define CONFIG_ENV_OFFSET_REDUND \ (CONFIG_ENV_OFFSET + CONFIG_ENV_RANGE) -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS #define CONFIG_CMD_MTDPARTS #define CONFIG_RBTREE diff --git a/include/configs/m53evk.h b/include/configs/m53evk.h index fd47a72cd5..5af55d8013 100644 --- a/include/configs/m53evk.h +++ b/include/configs/m53evk.h @@ -115,7 +115,6 @@ #define CONFIG_ENV_OFFSET_REDUND \ (CONFIG_ENV_OFFSET + CONFIG_ENV_RANGE) -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS #define CONFIG_CMD_MTDPARTS #define CONFIG_RBTREE @@ -239,11 +238,6 @@ #define CONFIG_SPL_TEXT_BASE 0x70008000 #define CONFIG_SPL_PAD_TO 0x8000 #define CONFIG_SPL_STACK 0x70004000 -#define CONFIG_SPL_GPIO_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_NAND_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT #define CONFIG_SYS_NAND_U_BOOT_OFFS CONFIG_SPL_PAD_TO #define CONFIG_SYS_NAND_PAGE_SIZE 2048 diff --git a/include/configs/ma5d4evk.h b/include/configs/ma5d4evk.h index a696c1a688..b156e42a2a 100644 --- a/include/configs/ma5d4evk.h +++ b/include/configs/ma5d4evk.h @@ -216,16 +216,9 @@ #define CONFIG_SYS_SPL_MALLOC_START 0x20080000 #define CONFIG_SYS_SPL_MALLOC_SIZE 0x80000 -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT - #define CONFIG_SPL_BOARD_INIT #define CONFIG_SYS_MONITOR_LEN (512 << 10) -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x10000 diff --git a/include/configs/maxbcm.h b/include/configs/maxbcm.h index 47d2948b34..29ed28448e 100644 --- a/include/configs/maxbcm.h +++ b/include/configs/maxbcm.h @@ -84,14 +84,7 @@ #define CONFIG_SPL_STACK (0x40000000 + ((192 - 16) << 10)) #define CONFIG_SPL_BOOTROM_SAVE (CONFIG_SPL_STACK + 4) -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT - /* SPL related SPI defines */ -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x20000 diff --git a/include/configs/mcx.h b/include/configs/mcx.h index 22a54c7ec4..b6a710f50d 100644 --- a/include/configs/mcx.h +++ b/include/configs/mcx.h @@ -109,7 +109,6 @@ #define CONFIG_CMD_DATE #define CONFIG_CMD_NAND /* NAND support */ -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS #define CONFIG_RBTREE #define CONFIG_LZO @@ -320,15 +319,6 @@ #define CONFIG_SPL_BOARD_INIT #define CONFIG_SPL_NAND_SIMPLE -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBDISK_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT -#define CONFIG_SPL_FAT_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_POWER_SUPPORT -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_BASE #define CONFIG_SPL_NAND_DRIVERS #define CONFIG_SPL_NAND_ECC diff --git a/include/configs/microblaze-generic.h b/include/configs/microblaze-generic.h index e5bf700853..a07bcc632c 100644 --- a/include/configs/microblaze-generic.h +++ b/include/configs/microblaze-generic.h @@ -177,7 +177,6 @@ #if defined(FLASH) # define CONFIG_CMD_JFFS2 -# define CONFIG_CMD_UBI # undef CONFIG_CMD_UBIFS # if !defined(RAMENV) @@ -192,7 +191,6 @@ # endif #else # undef CONFIG_CMD_JFFS2 -# undef CONFIG_CMD_UBI # undef CONFIG_CMD_UBIFS #endif #endif @@ -202,7 +200,6 @@ #endif #if defined(CONFIG_CMD_UBIFS) -# define CONFIG_CMD_UBI # define CONFIG_LZO #endif @@ -285,16 +282,12 @@ /* SPL part */ #define CONFIG_CMD_SPL #define CONFIG_SPL_FRAMEWORK -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT #define CONFIG_SPL_BOARD_INIT #define CONFIG_SPL_LDSCRIPT "arch/microblaze/cpu/u-boot-spl.lds" #define CONFIG_SPL_RAM_DEVICE #ifdef CONFIG_SYS_FLASH_BASE -# define CONFIG_SPL_NOR_SUPPORT # define CONFIG_SYS_UBOOT_BASE CONFIG_SYS_FLASH_BASE #endif diff --git a/include/configs/miniarm_rk3288.h b/include/configs/miniarm_rk3288.h index 342557fff3..390c243cae 100644 --- a/include/configs/miniarm_rk3288.h +++ b/include/configs/miniarm_rk3288.h @@ -10,8 +10,6 @@ #define ROCKCHIP_DEVICE_SETTINGS #include <configs/rk3288_common.h> -#define CONFIG_SPL_MMC_SUPPORT - #define CONFIG_ENV_IS_IN_MMC #define CONFIG_SYS_MMC_ENV_DEV 1 /* SPL @ 32k for ~36k diff --git a/include/configs/mv-common.h b/include/configs/mv-common.h index dd223be4fa..ed271c2490 100644 --- a/include/configs/mv-common.h +++ b/include/configs/mv-common.h @@ -137,7 +137,6 @@ */ #ifdef CONFIG_SYS_MVFS #define CONFIG_CMD_JFFS2 -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS #define CONFIG_RBTREE #define CONFIG_MTD_DEVICE /* needed for mtdparts commands */ diff --git a/include/configs/mx28evk.h b/include/configs/mx28evk.h index b2bf5999a5..808736bc1a 100644 --- a/include/configs/mx28evk.h +++ b/include/configs/mx28evk.h @@ -69,7 +69,6 @@ /* UBI and NAND partitioning */ #ifdef CONFIG_CMD_NAND -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS #define CONFIG_CMD_MTDPARTS #define CONFIG_RBTREE diff --git a/include/configs/mx31pdk.h b/include/configs/mx31pdk.h index a81dd784c9..a37646e7f4 100644 --- a/include/configs/mx31pdk.h +++ b/include/configs/mx31pdk.h @@ -31,9 +31,6 @@ #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" #define CONFIG_SPL_LDSCRIPT "arch/$(ARCH)/cpu/u-boot-spl.lds" #define CONFIG_SPL_MAX_SIZE 2048 -#define CONFIG_SPL_NAND_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT #define CONFIG_SPL_TEXT_BASE 0x87dc0000 #define CONFIG_SYS_TEXT_BASE 0x87e00000 diff --git a/include/configs/mx6cuboxi.h b/include/configs/mx6cuboxi.h index 366b5b9e53..237ef04481 100644 --- a/include/configs/mx6cuboxi.h +++ b/include/configs/mx6cuboxi.h @@ -11,8 +11,6 @@ #include <config_distro_defaults.h> #include "mx6_common.h" -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT #include "imx6_spl.h" #define CONFIG_IMX_THERMAL diff --git a/include/configs/mx6sabresd.h b/include/configs/mx6sabresd.h index d3b10e057d..5c2734d3cc 100644 --- a/include/configs/mx6sabresd.h +++ b/include/configs/mx6sabresd.h @@ -10,8 +10,6 @@ #define __MX6QSABRESD_CONFIG_H #ifdef CONFIG_SPL -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT #include "imx6_spl.h" #endif diff --git a/include/configs/mx6slevk.h b/include/configs/mx6slevk.h index 13589df575..501d7de544 100644 --- a/include/configs/mx6slevk.h +++ b/include/configs/mx6slevk.h @@ -12,8 +12,6 @@ #include "mx6_common.h" #ifdef CONFIG_SPL -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT #include "imx6_spl.h" #endif diff --git a/include/configs/mx6sxsabreauto.h b/include/configs/mx6sxsabreauto.h index 274cb36002..c30e3dd668 100644 --- a/include/configs/mx6sxsabreauto.h +++ b/include/configs/mx6sxsabreauto.h @@ -173,7 +173,6 @@ #define CONFIG_IMX_THERMAL -#define CONFIG_FSL_QSPI #ifdef CONFIG_FSL_QSPI #define CONFIG_SYS_FSL_QSPI_AHB #define CONFIG_SF_DEFAULT_BUS 0 diff --git a/include/configs/mx6sxsabresd.h b/include/configs/mx6sxsabresd.h index 86987df645..4c61999415 100644 --- a/include/configs/mx6sxsabresd.h +++ b/include/configs/mx6sxsabresd.h @@ -12,8 +12,6 @@ #include "mx6_common.h" #ifdef CONFIG_SPL -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT #include "imx6_spl.h" #endif diff --git a/include/configs/mx6ul_14x14_evk.h b/include/configs/mx6ul_14x14_evk.h index 614de5fc78..925a4183fb 100644 --- a/include/configs/mx6ul_14x14_evk.h +++ b/include/configs/mx6ul_14x14_evk.h @@ -16,8 +16,6 @@ #define is_mx6ul_9x9_evk() CONFIG_IS_ENABLED(TARGET_MX6UL_9X9_EVK) /* SPL options */ -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT #include "imx6_spl.h" #define CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG @@ -188,15 +186,11 @@ #ifndef CONFIG_SYS_DCACHE_OFF #endif -#define CONFIG_FSL_QSPI #ifdef CONFIG_FSL_QSPI -#define CONFIG_SPI_FLASH -#define CONFIG_SPI_FLASH_BAR #define CONFIG_SF_DEFAULT_BUS 0 #define CONFIG_SF_DEFAULT_CS 0 #define CONFIG_SF_DEFAULT_SPEED 40000000 #define CONFIG_SF_DEFAULT_MODE SPI_MODE_0 -#define CONFIG_SPI_FLASH_STMICRO #define FSL_QSPI_FLASH_NUM 1 #define FSL_QSPI_FLASH_SIZE SZ_32M #endif diff --git a/include/configs/mxs.h b/include/configs/mxs.h index d80dc5e229..d15dd5fc49 100644 --- a/include/configs/mxs.h +++ b/include/configs/mxs.h @@ -49,10 +49,6 @@ #define CONFIG_SPL_NO_CPU_SUPPORT_CODE #define CONFIG_SPL_START_S_PATH "arch/arm/cpu/arm926ejs/mxs" #define CONFIG_SPL_LDSCRIPT "arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds" -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT /* Memory sizes */ #define CONFIG_SYS_MALLOC_LEN 0x00400000 /* 4 MB for malloc */ diff --git a/include/configs/nas220.h b/include/configs/nas220.h index cca2324862..7cfdacd789 100644 --- a/include/configs/nas220.h +++ b/include/configs/nas220.h @@ -17,7 +17,6 @@ */ #define MACH_TYPE_NAS220 MACH_TYPE_RD88F6192_NAS #define CONFIG_MACH_TYPE MACH_TYPE_NAS220 -#define CONFIG_IDENT_STRING "\nNAS 220" /* * High Level Configuration Options (easy to change) @@ -111,7 +110,6 @@ #define CONFIG_CMD_JFFS2 #define CONFIG_JFFS2_NAND #define CONFIG_JFFS2_LZO -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS #define CONFIG_RBTREE #define CONFIG_MTD_DEVICE /* needed for mtdparts commands */ diff --git a/include/configs/neo.h b/include/configs/neo.h index 4f244a9e91..8b6ee92f66 100644 --- a/include/configs/neo.h +++ b/include/configs/neo.h @@ -17,7 +17,6 @@ * Include common defines/options for all AMCC eval boards */ #define CONFIG_HOSTNAME neo -#define CONFIG_IDENT_STRING " neo 0.02" #include "amcc-common.h" #define CONFIG_BOARD_EARLY_INIT_F diff --git a/include/configs/nokia_rx51.h b/include/configs/nokia_rx51.h index cdae544253..41ebd6da26 100644 --- a/include/configs/nokia_rx51.h +++ b/include/configs/nokia_rx51.h @@ -135,7 +135,6 @@ #define CONFIG_CMD_MTDPARTS /* mtd parts support */ #ifdef UBIFS_SUPPORT -#define CONFIG_CMD_UBI /* UBI Support */ #define CONFIG_CMD_UBIFS /* UBIFS Support */ #endif diff --git a/include/configs/novena.h b/include/configs/novena.h index 13a707457c..8cb02820a9 100644 --- a/include/configs/novena.h +++ b/include/configs/novena.h @@ -72,8 +72,6 @@ #define CONFIG_SYS_MALLOC_LEN (64 * 1024 * 1024) /* SPL */ -#define CONFIG_SPL_FAT_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT #include "imx6_spl.h" /* common IMX6 SPL configuration */ /* Ethernet Configuration */ diff --git a/include/configs/odroid-c2.h b/include/configs/odroid-c2.h index bf5df9c77b..1d5b3d5a5f 100644 --- a/include/configs/odroid-c2.h +++ b/include/configs/odroid-c2.h @@ -8,8 +8,6 @@ #ifndef __CONFIG_H #define __CONFIG_H -#define CONFIG_IDENT_STRING " odroid-c2" - /* Serial setup */ #define CONFIG_CONS_INDEX 0 #define CONFIG_BAUDRATE 115200 diff --git a/include/configs/odroid_xu3.h b/include/configs/odroid_xu3.h index 5196d58954..0b57949f37 100644 --- a/include/configs/odroid_xu3.h +++ b/include/configs/odroid_xu3.h @@ -12,7 +12,6 @@ #include <configs/exynos5-common.h> #undef CONFIG_ENV_IS_IN_SPI_FLASH -#define CONFIG_IDENT_STRING " for ODROID-XU3" #define CONFIG_BOARD_COMMON diff --git a/include/configs/omap3_evm.h b/include/configs/omap3_evm.h index b134ac9176..740b5885b0 100644 --- a/include/configs/omap3_evm.h +++ b/include/configs/omap3_evm.h @@ -56,8 +56,6 @@ #define CONFIG_OMAP_HSMMC /* SPL */ -#define CONFIG_SPL_MMC_SUPPORT -#define CONFIG_SPL_FAT_SUPPORT #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x300 /* address 0x60000 */ #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x200 /* 256 KB */ #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 @@ -78,7 +76,6 @@ /* NAND SPL */ #define CONFIG_SPL_NAND_SIMPLE -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_BASE #define CONFIG_SPL_NAND_DRIVERS #define CONFIG_SPL_NAND_ECC @@ -349,12 +346,6 @@ #define CONFIG_SPL_BSS_MAX_SIZE 0x80000 /* 512 KB */ #define CONFIG_SPL_BOARD_INIT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBDISK_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_POWER_SUPPORT #define CONFIG_SPL_OMAP3_ID_NAND #define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/omap-common/u-boot-spl.lds" diff --git a/include/configs/omap3_igep00x0.h b/include/configs/omap3_igep00x0.h index 3389bf3164..9ca648dd44 100644 --- a/include/configs/omap3_igep00x0.h +++ b/include/configs/omap3_igep00x0.h @@ -75,7 +75,6 @@ #define CONFIG_CMD_MTDPARTS #define CONFIG_CMD_ONENAND -#define CONFIG_CMD_UBI #ifndef CONFIG_SPL_BUILD @@ -116,13 +115,11 @@ #define CONFIG_SYS_MTDPARTS_RUNTIME /* OneNAND config */ -#define CONFIG_SPL_ONENAND_SUPPORT #define CONFIG_USE_ONENAND_BOARD_INIT #define CONFIG_SYS_ONENAND_BASE ONENAND_MAP #define CONFIG_SYS_ONENAND_BLOCK_SIZE (128*1024) /* NAND config */ -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_OMAP3_ID_NAND #define CONFIG_SYS_NAND_BUSWIDTH_16BIT #define CONFIG_SYS_NAND_5_ADDR_CYCLE @@ -167,6 +164,4 @@ #define CONFIG_UBIFS_SILENCE_MSG 1 #define CONFIG_ENV_SIZE (32*1024) -#undef CONFIG_SPL_EXT_SUPPORT - #endif /* __IGEP00X0_H */ diff --git a/include/configs/omap3_logic.h b/include/configs/omap3_logic.h index 496da17b39..6a60ec3552 100644 --- a/include/configs/omap3_logic.h +++ b/include/configs/omap3_logic.h @@ -93,7 +93,6 @@ #ifdef CONFIG_NAND #define CONFIG_NAND_OMAP_GPMC -#define CONFIG_CMD_UBI /* UBI-formated MTD partition support */ #define CONFIG_CMD_UBIFS /* Read-only UBI volume operations */ #define CONFIG_RBTREE /* required by CONFIG_CMD_UBI */ #define CONFIG_LZO /* required by CONFIG_CMD_UBIFS */ diff --git a/include/configs/omap3_overo.h b/include/configs/omap3_overo.h index 8dffa89298..0036c5cab1 100644 --- a/include/configs/omap3_overo.h +++ b/include/configs/omap3_overo.h @@ -59,7 +59,6 @@ /* commands to include */ #ifdef CONFIG_NAND -#define CONFIG_CMD_UBI /* UBI-formated MTD partition support */ #define CONFIG_CMD_UBIFS /* Read-only UBI volume operations */ #define CONFIG_RBTREE /* required by CONFIG_CMD_UBI */ diff --git a/include/configs/omap3_pandora.h b/include/configs/omap3_pandora.h index b66431929c..fce50f5d81 100644 --- a/include/configs/omap3_pandora.h +++ b/include/configs/omap3_pandora.h @@ -69,7 +69,6 @@ #define CONFIG_SYS_NAND_OOBSIZE 64 #ifdef CONFIG_NAND -#define CONFIG_CMD_UBI /* UBI-formated MTD partition support */ #define CONFIG_CMD_UBIFS /* Read-only UBI volume operations */ #define CONFIG_RBTREE /* required by CONFIG_CMD_UBI */ diff --git a/include/configs/omapl138_lcdk.h b/include/configs/omapl138_lcdk.h index 43afecdf48..854fc478ad 100644 --- a/include/configs/omapl138_lcdk.h +++ b/include/configs/omapl138_lcdk.h @@ -97,8 +97,6 @@ #define CONFIG_ENV_SPI_MAX_HZ CONFIG_SF_DEFAULT_SPEED #ifdef CONFIG_USE_SPIFLASH -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x8000 #define CONFIG_SYS_SPI_U_BOOT_SIZE 0x30000 @@ -225,7 +223,6 @@ #define CONFIG_MTD_PARTITIONS #define CONFIG_LZO #define CONFIG_RBTREE -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS #endif @@ -268,9 +265,6 @@ #define CONFIG_SYS_SPL_MALLOC_START (CONFIG_SYS_TEXT_BASE - \ CONFIG_SYS_MALLOC_LEN) #define CONFIG_SYS_SPL_MALLOC_SIZE CONFIG_SYS_MALLOC_LEN -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT #define CONFIG_SPL_LDSCRIPT "board/$(BOARDDIR)/u-boot-spl-da850evm.lds" #define CONFIG_SPL_STACK 0x8001ff00 #define CONFIG_SPL_TEXT_BASE 0x80000000 diff --git a/include/configs/openrd.h b/include/configs/openrd.h index 4defa7efe0..908a1af8f6 100644 --- a/include/configs/openrd.h +++ b/include/configs/openrd.h @@ -15,23 +15,6 @@ #define _CONFIG_OPENRD_H /* - * Version number information - */ -#ifdef CONFIG_BOARD_IS_OPENRD_ULTIMATE -# define CONFIG_IDENT_STRING "\nOpenRD-Ultimate" -#else -# ifdef CONFIG_BOARD_IS_OPENRD_CLIENT -# define CONFIG_IDENT_STRING "\nOpenRD-Client" -# else -# ifdef CONFIG_BOARD_IS_OPENRD_BASE -# define CONFIG_IDENT_STRING "\nOpenRD-Base" -# else -# error Unknown OpenRD board specified -# endif -# endif -#endif - -/* * High Level Configuration Options (easy to change) */ #define CONFIG_SHEEVA_88SV131 1 /* CPU Core subversion */ diff --git a/include/configs/origen.h b/include/configs/origen.h index 1fa2f4db7a..0f76d32c33 100644 --- a/include/configs/origen.h +++ b/include/configs/origen.h @@ -87,8 +87,6 @@ "fi;" \ "load mmc ${mmcdev} ${loadaddr} uImage; bootm ${loadaddr} " -#define CONFIG_IDENT_STRING " for ORIGEN" - #define CONFIG_CLK_1000_400_200 /* MIU (Memory Interleaving Unit) */ diff --git a/include/configs/ot1200.h b/include/configs/ot1200.h index 9be9d8b32c..f4b3e06f92 100644 --- a/include/configs/ot1200.h +++ b/include/configs/ot1200.h @@ -80,9 +80,6 @@ /* SPL */ #ifdef CONFIG_SPL #include "imx6_spl.h" -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SYS_SPI_U_BOOT_OFFS (64 * 1024) #define CONFIG_SPL_SPI_LOAD #endif diff --git a/include/configs/p1_p2_rdb_pc.h b/include/configs/p1_p2_rdb_pc.h index ae0f6a5638..721f9d5e4a 100644 --- a/include/configs/p1_p2_rdb_pc.h +++ b/include/configs/p1_p2_rdb_pc.h @@ -181,16 +181,9 @@ #endif #ifdef CONFIG_SDCARD -#define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT -#define CONFIG_SPL_ENV_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT #define CONFIG_SPL_MMC_MINIMAL #define CONFIG_SPL_FLUSH_IMAGE #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT #define CONFIG_FSL_LAW /* Use common FSL init code */ #define CONFIG_SYS_TEXT_BASE 0x11001000 #define CONFIG_SPL_TEXT_BASE 0xf8f81000 @@ -209,17 +202,9 @@ #endif #ifdef CONFIG_SPIFLASH -#define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT -#define CONFIG_SPL_ENV_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_FLASH_MINIMAL #define CONFIG_SPL_FLUSH_IMAGE #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT #define CONFIG_FSL_LAW /* Use common FSL init code */ #define CONFIG_SYS_TEXT_BASE 0x11001000 #define CONFIG_SPL_TEXT_BASE 0xf8f81000 @@ -241,14 +226,7 @@ #ifdef CONFIG_TPL_BUILD #define CONFIG_SPL_NAND_BOOT #define CONFIG_SPL_FLUSH_IMAGE -#define CONFIG_SPL_ENV_SUPPORT #define CONFIG_SPL_NAND_INIT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_NAND_SUPPORT -#define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT #define CONFIG_SPL_COMMON_INIT_DDR #define CONFIG_SPL_MAX_SIZE (128 << 10) #define CONFIG_SPL_TEXT_BASE 0xf8f81000 @@ -259,8 +237,6 @@ #define CONFIG_SYS_NAND_U_BOOT_OFFS ((128 + 128) << 10) #elif defined(CONFIG_SPL_BUILD) #define CONFIG_SPL_INIT_MINIMAL -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_FLUSH_IMAGE #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" #define CONFIG_SPL_TEXT_BASE 0xff800000 diff --git a/include/configs/pcm051.h b/include/configs/pcm051.h index e24dcb9974..ef081b259b 100644 --- a/include/configs/pcm051.h +++ b/include/configs/pcm051.h @@ -120,16 +120,9 @@ /* CPU */ #define CONFIG_ENV_IS_NOWHERE -#define CONFIG_SPL_YMODEM_SUPPORT -#define CONFIG_SPL_NET_SUPPORT -#define CONFIG_SPL_ENV_SUPPORT -#define CONFIG_SPL_NET_VCI_STRING "pcm051 U-Boot SPL" -#define CONFIG_SPL_ETH_SUPPORT #define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/am33xx/u-boot-spl.lds" #ifdef CONFIG_SPI_BOOT -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x20000 #define CONFIG_SYS_SPI_U_BOOT_SIZE 0x40000 diff --git a/include/configs/pcm052.h b/include/configs/pcm052.h index 57a76306e2..a70c9887e7 100644 --- a/include/configs/pcm052.h +++ b/include/configs/pcm052.h @@ -44,7 +44,6 @@ #define CONFIG_JFFS2_NAND /* UBI */ -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS #define CONFIG_RBTREE #define CONFIG_LZO diff --git a/include/configs/pcm058.h b/include/configs/pcm058.h index 97cbebacce..c36245b4cc 100644 --- a/include/configs/pcm058.h +++ b/include/configs/pcm058.h @@ -11,12 +11,6 @@ #include <config_distro_defaults.h> #ifdef CONFIG_SPL -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_YMODEM_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT -#define CONFIG_SPL_DMA_SUPPORT -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SYS_SPI_U_BOOT_OFFS (64 * 1024) #include "imx6_spl.h" @@ -98,7 +92,6 @@ #define CONFIG_CMD_HDMIDETECT /* detect HDMI output device */ #define CONFIG_CMD_GSC #define CONFIG_CMD_EECONFIG /* Gateworks EEPROM config cmd */ -#define CONFIG_CMD_UBI #define CONFIG_RBTREE /* Physical Memory Map */ diff --git a/include/configs/peach-pi.h b/include/configs/peach-pi.h index 6c42aaac0e..b01fe4c51d 100644 --- a/include/configs/peach-pi.h +++ b/include/configs/peach-pi.h @@ -29,8 +29,6 @@ #define CONFIG_SERIAL3 /* use SERIAL 3 */ #define CONFIG_DEFAULT_CONSOLE "console=ttySAC1,115200n8\0" -#define CONFIG_IDENT_STRING " for Peach-Pi" - /* Display */ #define CONFIG_LCD #ifdef CONFIG_LCD diff --git a/include/configs/peach-pit.h b/include/configs/peach-pit.h index 6c68dd2e0c..c4ae0e2512 100644 --- a/include/configs/peach-pit.h +++ b/include/configs/peach-pit.h @@ -29,8 +29,6 @@ #define CONFIG_SERIAL3 /* use SERIAL 3 */ #define CONFIG_DEFAULT_CONSOLE "console=ttySAC1,115200n8\0" -#define CONFIG_IDENT_STRING " for Peach-Pit" - /* DRAM Memory Banks */ #define CONFIG_NR_DRAM_BANKS 4 #define SDRAM_BANK_SIZE (512UL << 20UL) /* 512 MB */ diff --git a/include/configs/pengwyn.h b/include/configs/pengwyn.h index 909ed9d80a..4130f53582 100644 --- a/include/configs/pengwyn.h +++ b/include/configs/pengwyn.h @@ -114,13 +114,6 @@ #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 2 /* SPL */ -#define CONFIG_SPL_POWER_SUPPORT -#define CONFIG_SPL_YMODEM_SUPPORT - -/* General network SPL */ -#define CONFIG_SPL_NET_SUPPORT -#define CONFIG_SPL_ENV_SUPPORT -#define CONFIG_SPL_NET_VCI_STRING "AM335x U-Boot SPL" /* NAND support */ #define CONFIG_CMD_NAND @@ -201,7 +194,6 @@ #if defined(CONFIG_SPL_BUILD) /* disable host part of MUSB in SPL */ /* Disable CPSW SPL support so we fit within the 101KiB limit. */ -#undef CONFIG_SPL_ETH_SUPPORT #endif /* CPSW ethernet */ @@ -214,7 +206,6 @@ #define CONFIG_PHY_REALTEK /* CPSW support */ -#define CONFIG_SPL_ETH_SUPPORT #define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/am33xx/u-boot-spl.lds" diff --git a/include/configs/picosam9g45.h b/include/configs/picosam9g45.h index c2e2c436da..206bfa71a8 100644 --- a/include/configs/picosam9g45.h +++ b/include/configs/picosam9g45.h @@ -163,12 +163,6 @@ #define CONFIG_SPL_MAX_SIZE 0x010000 #define CONFIG_SPL_STACK 0x310000 -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT -#define CONFIG_SPL_WATCHDOG_SUPPORT - #define CONFIG_SYS_MONITOR_LEN 0x80000 #ifdef CONFIG_SYS_USE_MMC @@ -179,13 +173,10 @@ #define CONFIG_SYS_SPL_MALLOC_SIZE 0x00080000 #define CONFIG_SPL_LDSCRIPT arch/arm/mach-at91/arm926ejs/u-boot-spl.lds -#define CONFIG_SPL_MMC_SUPPORT #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x400 #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x200 #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img" -#define CONFIG_SPL_FAT_SUPPORT -#define CONFIG_SPL_LIBDISK_SUPPORT #define CONFIG_SPL_ATMEL_SIZE #define CONFIG_SYS_MASTER_CLOCK 132096000 diff --git a/include/configs/platinum.h b/include/configs/platinum.h index 34ce086912..f3ac4589aa 100644 --- a/include/configs/platinum.h +++ b/include/configs/platinum.h @@ -8,8 +8,6 @@ #define __PLATINUM_CONFIG_H__ /* SPL */ -#define CONFIG_SPL_NAND_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT /* Location in NAND to read U-Boot from */ #define CONFIG_SYS_NAND_U_BOOT_OFFS (14 * 1024 * 1024) @@ -25,7 +23,6 @@ #define CONFIG_CMD_MTDPARTS #define CONFIG_CMD_NAND #define CONFIG_CMD_NAND_TRIMFFS -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS /* diff --git a/include/configs/pogo_e02.h b/include/configs/pogo_e02.h index 6393ff3fed..fb1339c02d 100644 --- a/include/configs/pogo_e02.h +++ b/include/configs/pogo_e02.h @@ -18,7 +18,6 @@ */ #define MACH_TYPE_POGO_E02 3542 #define CONFIG_MACH_TYPE MACH_TYPE_POGO_E02 -#define CONFIG_IDENT_STRING "\nPogo E02" /* * High Level Configuration Options (easy to change) @@ -82,7 +81,6 @@ * File system */ #define CONFIG_CMD_JFFS2 -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS #define CONFIG_RBTREE #define CONFIG_MTD_DEVICE /* needed for mtdparts commands */ diff --git a/include/configs/popmetal_rk3288.h b/include/configs/popmetal_rk3288.h index 342557fff3..390c243cae 100644 --- a/include/configs/popmetal_rk3288.h +++ b/include/configs/popmetal_rk3288.h @@ -10,8 +10,6 @@ #define ROCKCHIP_DEVICE_SETTINGS #include <configs/rk3288_common.h> -#define CONFIG_SPL_MMC_SUPPORT - #define CONFIG_ENV_IS_IN_MMC #define CONFIG_SYS_MMC_ENV_DEV 1 /* SPL @ 32k for ~36k diff --git a/include/configs/pxm2.h b/include/configs/pxm2.h index 990fd84b32..99a201c403 100644 --- a/include/configs/pxm2.h +++ b/include/configs/pxm2.h @@ -42,10 +42,6 @@ #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x300 -#undef CONFIG_SPL_NET_SUPPORT -#undef CONFIG_SPL_NET_VCI_STRING -#undef CONFIG_SPL_ETH_SUPPORT - #define CONFIG_PHY_ATHEROS #define CONFIG_FACTORYSET diff --git a/include/configs/rastaban.h b/include/configs/rastaban.h index 55be46bcf2..f8ed22a436 100644 --- a/include/configs/rastaban.h +++ b/include/configs/rastaban.h @@ -51,10 +51,6 @@ #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x300 -#undef CONFIG_SPL_NET_SUPPORT -#undef CONFIG_SPL_NET_VCI_STRING -#undef CONFIG_SPL_ETH_SUPPORT - #undef CONFIG_MII #undef CONFIG_PHY_GIGE #define CONFIG_PHY_SMSC diff --git a/include/configs/rk3036_common.h b/include/configs/rk3036_common.h index 101a3ed5bd..4b26662744 100644 --- a/include/configs/rk3036_common.h +++ b/include/configs/rk3036_common.h @@ -24,8 +24,6 @@ #define CONFIG_SYS_TIMER_BASE 0x200440a0 /* TIMER5 */ #define CONFIG_SYS_TIMER_COUNTER (CONFIG_SYS_TIMER_BASE + 8) -#define CONFIG_SPL_SERIAL_SUPPORT - #define CONFIG_SYS_NS16550 #define CONFIG_SYS_NS16550_MEM32 diff --git a/include/configs/rk3288_common.h b/include/configs/rk3288_common.h index 601186c5c1..e8bf9878f2 100644 --- a/include/configs/rk3288_common.h +++ b/include/configs/rk3288_common.h @@ -9,6 +9,7 @@ #include <asm/arch/hardware.h> +#define CONFIG_SKIP_LOWLEVEL_INIT_ONLY #define CONFIG_SYS_NO_FLASH #define CONFIG_NR_DRAM_BANKS 1 #define CONFIG_ENV_SIZE 0x2000 @@ -24,10 +25,6 @@ #define CONFIG_SYS_TIMER_COUNTER (CONFIG_SYS_TIMER_BASE + 8) #define CONFIG_SPL_FRAMEWORK -#define CONFIG_SPL_DRIVERS_MISC_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT #define CONFIG_SYS_NS16550_MEM32 #define CONFIG_SPL_BOARD_INIT @@ -66,10 +63,6 @@ #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img" -#define CONFIG_SPL_PINCTRL_SUPPORT -#define CONFIG_SPL_RAM_SUPPORT -#define CONFIG_SPL_DRIVERS_MISC_SUPPORT - #define CONFIG_SYS_SDRAM_BASE 0 #define CONFIG_NR_DRAM_BANKS 1 #define SDRAM_BANK_SIZE (2UL << 30) diff --git a/include/configs/rk3399_common.h b/include/configs/rk3399_common.h index e9626a5e39..b026122f52 100644 --- a/include/configs/rk3399_common.h +++ b/include/configs/rk3399_common.h @@ -83,4 +83,16 @@ #endif +/* enable usb config for usb ether */ +#define CONFIG_USB_HOST_ETHER + +#define CONFIG_USB_ETHER_ASIX +#define CONFIG_USB_ETHER_ASIX88179 +#define CONFIG_USB_ETHER_MCS7830 +#define CONFIG_USB_ETHER_SMSC95XX +#define CONFIG_USB_ETHER_RTL8152 + +/* rockchip xhci host driver */ +#define CONFIG_SYS_USB_XHCI_MAX_ROOT_PORTS 2 + #endif diff --git a/include/configs/rock2.h b/include/configs/rock2.h index a29f55709d..ee924c3816 100644 --- a/include/configs/rock2.h +++ b/include/configs/rock2.h @@ -14,8 +14,6 @@ #include <configs/rk3288_common.h> -#define CONFIG_SPL_MMC_SUPPORT - #define CONFIG_ENV_IS_IN_MMC #define CONFIG_SYS_MMC_ENV_DEV 0 /* SPL @ 32k for ~36k diff --git a/include/configs/rut.h b/include/configs/rut.h index aea8e217d0..5f62358507 100644 --- a/include/configs/rut.h +++ b/include/configs/rut.h @@ -37,10 +37,6 @@ #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x200 -#undef CONFIG_SPL_NET_SUPPORT -#undef CONFIG_SPL_NET_VCI_STRING -#undef CONFIG_SPL_ETH_SUPPORT - #define CONFIG_PHY_NATSEMI #define CONFIG_FACTORYSET diff --git a/include/configs/sama5d2_ptc.h b/include/configs/sama5d2_ptc.h index c1c01bd2ee..7a049d4580 100644 --- a/include/configs/sama5d2_ptc.h +++ b/include/configs/sama5d2_ptc.h @@ -121,22 +121,14 @@ #define CONFIG_SYS_SPL_MALLOC_START 0x20080000 #define CONFIG_SYS_SPL_MALLOC_SIZE 0x80000 -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT - #define CONFIG_SPL_BOARD_INIT #define CONFIG_SYS_MONITOR_LEN (512 << 10) #ifdef CONFIG_SYS_USE_SERIALFLASH -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x8000 #elif CONFIG_SYS_USE_NANDFLASH -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_DRIVERS #define CONFIG_SPL_NAND_BASE #define CONFIG_PMECC_CAP 8 diff --git a/include/configs/sama5d2_xplained.h b/include/configs/sama5d2_xplained.h index 563c045dc9..e684d2a77d 100644 --- a/include/configs/sama5d2_xplained.h +++ b/include/configs/sama5d2_xplained.h @@ -125,27 +125,17 @@ #define CONFIG_SYS_SPL_MALLOC_START 0x20080000 #define CONFIG_SYS_SPL_MALLOC_SIZE 0x80000 -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT - #define CONFIG_SPL_BOARD_INIT #define CONFIG_SYS_MONITOR_LEN (512 << 10) #ifdef CONFIG_SYS_USE_MMC #define CONFIG_SPL_LDSCRIPT arch/arm/mach-at91/armv7/u-boot-spl.lds -#define CONFIG_SPL_MMC_SUPPORT #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x400 #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x200 #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img" -#define CONFIG_SPL_FAT_SUPPORT -#define CONFIG_SPL_LIBDISK_SUPPORT #elif CONFIG_SYS_USE_SERIALFLASH -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x8000 diff --git a/include/configs/sama5d3_xplained.h b/include/configs/sama5d3_xplained.h index fef925fece..5e6617410c 100644 --- a/include/configs/sama5d3_xplained.h +++ b/include/configs/sama5d3_xplained.h @@ -67,7 +67,6 @@ #define CONFIG_MTD_PARTITIONS #define CONFIG_RBTREE #define CONFIG_LZO -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS #endif @@ -124,26 +123,17 @@ #define CONFIG_SYS_SPL_MALLOC_START 0x20080000 #define CONFIG_SYS_SPL_MALLOC_SIZE 0x80000 -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT - #define CONFIG_SPL_BOARD_INIT #define CONFIG_SYS_MONITOR_LEN (512 << 10) #ifdef CONFIG_SYS_USE_MMC #define CONFIG_SPL_LDSCRIPT arch/arm/mach-at91/armv7/u-boot-spl.lds -#define CONFIG_SPL_MMC_SUPPORT #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x400 #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x200 #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img" -#define CONFIG_SPL_FAT_SUPPORT -#define CONFIG_SPL_LIBDISK_SUPPORT #elif CONFIG_SYS_USE_NANDFLASH -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_DRIVERS #define CONFIG_SPL_NAND_BASE #define CONFIG_SYS_NAND_U_BOOT_OFFS 0x40000 diff --git a/include/configs/sama5d3xek.h b/include/configs/sama5d3xek.h index 248de8db08..8b73a1b03a 100644 --- a/include/configs/sama5d3xek.h +++ b/include/configs/sama5d3xek.h @@ -164,26 +164,17 @@ #define CONFIG_SYS_SPL_MALLOC_START 0x20080000 #define CONFIG_SYS_SPL_MALLOC_SIZE 0x80000 -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT - #define CONFIG_SPL_BOARD_INIT #define CONFIG_SYS_MONITOR_LEN (512 << 10) #ifdef CONFIG_SYS_USE_MMC #define CONFIG_SPL_LDSCRIPT arch/arm/mach-at91/armv7/u-boot-spl.lds -#define CONFIG_SPL_MMC_SUPPORT #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x400 #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x200 #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img" -#define CONFIG_SPL_FAT_SUPPORT -#define CONFIG_SPL_LIBDISK_SUPPORT #elif CONFIG_SYS_USE_NANDFLASH -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_DRIVERS #define CONFIG_SPL_NAND_BASE #define CONFIG_SYS_NAND_U_BOOT_OFFS 0x40000 @@ -196,8 +187,6 @@ #define CONFIG_SPL_GENERATE_ATMEL_PMECC_HEADER #elif CONFIG_SYS_USE_SERIALFLASH -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x8000 diff --git a/include/configs/sama5d4_xplained.h b/include/configs/sama5d4_xplained.h index d874ab524e..c90e1e6f8a 100644 --- a/include/configs/sama5d4_xplained.h +++ b/include/configs/sama5d4_xplained.h @@ -124,26 +124,17 @@ #define CONFIG_SYS_SPL_MALLOC_START 0x20080000 #define CONFIG_SYS_SPL_MALLOC_SIZE 0x80000 -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT - #define CONFIG_SPL_BOARD_INIT #define CONFIG_SYS_MONITOR_LEN (512 << 10) #ifdef CONFIG_SYS_USE_MMC #define CONFIG_SPL_LDSCRIPT arch/arm/mach-at91/armv7/u-boot-spl.lds -#define CONFIG_SPL_MMC_SUPPORT #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x400 #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x200 #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img" -#define CONFIG_SPL_FAT_SUPPORT -#define CONFIG_SPL_LIBDISK_SUPPORT #elif CONFIG_SYS_USE_NANDFLASH -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_DRIVERS #define CONFIG_SPL_NAND_BASE #define CONFIG_PMECC_CAP 8 @@ -158,8 +149,6 @@ #define CONFIG_SPL_GENERATE_ATMEL_PMECC_HEADER #elif CONFIG_SYS_USE_SERIALFLASH -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x8000 diff --git a/include/configs/sama5d4ek.h b/include/configs/sama5d4ek.h index 61c3f85cc2..b9927e9d25 100644 --- a/include/configs/sama5d4ek.h +++ b/include/configs/sama5d4ek.h @@ -122,26 +122,17 @@ #define CONFIG_SYS_SPL_MALLOC_START 0x20080000 #define CONFIG_SYS_SPL_MALLOC_SIZE 0x80000 -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT - #define CONFIG_SPL_BOARD_INIT #define CONFIG_SYS_MONITOR_LEN (512 << 10) #ifdef CONFIG_SYS_USE_MMC #define CONFIG_SPL_LDSCRIPT arch/arm/mach-at91/armv7/u-boot-spl.lds -#define CONFIG_SPL_MMC_SUPPORT #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x400 #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x200 #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img" -#define CONFIG_SPL_FAT_SUPPORT -#define CONFIG_SPL_LIBDISK_SUPPORT #elif CONFIG_SYS_USE_NANDFLASH -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_DRIVERS #define CONFIG_SPL_NAND_BASE #define CONFIG_PMECC_CAP 8 @@ -156,8 +147,6 @@ #define CONFIG_SPL_GENERATE_ATMEL_PMECC_HEADER #elif CONFIG_SYS_USE_SERIALFLASH -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x8000 diff --git a/include/configs/sandbox_spl.h b/include/configs/sandbox_spl.h index ffc309867a..2aaa3ab976 100644 --- a/include/configs/sandbox_spl.h +++ b/include/configs/sandbox_spl.h @@ -10,11 +10,6 @@ #define CONFIG_SPL_BOARD_INIT -#define CONFIG_SPL_DRIVERS_MISC_SUPPORT -#define CONFIG_SPL_ENV_SUPPORT #define CONFIG_SPL_FRAMEWORK -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT #endif diff --git a/include/configs/sheevaplug.h b/include/configs/sheevaplug.h index fa76a257fa..748a2ea5bb 100644 --- a/include/configs/sheevaplug.h +++ b/include/configs/sheevaplug.h @@ -11,11 +11,6 @@ #define _CONFIG_SHEEVAPLUG_H /* - * Version number information - */ -#define CONFIG_IDENT_STRING "\nMarvell-Sheevaplug" - -/* * High Level Configuration Options (easy to change) */ #define CONFIG_FEROCEON_88FR131 1 /* CPU Core subversion */ diff --git a/include/configs/siemens-am33x-common.h b/include/configs/siemens-am33x-common.h index 3eca93b996..d81e1a575d 100644 --- a/include/configs/siemens-am33x-common.h +++ b/include/configs/siemens-am33x-common.h @@ -133,22 +133,8 @@ #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x300 /* address 0x60000 */ #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img" -#define CONFIG_SPL_MMC_SUPPORT -#define CONFIG_SPL_FAT_SUPPORT #define CONFIG_FS_FAT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBDISK_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_YMODEM_SUPPORT - -#define CONFIG_SPL_GPIO_SUPPORT -#define CONFIG_SPL_WATCHDOG_SUPPORT - -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x20000 @@ -156,7 +142,6 @@ #define CONFIG_SPL_BOARD_INIT #define CONFIG_SPL_NAND_AM33XX_BCH -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_BASE #define CONFIG_SPL_NAND_DRIVERS #define CONFIG_SPL_NAND_ECC @@ -285,10 +270,7 @@ #define CONFIG_MTD_DEVICE #define CONFIG_RBTREE #define CONFIG_LZO -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS -#define CONFIG_MTD_UBI_FASTMAP -#define CONFIG_MTD_UBI_FASTMAP_AUTOCONVERT 1 #endif /* Commen environment */ diff --git a/include/configs/smartweb.h b/include/configs/smartweb.h index 8ad8f24cc9..1ea41a22cb 100644 --- a/include/configs/smartweb.h +++ b/include/configs/smartweb.h @@ -239,13 +239,8 @@ #define CONFIG_SYS_SPL_MALLOC_SIZE CONFIG_SYS_MALLOC_LEN #define CONFIG_SPL_LDSCRIPT arch/arm/mach-at91/arm926ejs/u-boot-spl.lds -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT - #define CONFIG_SPL_BOARD_INIT -#define CONFIG_SPL_GPIO_SUPPORT #define CONFIG_SYS_NAND_ENABLE_PIN_SPL (2*32 + 14) -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SYS_USE_NANDFLASH 1 #define CONFIG_SPL_NAND_DRIVERS #define CONFIG_SPL_NAND_BASE diff --git a/include/configs/smdk2410.h b/include/configs/smdk2410.h index c8148bb7ae..f83a9c8e79 100644 --- a/include/configs/smdk2410.h +++ b/include/configs/smdk2410.h @@ -166,7 +166,6 @@ /* * File system */ -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS #define CONFIG_CMD_MTDPARTS #define CONFIG_MTD_DEVICE diff --git a/include/configs/smdk5250.h b/include/configs/smdk5250.h index 92a08332a3..5c60887563 100644 --- a/include/configs/smdk5250.h +++ b/include/configs/smdk5250.h @@ -20,7 +20,6 @@ #define CONFIG_BOARD_COMMON -#define CONFIG_IDENT_STRING " for SMDK5250" #define CONFIG_DEFAULT_CONSOLE "console=ttySAC1,115200n8\0" #endif /* __CONFIG_SMDK_H */ diff --git a/include/configs/smdk5420.h b/include/configs/smdk5420.h index a46ca74166..d8d095ff4d 100644 --- a/include/configs/smdk5420.h +++ b/include/configs/smdk5420.h @@ -31,7 +31,6 @@ #define CONFIG_SERIAL3 /* use SERIAL 3 */ #define CONFIG_DEFAULT_CONSOLE "console=ttySAC1,115200n8\0" -#define CONFIG_IDENT_STRING " for SMDK5420" #define CONFIG_DEFAULT_CONSOLE "console=ttySAC1,115200n8\0" /* USB */ diff --git a/include/configs/smdkc100.h b/include/configs/smdkc100.h index 9d52689b80..0ad1a27ba1 100644 --- a/include/configs/smdkc100.h +++ b/include/configs/smdkc100.h @@ -167,7 +167,6 @@ #define CONFIG_SYS_NO_FLASH 1 #define CONFIG_SYS_MONITOR_LEN (256 << 10) /* 256 KiB */ -#define CONFIG_IDENT_STRING " for SMDKC100" #if !defined(CONFIG_NAND_SPL) && (CONFIG_SYS_TEXT_BASE >= 0xc0000000) #define CONFIG_ENABLE_MMU diff --git a/include/configs/smdkv310.h b/include/configs/smdkv310.h index efb18ffa29..ccb89216d8 100644 --- a/include/configs/smdkv310.h +++ b/include/configs/smdkv310.h @@ -67,7 +67,6 @@ #define PHYS_SDRAM_4_SIZE SDRAM_BANK_SIZE /* FLASH and environment organization */ -#define CONFIG_IDENT_STRING " for SMDKC210/V310" #define CONFIG_CLK_1000_400_200 diff --git a/include/configs/sniper.h b/include/configs/sniper.h index 5062cd0e44..3bc9819f9c 100644 --- a/include/configs/sniper.h +++ b/include/configs/sniper.h @@ -137,16 +137,6 @@ #define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/omap-common/u-boot-spl.lds" #define CONFIG_SPL_BOARD_INIT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBDISK_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_POWER_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT -#define CONFIG_SPL_FAT_SUPPORT - #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION 2 #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 diff --git a/include/configs/snow.h b/include/configs/snow.h index 1d8d8da397..01d9db8e60 100644 --- a/include/configs/snow.h +++ b/include/configs/snow.h @@ -15,7 +15,6 @@ #define CONFIG_BOARD_COMMON -#define CONFIG_IDENT_STRING " for snow" #define CONFIG_DEFAULT_CONSOLE "console=ttySAC1,115200n8\0" #endif /* __CONFIG_SNOW_H */ diff --git a/include/configs/socfpga_common.h b/include/configs/socfpga_common.h index b3fb245fea..084874d2fd 100644 --- a/include/configs/socfpga_common.h +++ b/include/configs/socfpga_common.h @@ -300,7 +300,6 @@ unsigned int cm_get_qspi_controller_clk_hz(void); /* UBI and UBIFS support */ #if defined(CONFIG_CMD_SF) || defined(CONFIG_CMD_NAND) -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS #define CONFIG_RBTREE #define CONFIG_LZO @@ -322,36 +321,19 @@ unsigned int cm_get_qspi_controller_clk_hz(void); #define CONFIG_SPL_TEXT_BASE CONFIG_SYS_INIT_RAM_ADDR #define CONFIG_SPL_MAX_SIZE (64 * 1024) -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_WATCHDOG_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#ifdef CONFIG_DM_MMC -#define CONFIG_SPL_MMC_SUPPORT -#endif -#ifdef CONFIG_DM_SPI -#define CONFIG_SPL_SPI_SUPPORT -#endif -#ifdef CONFIG_SPL_NAND_DENALI -#define CONFIG_SPL_NAND_SUPPORT -#endif - /* SPL SDMMC boot support */ #ifdef CONFIG_SPL_MMC_SUPPORT #if defined(CONFIG_SPL_FAT_SUPPORT) || defined(CONFIG_SPL_EXT_SUPPORT) #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 2 #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot-dtb.img" -#define CONFIG_SPL_LIBDISK_SUPPORT #else #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION 1 #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x200 /* offset 512 sect (256k) */ -#define CONFIG_SPL_LIBDISK_SUPPORT #endif #endif /* SPL QSPI boot support */ #ifdef CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x40000 #endif diff --git a/include/configs/socfpga_vining_fpga.h b/include/configs/socfpga_vining_fpga.h index 1c7d45e4a8..8d90c914ba 100644 --- a/include/configs/socfpga_vining_fpga.h +++ b/include/configs/socfpga_vining_fpga.h @@ -192,9 +192,7 @@ "else echo \"Unsupported boot mode: \"${bootmode} ; " \ "fi\0" \ -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS -#define CONFIG_MTD_UBI_FASTMAP #define CONFIG_RBTREE #define CONFIG_LZO #define MTDPARTS_DEFAULT \ diff --git a/include/configs/spear-common.h b/include/configs/spear-common.h index 7f6cb9318b..a6973c56ac 100644 --- a/include/configs/spear-common.h +++ b/include/configs/spear-common.h @@ -182,7 +182,6 @@ #define CONFIG_SYS_MEMTEST_START 0x00800000 #define CONFIG_SYS_MEMTEST_END 0x04000000 #define CONFIG_SYS_MALLOC_LEN (1024*1024) -#define CONFIG_IDENT_STRING "-SPEAr" #define CONFIG_SYS_LONGHELP #define CONFIG_CMDLINE_EDITING #define CONFIG_SYS_CBSIZE 256 diff --git a/include/configs/spear3xx_evb.h b/include/configs/spear3xx_evb.h index 8090bc8973..dd73a4d1bd 100644 --- a/include/configs/spear3xx_evb.h +++ b/include/configs/spear3xx_evb.h @@ -12,22 +12,19 @@ * High Level Configuration Options * (easy to change) */ -#if defined(CONFIG_spear300) +#if defined(CONFIG_SPEAR300) #define CONFIG_SPEAR3XX -#define CONFIG_SPEAR300 -#elif defined(CONFIG_spear310) +#elif defined(CONFIG_SPEAR310) #define CONFIG_SPEAR3XX -#define CONFIG_SPEAR310 -#elif defined(CONFIG_spear320) +#elif defined(CONFIG_SPEAR320) #define CONFIG_SPEAR3XX -#define CONFIG_SPEAR320 #endif -#if defined(CONFIG_usbtty) +#if defined(CONFIG_USBTTY) #define CONFIG_SPEAR_USBTTY #endif -#if defined(CONFIG_nand) +#if defined(CONFIG_NAND) #define CONFIG_ENV_IS_IN_NAND #else #define CONFIG_ENV_IS_IN_FLASH diff --git a/include/configs/spear6xx_evb.h b/include/configs/spear6xx_evb.h index 28dddcc5b9..7745247052 100644 --- a/include/configs/spear6xx_evb.h +++ b/include/configs/spear6xx_evb.h @@ -12,13 +12,11 @@ * High Level Configuration Options * (easy to change) */ -#define CONFIG_SPEAR600 - -#if defined(CONFIG_usbtty) +#if defined(CONFIG_USBTTY) #define CONFIG_SPEAR_USBTTY #endif -#if defined(CONFIG_nand) +#if defined(CONFIG_NAND) #define CONFIG_ENV_IS_IN_NAND #else #define CONFIG_ENV_IS_IN_FLASH diff --git a/include/configs/spring.h b/include/configs/spring.h index 8940123f34..d8c9b4a783 100644 --- a/include/configs/spring.h +++ b/include/configs/spring.h @@ -13,7 +13,6 @@ #define CONFIG_BOARD_COMMON -#define CONFIG_IDENT_STRING " for spring" #define CONFIG_DEFAULT_CONSOLE "console=ttySAC1,115200n8\0" #endif /* __CONFIG_SPRING_H */ diff --git a/include/configs/strider.h b/include/configs/strider.h index 5fabbadba8..5cd37d700f 100644 --- a/include/configs/strider.h +++ b/include/configs/strider.h @@ -20,16 +20,6 @@ #define CONFIG_SYS_TEXT_BASE 0xFE000000 -#ifdef CONFIG_STRIDER_CPU_DP -#define CONFIG_IDENT_STRING " strider cpu dp 0.01" -#elif defined(CONFIG_STRIDER_CPU) -#define CONFIG_IDENT_STRING " strider cpu 0.01" -#elif defined(CONFIG_STRIDER_CON_DP) -#define CONFIG_IDENT_STRING " strider con dp 0.01" -#else -#define CONFIG_IDENT_STRING " strider con 0.01" -#endif - #define CONFIG_BOARD_EARLY_INIT_F #define CONFIG_BOARD_EARLY_INIT_R #define CONFIG_LAST_STAGE_INIT diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h index 708ab1793e..deb2e8d07d 100644 --- a/include/configs/sunxi-common.h +++ b/include/configs/sunxi-common.h @@ -134,13 +134,11 @@ #ifdef CONFIG_NAND_SUNXI #define CONFIG_SYS_NAND_MAX_ECCPOS 1664 -#define CONFIG_SPL_NAND_SUPPORT 1 #define CONFIG_SYS_NAND_ONFI_DETECTION #define CONFIG_SYS_MAX_NAND_DEVICE 8 #endif #ifdef CONFIG_SPL_SPI_SUNXI -#define CONFIG_SPL_SPI_FLASH_SUPPORT 1 #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x8000 #endif @@ -180,7 +178,6 @@ #define CONFIG_SYS_NO_FLASH #define CONFIG_SYS_MONITOR_LEN (768 << 10) /* 768 KiB */ -#define CONFIG_IDENT_STRING " Allwinner Technology" #define CONFIG_DISPLAY_BOARDINFO #define CONFIG_ENV_OFFSET (544 << 10) /* (8 + 24 + 512) KiB */ @@ -189,9 +186,6 @@ #define CONFIG_FAT_WRITE /* enable write access */ #define CONFIG_SPL_FRAMEWORK -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT #define CONFIG_SPL_BOARD_LOAD_IMAGE @@ -206,12 +200,6 @@ #define CONFIG_SPL_MAX_SIZE 0x5fc0 /* 24KB on sun4i/sun7i */ #endif -#define CONFIG_SPL_LIBDISK_SUPPORT - -#ifdef CONFIG_MMC -#define CONFIG_SPL_MMC_SUPPORT -#endif - #ifndef CONFIG_ARM64 #define CONFIG_SPL_LDSCRIPT "arch/arm/cpu/armv7/sunxi/u-boot-spl.lds" #endif @@ -232,7 +220,6 @@ /* I2C */ #if defined CONFIG_AXP152_POWER || defined CONFIG_AXP209_POWER || \ defined CONFIG_SY8106A_POWER -#define CONFIG_SPL_I2C_SUPPORT #endif #if defined CONFIG_I2C0_ENABLE || defined CONFIG_I2C1_ENABLE || \ @@ -266,7 +253,6 @@ extern int soft_i2c_gpio_scl; #if defined CONFIG_AXP152_POWER || defined CONFIG_AXP209_POWER || \ defined CONFIG_AXP221_POWER || defined CONFIG_AXP818_POWER || \ defined CONFIG_SY8106A_POWER -#define CONFIG_SPL_POWER_SUPPORT #endif #ifndef CONFIG_CONS_INDEX @@ -293,7 +279,6 @@ extern int soft_i2c_gpio_scl; /* GPIO */ #define CONFIG_SUNXI_GPIO -#define CONFIG_SPL_GPIO_SUPPORT #ifdef CONFIG_VIDEO /* diff --git a/include/configs/tam3517-common.h b/include/configs/tam3517-common.h index a63db65d3a..61c563eb27 100644 --- a/include/configs/tam3517-common.h +++ b/include/configs/tam3517-common.h @@ -201,16 +201,6 @@ #define CONFIG_SPL_NAND_SOFTECC #define CONFIG_SPL_NAND_WORKSPACE 0x8f07f000 /* below BSS */ -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBDISK_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT -#define CONFIG_SPL_FAT_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT -#define CONFIG_SPL_POWER_SUPPORT -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_BASE #define CONFIG_SPL_NAND_DRIVERS #define CONFIG_SPL_NAND_ECC @@ -260,7 +250,6 @@ #define CONFIG_SYS_NAND_U_BOOT_OFFS 0x80000 #define CONFIG_SYS_NAND_U_BOOT_SIZE 0x80000 -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS #define CONFIG_RBTREE #define CONFIG_LZO diff --git a/include/configs/tao3530.h b/include/configs/tao3530.h index 696ca32c9c..176f54469c 100644 --- a/include/configs/tao3530.h +++ b/include/configs/tao3530.h @@ -288,19 +288,9 @@ #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img" #define CONFIG_SPL_BOARD_INIT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBDISK_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT -#define CONFIG_SPL_FAT_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_BASE #define CONFIG_SPL_NAND_DRIVERS #define CONFIG_SPL_NAND_ECC -#define CONFIG_SPL_GPIO_SUPPORT -#define CONFIG_SPL_POWER_SUPPORT #define CONFIG_SPL_OMAP3_ID_NAND #define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/omap-common/u-boot-spl.lds" diff --git a/include/configs/taurus.h b/include/configs/taurus.h index 2c41dd8eb6..af0b841e2e 100644 --- a/include/configs/taurus.h +++ b/include/configs/taurus.h @@ -143,8 +143,6 @@ #if defined(CONFIG_SPL_BUILD) /* SPL related */ #undef CONFIG_SPL_OS_BOOT /* Not supported by existing map */ -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x20000 @@ -258,14 +256,8 @@ #define CONFIG_SPL_BSS_START_ADDR CONFIG_SPL_MAX_SIZE #define CONFIG_SPL_BSS_MAX_SIZE (3 * SZ_512) -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT - #define CONFIG_SPL_BOARD_INIT -#define CONFIG_SPL_GPIO_SUPPORT #define CONFIG_SYS_NAND_ENABLE_PIN_SPL (2*32 + 14) -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SYS_USE_NANDFLASH 1 #define CONFIG_SPL_NAND_DRIVERS #define CONFIG_SPL_NAND_BASE diff --git a/include/configs/tegra-common.h b/include/configs/tegra-common.h index 7b0940a7f2..29614e0f9e 100644 --- a/include/configs/tegra-common.h +++ b/include/configs/tegra-common.h @@ -122,11 +122,6 @@ CONFIG_SPL_TEXT_BASE) #define CONFIG_SYS_SPL_MALLOC_SIZE 0x00010000 -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT - #define CONFIG_BOARD_EARLY_INIT_F #define CONFIG_BOARD_LATE_INIT diff --git a/include/configs/theadorable.h b/include/configs/theadorable.h index 8bbf8790cc..d27ab9c8e9 100644 --- a/include/configs/theadorable.h +++ b/include/configs/theadorable.h @@ -149,14 +149,7 @@ #define CONFIG_SPL_STACK (0x40000000 + ((192 - 16) << 10)) #define CONFIG_SPL_BOOTROM_SAVE (CONFIG_SPL_STACK + 4) -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT - /* SPL related SPI defines */ -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x1a000 #define CONFIG_SYS_U_BOOT_OFFS CONFIG_SYS_SPI_U_BOOT_OFFS diff --git a/include/configs/thuban.h b/include/configs/thuban.h index 25ac2cba4b..8d7b280f56 100644 --- a/include/configs/thuban.h +++ b/include/configs/thuban.h @@ -44,10 +44,6 @@ #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x300 -#undef CONFIG_SPL_NET_SUPPORT -#undef CONFIG_SPL_NET_VCI_STRING -#undef CONFIG_SPL_ETH_SUPPORT - #undef CONFIG_MII #undef CONFIG_PHY_GIGE #define CONFIG_PHY_SMSC diff --git a/include/configs/thunderx_88xx.h b/include/configs/thunderx_88xx.h index 5c3b3da73c..4387082b26 100644 --- a/include/configs/thunderx_88xx.h +++ b/include/configs/thunderx_88xx.h @@ -15,9 +15,6 @@ #define CONFIG_SYS_NO_FLASH -#define CONFIG_IDENT_STRING \ - " for Cavium Thunder CN88XX ARM v8 Multi-Core" - #define MEM_BASE 0x00500000 #define CONFIG_SYS_LOWMEM_BASE MEM_BASE diff --git a/include/configs/ti814x_evm.h b/include/configs/ti814x_evm.h index 82ab47936c..22a8e4f4ff 100644 --- a/include/configs/ti814x_evm.h +++ b/include/configs/ti814x_evm.h @@ -166,15 +166,7 @@ #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x200 /* 256 KB */ #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img" -#define CONFIG_SPL_MMC_SUPPORT -#define CONFIG_SPL_FAT_SUPPORT - -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBDISK_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT -#define CONFIG_SPL_YMODEM_SUPPORT + #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x20000 #define CONFIG_SYS_SPI_U_BOOT_SIZE 0x40000 #define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/omap-common/u-boot-spl.lds" diff --git a/include/configs/ti816x_evm.h b/include/configs/ti816x_evm.h index e3cd647819..b3215a2bcb 100644 --- a/include/configs/ti816x_evm.h +++ b/include/configs/ti816x_evm.h @@ -132,15 +132,7 @@ #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x200 /* 256 KB */ #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img" -#define CONFIG_SPL_MMC_SUPPORT -#define CONFIG_SPL_FAT_SUPPORT - -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBDISK_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT -#define CONFIG_SPL_YMODEM_SUPPORT + #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x20000 #define CONFIG_SYS_SPI_U_BOOT_SIZE 0x40000 #define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/omap-common/u-boot-spl.lds" diff --git a/include/configs/ti_am335x_common.h b/include/configs/ti_am335x_common.h index 9a671de730..6b63fd29d3 100644 --- a/include/configs/ti_am335x_common.h +++ b/include/configs/ti_am335x_common.h @@ -62,7 +62,6 @@ (128 << 20)) /* Enable the watchdog inside of SPL */ -#define CONFIG_SPL_WATCHDOG_SUPPORT /* * Since SPL did pll and ddr initialization for us, diff --git a/include/configs/ti_armv7_common.h b/include/configs/ti_armv7_common.h index 32cb20273a..d8a8c4a875 100644 --- a/include/configs/ti_armv7_common.h +++ b/include/configs/ti_armv7_common.h @@ -260,30 +260,15 @@ #define CONFIG_CMD_SPL #endif -#ifdef CONFIG_MMC -#define CONFIG_SPL_LIBDISK_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT -#define CONFIG_SPL_FAT_SUPPORT -#define CONFIG_SPL_EXT_SUPPORT -#endif - #define CONFIG_SYS_THUMB_BUILD /* General parts of the framework, required. */ -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_POWER_SUPPORT -#define CONFIG_SPL_GPIO_SUPPORT #define CONFIG_SPL_BOARD_INIT #ifdef CONFIG_NAND -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_BASE #define CONFIG_SPL_NAND_DRIVERS #define CONFIG_SPL_NAND_ECC -#define CONFIG_SPL_MTD_SUPPORT #define CONFIG_SYS_NAND_U_BOOT_START CONFIG_SYS_TEXT_BASE #endif #endif /* !CONFIG_NOR_BOOT */ diff --git a/include/configs/ti_armv7_keystone2.h b/include/configs/ti_armv7_keystone2.h index c8df48adc8..9c0614e566 100644 --- a/include/configs/ti_armv7_keystone2.h +++ b/include/configs/ti_armv7_keystone2.h @@ -54,8 +54,6 @@ CONFIG_SYS_SPL_MALLOC_SIZE + \ SPL_MALLOC_F_SIZE + \ CONFIG_SPL_STACK_SIZE - 4) -#define CONFIG_SPL_SPI_FLASH_SUPPORT -#define CONFIG_SPL_SPI_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SYS_SPI_U_BOOT_OFFS CONFIG_SPL_PAD_TO @@ -206,7 +204,6 @@ /* U-Boot command configuration */ #define CONFIG_CMD_SAVES -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS #define CONFIG_CMD_EEPROM @@ -307,15 +304,10 @@ #undef CONFIG_SPL_OS_BOOT /* We do not have MMC support.. yet.. */ -#undef CONFIG_SPL_LIBDISK_SUPPORT -#undef CONFIG_SPL_MMC_SUPPORT -#undef CONFIG_SPL_FAT_SUPPORT -#undef CONFIG_SPL_EXT_SUPPORT #undef CONFIG_MMC #undef CONFIG_GENERIC_MMC /* And no support for GPIO, yet.. */ -#undef CONFIG_SPL_GPIO_SUPPORT /* we may include files below only after all above definitions */ #include <asm/arch/hardware.h> diff --git a/include/configs/ti_omap3_common.h b/include/configs/ti_omap3_common.h index 33426c89bb..d607f407fd 100644 --- a/include/configs/ti_omap3_common.h +++ b/include/configs/ti_omap3_common.h @@ -69,7 +69,6 @@ /* SPL */ #define CONFIG_SPL_TEXT_BASE 0x40200800 #define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/omap-common/u-boot-spl.lds" -#define CONFIG_SPL_POWER_SUPPORT #define CONFIG_SYS_SPL_ARGS_ADDR (CONFIG_SYS_SDRAM_BASE + \ (64 << 20)) diff --git a/include/configs/ti_omap4_common.h b/include/configs/ti_omap4_common.h index 8c88ebf2f0..4115c78e94 100644 --- a/include/configs/ti_omap4_common.h +++ b/include/configs/ti_omap4_common.h @@ -164,7 +164,6 @@ /* No need for i2c in SPL mode as we will use SRI2C for PMIC access on OMAP4 */ #undef CONFIG_SYS_I2C #undef CONFIG_SYS_I2C_OMAP24XX -#undef CONFIG_SPL_I2C_SUPPORT #endif #endif /* __CONFIG_TI_OMAP4_COMMON_H */ diff --git a/include/configs/titanium.h b/include/configs/titanium.h index f550aab247..bbdaf0443d 100644 --- a/include/configs/titanium.h +++ b/include/configs/titanium.h @@ -197,7 +197,6 @@ #define CONFIG_MTD_PARTITIONS #define CONFIG_RBTREE #define CONFIG_CMD_MTDPARTS -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS #endif /* __CONFIG_H */ diff --git a/include/configs/tqma6.h b/include/configs/tqma6.h index 3173dc0c17..029eddd7d0 100644 --- a/include/configs/tqma6.h +++ b/include/configs/tqma6.h @@ -12,11 +12,6 @@ #include <linux/kconfig.h> /* SPL */ /* #if defined(CONFIG_SPL_BUILD) */ - -#define CONFIG_SPL_MMC_SUPPORT -#define CONFIG_SPL_SPI_SUPPORT -#define CONFIG_SPL_FAT_SUPPORT - /* common IMX6 SPL configuration */ #include "imx6_spl.h" diff --git a/include/configs/tricorder.h b/include/configs/tricorder.h index e5d321ac6a..c1c94954ac 100644 --- a/include/configs/tricorder.h +++ b/include/configs/tricorder.h @@ -146,7 +146,6 @@ #define CONFIG_CMD_MTDPARTS /* Enable MTD parts commands */ #define CONFIG_CMD_NAND /* NAND support */ #define CONFIG_CMD_NAND_LOCK_UNLOCK /* nand (un)lock commands */ -#define CONFIG_CMD_UBI /* UBI commands */ #define CONFIG_CMD_UBIFS /* UBIFS commands */ #define CONFIG_LZO /* LZO is needed for UBIFS */ @@ -319,19 +318,9 @@ #define CONFIG_SPL_NAND_SIMPLE #define CONFIG_SPL_BOARD_INIT -#define CONFIG_SPL_GPIO_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBDISK_SUPPORT -#define CONFIG_SPL_I2C_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_POWER_SUPPORT -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_BASE #define CONFIG_SPL_NAND_DRIVERS #define CONFIG_SPL_NAND_ECC -#define CONFIG_SPL_MMC_SUPPORT -#define CONFIG_SPL_FAT_SUPPORT #define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/omap-common/u-boot-spl.lds" #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img" #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 diff --git a/include/configs/udoo.h b/include/configs/udoo.h index fba78d01c3..0a7767c205 100644 --- a/include/configs/udoo.h +++ b/include/configs/udoo.h @@ -11,8 +11,6 @@ #include "mx6_common.h" -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT #include "imx6_spl.h" #define MACH_TYPE_UDOO 4800 diff --git a/include/configs/uniphier.h b/include/configs/uniphier.h index b3ca46be67..29be00a895 100644 --- a/include/configs/uniphier.h +++ b/include/configs/uniphier.h @@ -31,9 +31,6 @@ #define CONFIG_DISPLAY_CPUINFO #define CONFIG_DISPLAY_BOARDINFO -#define CONFIG_MISC_INIT_F -#define CONFIG_BOARD_EARLY_INIT_F -#define CONFIG_BOARD_EARLY_INIT_R #define CONFIG_BOARD_LATE_INIT #define CONFIG_SYS_MALLOC_LEN (4 * 1024 * 1024) @@ -277,18 +274,10 @@ #define CONFIG_PANIC_HANG #define CONFIG_SPL_FRAMEWORK -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_NOR_SUPPORT #ifdef CONFIG_ARM64 #define CONFIG_SPL_BOARD_LOAD_IMAGE -#else -#define CONFIG_SPL_NAND_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT #endif -#define CONFIG_SPL_LIBCOMMON_SUPPORT /* for mem_malloc_init */ -#define CONFIG_SPL_LIBGENERIC_SUPPORT - #define CONFIG_SPL_BOARD_INIT #define CONFIG_SYS_NAND_U_BOOT_OFFS 0x10000 diff --git a/include/configs/vct.h b/include/configs/vct.h index 168902cb2f..f2e0e5cad3 100644 --- a/include/configs/vct.h +++ b/include/configs/vct.h @@ -246,7 +246,6 @@ int vct_gpio_get(int pin); #if defined(CONFIG_VCT_ONENAND) #define CONFIG_SYS_USE_UBI #define CONFIG_CMD_JFFS2 -#define CONFIG_CMD_UBI #define CONFIG_RBTREE #define CONFIG_MTD_DEVICE /* needed for mtdparts commands */ #define CONFIG_MTD_PARTITIONS diff --git a/include/configs/vexpress_aemv8a.h b/include/configs/vexpress_aemv8a.h index 71c4a1f08d..48834c2fae 100644 --- a/include/configs/vexpress_aemv8a.h +++ b/include/configs/vexpress_aemv8a.h @@ -19,8 +19,6 @@ #define CONFIG_SUPPORT_RAW_INITRD -#define CONFIG_IDENT_STRING " vexpress_aemv8a" - /* Link Definitions */ #if defined(CONFIG_TARGET_VEXPRESS64_BASE_FVP) || \ defined(CONFIG_TARGET_VEXPRESS64_BASE_FVP_DRAM) diff --git a/include/configs/vf610twr.h b/include/configs/vf610twr.h index 33f966ac6e..03586f03d3 100644 --- a/include/configs/vf610twr.h +++ b/include/configs/vf610twr.h @@ -49,7 +49,6 @@ #define CONFIG_SYS_NAND_BASE NFC_BASE_ADDR /* UBI */ -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS #define CONFIG_RBTREE #define CONFIG_LZO diff --git a/include/configs/wandboard.h b/include/configs/wandboard.h index 295f834602..69d0fd5c88 100644 --- a/include/configs/wandboard.h +++ b/include/configs/wandboard.h @@ -12,8 +12,6 @@ #include <config_distro_defaults.h> #include "mx6_common.h" -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT #include "imx6_spl.h" #define MACH_TYPE_WANDBOARD 4412 diff --git a/include/configs/woodburn_sd.h b/include/configs/woodburn_sd.h index 25bfeef036..5a04b99400 100644 --- a/include/configs/woodburn_sd.h +++ b/include/configs/woodburn_sd.h @@ -22,15 +22,9 @@ */ #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_LDSCRIPT "arch/arm/cpu/arm1136/u-boot-spl.lds" -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_LIBDISK_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT #define CONFIG_SPL_BOARD_INIT #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x100 /* address 0x60000 */ #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x400 /* 512 KB */ -#define CONFIG_SPL_GPIO_SUPPORT #define CONFIG_SPL_TEXT_BASE 0x10002300 #define CONFIG_SPL_MAX_SIZE (64 * 1024) /* 8 KB for stack */ diff --git a/include/configs/work_92105.h b/include/configs/work_92105.h index b2103b49b5..ff39c3184f 100644 --- a/include/configs/work_92105.h +++ b/include/configs/work_92105.h @@ -188,12 +188,8 @@ #define CONFIG_SPL_BOARD_INIT /* Use the framework and generic lib */ #define CONFIG_SPL_FRAMEWORK -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT /* SPL will use serial */ -#define CONFIG_SPL_SERIAL_SUPPORT /* SPL will load U-Boot from NAND offset 0x40000 */ -#define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_NAND_DRIVERS #define CONFIG_SPL_NAND_BASE #define CONFIG_SPL_NAND_BOOT diff --git a/include/configs/x600.h b/include/configs/x600.h index 4af6b67f9e..f15b1f9007 100644 --- a/include/configs/x600.h +++ b/include/configs/x600.h @@ -115,7 +115,6 @@ #define CONFIG_CMD_MTDPARTS #define CONFIG_CMD_NAND #define CONFIG_CMD_SAVES -#define CONFIG_CMD_UBI #define CONFIG_CMD_UBIFS #define CONFIG_LZO @@ -148,7 +147,6 @@ #define CONFIG_SYS_MEMTEST_START 0x00800000 #define CONFIG_SYS_MEMTEST_END 0x04000000 #define CONFIG_SYS_MALLOC_LEN (8 << 20) -#define CONFIG_IDENT_STRING "-SPEAr" #define CONFIG_SYS_LONGHELP #define CONFIG_CMDLINE_EDITING #define CONFIG_AUTO_COMPLETE @@ -267,10 +265,6 @@ #define CONFIG_SPL_LDSCRIPT "arch/arm/cpu/arm926ejs/spear/u-boot-spl.lds" #define CONFIG_SPL_FRAMEWORK -#define CONFIG_SPL_NOR_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT -#define CONFIG_SPL_LIBCOMMON_SUPPORT /* image.c */ -#define CONFIG_SPL_LIBGENERIC_SUPPORT /* string.c */ /* * Please select/define only one of the following diff --git a/include/configs/xilinx_zynqmp.h b/include/configs/xilinx_zynqmp.h index 02f0e4c9a9..5ed8beb9c2 100644 --- a/include/configs/xilinx_zynqmp.h +++ b/include/configs/xilinx_zynqmp.h @@ -34,10 +34,6 @@ /* Have release address at the end of 256MB for now */ #define CPU_RELEASE_ADDR 0xFFFFFF0 -#if !defined(CONFIG_IDENT_STRING) -# define CONFIG_IDENT_STRING " Xilinx ZynqMP" -#endif - #define CONFIG_SYS_INIT_SP_ADDR CONFIG_SYS_TEXT_BASE /* Generic Timer Definitions - setup in EL3. Setup by ATF for other cases */ @@ -79,7 +75,9 @@ /* Diff from config_distro_defaults.h */ #define CONFIG_SUPPORT_RAW_INITRD +#if !defined(CONFIG_SPL_BUILD) #define CONFIG_ENV_VARS_UBOOT_CONFIG +#endif #define CONFIG_AUTO_COMPLETE /* PXE */ @@ -112,7 +110,7 @@ #define CONFIG_SYS_LOAD_ADDR 0x8000000 #if defined(CONFIG_ZYNQMP_USB) -#define CONFIG_USB_MAX_CONTROLLER_COUNT 1 +#define CONFIG_USB_MAX_CONTROLLER_COUNT 2 #define CONFIG_SYS_USB_XHCI_MAX_ROOT_PORTS 2 #define CONFIG_USB_XHCI_ZYNQMP @@ -140,7 +138,6 @@ # define DFU_ALT_INFO #endif - #define CONFIG_BOARD_LATE_INIT /* Do not preserve environment */ @@ -189,7 +186,6 @@ #endif #ifdef CONFIG_SATA_CEVA -#define CONFIG_AHCI #define CONFIG_LIBATA #define CONFIG_SCSI_AHCI #define CONFIG_SCSI_AHCI_PLAT @@ -251,18 +247,26 @@ DFU_ALT_INFO #endif +/* SPL can't handle all huge variables - define just DFU */ +#if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_DFU_SUPPORT) +#undef CONFIG_EXTRA_ENV_SETTINGS +# define CONFIG_EXTRA_ENV_SETTINGS \ + "dfu_alt_info_ram=uboot.bin ram 0x8000000 0x1000000;" \ + "atf-uboot.ub ram 0x10000000 0x1000000;" \ + "Image ram 0x80000 0x3f80000;" \ + "system.dtb ram 0x4000000 0x100000\0" \ + "dfu_bufsiz=0x1000\0" +#endif + #define CONFIG_SPL_TEXT_BASE 0xfffc0000 #define CONFIG_SPL_STACK 0xfffffffc -#define CONFIG_SPL_MAX_SIZE 0x20000 +#define CONFIG_SPL_MAX_SIZE 0x40000 /* Just random location in OCM */ -#define CONFIG_SPL_BSS_START_ADDR 0x1000000 -#define CONFIG_SPL_BSS_MAX_SIZE 0x2000000 +#define CONFIG_SPL_BSS_START_ADDR 0x0 +#define CONFIG_SPL_BSS_MAX_SIZE 0x80000 #define CONFIG_SPL_FRAMEWORK -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT #define CONFIG_SPL_BOARD_INIT #define CONFIG_SPL_RAM_DEVICE @@ -272,21 +276,32 @@ #define CONFIG_SYS_SPL_ARGS_ADDR 0x8000000 /* ATF is my kernel image */ -#define CONFIG_SPL_FS_LOAD_KERNEL_NAME "atf.ub" +#define CONFIG_SPL_FS_LOAD_KERNEL_NAME "atf-uboot.ub" /* FIT load address for RAM boot */ #define CONFIG_SPL_LOAD_FIT_ADDRESS 0x10000000 /* MMC support */ #ifdef CONFIG_ZYNQ_SDHCI -# define CONFIG_SPL_MMC_SUPPORT # define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 # define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR 0 /* unused */ # define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS 0 /* unused */ # define CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR 0 /* unused */ -# define CONFIG_SPL_LIBDISK_SUPPORT -# define CONFIG_SPL_FAT_SUPPORT # define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img" #endif +#if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_DFU_SUPPORT) +# undef CONFIG_CMD_BOOTD +# define CONFIG_SPL_ENV_SUPPORT +# define CONFIG_SPL_HASH_SUPPORT +# define CONFIG_ENV_MAX_ENTRIES 10 + +# define CONFIG_SYS_SPL_MALLOC_START 0x20000000 +# define CONFIG_SYS_SPL_MALLOC_SIZE 0x10000000 + +#ifdef CONFIG_SPL_SYS_MALLOC_SIMPLE +# error "Disable CONFIG_SPL_SYS_MALLOC_SIMPLE. Full malloc needs to be used" +#endif +#endif + #endif /* __XILINX_ZYNQMP_H */ diff --git a/include/configs/xilinx_zynqmp_ep.h b/include/configs/xilinx_zynqmp_ep.h index 44434aab7b..8e4b96033b 100644 --- a/include/configs/xilinx_zynqmp_ep.h +++ b/include/configs/xilinx_zynqmp_ep.h @@ -16,7 +16,6 @@ #define CONFIG_ZYNQ_SDHCI_MAX_FREQ 52000000 #define CONFIG_ZYNQ_SDHCI_MIN_FREQ (CONFIG_ZYNQ_SDHCI_MAX_FREQ << 9) #define CONFIG_ZYNQ_EEPROM -#define CONFIG_AHCI #define CONFIG_SATA_CEVA #define CONFIG_ZYNQMP_XHCI_LIST {ZYNQMP_USB0_XHCI_BASEADDR, \ ZYNQMP_USB1_XHCI_BASEADDR} diff --git a/include/configs/xilinx_zynqmp_zc1751_xm015_dc1.h b/include/configs/xilinx_zynqmp_zc1751_xm015_dc1.h index c9f443207d..b19a55219a 100644 --- a/include/configs/xilinx_zynqmp_zc1751_xm015_dc1.h +++ b/include/configs/xilinx_zynqmp_zc1751_xm015_dc1.h @@ -15,8 +15,6 @@ #define CONFIG_AHCI #define CONFIG_ZYNQMP_XHCI_LIST {ZYNQMP_USB0_XHCI_BASEADDR} -#define CONFIG_IDENT_STRING " Xilinx ZynqMP ZC1751 xm015 dc1" - #include <configs/xilinx_zynqmp.h> #endif /* __CONFIG_ZYNQMP_ZC1751_XM015_DC1_H */ diff --git a/include/configs/xilinx_zynqmp_zc1751_xm016_dc2.h b/include/configs/xilinx_zynqmp_zc1751_xm016_dc2.h index 526d0bbe58..0714d72911 100644 --- a/include/configs/xilinx_zynqmp_zc1751_xm016_dc2.h +++ b/include/configs/xilinx_zynqmp_zc1751_xm016_dc2.h @@ -12,8 +12,6 @@ #define CONFIG_ZYNQMP_XHCI_LIST {ZYNQMP_USB1_XHCI_BASEADDR} -#define CONFIG_IDENT_STRING " Xilinx ZynqMP ZC1751 xm016 dc2" - #include <configs/xilinx_zynqmp.h> #endif /* __CONFIG_ZYNQMP_ZC1751_XM016_DC2_H */ diff --git a/include/configs/xilinx_zynqmp_zc1751_xm018_dc4.h b/include/configs/xilinx_zynqmp_zc1751_xm018_dc4.h deleted file mode 100644 index 65277a64c3..0000000000 --- a/include/configs/xilinx_zynqmp_zc1751_xm018_dc4.h +++ /dev/null @@ -1,17 +0,0 @@ -/* - * Configuration for Xilinx ZynqMP zc1751 XM018 DC4 - * - * (C) Copyright 2015 Xilinx, Inc. - * Michal Simek <michal.simek@xilinx.com> - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#ifndef __CONFIG_ZYNQMP_ZC1751_XM018_DC4_H -#define __CONFIG_ZYNQMP_ZC1751_XM018_DC4_H - -#define CONFIG_IDENT_STRING " Xilinx ZynqMP ZC1751 xm018 dc4" - -#include <configs/xilinx_zynqmp.h> - -#endif /* __CONFIG_ZYNQMP_ZC1751_XM018_DC4_H */ diff --git a/include/configs/xilinx_zynqmp_zc1751_xm019_dc5.h b/include/configs/xilinx_zynqmp_zc1751_xm019_dc5.h index 76350d9579..6a0e3975b9 100644 --- a/include/configs/xilinx_zynqmp_zc1751_xm019_dc5.h +++ b/include/configs/xilinx_zynqmp_zc1751_xm019_dc5.h @@ -13,8 +13,6 @@ #define CONFIG_ZYNQ_SDHCI0 -#define CONFIG_IDENT_STRING " Xilinx ZynqMP ZC1751 xm019 dc5" - #include <configs/xilinx_zynqmp.h> #endif /* __CONFIG_ZYNQMP_ZC1751_XM019_DC5_H */ diff --git a/include/configs/xilinx_zynqmp_zcu102.h b/include/configs/xilinx_zynqmp_zcu102.h index 7ceab3230b..adf2321c5d 100644 --- a/include/configs/xilinx_zynqmp_zcu102.h +++ b/include/configs/xilinx_zynqmp_zcu102.h @@ -45,8 +45,6 @@ #define CONFIG_ZYNQMP_XHCI_LIST {ZYNQMP_USB0_XHCI_BASEADDR} -#define CONFIG_IDENT_STRING " Xilinx ZynqMP ZCU102" - #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1 #define CONFIG_CMD_EEPROM #define CONFIG_ZYNQ_EEPROM_BUS 5 diff --git a/include/configs/xpress.h b/include/configs/xpress.h index 26be33787a..dd28e6ad75 100644 --- a/include/configs/xpress.h +++ b/include/configs/xpress.h @@ -12,8 +12,6 @@ #include <asm/imx-common/gpio.h> /* SPL options */ -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_MMC_SUPPORT #include "imx6_spl.h" #define CONFIG_DISPLAY_CPUINFO diff --git a/include/configs/zynq-common.h b/include/configs/zynq-common.h index 5f7fefde3d..260df2f0b4 100644 --- a/include/configs/zynq-common.h +++ b/include/configs/zynq-common.h @@ -293,9 +293,6 @@ /* SPL part */ #define CONFIG_CMD_SPL #define CONFIG_SPL_FRAMEWORK -#define CONFIG_SPL_LIBCOMMON_SUPPORT -#define CONFIG_SPL_LIBGENERIC_SUPPORT -#define CONFIG_SPL_SERIAL_SUPPORT #define CONFIG_SPL_BOARD_INIT #define CONFIG_SPL_RAM_DEVICE @@ -303,12 +300,9 @@ /* MMC support */ #ifdef CONFIG_ZYNQ_SDHCI -#define CONFIG_SPL_MMC_SUPPORT #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x300 /* address 0x60000 */ #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x200 /* 256 KB */ #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 -#define CONFIG_SPL_LIBDISK_SUPPORT -#define CONFIG_SPL_FAT_SUPPORT #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img" #endif @@ -331,9 +325,7 @@ /* qspi mode is working fine */ #ifdef CONFIG_ZYNQ_QSPI -#define CONFIG_SPL_SPI_SUPPORT #define CONFIG_SPL_SPI_LOAD -#define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x100000 #define CONFIG_SYS_SPI_ARGS_OFFS 0x200000 #define CONFIG_SYS_SPI_ARGS_SIZE 0x80000 diff --git a/include/dt-bindings/clock/boston-clock.h b/include/dt-bindings/clock/boston-clock.h new file mode 100644 index 0000000000..25f9cd25f2 --- /dev/null +++ b/include/dt-bindings/clock/boston-clock.h @@ -0,0 +1,13 @@ +/* + * Copyright (C) 2016 Imagination Technologies + * + * SPDX-License-Identifier: GPL-2.0 + */ + +#ifndef __DT_BINDINGS_CLOCK_BOSTON_CLOCK_H__ +#define __DT_BINDINGS_CLOCK_BOSTON_CLOCK_H__ + +#define BOSTON_CLK_SYS 0 +#define BOSTON_CLK_CPU 1 + +#endif /* __DT_BINDINGS_CLOCK_BOSTON_CLOCK_H__ */ diff --git a/include/dt-bindings/interrupt-controller/mips-gic.h b/include/dt-bindings/interrupt-controller/mips-gic.h new file mode 100644 index 0000000000..cf35a577e3 --- /dev/null +++ b/include/dt-bindings/interrupt-controller/mips-gic.h @@ -0,0 +1,9 @@ +#ifndef _DT_BINDINGS_INTERRUPT_CONTROLLER_MIPS_GIC_H +#define _DT_BINDINGS_INTERRUPT_CONTROLLER_MIPS_GIC_H + +#include <dt-bindings/interrupt-controller/irq.h> + +#define GIC_SHARED 0 +#define GIC_LOCAL 1 + +#endif diff --git a/include/errno.h b/include/errno.h index 15ece2f97f..e0c670a16c 100644 --- a/include/errno.h +++ b/include/errno.h @@ -7,7 +7,7 @@ #ifndef _ERRNO_H #define _ERRNO_H -#include <asm-generic/errno.h> +#include <linux/errno.h> extern int errno; diff --git a/include/ext4fs.h b/include/ext4fs.h index 13d2c5603b..965cd9e9c5 100644 --- a/include/ext4fs.h +++ b/include/ext4fs.h @@ -28,6 +28,7 @@ #define __EXT4__ #include <ext_common.h> +#define EXT4_INDEX_FL 0x00001000 /* Inode uses hash tree index */ #define EXT4_EXTENTS_FL 0x00080000 /* Inode uses extents */ #define EXT4_EXT_MAGIC 0xf30a #define EXT4_FEATURE_RO_COMPAT_GDT_CSUM 0x0010 @@ -86,6 +87,8 @@ struct ext_filesystem { uint32_t inodesz; /* Sectors per Block */ uint32_t sect_perblk; + /* Group Descriptor size */ + uint16_t gdsize; /* Group Descriptor Block Number */ uint32_t gdtable_blkno; /* Total block groups of partition */ @@ -95,7 +98,6 @@ struct ext_filesystem { /* Superblock */ struct ext2_sblock *sb; /* Block group descritpor table */ - struct ext2_block_group *bgd; char *gdtable; /* Block Bitmap Related */ @@ -124,7 +126,7 @@ extern int gindex; int ext4fs_init(void); void ext4fs_deinit(void); -int ext4fs_filename_check(char *filename); +int ext4fs_filename_unlink(char *filename); int ext4fs_write(const char *fname, unsigned char *buffer, unsigned long sizebytes); int ext4_write_file(const char *filename, void *buf, loff_t offset, loff_t len, diff --git a/include/ext_common.h b/include/ext_common.h index 6cddf166d9..07b61fa56b 100644 --- a/include/ext_common.h +++ b/include/ext_common.h @@ -49,11 +49,9 @@ #define EXT2_BLOCK_SIZE(data) (1 << LOG2_BLOCK_SIZE(data)) /* Log2 size of ext2 block in bytes. */ -#define LOG2_BLOCK_SIZE(data) (__le32_to_cpu \ +#define LOG2_BLOCK_SIZE(data) (le32_to_cpu \ (data->sblock.log2_block_size) \ + EXT2_MIN_BLOCK_LOG_SIZE) -#define INODE_SIZE_FILESYSTEM(data) (__le32_to_cpu \ - (data->sblock.inode_size)) #define EXT2_FT_DIR 2 #define SUCCESS 1 @@ -66,92 +64,134 @@ /* The ext2 superblock. */ struct ext2_sblock { - uint32_t total_inodes; - uint32_t total_blocks; - uint32_t reserved_blocks; - uint32_t free_blocks; - uint32_t free_inodes; - uint32_t first_data_block; - uint32_t log2_block_size; - uint32_t log2_fragment_size; - uint32_t blocks_per_group; - uint32_t fragments_per_group; - uint32_t inodes_per_group; - uint32_t mtime; - uint32_t utime; - uint16_t mnt_count; - uint16_t max_mnt_count; - uint16_t magic; - uint16_t fs_state; - uint16_t error_handling; - uint16_t minor_revision_level; - uint32_t lastcheck; - uint32_t checkinterval; - uint32_t creator_os; - uint32_t revision_level; - uint16_t uid_reserved; - uint16_t gid_reserved; - uint32_t first_inode; - uint16_t inode_size; - uint16_t block_group_number; - uint32_t feature_compatibility; - uint32_t feature_incompat; - uint32_t feature_ro_compat; - uint32_t unique_id[4]; + __le32 total_inodes; + __le32 total_blocks; + __le32 reserved_blocks; + __le32 free_blocks; + __le32 free_inodes; + __le32 first_data_block; + __le32 log2_block_size; + __le32 log2_fragment_size; + __le32 blocks_per_group; + __le32 fragments_per_group; + __le32 inodes_per_group; + __le32 mtime; + __le32 utime; + __le16 mnt_count; + __le16 max_mnt_count; + __le16 magic; + __le16 fs_state; + __le16 error_handling; + __le16 minor_revision_level; + __le32 lastcheck; + __le32 checkinterval; + __le32 creator_os; + __le32 revision_level; + __le16 uid_reserved; + __le16 gid_reserved; + __le32 first_inode; + __le16 inode_size; + __le16 block_group_number; + __le32 feature_compatibility; + __le32 feature_incompat; + __le32 feature_ro_compat; + __le32 unique_id[4]; char volume_name[16]; char last_mounted_on[64]; - uint32_t compression_info; + __le32 compression_info; + uint8_t prealloc_blocks; + uint8_t prealloc_dir_blocks; + __le16 reserved_gdt_blocks; + uint8_t journal_uuid[16]; + __le32 journal_inode; + __le32 journal_dev; + __le32 last_orphan; + __le32 hash_seed[4]; + uint8_t default_hash_version; + uint8_t journal_backup_type; + __le16 descriptor_size; + __le32 default_mount_options; + __le32 first_meta_block_group; + __le32 mkfs_time; + __le32 journal_blocks[17]; + __le32 total_blocks_high; + __le32 reserved_blocks_high; + __le32 free_blocks_high; + __le16 min_extra_inode_size; + __le16 want_extra_inode_size; + __le32 flags; + __le16 raid_stride; + __le16 mmp_interval; + __le64 mmp_block; + __le32 raid_stripe_width; + uint8_t log2_groups_per_flex; + uint8_t checksum_type; }; struct ext2_block_group { - __u32 block_id; /* Blocks bitmap block */ - __u32 inode_id; /* Inodes bitmap block */ - __u32 inode_table_id; /* Inodes table block */ - __u16 free_blocks; /* Free blocks count */ - __u16 free_inodes; /* Free inodes count */ - __u16 used_dir_cnt; /* Directories count */ - __u16 bg_flags; - __u32 bg_reserved[2]; - __u16 bg_itable_unused; /* Unused inodes count */ - __u16 bg_checksum; /* crc16(s_uuid+grouo_num+group_desc)*/ + __le32 block_id; /* Blocks bitmap block */ + __le32 inode_id; /* Inodes bitmap block */ + __le32 inode_table_id; /* Inodes table block */ + __le16 free_blocks; /* Free blocks count */ + __le16 free_inodes; /* Free inodes count */ + __le16 used_dir_cnt; /* Directories count */ + __le16 bg_flags; + __le32 bg_exclude_bitmap; + __le16 bg_block_id_csum; + __le16 bg_inode_id_csum; + __le16 bg_itable_unused; /* Unused inodes count */ + __le16 bg_checksum; /* crc16(s_uuid+group_num+group_desc)*/ + /* following fields only exist if descriptor size is 64 */ + __le32 block_id_high; + __le32 inode_id_high; + __le32 inode_table_id_high; + __le16 free_blocks_high; + __le16 free_inodes_high; + __le16 used_dir_cnt_high; + __le16 bg_itable_unused_high; + __le32 bg_exclude_bitmap_high; + __le16 bg_block_id_csum_high; + __le16 bg_inode_id_csum_high; + __le32 bg_reserved; }; /* The ext2 inode. */ struct ext2_inode { - uint16_t mode; - uint16_t uid; - uint32_t size; - uint32_t atime; - uint32_t ctime; - uint32_t mtime; - uint32_t dtime; - uint16_t gid; - uint16_t nlinks; - uint32_t blockcnt; /* Blocks of 512 bytes!! */ - uint32_t flags; - uint32_t osd1; + __le16 mode; + __le16 uid; + __le32 size; + __le32 atime; + __le32 ctime; + __le32 mtime; + __le32 dtime; + __le16 gid; + __le16 nlinks; + __le32 blockcnt; /* Blocks of either 512 or block_size bytes */ + __le32 flags; + __le32 osd1; union { struct datablocks { - uint32_t dir_blocks[INDIRECT_BLOCKS]; - uint32_t indir_block; - uint32_t double_indir_block; - uint32_t triple_indir_block; + __le32 dir_blocks[INDIRECT_BLOCKS]; + __le32 indir_block; + __le32 double_indir_block; + __le32 triple_indir_block; } blocks; char symlink[60]; + char inline_data[60]; } b; - uint32_t version; - uint32_t acl; - uint32_t dir_acl; - uint32_t fragment_addr; - uint32_t osd2[3]; + __le32 version; + __le32 acl; + __le32 size_high; /* previously dir_acl, but never used */ + __le32 fragment_addr; + __le32 osd2[3]; }; /* The header of an ext2 directory entry. */ struct ext2_dirent { - uint32_t inode; - uint16_t direntlen; - uint8_t namelen; - uint8_t filetype; + __le32 inode; + __le16 direntlen; + __u8 namelen; + __u8 filetype; }; struct ext2fs_node { diff --git a/include/fat.h b/include/fat.h index 9d053e6fa6..8ec91cda75 100644 --- a/include/fat.h +++ b/include/fat.h @@ -169,6 +169,7 @@ typedef struct { int fatsize; /* Size of FAT in bits */ __u32 fatlength; /* Length of FAT in sectors */ __u16 fat_sect; /* Starting sector of the FAT */ + __u8 fat_dirty; /* Set if fatbuf has been modified */ __u32 rootdir_sect; /* Start sector of root directory */ __u16 sect_size; /* Size of sectors in bytes */ __u16 clust_size; /* Size of clusters in sectors */ diff --git a/include/fdtdec.h b/include/fdtdec.h index aeb6bab1c4..27887c8c21 100644 --- a/include/fdtdec.h +++ b/include/fdtdec.h @@ -148,7 +148,6 @@ enum fdt_compat_id { COMPAT_INTEL_MICROCODE, /* Intel microcode update */ COMPAT_AMS_AS3722, /* AMS AS3722 PMIC */ COMPAT_INTEL_QRK_MRC, /* Intel Quark MRC */ - COMPAT_SOCIONEXT_XHCI, /* Socionext UniPhier xHCI */ COMPAT_ALTERA_SOCFPGA_DWMAC, /* SoCFPGA Ethernet controller */ COMPAT_ALTERA_SOCFPGA_DWMMC, /* SoCFPGA DWMMC controller */ COMPAT_ALTERA_SOCFPGA_DWC2USB, /* SoCFPGA DWC2 USB controller */ diff --git a/include/fsl_esdhc.h b/include/fsl_esdhc.h index c6f46664c7..e15d3aeaec 100644 --- a/include/fsl_esdhc.h +++ b/include/fsl_esdhc.h @@ -10,7 +10,7 @@ #ifndef __FSL_ESDHC_H__ #define __FSL_ESDHC_H__ -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/byteorder.h> /* needed for the mmc_cfg definition */ diff --git a/include/hwconfig.h b/include/hwconfig.h index def7ad03da..d30421d267 100644 --- a/include/hwconfig.h +++ b/include/hwconfig.h @@ -13,7 +13,7 @@ #define _HWCONFIG_H #include <linux/types.h> -#include <asm/errno.h> +#include <linux/errno.h> #ifdef CONFIG_HWCONFIG diff --git a/include/linux/compat.h b/include/linux/compat.h index 7236b8d0c3..c7fd649f5e 100644 --- a/include/linux/compat.h +++ b/include/linux/compat.h @@ -151,8 +151,6 @@ typedef unsigned long sector_t; typedef unsigned long blkcnt_t; #endif -#define ENOTSUPP 524 /* Operation is not supported */ - /* module */ #define THIS_MODULE 0 #define try_module_get(...) 1 diff --git a/include/linux/err.h b/include/linux/err.h index 5b3c8bcf70..e4d22d508c 100644 --- a/include/linux/err.h +++ b/include/linux/err.h @@ -4,7 +4,7 @@ #include <linux/compiler.h> #include <linux/compat.h> -#include <asm/errno.h> +#include <linux/errno.h> /* diff --git a/include/asm-generic/errno.h b/include/linux/errno.h index 464cfb715c..3d94207dff 100644 --- a/include/asm-generic/errno.h +++ b/include/linux/errno.h @@ -1,23 +1,15 @@ -/* - * U-Boot - errno.h Error number defines - * - * Copyright (c) 2005-2007 Analog Devices Inc. - * - * SPDX-License-Identifier: GPL-2.0+ - */ +#ifndef _LINUX_ERRNO_H +#define _LINUX_ERRNO_H -#ifndef _GENERIC_ERRNO_H -#define _GENERIC_ERRNO_H - -#define EPERM 1 /* Operation not permitted */ -#define ENOENT 2 /* No such file or directory */ -#define ESRCH 3 /* No such process */ -#define EINTR 4 /* Interrupted system call */ -#define EIO 5 /* I/O error */ -#define ENXIO 6 /* No such device or address */ -#define E2BIG 7 /* Argument list too long */ -#define ENOEXEC 8 /* Exec format error */ -#define EBADF 9 /* Bad file number */ +#define EPERM 1 /* Operation not permitted */ +#define ENOENT 2 /* No such file or directory */ +#define ESRCH 3 /* No such process */ +#define EINTR 4 /* Interrupted system call */ +#define EIO 5 /* I/O error */ +#define ENXIO 6 /* No such device or address */ +#define E2BIG 7 /* Argument list too long */ +#define ENOEXEC 8 /* Exec format error */ +#define EBADF 9 /* Bad file number */ #define ECHILD 10 /* No child processes */ #define EAGAIN 11 /* Try again */ #define ENOMEM 12 /* Out of memory */ @@ -43,10 +35,13 @@ #define EPIPE 32 /* Broken pipe */ #define EDOM 33 /* Math argument out of domain of func */ #define ERANGE 34 /* Math result not representable */ + #define EDEADLK 35 /* Resource deadlock would occur */ #define ENAMETOOLONG 36 /* File name too long */ #define ENOLCK 37 /* No record locks available */ -#define ENOSYS 38 /* Function not implemented */ + +#define ENOSYS 38 /* Invalid system call number */ + #define ENOTEMPTY 39 /* Directory not empty */ #define ELOOP 40 /* Too many symbolic links encountered */ #define EWOULDBLOCK EAGAIN /* Operation would block */ @@ -126,14 +121,48 @@ #define EHOSTUNREACH 113 /* No route to host */ #define EALREADY 114 /* Operation already in progress */ #define EINPROGRESS 115 /* Operation now in progress */ -#define ESTALE 116 /* Stale NFS file handle */ +#define ESTALE 116 /* Stale file handle */ #define EUCLEAN 117 /* Structure needs cleaning */ #define ENOTNAM 118 /* Not a XENIX named type file */ #define ENAVAIL 119 /* No XENIX semaphores available */ #define EISNAM 120 /* Is a named type file */ #define EREMOTEIO 121 /* Remote I/O error */ #define EDQUOT 122 /* Quota exceeded */ + #define ENOMEDIUM 123 /* No medium found */ #define EMEDIUMTYPE 124 /* Wrong medium type */ +#define ECANCELED 125 /* Operation Canceled */ +#define ENOKEY 126 /* Required key not available */ +#define EKEYEXPIRED 127 /* Key has expired */ +#define EKEYREVOKED 128 /* Key has been revoked */ +#define EKEYREJECTED 129 /* Key was rejected by service */ + +/* for robust mutexes */ +#define EOWNERDEAD 130 /* Owner died */ +#define ENOTRECOVERABLE 131 /* State not recoverable */ + +#define ERFKILL 132 /* Operation not possible due to RF-kill */ + +#define EHWPOISON 133 /* Memory page has hardware error */ + +#define ERESTARTSYS 512 +#define ERESTARTNOINTR 513 +#define ERESTARTNOHAND 514 /* restart if no handler.. */ +#define ENOIOCTLCMD 515 /* No ioctl command */ +#define ERESTART_RESTARTBLOCK 516 /* restart by calling sys_restart_syscall */ +#define EPROBE_DEFER 517 /* Driver requests probe retry */ +#define EOPENSTALE 518 /* open found a stale dentry */ + +/* Defined for the NFSv3 protocol */ +#define EBADHANDLE 521 /* Illegal NFS file handle */ +#define ENOTSYNC 522 /* Update synchronization mismatch */ +#define EBADCOOKIE 523 /* Cookie is stale */ +#define ENOTSUPP 524 /* Operation is not supported */ +#define ETOOSMALL 525 /* Buffer or request is too small */ +#define ESERVERFAULT 526 /* An untranslatable error occurred */ +#define EBADTYPE 527 /* Type not supported by server */ +#define EJUKEBOX 528 /* Request initiated, but will not complete before timeout */ +#define EIOCBQUEUED 529 /* iocb queued, will get completion event */ +#define ERECALLCONFLICT 530 /* conflict with recalled state */ #endif diff --git a/include/linux/mtd/mtd.h b/include/linux/mtd/mtd.h index 779eea035c..1fd17c303a 100644 --- a/include/linux/mtd/mtd.h +++ b/include/linux/mtd/mtd.h @@ -20,7 +20,7 @@ #else #include <linux/compat.h> #include <mtd/mtd-abi.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <div64.h> #define MAX_MTD_DEVICES 32 diff --git a/include/linux/mtd/nand.h b/include/linux/mtd/nand.h index 87d72dbad6..d55807b2e2 100644 --- a/include/linux/mtd/nand.h +++ b/include/linux/mtd/nand.h @@ -16,12 +16,12 @@ #ifndef __LINUX_MTD_NAND_H #define __LINUX_MTD_NAND_H -#include "config.h" +#include <config.h> -#include "linux/compat.h" -#include "linux/mtd/mtd.h" -#include "linux/mtd/flashchip.h" -#include "linux/mtd/bbm.h" +#include <linux/compat.h> +#include <linux/mtd/mtd.h> +#include <linux/mtd/flashchip.h> +#include <linux/mtd/bbm.h> struct mtd_info; struct nand_flash_dev; diff --git a/include/linux/usb/dwc3.h b/include/linux/usb/dwc3.h index 6d1e36505d..a0274461cc 100644 --- a/include/linux/usb/dwc3.h +++ b/include/linux/usb/dwc3.h @@ -180,7 +180,21 @@ struct dwc3 { /* offset: 0xC100 */ /* Global USB2 PHY Configuration Register */ #define DWC3_GUSB2PHYCFG_PHYSOFTRST (1 << 31) +#define DWC3_GUSB2PHYCFG_U2_FREECLK_EXISTS (1 << 30) +#define DWC3_GUSB2PHYCFG_ENBLSLPM (1 << 8) #define DWC3_GUSB2PHYCFG_SUSPHY (1 << 6) +#define DWC3_GUSB2PHYCFG_PHYIF (1 << 3) + +/* Global USB2 PHY Configuration Mask */ +#define DWC3_GUSB2PHYCFG_USBTRDTIM_MASK (0xf << 10) + +/* Global USB2 PHY Configuration Offset */ +#define DWC3_GUSB2PHYCFG_USBTRDTIM_OFFSET 10 + +#define DWC3_GUSB2PHYCFG_USBTRDTIM_16BIT (0x5 << \ + DWC3_GUSB2PHYCFG_USBTRDTIM_OFFSET) +#define DWC3_GUSB2PHYCFG_USBTRDTIM_8BIT (0x9 << \ + DWC3_GUSB2PHYCFG_USBTRDTIM_OFFSET) /* Global USB3 PIPE Control Register */ #define DWC3_GUSB3PIPECTL_PHYSOFTRST (1 << 31) diff --git a/include/mmc.h b/include/mmc.h index aa6d5d1d4f..e815eb3736 100644 --- a/include/mmc.h +++ b/include/mmc.h @@ -11,6 +11,7 @@ #define _MMC_H_ #include <linux/list.h> +#include <linux/sizes.h> #include <linux/compiler.h> #include <part.h> @@ -102,6 +103,7 @@ #define SD_CMD_SWITCH_UHS18V 11 #define SD_CMD_APP_SET_BUS_WIDTH 6 +#define SD_CMD_APP_SD_STATUS 13 #define SD_CMD_ERASE_WR_BLK_START 32 #define SD_CMD_ERASE_WR_BLK_END 33 #define SD_CMD_APP_SEND_OP_COND 41 @@ -392,6 +394,12 @@ struct mmc_config { unsigned char part_type; }; +struct sd_ssr { + unsigned int au; /* In sectors */ + unsigned int erase_timeout; /* In milliseconds */ + unsigned int erase_offset; /* In milliseconds */ +}; + /* * With CONFIG_DM_MMC enabled, struct mmc can be accessed from the MMC device * with mmc_get_mmc_dev(). @@ -426,6 +434,7 @@ struct mmc { uint write_bl_len; uint erase_grp_size; /* in 512-byte sectors */ uint hc_wp_grp_size; /* in 512-byte sectors */ + struct sd_ssr ssr; /* SD status register */ u64 capacity; u64 capacity_user; u64 capacity_boot; diff --git a/include/reset.h b/include/reset.h index dc0900f96a..f45fcf88c4 100644 --- a/include/reset.h +++ b/include/reset.h @@ -7,6 +7,8 @@ #ifndef _RESET_H #define _RESET_H +#include <linux/errno.h> + /** * A reset is a hardware signal indicating that a HW module (or IP block, or * sometimes an entire off-CPU chip) reset all of its internal state to some @@ -58,6 +60,7 @@ struct reset_ctl { unsigned long id; }; +#ifdef CONFIG_DM_RESET /** * reset_get_by_index - Get/request a reset signal by integer index. * @@ -132,4 +135,33 @@ int reset_assert(struct reset_ctl *reset_ctl); */ int reset_deassert(struct reset_ctl *reset_ctl); +#else +static inline int reset_get_by_index(struct udevice *dev, int index, + struct reset_ctl *reset_ctl) +{ + return -ENOTSUPP; +} + +static inline int reset_get_by_name(struct udevice *dev, const char *name, + struct reset_ctl *reset_ctl) +{ + return -ENOTSUPP; +} + +static inline int reset_free(struct reset_ctl *reset_ctl) +{ + return 0; +} + +static inline int reset_assert(struct reset_ctl *reset_ctl) +{ + return 0; +} + +static inline int reset_deassert(struct reset_ctl *reset_ctl) +{ + return 0; +} +#endif + #endif diff --git a/include/sdhci.h b/include/sdhci.h index 6844c73bdc..144570f2be 100644 --- a/include/sdhci.h +++ b/include/sdhci.h @@ -97,6 +97,7 @@ #define SDHCI_DIV_MASK 0xFF #define SDHCI_DIV_MASK_LEN 8 #define SDHCI_DIV_HI_MASK 0x300 +#define SDHCI_PROG_CLOCK_MODE 0x0020 #define SDHCI_CLOCK_CARD_EN 0x0004 #define SDHCI_CLOCK_INT_STABLE 0x0002 #define SDHCI_CLOCK_INT_EN 0x0001 @@ -242,6 +243,7 @@ struct sdhci_host { unsigned int quirks; unsigned int host_caps; unsigned int version; + unsigned int clk_mul; /* Clock Multiplier value */ unsigned int clock; struct mmc *mmc; const struct sdhci_ops *ops; diff --git a/include/spi.h b/include/spi.h index ca96fa4b31..4c179838ee 100644 --- a/include/spi.h +++ b/include/spi.h @@ -26,12 +26,9 @@ #define SPI_TX_BYTE BIT(8) /* transmit with 1 wire byte */ #define SPI_TX_DUAL BIT(9) /* transmit with 2 wires */ #define SPI_TX_QUAD BIT(10) /* transmit with 4 wires */ - -/* SPI mode_rx flags */ -#define SPI_RX_SLOW BIT(0) /* receive with 1 wire slow */ -#define SPI_RX_FAST BIT(1) /* receive with 1 wire fast */ -#define SPI_RX_DUAL BIT(2) /* receive with 2 wires */ -#define SPI_RX_QUAD BIT(3) /* receive with 4 wires */ +#define SPI_RX_SLOW BIT(11) /* receive with 1 wire slow */ +#define SPI_RX_DUAL BIT(12) /* receive with 2 wires */ +#define SPI_RX_QUAD BIT(13) /* receive with 4 wires */ /* SPI bus connection options - see enum spi_dual_flash */ #define SPI_CONN_DUAL_SHARED (1 << 0) @@ -61,13 +58,11 @@ struct dm_spi_bus { * @cs: Chip select number (0..n-1) * @max_hz: Maximum bus speed that this slave can tolerate * @mode: SPI mode to use for this device (see SPI mode flags) - * @mode_rx: SPI RX mode to use for this slave (see SPI mode_rx flags) */ struct dm_spi_slave_platdata { unsigned int cs; uint max_hz; uint mode; - u8 mode_rx; }; #endif /* CONFIG_DM_SPI */ @@ -94,7 +89,6 @@ struct dm_spi_slave_platdata { * bus (bus->seq) so does not need to be stored * @cs: ID of the chip select connected to the slave. * @mode: SPI mode to use for this slave (see SPI mode flags) - * @mode_rx: SPI RX mode to use for this slave (see SPI mode_rx flags) * @wordlen: Size of SPI word in number of bits * @max_write_size: If non-zero, the maximum number of bytes which can * be written at once, excluding command bytes. @@ -112,7 +106,6 @@ struct spi_slave { unsigned int cs; #endif uint mode; - u8 mode_rx; unsigned int wordlen; unsigned int max_write_size; void *memory_map; diff --git a/include/ubi_uboot.h b/include/ubi_uboot.h index 324fe72016..80acbcb148 100644 --- a/include/ubi_uboot.h +++ b/include/ubi_uboot.h @@ -32,12 +32,9 @@ #include <onenand_uboot.h> #endif -#include <asm/errno.h> +#include <linux/errno.h> /* configurable */ -#if !defined(CONFIG_MTD_UBI_WL_THRESHOLD) -#define CONFIG_MTD_UBI_WL_THRESHOLD 4096 -#endif #define CONFIG_MTD_UBI_BEB_RESERVE 1 /* debug options (Linux: drivers/mtd/ubi/Kconfig.debug) */ @@ -59,10 +56,6 @@ */ #define CONFIG_MTD_UBI_MODULE -#if !defined(CONFIG_MTD_UBI_BEB_LIMIT) -#define CONFIG_MTD_UBI_BEB_LIMIT 20 -#endif - /* build.c */ #define get_device(...) #define put_device(...) diff --git a/include/usb/lin_gadget_compat.h b/include/usb/lin_gadget_compat.h index 29fb166934..4a01585f80 100644 --- a/include/usb/lin_gadget_compat.h +++ b/include/usb/lin_gadget_compat.h @@ -13,8 +13,6 @@ #include <linux/compat.h> /* common */ -#define ENOTSUPP 524 /* Operation is not supported */ - #define BITS_PER_BYTE 8 #define BITS_TO_LONGS(nr) \ DIV_ROUND_UP(nr, BITS_PER_BYTE * sizeof(long)) diff --git a/include/version.h b/include/version.h index 777e9f68fa..049430978f 100644 --- a/include/version.h +++ b/include/version.h @@ -14,10 +14,6 @@ #include "generated/version_autogenerated.h" #endif -#ifndef CONFIG_IDENT_STRING -#define CONFIG_IDENT_STRING "" -#endif - #define U_BOOT_VERSION_STRING U_BOOT_VERSION " (" U_BOOT_DATE " - " \ U_BOOT_TIME " " U_BOOT_TZ ")" CONFIG_IDENT_STRING diff --git a/include/wait_bit.h b/include/wait_bit.h index 061a2db5a2..066e30c118 100644 --- a/include/wait_bit.h +++ b/include/wait_bit.h @@ -11,7 +11,7 @@ #include <common.h> #include <console.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/io.h> /** diff --git a/include/xilinx.h b/include/xilinx.h index aebcb3bfdf..d2a2ea71e1 100644 --- a/include/xilinx.h +++ b/include/xilinx.h @@ -21,6 +21,7 @@ typedef enum { /* typedef xilinx_iface */ master_selectmap, /* master SelectMap (virtex2) */ slave_selectmap, /* slave SelectMap (virtex2) */ devcfg, /* devcfg interface (zynq) */ + csu_dma, /* csu_dma interface (zynqmp) */ max_xilinx_iface_type /* insert all new types before this */ } xilinx_iface; /* end, typedef xilinx_iface */ @@ -31,6 +32,7 @@ typedef enum { /* typedef xilinx_family */ xilinx_virtex2, /* Virtex2 Family */ xilinx_spartan3, /* Spartan-III Family */ xilinx_zynq, /* Zynq Family */ + xilinx_zynqmp, /* ZynqMP Family */ max_xilinx_type /* insert all new types before this */ } xilinx_family; /* end, typedef xilinx_family */ diff --git a/include/zynqmppl.h b/include/zynqmppl.h new file mode 100644 index 0000000000..542ace9a03 --- /dev/null +++ b/include/zynqmppl.h @@ -0,0 +1,24 @@ +/* + * (C) Copyright 2015 Xilinx, Inc, + * Michal Simek <michal.simek@xilinx.com> + * + * SPDX-License-Identifier: GPL-2.0 + */ + +#ifndef _ZYNQMPPL_H_ +#define _ZYNQMPPL_H_ + +#include <xilinx.h> + +#define ZYNQMP_SIP_SVC_CSU_DMA_CHIPID 0xC2000018 +#define ZYNQMP_SIP_SVC_PM_FPGA_LOAD 0xC2000016 +#define ZYNQMP_FPGA_OP_INIT (1 << 0) +#define ZYNQMP_FPGA_OP_LOAD (1 << 1) +#define ZYNQMP_FPGA_OP_DONE (1 << 2) + +extern struct xilinx_fpga_op zynqmp_op; + +#define XILINX_ZYNQMP_DESC \ +{ xilinx_zynqmp, csu_dma, 1, &zynqmp_op, 0, &zynqmp_op } + +#endif /* _ZYNQMPPL_H_ */ diff --git a/lib/Makefile b/lib/Makefile index f6a8ba1227..c81bfeb2db 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -78,11 +78,16 @@ obj-$(CONFIG_LIB_UUID) += uuid.o obj-$(CONFIG_LIB_RAND) += rand.o ifdef CONFIG_SPL_BUILD +ifdef CONFIG_TPL_BUILD +SERIAL_SUPPORT := $(CONFIG_TPL_SERIAL_SUPPORT) +else +SERIAL_SUPPORT := $(CONFIG_SPL_SERIAL_SUPPORT) +endif # SPL U-Boot may use full-printf, tiny-printf or none at all ifdef CONFIG_USE_TINY_PRINTF -obj-$(CONFIG_SPL_SERIAL_SUPPORT) += tiny-printf.o panic.o strto.o +obj-$(SERIAL_SUPPORT) += tiny-printf.o panic.o strto.o else -obj-$(CONFIG_SPL_SERIAL_SUPPORT) += vsprintf.o panic.o strto.o strmhz.o +obj-$(SERIAL_SUPPORT) += vsprintf.o panic.o strto.o strmhz.o endif else # Main U-Boot always uses the full printf support diff --git a/lib/fdtdec.c b/lib/fdtdec.c index e638ca5d6a..4defb902b8 100644 --- a/lib/fdtdec.c +++ b/lib/fdtdec.c @@ -59,7 +59,6 @@ static const char * const compat_names[COMPAT_COUNT] = { COMPAT(INTEL_MICROCODE, "intel,microcode"), COMPAT(AMS_AS3722, "ams,as3722"), COMPAT(INTEL_QRK_MRC, "intel,quark-mrc"), - COMPAT(SOCIONEXT_XHCI, "socionext,uniphier-xhci"), COMPAT(ALTERA_SOCFPGA_DWMAC, "altr,socfpga-stmmac"), COMPAT(ALTERA_SOCFPGA_DWMMC, "altr,socfpga-dw-mshc"), COMPAT(ALTERA_SOCFPGA_DWC2USB, "snps,dwc2"), diff --git a/lib/libfdt/fdt_rw.c b/lib/libfdt/fdt_rw.c index e7321ccae4..47447b2bce 100644 --- a/lib/libfdt/fdt_rw.c +++ b/lib/libfdt/fdt_rw.c @@ -148,17 +148,13 @@ int fdt_add_mem_rsv(void *fdt, uint64_t address, uint64_t size) int fdt_del_mem_rsv(void *fdt, int n) { struct fdt_reserve_entry *re = _fdt_mem_rsv_w(fdt, n); - int err; FDT_RW_CHECK_HEADER(fdt); if (n >= fdt_num_mem_rsv(fdt)) return -FDT_ERR_NOTFOUND; - err = _fdt_splice_mem_rsv(fdt, re, 1, 0); - if (err) - return err; - return 0; + return _fdt_splice_mem_rsv(fdt, re, 1, 0); } static int _fdt_resize_property(void *fdt, int nodeoffset, const char *name, diff --git a/lib/libfdt/libfdt.swig b/lib/libfdt/libfdt.swig index 14f583dfbe..b24c72b1a2 100644 --- a/lib/libfdt/libfdt.swig +++ b/lib/libfdt/libfdt.swig @@ -75,6 +75,14 @@ struct fdt_property { } %} +%typemap(in) (const void *) { + if (!PyByteArray_Check($input)) { + SWIG_exception_fail(SWIG_TypeError, "in method '" "$symname" "', argument " + "$argnum"" of type '" "$type""'"); + } + $1 = (void *) PyByteArray_AsString($input); +} + const void *fdt_offset_ptr(const void *fdt, int offset, unsigned int checklen); int fdt_path_offset(const void *fdt, const char *path); int fdt_first_property_offset(const void *fdt, int nodeoffset); @@ -87,3 +95,19 @@ const char *fdt_get_name(const void *fdt, int nodeoffset, int *OUTPUT); const char *fdt_string(const void *fdt, int stroffset); int fdt_first_subnode(const void *fdt, int offset); int fdt_next_subnode(const void *fdt, int offset); + +%typemap(in) (void *) { + if (!PyByteArray_Check($input)) { + SWIG_exception_fail(SWIG_TypeError, "in method '" "$symname" "', argument " + "$argnum"" of type '" "$type""'"); + } + $1 = PyByteArray_AsString($input); +} + +int fdt_delprop(void *fdt, int nodeoffset, const char *name); + +const char *fdt_strerror(int errval); +int fdt_pack(void *fdt); + +int fdt_totalsize(const void *fdt); +int fdt_off_dt_struct(const void *fdt); diff --git a/lib/rsa/rsa-checksum.c b/lib/rsa/rsa-checksum.c index 68d9d651b0..db183ff293 100644 --- a/lib/rsa/rsa-checksum.c +++ b/lib/rsa/rsa-checksum.c @@ -8,7 +8,7 @@ #include <common.h> #include <fdtdec.h> #include <asm/byteorder.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/unaligned.h> #include <hash.h> #else diff --git a/lib/rsa/rsa-mod-exp.c b/lib/rsa/rsa-mod-exp.c index 4a6de2b932..9d78aa1ead 100644 --- a/lib/rsa/rsa-mod-exp.c +++ b/lib/rsa/rsa-mod-exp.c @@ -9,7 +9,7 @@ #include <fdtdec.h> #include <asm/types.h> #include <asm/byteorder.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/types.h> #include <asm/unaligned.h> #else diff --git a/lib/rsa/rsa-verify.c b/lib/rsa/rsa-verify.c index 60126d2288..442b769563 100644 --- a/lib/rsa/rsa-verify.c +++ b/lib/rsa/rsa-verify.c @@ -9,7 +9,7 @@ #include <fdtdec.h> #include <asm/types.h> #include <asm/byteorder.h> -#include <asm/errno.h> +#include <linux/errno.h> #include <asm/types.h> #include <asm/unaligned.h> #include <dm.h> diff --git a/net/Kconfig b/net/Kconfig index c393269f27..414c5497c7 100644 --- a/net/Kconfig +++ b/net/Kconfig @@ -45,7 +45,4 @@ config BOOTP_VCI_STRING default "U-Boot.arm" if ARM default "U-Boot" -config SPL_NET_VCI_STRING - string - endif # if NET diff --git a/net/eth_legacy.c b/net/eth_legacy.c index bdcd6eaafc..d6d7ceeafd 100644 --- a/net/eth_legacy.c +++ b/net/eth_legacy.c @@ -11,7 +11,7 @@ #include <environment.h> #include <net.h> #include <phy.h> -#include <asm/errno.h> +#include <linux/errno.h> #include "eth_internal.h" DECLARE_GLOBAL_DATA_PTR; diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl index 3ba974226b..5a7f79c25a 100644 --- a/scripts/Makefile.spl +++ b/scripts/Makefile.spl @@ -54,12 +54,20 @@ libs-$(HAVE_VENDOR_COMMON_LIB) += board/$(VENDOR)/common/ libs-$(CONFIG_SPL_FRAMEWORK) += common/spl/ libs-y += common/init/ + +# Special handling for a few options which support SPL/TPL +ifeq ($(CONFIG_TPL_BUILD),y) +libs-$(CONFIG_TPL_LIBCOMMON_SUPPORT) += common/ cmd/ +libs-$(CONFIG_TPL_LIBGENERIC_SUPPORT) += lib/ +else libs-$(CONFIG_SPL_LIBCOMMON_SUPPORT) += common/ cmd/ +libs-$(CONFIG_SPL_LIBGENERIC_SUPPORT) += lib/ +endif + libs-$(CONFIG_SPL_LIBDISK_SUPPORT) += disk/ libs-y += drivers/ libs-y += dts/ libs-y += fs/ -libs-$(CONFIG_SPL_LIBGENERIC_SUPPORT) += lib/ libs-$(CONFIG_SPL_POST_MEM_SUPPORT) += post/drivers/ libs-$(CONFIG_SPL_NET_SUPPORT) += net/ @@ -208,8 +216,19 @@ quiet_cmd_cpp_cfg = CFG $@ cmd_cpp_cfg = $(CPP) -Wp,-MD,$(depfile) $(cpp_flags) $(LDPPFLAGS) -ansi \ -DDO_DEPS_ONLY -D__ASSEMBLY__ -x assembler-with-cpp -P -dM -E -o $@ $< +# If .u-boot.cfg.d is still present, then either: +# a) The previous build used a Makefile that used if_changed rather than +# if_changed_dep when building u-boot.cfg, and hence any later builds will +# be unaware of the dependencies for u-boot.cfg. In this case, we must +# delete u-boot.cfg to force it and .u-boot.cfg.cmd to be rebuilt the +# correct way. +# b) The previous build failed or was interrupted while building u-boot.cfg, +# so deleting u-boot.cfg isn't going to cause any additional work. +ifneq ($(wildcard $(obj)/.$(SPL_BIN).d),) + unused := $(shell rm -f $(obj)/$(SPL_BIN).cfg) +endif $(obj)/$(SPL_BIN).cfg: include/config.h FORCE - $(call if_changed,cpp_cfg) + $(call if_changed_dep,cpp_cfg) pythonpath = PYTHONPATH=tools diff --git a/scripts/build-whitelist.sh b/scripts/build-whitelist.sh new file mode 100755 index 0000000000..7cf7a668c1 --- /dev/null +++ b/scripts/build-whitelist.sh @@ -0,0 +1,51 @@ +#!/bin/sh +# Copyright (c) 2016 Google, Inc +# Written by Simon Glass <sjg@chromium.org> +# + +# This script creates the configuration whitelist file. This file contains +# all the config options which are allowed to be used outside Kconfig. +# Please do not add things to the whitelist. Instead, add your new option +# to Kconfig. +# +export LC_ALL=C LC_COLLATE=C + +# There are two independent greps. The first pulls out the component parts +# of CONFIG_SYS_EXTRA_OPTIONS. An example is: +# +# SUNXI_GMAC,AHCI,SATAPWR=SUNXI_GPB(8) +# +# We want this to produce: +# CONFIG_SUNXI_GMAC +# CONFIG_AHCI +# CONFIG_SATAPWR +# +# The second looks for the rest of the CONFIG options, but excludes those in +# Kconfig and defconfig files. +# +( +git grep CONFIG_SYS_EXTRA_OPTIONS |sed -n \ + 's/.*CONFIG_SYS_EXTRA_OPTIONS="\(.*\)"/\1/ p' \ + | tr , '\n' \ + | sed 's/ *\([A-Za-z0-9_]*\).*/CONFIG_\1/' + +git grep CONFIG_ | \ + egrep -vi "(Kconfig:|defconfig:|README|\.py|\.pl:)" \ + | tr ' \t' '\n\n' \ + | sed -n 's/^\(CONFIG_[A-Za-z0-9_]*\).*/\1/p' +) \ + |sort |uniq >scripts/config_whitelist.txt.tmp1; + +# Finally, we need a list of the valid Kconfig options to exclude these from +# the whitelist. +cat `find . -name "Kconfig*"` |sed -n \ + -e 's/^config *\([A-Za-z0-9_]*\).*$/CONFIG_\1/p' \ + -e 's/^menuconfig *\([A-Za-z0-9_]*\).*$/CONFIG_\1/p' \ + |sort |uniq >scripts/config_whitelist.txt.tmp2 + +# Use only the options that are present in the first file but not the second. +comm -23 scripts/config_whitelist.txt.tmp1 scripts/config_whitelist.txt.tmp2 \ + |sort |uniq >scripts/config_whitelist.txt +rm scripts/config_whitelist.txt.tmp1 scripts/config_whitelist.txt.tmp2 + +unset LC_ALL LC_COLLATE diff --git a/scripts/check-config.sh b/scripts/check-config.sh new file mode 100755 index 0000000000..28c8fe98ba --- /dev/null +++ b/scripts/check-config.sh @@ -0,0 +1,55 @@ +#!/bin/sh +# Copyright (c) 2016 Google, Inc +# Written by Simon Glass <sjg@chromium.org> +# +# Check that the u-boot.cfg file provided does not introduce any new +# ad-hoc CONFIG options +# +# You can generate the list of current ad-hoc CONFIG options (those which are +# not in Kconfig) with this command: +# +# export LC_ALL=C LC_COLLATE=C +# git grep CONFIG_ |tr ' \t' '\n\n' |sed -n 's/^\(CONFIG_[A-Z0-9_]*\).*/\1/p' \ +# |sort |uniq >scripts/config_whitelist.txt; +# unset LC_ALL LC_COLLATE + +# Usage +# check-config.sh <path to u-boot.cfg> <path to whitelist file> <source dir> +# +# For example: +# scripts/check-config.sh b/chromebook_link/u-boot.cfg kconfig_whitelist.txt . + +path="$1" +whitelist="$2" +srctree="$3" + +# Temporary files +configs="${path}.configs" +suspects="${path}.suspects" +ok="${path}.ok" +new_adhoc="${path}.adhoc" + +export LC_ALL=C +export LC_COLLATE=C + +cat ${path} |sed -n 's/^#define \(CONFIG_[A-Za-z0-9_]*\).*/\1/p' |sort |uniq \ + >${configs} + +comm -23 ${configs} ${whitelist} > ${suspects} + +cat `find ${srctree} -name "Kconfig*"` |sed -n \ + -e 's/^config *\([A-Za-z0-9_]*\).*$/CONFIG_\1/p' \ + -e 's/^menuconfig \([A-Za-z0-9_]*\).*$/CONFIG_\1/p' |sort |uniq > ${ok} +comm -23 ${suspects} ${ok} >${new_adhoc} +if [ -s ${new_adhoc} ]; then + echo "Error: You must add new CONFIG options using Kconfig" + echo "The following new ad-hoc CONFIG options were detected:" + cat ${new_adhoc} + echo + echo "Please add these via Kconfig instead. Find a suitable Kconfig" + echo "file and add a 'config' or 'menuconfig' option." + # Don't delete the temporary files in case they are useful + exit 1 +else + rm ${suspects} ${ok} ${new_adhoc} +fi diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt new file mode 100644 index 0000000000..efa95f07ae --- /dev/null +++ b/scripts/config_whitelist.txt @@ -0,0 +1,8411 @@ +CONFIG_ +CONFIG_16BIT +CONFIG_33 +CONFIG_400MHZ_MODE +CONFIG_405 +CONFIG_405EP +CONFIG_405EX +CONFIG_405EX_CHIP21_ECID3_REV_D +CONFIG_405EX_CHIP21_PVR_REV_C +CONFIG_405EX_CHIP21_PVR_REV_D +CONFIG_405EZ +CONFIG_405GP +CONFIG_440 +CONFIG_440EP +CONFIG_440EPX +CONFIG_440GP +CONFIG_440GR +CONFIG_440GRX +CONFIG_440GX +CONFIG_440SP +CONFIG_440SPE +CONFIG_440SPE_REVA +CONFIG_440_GX +CONFIG_4430SDP +CONFIG_460EX +CONFIG_460GT +CONFIG_460SX +CONFIG_4xx_CONFIG_BLOCKSIZE +CONFIG_4xx_CONFIG_I2C_EEPROM_ADDR +CONFIG_4xx_CONFIG_I2C_EEPROM_OFFSET +CONFIG_4xx_DCACHE +CONFIG_521X +CONFIG_533MHZ_MODE +CONFIG_5xx_CONS_SCI1 +CONFIG_5xx_CONS_SCI2 +CONFIG_5xx_GCLK_FREQ +CONFIG_64BIT_PHYS_ADDR +CONFIG_66 +CONFIG_8260_CLKIN +CONFIG_8349_CLKIN +CONFIG_83XX +CONFIG_83XX_CLKIN +CONFIG_83XX_GENERIC_PCIE_REGISTER_HOSES +CONFIG_83XX_PCICLK +CONFIG_83XX_PCI_STREAMING +CONFIG_88F5182 +CONFIG_8xx_CONS_NONE +CONFIG_8xx_CONS_SCCx +CONFIG_8xx_CONS_SMC1 +CONFIG_8xx_CONS_SMC2 +CONFIG_8xx_CONS_SMCx +CONFIG_8xx_CPUCLK_DEFAULT +CONFIG_8xx_GCLK_FREQ +CONFIG_8xx_OSCLK +CONFIG_A003399_NOR_WORKAROUND +CONFIG_A008044_WORKAROUND +CONFIG_A3M071 +CONFIG_A4M072 +CONFIG_A4M2K +CONFIG_AC14XX +CONFIG_ACADIA +CONFIG_ACX517AKN +CONFIG_ACX544AKN +CONFIG_ADCIOP +CONFIG_ADDMISC +CONFIG_ADDRESS +CONFIG_ADDR_AUTO_INCR_BIT +CONFIG_ADDR_MAP +CONFIG_ADDR_STREAMING +CONFIG_ADI_GPIO1 +CONFIG_ADI_GPIO2 +CONFIG_ADNPESC1 +CONFIG_ADP_AG101P +CONFIG_AEABI +CONFIG_AEMIF_CNTRL_BASE +CONFIG_AES +CONFIG_ALTERA_SDRAM +CONFIG_ALTERA_SPI_IDLE_VAL +CONFIG_ALTIVEC +CONFIG_ALT_LB_ADDR +CONFIG_ALT_LH_ADDR +CONFIG_ALU +CONFIG_AM335X_LCD +CONFIG_AM335X_USB0 +CONFIG_AM335X_USB0_MODE +CONFIG_AM335X_USB1 +CONFIG_AM335X_USB1_MODE +CONFIG_AM33XX +CONFIG_AM437X_USB2PHY2_HOST +CONFIG_AM57XX +CONFIG_AMBAPP_IOAREA +CONFIG_AMCC_DEF_ENV +CONFIG_AMCC_DEF_ENV_NOR_UPD +CONFIG_AMCC_DEF_ENV_POWERPC +CONFIG_AMCC_DEF_ENV_PPC +CONFIG_AMCC_DEF_ENV_PPC_OLD +CONFIG_AMCC_DEF_ENV_ROOTPATH +CONFIG_AMCORE +CONFIG_AMIGA_PARTITION +CONFIG_ANDES_PCU +CONFIG_ANDES_PCU_BASE +CONFIG_AP325RXA +CONFIG_APBH_DMA +CONFIG_APBH_DMA_BURST +CONFIG_APBH_DMA_BURST8 +CONFIG_APER_0_BASE +CONFIG_APER_1_BASE +CONFIG_APER_SIZE +CONFIG_API +CONFIG_APUS_FAST_EXCEPT +CONFIG_AP_SH4A_4A +CONFIG_ARCH_AAED2000 +CONFIG_ARCH_ADI_COYOTE +CONFIG_ARCH_ADPAG101P +CONFIG_ARCH_AT91RM9200DK +CONFIG_ARCH_AUTCPU12 +CONFIG_ARCH_BAST +CONFIG_ARCH_CATS +CONFIG_ARCH_CDB89712 +CONFIG_ARCH_CEIVA +CONFIG_ARCH_CLEP7212 +CONFIG_ARCH_CPU_INIT +CONFIG_ARCH_CSB226 +CONFIG_ARCH_DMA_PIO_WORDS +CONFIG_ARCH_EARLY_INIT_R +CONFIG_ARCH_EBSA110 +CONFIG_ARCH_EBSA285 +CONFIG_ARCH_EDB7211 +CONFIG_ARCH_ENP2611 +CONFIG_ARCH_FORTUNET +CONFIG_ARCH_GUMSTIX +CONFIG_ARCH_H1940 +CONFIG_ARCH_H5400 +CONFIG_ARCH_H7201 +CONFIG_ARCH_H7202 +CONFIG_ARCH_HAS_ILOG2_U32 +CONFIG_ARCH_HAS_ILOG2_U64 +CONFIG_ARCH_INNOKOM +CONFIG_ARCH_IQ31244 +CONFIG_ARCH_IQ80321 +CONFIG_ARCH_IQ80331 +CONFIG_ARCH_IXCDP1100 +CONFIG_ARCH_IXDP2400 +CONFIG_ARCH_IXDP2401 +CONFIG_ARCH_IXDP2800 +CONFIG_ARCH_IXDP2801 +CONFIG_ARCH_IXDP425 +CONFIG_ARCH_KIRKWOOD +CONFIG_ARCH_KS8695 +CONFIG_ARCH_L7200 +CONFIG_ARCH_LUBBOCK +CONFIG_ARCH_MAP_SYSMEM +CONFIG_ARCH_MISC_INIT +CONFIG_ARCH_MX1ADS +CONFIG_ARCH_NETWINDER +CONFIG_ARCH_OMAP2 +CONFIG_ARCH_OMAP4 +CONFIG_ARCH_ORION5X +CONFIG_ARCH_P720T +CONFIG_ARCH_PERSONAL_SERVER +CONFIG_ARCH_PLEB +CONFIG_ARCH_PXA_CERF +CONFIG_ARCH_PXA_IDP +CONFIG_ARCH_RMOBILE_BOARD_STRING +CONFIG_ARCH_RMOBILE_EXTRAM_BOOT +CONFIG_ARCH_RPC +CONFIG_ARCH_S3C2440 +CONFIG_ARCH_SHARK +CONFIG_ARCH_SMDK2410 +CONFIG_ARCH_TEGRA +CONFIG_ARCH_USE_BUILTIN_BSWAP +CONFIG_ARCH_VERSATILE_PB +CONFIG_ARCH_VIPER +CONFIG_ARC_MMU_VER +CONFIG_ARC_SERIAL +CONFIG_ARC_UART_BASE +CONFIG_ARIA +CONFIG_ARIA_FPGA +CONFIG_ARM926EJS +CONFIG_ARMADA100 +CONFIG_ARMADA100_FEC +CONFIG_ARMADA100_SPI +CONFIG_ARMADA168 +CONFIG_ARMADA_39X +CONFIG_ARMCORTEXA9 +CONFIG_ARMV7_PSCI_1_0 +CONFIG_ARMV7_SECURE_BASE +CONFIG_ARMV7_SECURE_MAX_SIZE +CONFIG_ARMV7_SECURE_RESERVE_SIZE +CONFIG_ARMV8_PSCI +CONFIG_ARMV8_SEC_FIRMWARE_SUPPORT +CONFIG_ARMV8_SWITCH_TO_EL1 +CONFIG_ARM_ARCH_CP15_ERRATA +CONFIG_ARM_ASM_UNIFIED +CONFIG_ARM_DCC +CONFIG_ARM_ERRATA_430973 +CONFIG_ARM_ERRATA_454179 +CONFIG_ARM_ERRATA_621766 +CONFIG_ARM_ERRATA_716044 +CONFIG_ARM_ERRATA_742230 +CONFIG_ARM_ERRATA_743622 +CONFIG_ARM_ERRATA_751472 +CONFIG_ARM_ERRATA_761320 +CONFIG_ARM_ERRATA_773022 +CONFIG_ARM_ERRATA_774769 +CONFIG_ARM_ERRATA_794072 +CONFIG_ARM_ERRATA_798870 +CONFIG_ARM_ERRATA_801819 +CONFIG_ARM_ERRATA_826974 +CONFIG_ARM_ERRATA_828024 +CONFIG_ARM_ERRATA_829520 +CONFIG_ARM_ERRATA_833069 +CONFIG_ARM_ERRATA_833471 +CONFIG_ARM_FREQ +CONFIG_ARM_GIC_BASE_ADDRESS +CONFIG_ARM_PL180_MMCI +CONFIG_ARM_PL180_MMCI_BASE +CONFIG_ARM_PL180_MMCI_CLOCK_FREQ +CONFIG_ARM_THUMB +CONFIG_ARP_TIMEOUT +CONFIG_AS3722_POWER +CONFIG_ASTRO5373L +CONFIG_ASTRO_COFDMDUOS2 +CONFIG_ASTRO_TWIN7S2 +CONFIG_ASTRO_V512 +CONFIG_ASTRO_V532 +CONFIG_ASTRO_V912 +CONFIG_AT32AP +CONFIG_AT32AP7000 +CONFIG_AT32UC3A0xxx +CONFIG_AT91C_PQFP_UHPBUG +CONFIG_AT91FAMILY +CONFIG_AT91RESET_EXTRST +CONFIG_AT91RM9200 +CONFIG_AT91RM9200EK +CONFIG_AT91SAM9260 +CONFIG_AT91SAM9260EK +CONFIG_AT91SAM9261 +CONFIG_AT91SAM9261EK +CONFIG_AT91SAM9263 +CONFIG_AT91SAM9263EK +CONFIG_AT91SAM9G10 +CONFIG_AT91SAM9G10EK +CONFIG_AT91SAM9G20 +CONFIG_AT91SAM9G20EK +CONFIG_AT91SAM9G20EK_2MMC +CONFIG_AT91SAM9G45 +CONFIG_AT91SAM9G45EKES +CONFIG_AT91SAM9G45_LCD_BASE +CONFIG_AT91SAM9M10G45 +CONFIG_AT91SAM9M10G45EK +CONFIG_AT91SAM9N12 +CONFIG_AT91SAM9RL +CONFIG_AT91SAM9RLEK +CONFIG_AT91SAM9X5 +CONFIG_AT91SAM9X5EK +CONFIG_AT91SAM9XE +CONFIG_AT91SAM9_WATCHDOG +CONFIG_AT91_CAN +CONFIG_AT91_EFLASH +CONFIG_AT91_GPIO +CONFIG_AT91_GPIO_PULLUP +CONFIG_AT91_HW_WDT_TIMEOUT +CONFIG_AT91_LED +CONFIG_AT91_WANTS_COMMON_PHY +CONFIG_ATAPI +CONFIG_ATA_ACPI +CONFIG_ATI +CONFIG_ATI_RADEON_FB +CONFIG_ATM +CONFIG_ATMEL_DATAFLASH_SPI +CONFIG_ATMEL_HLCD +CONFIG_ATMEL_LCD +CONFIG_ATMEL_LCD_BGR555 +CONFIG_ATMEL_LCD_RGB565 +CONFIG_ATMEL_LEGACY +CONFIG_ATMEL_MCI_8BIT +CONFIG_ATMEL_NAND_HWECC +CONFIG_ATMEL_NAND_HW_PMECC +CONFIG_ATMEL_SDHCI0 +CONFIG_ATMEL_SDHCI1 +CONFIG_ATMEL_SPI +CONFIG_ATMEL_SPI0 +CONFIG_ATMEL_USART +CONFIG_ATNGW100 +CONFIG_ATNGW100MKII +CONFIG_ATSTK1000 +CONFIG_ATSTK1000_16MB_SDRAM +CONFIG_ATSTK1002 +CONFIG_AT_TRANS +CONFIG_AUTOCALIB +CONFIG_AUTONEG_TIMEOUT +CONFIG_AUTO_COMPLETE +CONFIG_AUTO_ZRELADDR +CONFIG_B4860QDS +CONFIG_BACKSIDE_L2_CACHE +CONFIG_BAMBOO +CONFIG_BAMBOO_NAND +CONFIG_BARIX_IPAM390 +CONFIG_BAT_CMD +CONFIG_BAT_PAIR +CONFIG_BAT_RW +CONFIG_BAUDRATE +CONFIG_BCH +CONFIG_BCH_CONST_M +CONFIG_BCH_CONST_PARAMS +CONFIG_BCH_CONST_T +CONFIG_BCM2835_GPIO +CONFIG_BCM2835_SDHCI +CONFIG_BCM283X_MU_SERIAL +CONFIG_BCM_SF2_ETH +CONFIG_BCM_SF2_ETH_DEFAULT_PORT +CONFIG_BCM_SF2_ETH_GMAC +CONFIG_BD_NUM_CPUS +CONFIG_BF506_UART0_PORTF +CONFIG_BF506_UART1_PORTG +CONFIG_BF50x +CONFIG_BF51x +CONFIG_BF527_EZKIT_REV_2_1 +CONFIG_BF52x +CONFIG_BF548_ATAPI_ALTERNATIVE_PORT +CONFIG_BF54x +CONFIG_BF60x +CONFIG_BFIN_ATAPI_BASE_ADDR +CONFIG_BFIN_ATA_MODE +CONFIG_BFIN_BOARD_VERSION_1_0 +CONFIG_BFIN_BOOTROM_USES_EVT1 +CONFIG_BFIN_BOOT_MODE +CONFIG_BFIN_CF_IDE +CONFIG_BFIN_CPU +CONFIG_BFIN_GET_DCLK_M +CONFIG_BFIN_GPIO_TRACK +CONFIG_BFIN_HDD_IDE +CONFIG_BFIN_IDE +CONFIG_BFIN_INS_LOWOVERHEAD +CONFIG_BFIN_LINKPORT +CONFIG_BFIN_MAC +CONFIG_BFIN_MAC_PINS +CONFIG_BFIN_NFC +CONFIG_BFIN_NFC_BOOTROM_ECC +CONFIG_BFIN_NFC_CTL_VAL +CONFIG_BFIN_NFC_NO_HW_ECC +CONFIG_BFIN_SCRATCH_REG +CONFIG_BFIN_SDH +CONFIG_BFIN_SERIAL +CONFIG_BFIN_SOFT_SWITCH +CONFIG_BFIN_SPI +CONFIG_BFIN_SPI6XX +CONFIG_BFIN_SPI_GPIO_CS +CONFIG_BFIN_SPI_IDLE_VAL +CONFIG_BFIN_SPI_IMG_SIZE +CONFIG_BFIN_TRUE_IDE +CONFIG_BFIN_WATCHDOG +CONFIG_BIOSEMU +CONFIG_BITBANGMII +CONFIG_BITBANGMII_MULTI +CONFIG_BKUP_FLASH +CONFIG_BL1_OFFSET +CONFIG_BL1_SIZE +CONFIG_BL2_OFFSET +CONFIG_BL2_SIZE +CONFIG_BMP_16BPP +CONFIG_BMP_24BMP +CONFIG_BMP_24BPP +CONFIG_BMP_32BPP +CONFIG_BOARDDIR +CONFIG_BOARDINFO +CONFIG_BOARDNAME +CONFIG_BOARDNAME_LOCAL +CONFIG_BOARD_AXM +CONFIG_BOARD_BOOTCMD +CONFIG_BOARD_COMMON +CONFIG_BOARD_EARLY_INIT_F +CONFIG_BOARD_EARLY_INIT_R +CONFIG_BOARD_ECC_SUPPORT +CONFIG_BOARD_EMAC_COUNT +CONFIG_BOARD_H2200 +CONFIG_BOARD_IS_OPENRD_BASE +CONFIG_BOARD_IS_OPENRD_CLIENT +CONFIG_BOARD_IS_OPENRD_ULTIMATE +CONFIG_BOARD_LATE_INIT +CONFIG_BOARD_MEM_LIMIT +CONFIG_BOARD_NAME +CONFIG_BOARD_POSTCLK_INIT +CONFIG_BOARD_RESET +CONFIG_BOARD_REVISION_TAG +CONFIG_BOARD_SIZE_LIMIT +CONFIG_BOARD_SPECIFIC_LED +CONFIG_BOARD_TAURUS +CONFIG_BOARD_TYPES +CONFIG_BOOGER +CONFIG_BOOKE +CONFIG_BOOM +CONFIG_BOOTARGS +CONFIG_BOOTARGS_AXM +CONFIG_BOOTARGS_ROOT +CONFIG_BOOTARGS_TAURUS +CONFIG_BOOTARGS_VIDEO +CONFIG_BOOTBLOCK +CONFIG_BOOTCOMMAND +CONFIG_BOOTCOUNT_ALEN +CONFIG_BOOTCOUNT_AM33XX +CONFIG_BOOTCOUNT_ENV +CONFIG_BOOTCOUNT_I2C +CONFIG_BOOTCOUNT_LIMIT +CONFIG_BOOTCOUNT_RAM +CONFIG_BOOTFILE +CONFIG_BOOTMAPSZ +CONFIG_BOOTMODE +CONFIG_BOOTM_LINUX +CONFIG_BOOTM_NETBSD +CONFIG_BOOTM_OPENRTOS +CONFIG_BOOTM_OSE +CONFIG_BOOTM_PLAN9 +CONFIG_BOOTM_RTEMS +CONFIG_BOOTM_VXWORKS +CONFIG_BOOTP_ +CONFIG_BOOTP_BOOTFILE +CONFIG_BOOTP_BOOTFILESIZE +CONFIG_BOOTP_BOOTPATH +CONFIG_BOOTP_DEFAULT +CONFIG_BOOTP_DHCP_REQUEST_DELAY +CONFIG_BOOTP_DNS +CONFIG_BOOTP_DNS2 +CONFIG_BOOTP_GATEWAY +CONFIG_BOOTP_HOSTNAME +CONFIG_BOOTP_ID_CACHE_SIZE +CONFIG_BOOTP_MAY_FAIL +CONFIG_BOOTP_NISDOMAIN +CONFIG_BOOTP_NTPSERVER +CONFIG_BOOTP_PXE +CONFIG_BOOTP_RANDOM_DELAY +CONFIG_BOOTP_SEND_HOSTNAME +CONFIG_BOOTP_SERVERIP +CONFIG_BOOTP_SUBNETMASK +CONFIG_BOOTP_TIMEOFFSET +CONFIG_BOOTP_VENDOREX +CONFIG_BOOTROM_ERR_REG +CONFIG_BOOTSCRIPT_ADDR +CONFIG_BOOTSCRIPT_COPY_RAM +CONFIG_BOOTSCRIPT_HDR_ADDR +CONFIG_BOOTSCRIPT_KEY_HASH +CONFIG_BOOT_DIR +CONFIG_BOOT_FROM_XMD +CONFIG_BOOT_MODE_BIT +CONFIG_BOOT_NAND +CONFIG_BOOT_ONENAND +CONFIG_BOOT_OS_NET +CONFIG_BOOT_PARAMS_ADDR +CONFIG_BOOT_PCI +CONFIG_BOOT_RETRY_MIN +CONFIG_BOOT_RETRY_TIME +CONFIG_BOUNCE_BUFFER +CONFIG_BPTR_VIRT_ADDR +CONFIG_BSC9131 +CONFIG_BSC9131RDB +CONFIG_BSC9132 +CONFIG_BSC9132QDS +CONFIG_BSEIP +CONFIG_BS_ADDR_DEVICE +CONFIG_BS_ADDR_RAM +CONFIG_BS_COPY_CMD +CONFIG_BS_COPY_ENV +CONFIG_BS_HDR_ADDR_DEVICE +CONFIG_BS_HDR_ADDR_RAM +CONFIG_BS_HDR_SIZE +CONFIG_BS_SIZE +CONFIG_BTB +CONFIG_BUBINGA +CONFIG_BUFNO_AUTO_INCR_BIT +CONFIG_BUILD_ENVCRC +CONFIG_BUILD_TARGET +CONFIG_BUS_WIDTH +CONFIG_BZIP2 +CONFIG_C29XPCIE +CONFIG_CACHELINE_ALIGNED_L1 +CONFIG_CADDY2 +CONFIG_CALXEDA_XGMAC +CONFIG_CAM5200 +CONFIG_CAM5200_NIOSFLASH +CONFIG_CANMB +CONFIG_CAN_DRIVER +CONFIG_CCLK_ACT_DIV +CONFIG_CCLK_DIV +CONFIG_CCLK_DIV_not_defined_properly +CONFIG_CCLK_HZ +CONFIG_CDP_APPLIANCE_VLAN_TYPE +CONFIG_CDP_CAPABILITIES +CONFIG_CDP_DEVICE_ID +CONFIG_CDP_DEVICE_ID_PREFIX +CONFIG_CDP_PLATFORM +CONFIG_CDP_PORT_ID +CONFIG_CDP_POWER_CONSUMPTION +CONFIG_CDP_TRIGGER +CONFIG_CDP_VERSION +CONFIG_CFB_CONSOLE +CONFIG_CFB_CONSOLE_ANSI +CONFIG_CFG_DATA_SECTOR +CONFIG_CFG_FAT +CONFIG_CFG_USB +CONFIG_CFI_FLASH_USE_WEAK_ACCESSORS +CONFIG_CF_ATASEL_DIS +CONFIG_CF_ATASEL_ENA +CONFIG_CF_DSPI +CONFIG_CF_QSPI +CONFIG_CF_SBF +CONFIG_CF_SPI +CONFIG_CF_V2 +CONFIG_CF_V3 +CONFIG_CF_V4 +CONFIG_CF_V4E +CONFIG_CGU_CTL_VAL +CONFIG_CGU_DIV_VAL +CONFIG_CHAIN_BOOT_CMD +CONFIG_CHAIN_OF_TRUST +CONFIG_CHARON +CONFIG_CHIP_SELECTS_PER_CTRL +CONFIG_CHIP_SELECT_QUAD_CAPABLE +CONFIG_CHROMEOS_EXTRA_ENV_SETTINGS +CONFIG_CIS8201_PHY +CONFIG_CI_UDC_HAS_HOSTPC +CONFIG_CLK0_DIV +CONFIG_CLK0_EN +CONFIG_CLKIN_HALF +CONFIG_CLKIN_HZ +CONFIG_CLK_1000_200_200 +CONFIG_CLK_1000_330_165 +CONFIG_CLK_1000_400_200 +CONFIG_CLK_800_330_165 +CONFIG_CLK_DEBUG +CONFIG_CLOCKS +CONFIG_CLOCKS_IN_MHZ +CONFIG_CLOCK_SYNTHESIZER +CONFIG_CM5200 +CONFIG_CM922T_XA10 +CONFIG_CMDLINE_EDITING +CONFIG_CMDLINE_PS_SUPPORT +CONFIG_CMDLINE_TAG +CONFIG_CMD_AES +CONFIG_CMD_ASKEN +CONFIG_CMD_BAT +CONFIG_CMD_BEDBUG +CONFIG_CMD_BLOB +CONFIG_CMD_BMODE +CONFIG_CMD_BMP +CONFIG_CMD_BOOTLDR +CONFIG_CMD_BOOTMENU +CONFIG_CMD_BSP +CONFIG_CMD_CBFS +CONFIG_CMD_CHIP_CONFIG +CONFIG_CMD_CLEAR +CONFIG_CMD_CLK +CONFIG_CMD_CPLBINFO +CONFIG_CMD_CRAMFS +CONFIG_CMD_DATE +CONFIG_CMD_DEFAULTENV_VARS +CONFIG_CMD_DEKBLOB +CONFIG_CMD_DFL +CONFIG_CMD_DIAG +CONFIG_CMD_DISPLAY +CONFIG_CMD_DOC +CONFIG_CMD_DS4510 +CONFIG_CMD_DS4510_INFO +CONFIG_CMD_DS4510_MEM +CONFIG_CMD_DS4510_RST +CONFIG_CMD_DTT +CONFIG_CMD_ECCTEST +CONFIG_CMD_EECONFIG +CONFIG_CMD_EEPROM +CONFIG_CMD_EEPROM_LAYOUT +CONFIG_CMD_ENTERRCM +CONFIG_CMD_ENV +CONFIG_CMD_ENV_CALLBACK +CONFIG_CMD_ENV_FLAGS +CONFIG_CMD_ERRATA +CONFIG_CMD_ESBC_VALIDATE +CONFIG_CMD_ETHSW +CONFIG_CMD_FDC +CONFIG_CMD_FDT_MAX_DUMP +CONFIG_CMD_FPGAD +CONFIG_CMD_FPGA_LOADBP +CONFIG_CMD_FPGA_LOADFS +CONFIG_CMD_FPGA_LOADMK +CONFIG_CMD_FPGA_LOADP +CONFIG_CMD_FUSE +CONFIG_CMD_GETTIME +CONFIG_CMD_GPT +CONFIG_CMD_GSC +CONFIG_CMD_HASH +CONFIG_CMD_HD44760 +CONFIG_CMD_HD44780 +CONFIG_CMD_HDMIDETECT +CONFIG_CMD_IDE +CONFIG_CMD_IMMAP +CONFIG_CMD_IMXOTP +CONFIG_CMD_IMX_FUSE +CONFIG_CMD_IO +CONFIG_CMD_IOLOOP +CONFIG_CMD_IOTRACE +CONFIG_CMD_IRQ +CONFIG_CMD_JFFS2 +CONFIG_CMD_KGDB +CONFIG_CMD_LDRINFO +CONFIG_CMD_LED +CONFIG_CMD_LOADY +CONFIG_CMD_LZMADEC +CONFIG_CMD_MAX6957 +CONFIG_CMD_MD5SUM +CONFIG_CMD_MEM +CONFIG_CMD_MFSL +CONFIG_CMD_MMC_SPI +CONFIG_CMD_MTDPARTS +CONFIG_CMD_MTDPARTS_SPREAD +CONFIG_CMD_NAND_LOCK_UNLOCK +CONFIG_CMD_NAND_TORTURE +CONFIG_CMD_NAND_TRIMFFS +CONFIG_CMD_ONENAND +CONFIG_CMD_OTP +CONFIG_CMD_PART +CONFIG_CMD_PCA953X +CONFIG_CMD_PCA953X_INFO +CONFIG_CMD_PCI +CONFIG_CMD_PCI_ENUM +CONFIG_CMD_PCMCIA +CONFIG_CMD_PORTIO +CONFIG_CMD_PXE +CONFIG_CMD_READ +CONFIG_CMD_REGINFO +CONFIG_CMD_REISER +CONFIG_CMD_SANDBOX +CONFIG_CMD_SATA +CONFIG_CMD_SAVES +CONFIG_CMD_SCSI +CONFIG_CMD_SDRAM +CONFIG_CMD_SF_TEST +CONFIG_CMD_SH_ZIMAGEBOOT +CONFIG_CMD_SOFTSWITCH +CONFIG_CMD_SPIBOOTLDR +CONFIG_CMD_SPL +CONFIG_CMD_SPL_NAND_OFS +CONFIG_CMD_SPL_WRITE_SIZE +CONFIG_CMD_STRINGS +CONFIG_CMD_SX151X +CONFIG_CMD_TCA642X +CONFIG_CMD_TERMINAL +CONFIG_CMD_TFTP +CONFIG_CMD_THOR_DOWNLOAD +CONFIG_CMD_TRACE +CONFIG_CMD_TSI148 +CONFIG_CMD_UBIFS +CONFIG_CMD_UNIVERSE +CONFIG_CMD_UNZIP +CONFIG_CMD_USB_STORAGE +CONFIG_CMD_UUID +CONFIG_CMD_ZBOOT +CONFIG_CMD_ZFS +CONFIG_CM_INIT +CONFIG_CM_MULTIPLE_SSRAM +CONFIG_CM_REMAP +CONFIG_CM_SPD_DETECT +CONFIG_CM_T335 +CONFIG_CM_T3517 +CONFIG_CM_T3X +CONFIG_CM_T43 +CONFIG_CM_T54 +CONFIG_CM_TCRAM +CONFIG_CNTL +CONFIG_COLDFIRE +CONFIG_COMMANDS +CONFIG_COMMAND_HISTORY +CONFIG_COMMON_BOOT +CONFIG_COMMON_ENV_MISC +CONFIG_COMMON_ENV_SETTINGS +CONFIG_COMMON_ENV_UBI +CONFIG_COMPACT_FLASH +CONFIG_COMPAT +CONFIG_CONSOLE +CONFIG_CONSOLE_DEV +CONFIG_CONSOLE_EXTRA_INFO +CONFIG_CONSOLE_INFO_QUIET +CONFIG_CONSOLE_MUX +CONFIG_CONSOLE_SCROLL_LINES +CONFIG_CONS_EXTC_PINSEL +CONFIG_CONS_EXTC_RATE +CONFIG_CONS_NONE +CONFIG_CONS_ON_SCC +CONFIG_CONS_ON_SMC +CONFIG_CONS_SCIF0 +CONFIG_CONS_SCIF1 +CONFIG_CONS_SCIF2 +CONFIG_CONS_SCIF3 +CONFIG_CONS_SCIF4 +CONFIG_CONS_SCIF5 +CONFIG_CONS_SCIF7 +CONFIG_CONTROL +CONFIG_CONTROLCENTERD +CONFIG_CON_ROT +CONFIG_CORE1_RUN +CONFIG_CORE_COUNT +CONFIG_CORTINA_FW_ADDR +CONFIG_CORTINA_FW_LENGTH +CONFIG_CPCI405 +CONFIG_CPCI405_6U +CONFIG_CPCI405_VER2 +CONFIG_CPCI_AX2000 +CONFIG_CPLD_BR_PRELIM +CONFIG_CPLD_OR_PRELIM +CONFIG_CPM2 +CONFIG_CPUAT91 +CONFIG_CPU_ARCHS34 +CONFIG_CPU_ARMV8 +CONFIG_CPU_CAVIUM_OCTEON +CONFIG_CPU_FREQ_HZ +CONFIG_CPU_HAS_LLSC +CONFIG_CPU_HAS_PREFETCH +CONFIG_CPU_HAS_SMARTMIPS +CONFIG_CPU_HAS_SR_RB +CONFIG_CPU_HAS_WB +CONFIG_CPU_INTEL_TURBO_NOT_PACKAGE_SCOPED +CONFIG_CPU_LITTLE_ENDIAN +CONFIG_CPU_MICROMIPS +CONFIG_CPU_MIPSR2 +CONFIG_CPU_MONAHANS +CONFIG_CPU_PXA25X +CONFIG_CPU_PXA26X +CONFIG_CPU_PXA27X +CONFIG_CPU_PXA300 +CONFIG_CPU_R8000 +CONFIG_CPU_SH7203 +CONFIG_CPU_SH7264 +CONFIG_CPU_SH7269 +CONFIG_CPU_SH7706 +CONFIG_CPU_SH7720 +CONFIG_CPU_SH7722 +CONFIG_CPU_SH7723 +CONFIG_CPU_SH7724 +CONFIG_CPU_SH7734 +CONFIG_CPU_SH7750 +CONFIG_CPU_SH7751 +CONFIG_CPU_SH7752 +CONFIG_CPU_SH7753 +CONFIG_CPU_SH7757 +CONFIG_CPU_SH7763 +CONFIG_CPU_SH7780 +CONFIG_CPU_SH7785 +CONFIG_CPU_SH_TYPE_R +CONFIG_CPU_TYPE_R +CONFIG_CPU_VR41XX +CONFIG_CP_CLK_FREQ +CONFIG_CQSPI_DECODER +CONFIG_CQSPI_REF_CLK +CONFIG_CRC32 +CONFIG_CRC32_VERIFY +CONFIG_CS8900 +CONFIG_CS8900_BASE +CONFIG_CS8900_BUS16 +CONFIG_CS8900_BUS32 +CONFIG_CSF_SIZE +CONFIG_CTL_JTAG +CONFIG_CTL_TBE +CONFIG_CTRD1_PROBE_T1 +CONFIG_CTRD1_PROBE_T2 +CONFIG_CUSTOMER_BOARD_SUPPORT +CONFIG_CYRUS +CONFIG_D2NET_V2 +CONFIG_DA850_AM18X_EVM +CONFIG_DA850_EVM_MAX_CPU_CLK +CONFIG_DA850_LOWLEVEL +CONFIG_DA8XX_GPIO +CONFIG_DASA_SIM +CONFIG_DATA +CONFIG_DAVINCI_MMC +CONFIG_DAVINCI_MMC_SD1 +CONFIG_DAVINCI_SPI +CONFIG_DBAU1000 +CONFIG_DBAU1X00 +CONFIG_DBGU +CONFIG_DBG_MONITOR +CONFIG_DB_784MP_GP +CONFIG_DCACHE +CONFIG_DCACHE_OFF +CONFIG_DCACHE_WB +CONFIG_DCFG_ADDR +CONFIG_DCLK_DIV +CONFIG_DDR_ +CONFIG_DDR_2HCLK +CONFIG_DDR_2T_TIMING +CONFIG_DDR_32BIT +CONFIG_DDR_64BIT +CONFIG_DDR_CLK_FREQ +CONFIG_DDR_DATA_EYE +CONFIG_DDR_DEFAULT_CL +CONFIG_DDR_ECC +CONFIG_DDR_ECC_CMD +CONFIG_DDR_ECC_ENABLE +CONFIG_DDR_ECC_INIT_VIA_DMA +CONFIG_DDR_FIXED_SIZE +CONFIG_DDR_FREQ +CONFIG_DDR_HCLK +CONFIG_DDR_HYB25D512160BF +CONFIG_DDR_II +CONFIG_DDR_K4H511638C +CONFIG_DDR_LOG_LEVEL +CONFIG_DDR_MB +CONFIG_DDR_MT46V16M16 +CONFIG_DDR_MT46V32M16 +CONFIG_DDR_MT47H128M8 +CONFIG_DDR_MT47H32M16 +CONFIG_DDR_MT47H64M16 +CONFIG_DDR_PLL2 +CONFIG_DDR_RFDC_FIXED +CONFIG_DDR_RQDC_FIXED +CONFIG_DDR_SPD +CONFIG_DEBUG +CONFIG_DEBUG_DUMP +CONFIG_DEBUG_DUMP_SYMS +CONFIG_DEBUG_EARLY_SERIAL +CONFIG_DEBUG_FS +CONFIG_DEBUG_LED +CONFIG_DEBUG_LOCK_ALLOC +CONFIG_DEBUG_NULL_PTR +CONFIG_DEBUG_SECTION_MISMATCH +CONFIG_DEBUG_SEMIHOSTING +CONFIG_DEBUG_SERIAL +CONFIG_DEBUG_UART_LINFLEXUART +CONFIG_DEBUG_WRITECOUNT +CONFIG_DEB_DMA_URGENT +CONFIG_DEEP_SLEEP +CONFIG_DEFAULT +CONFIG_DEFAULT_CONSOLE +CONFIG_DEFAULT_FDT_FILE +CONFIG_DEFAULT_IMMR +CONFIG_DEFAULT_KERNEL_COMMAND_LINE +CONFIG_DEFAULT_OMAP_RESET_TIME_MAX_USEC +CONFIG_DEFAULT_SPI_BUS +CONFIG_DEFAULT_SPI_CS +CONFIG_DEFAULT_SPI_MODE +CONFIG_DEF_HWCONFIG +CONFIG_DELAY_ENVIRONMENT +CONFIG_DENX_M28_V10 +CONFIG_DESIGNWARE_ETH +CONFIG_DESIGNWARE_WATCHDOG +CONFIG_DEVCONCENTER +CONFIG_DEVELOP +CONFIG_DEVICE_TREE_LIST +CONFIG_DEV_USB_PHY_BASE +CONFIG_DFU_ALT +CONFIG_DFU_ALT_BOOT_EMMC +CONFIG_DFU_ALT_BOOT_SD +CONFIG_DFU_ALT_SYSTEM +CONFIG_DFU_ENV_SETTINGS +CONFIG_DFU_MMC +CONFIG_DFU_MTD +CONFIG_DFU_NAND +CONFIG_DFU_RAM +CONFIG_DFU_SF +CONFIG_DHCP_MIN_EXT_LEN +CONFIG_DIALOG_POWER +CONFIG_DIGSY_MTC +CONFIG_DIGSY_REV5 +CONFIG_DIMM_SLOTS_PER_CTLR +CONFIG_DIRECT_NOR_BOOT +CONFIG_DISABLE_CONSOLE +CONFIG_DISABLE_IMAGE_LEGACY +CONFIG_DISABLE_PISE_TEST +CONFIG_DISCONTIGMEM +CONFIG_DISCOVER_PHY +CONFIG_DISPLAY_AER_xxxx +CONFIG_DISPLAY_BOARDINFO_LATE +CONFIG_DISPLAY_CPUINFO +CONFIG_DLVISION +CONFIG_DLVISION_10G +CONFIG_DM9000_BASE +CONFIG_DM9000_BYTE_SWAPPED +CONFIG_DM9000_DEBUG +CONFIG_DM9000_NO_SROM +CONFIG_DM9000_USE_16BIT +CONFIG_DMA_COHERENT +CONFIG_DMA_COHERENT_SIZE +CONFIG_DMA_LPC32XX +CONFIG_DMA_NONCOHERENT +CONFIG_DMA_REQ_BIT +CONFIG_DMC_DDRCFG +CONFIG_DMC_DDRCTL +CONFIG_DMC_DDREMR1 +CONFIG_DMC_DDRMR +CONFIG_DMC_DDRTR0 +CONFIG_DMC_DDRTR1 +CONFIG_DMC_DDRTR2 +CONFIG_DNET_AUTONEG_TIMEOUT +CONFIG_DNP5370_EXT_WD_DISABLE +CONFIG_DOS_PARTITION +CONFIG_DPLL_SSC_RATE_1PER +CONFIG_DP_DDR_CTRL +CONFIG_DP_DDR_DIMM_SLOTS_PER_CTLR +CONFIG_DP_DDR_NUM_CTRLS +CONFIG_DRA7XX +CONFIG_DRAM_2G +CONFIG_DRAM_TIMINGS_ +CONFIG_DRIVER_AT91EMAC +CONFIG_DRIVER_AT91EMAC_PHYADDR +CONFIG_DRIVER_AT91EMAC_QUIET +CONFIG_DRIVER_AX88180 +CONFIG_DRIVER_AX88796L +CONFIG_DRIVER_DM9000 +CONFIG_DRIVER_EP93XX_MAC +CONFIG_DRIVER_ETHER +CONFIG_DRIVER_NAND_BFIN +CONFIG_DRIVER_NE2000 +CONFIG_DRIVER_NE2000_BASE +CONFIG_DRIVER_NE2000_CCR +CONFIG_DRIVER_NE2000_VAL +CONFIG_DRIVER_SMC911X_BASE +CONFIG_DRIVER_TI_CPSW +CONFIG_DRIVER_TI_EMAC +CONFIG_DRIVER_TI_EMAC_RMII_NO_NEGOTIATE +CONFIG_DRIVER_TI_EMAC_USE_RMII +CONFIG_DRIVER_TI_KEYSTONE_NET +CONFIG_DRIVE_MMC +CONFIG_DRIVE_SATA +CONFIG_DRIVE_TYPES +CONFIG_DRIVE_USB +CONFIG_DS4510 +CONFIG_DSP_CLUSTER_START +CONFIG_DTT +CONFIG_DTT_AD7414 +CONFIG_DTT_ADM1021 +CONFIG_DTT_DS1621 +CONFIG_DTT_DS1775 +CONFIG_DTT_DS620 +CONFIG_DTT_HYSTERESIS +CONFIG_DTT_LM63 +CONFIG_DTT_LM75 +CONFIG_DTT_LM81 +CONFIG_DTT_MAX_TEMP +CONFIG_DTT_MIN_TEMP +CONFIG_DTT_PWM_LOOKUPTABLE +CONFIG_DTT_SENSORS +CONFIG_DTT_TACH_LIMIT +CONFIG_DUOVERO +CONFIG_DV_USBPHY_CTL +CONFIG_DWC2_DFLT_SPEED_FULL +CONFIG_DWC2_DMA_BURST_SIZE +CONFIG_DWC2_DMA_ENABLE +CONFIG_DWC2_ENABLE_DYNAMIC_FIFO +CONFIG_DWC2_HOST_NPERIO_TX_FIFO_SIZE +CONFIG_DWC2_HOST_PERIO_TX_FIFO_SIZE +CONFIG_DWC2_HOST_RX_FIFO_SIZE +CONFIG_DWC2_I2C_ENABLE +CONFIG_DWC2_IC_USB_CAP +CONFIG_DWC2_MAX_CHANNELS +CONFIG_DWC2_MAX_PACKET_COUNT +CONFIG_DWC2_MAX_TRANSFER_SIZE +CONFIG_DWC2_PHY_TYPE +CONFIG_DWC2_PHY_ULPI_DDR +CONFIG_DWC2_PHY_ULPI_EXT_VBUS +CONFIG_DWC2_THR_CTL +CONFIG_DWC2_TS_DLINE +CONFIG_DWC2_TX_THR_LENGTH +CONFIG_DWC2_ULPI_FS_LS +CONFIG_DWC2_UTMI_WIDTH +CONFIG_DWCDDR21MCTL +CONFIG_DWCDDR21MCTL_BASE +CONFIG_DWC_AHSATA +CONFIG_DWC_AHSATA_BASE_ADDR +CONFIG_DWC_AHSATA_PORT_ID +CONFIG_DWMMC +CONFIG_DW_ALTDESCRIPTOR +CONFIG_DW_AXI_BURST_LEN +CONFIG_DW_GMAC_DEFAULT_DMA_PBL +CONFIG_DW_MAC_FORCE_THRESHOLD_MODE +CONFIG_DW_PORTS +CONFIG_DW_SERIAL +CONFIG_DW_UDC +CONFIG_DW_WDT_BASE +CONFIG_DW_WDT_CLOCK_KHZ +CONFIG_DYNAMIC_MMC_DEVNO +CONFIG_E1000_NO_NVM +CONFIG_E300 +CONFIG_E500 +CONFIG_E500MC +CONFIG_E5500 +CONFIG_E6500 +CONFIG_EBCAW_VAL +CONFIG_EBC_PPC4xx_IBM_VER1 +CONFIG_EBIU_AMBCTL0_VAL +CONFIG_EBIU_AMBCTL1_VAL +CONFIG_EBIU_AMGCTL_VAL +CONFIG_EBIU_DDRCTL0_VAL +CONFIG_EBIU_DDRCTL1_VAL +CONFIG_EBIU_DDRCTL2_VAL +CONFIG_EBIU_DDRCTL3_VAL +CONFIG_EBIU_DDRQUE_VAL +CONFIG_EBIU_FCTL_VAL +CONFIG_EBIU_MBSCTL_VAL +CONFIG_EBIU_MODE_VAL +CONFIG_EBIU_RSTCTL_VAL +CONFIG_EBIU_SDBCTL_VAL +CONFIG_EBIU_SDGCTL_VAL +CONFIG_EBIU_SDRRC_VAL +CONFIG_EBSZ_VAL +CONFIG_ECC +CONFIG_ECC_INIT_VIA_DDRCONTROLLER +CONFIG_ECC_MODE_MASK +CONFIG_ECC_MODE_SHIFT +CONFIG_ECC_SRAM_ADDR_MASK +CONFIG_ECC_SRAM_ADDR_SHIFT +CONFIG_ECC_SRAM_REQ_BIT +CONFIG_ECOVEC +CONFIG_ECOVEC_ROMIMAGE_ADDR +CONFIG_EDB9301 +CONFIG_EDB9302 +CONFIG_EDB9302A +CONFIG_EDB9307 +CONFIG_EDB9307A +CONFIG_EDB9312 +CONFIG_EDB9315 +CONFIG_EDB9315A +CONFIG_EDB93XX_INDUSTRIAL +CONFIG_EDB93XX_SDCS0 +CONFIG_EDB93XX_SDCS1 +CONFIG_EDB93XX_SDCS2 +CONFIG_EDB93XX_SDCS3 +CONFIG_EEPRO100 +CONFIG_EEPRO100_SROM_WRITE +CONFIG_EEPROM_BUS_ADDRESS +CONFIG_EEPROM_CHIP_ADDRESS +CONFIG_EEPROM_LAYOUT_HELP_STRING +CONFIG_EFI_PARTITION +CONFIG_EFLASH_PROTSECTORS +CONFIG_EHCI_DESC_BIG_ENDIAN +CONFIG_EHCI_HCD_INIT_AFTER_RESET +CONFIG_EHCI_IS_TDI +CONFIG_EHCI_MMIO_BIG_ENDIAN +CONFIG_EHCI_MXS_PORT0 +CONFIG_EHCI_MXS_PORT1 +CONFIG_ELBC_NAND_SPL_STATIC_PGSIZE +CONFIG_EMAC_MDIO_PHY_NUM +CONFIG_EMAC_NR_START +CONFIG_EMAC_PHY_MODE +CONFIG_EMIF4 +CONFIG_EMMC_BOOT +CONFIG_EMU +CONFIG_ENABLE_36BIT_PHYS +CONFIG_ENABLE_MMU +CONFIG_ENABLE_MUST_CHECK +CONFIG_ENABLE_VBOOT +CONFIG_ENABLE_WARN_DEPRECATED +CONFIG_ENC_SILENTLINK +CONFIG_ENV_ACCESS_IGNORE_FORCE +CONFIG_ENV_ADDR +CONFIG_ENV_ADDR_FLEX +CONFIG_ENV_ADDR_REDUND +CONFIG_ENV_AES +CONFIG_ENV_BASE +CONFIG_ENV_CALLBACK_LIST_DEFAULT +CONFIG_ENV_CALLBACK_LIST_STATIC +CONFIG_ENV_COMMON_BOOT +CONFIG_ENV_EEPROM_IS_ON_I2C +CONFIG_ENV_FIT_UCBOOT +CONFIG_ENV_FLAGS_LIST_DEFAULT +CONFIG_ENV_FLAGS_LIST_STATIC +CONFIG_ENV_FLASHBOOT +CONFIG_ENV_IS_EMBEDDED +CONFIG_ENV_IS_EMBEDDED_IN_LDR +CONFIG_ENV_IS_IN_ +CONFIG_ENV_IS_IN_DATAFLASH +CONFIG_ENV_IS_IN_EEPROM +CONFIG_ENV_IS_IN_FAT +CONFIG_ENV_IS_IN_FLASH +CONFIG_ENV_IS_IN_MMC +CONFIG_ENV_IS_IN_MRAM +CONFIG_ENV_IS_IN_NAND +CONFIG_ENV_IS_IN_NVRAM +CONFIG_ENV_IS_IN_ONENAND +CONFIG_ENV_IS_IN_REMOTE +CONFIG_ENV_IS_IN_SPI_FLASH +CONFIG_ENV_IS_IN_UBI +CONFIG_ENV_IS_NOWHERE +CONFIG_ENV_MAX_ENTRIES +CONFIG_ENV_MIN_ENTRIES +CONFIG_ENV_OFFSET +CONFIG_ENV_OFFSET_OOB +CONFIG_ENV_OFFSET_REDUND +CONFIG_ENV_OVERWRITE +CONFIG_ENV_RANGE +CONFIG_ENV_RDADDR +CONFIG_ENV_REFLASH +CONFIG_ENV_SECT_SIZE +CONFIG_ENV_SETTINGS_BUTTONS_AND_LEDS +CONFIG_ENV_SETTINGS_NAND_V1 +CONFIG_ENV_SETTINGS_NAND_V2 +CONFIG_ENV_SETTINGS_V1 +CONFIG_ENV_SETTINGS_V2 +CONFIG_ENV_SIZE +CONFIG_ENV_SIZE_FLEX +CONFIG_ENV_SIZE_REDUND +CONFIG_ENV_SPI_BASE +CONFIG_ENV_SPI_BUS +CONFIG_ENV_SPI_CS +CONFIG_ENV_SPI_MAX_HZ +CONFIG_ENV_SPI_MODE +CONFIG_ENV_SROM_BANK +CONFIG_ENV_TOTAL_SIZE +CONFIG_ENV_UBIFS_OPTION +CONFIG_ENV_UBI_MTD +CONFIG_ENV_UBI_PART +CONFIG_ENV_UBI_VOLUME +CONFIG_ENV_UBI_VOLUME_REDUND +CONFIG_ENV_VARS_UBOOT_CONFIG +CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG +CONFIG_ENV_VERSION +CONFIG_ENV_xxx +CONFIG_EP9301 +CONFIG_EP9302 +CONFIG_EP9307 +CONFIG_EP9312 +CONFIG_EP9315 +CONFIG_EP93XX +CONFIG_EP93XX_NO_FLASH_CFG +CONFIG_EP93XX_SPI +CONFIG_EP93XX_SPI_MMC +CONFIG_EPH_POWER_EN +CONFIG_EPOLL +CONFIG_ESBC_ADDR_64BIT +CONFIG_ESBC_HDR_LS +CONFIG_ESDHC_DETECT_8_BIT_QUIRK +CONFIG_ESDHC_DETECT_QUIRK +CONFIG_ESDHC_DETECT_USE_EXTERN_IRQ1 +CONFIG_ESDHC_HC_BLK_ADDR +CONFIG_ESPRESSO7420 +CONFIG_ESPT +CONFIG_ET1100_BASE +CONFIG_ETH1ADDR +CONFIG_ETH2ADDR +CONFIG_ETHADDR +CONFIG_ETHBASE +CONFIG_ETHER_INDEX +CONFIG_ETHER_LOOPBACK_TEST +CONFIG_ETHER_NONE +CONFIG_ETHER_ON_FCC +CONFIG_ETHER_ON_FCC1 +CONFIG_ETHER_ON_FCC2 +CONFIG_ETHER_ON_FCC3 +CONFIG_ETHER_ON_FEC1 +CONFIG_ETHER_ON_FEC2 +CONFIG_ETHER_ON_SCC +CONFIG_ETHPRIME +CONFIG_ETH_BUFSIZE +CONFIG_ETH_RXSIZE +CONFIG_EXCEPTION_DEFER +CONFIG_EXT4_WRITE +CONFIG_EXTRA_BOOTARGS +CONFIG_EXTRA_CLOCK +CONFIG_EXTRA_ENV +CONFIG_EXTRA_ENV_BOARD_SETTINGS +CONFIG_EXTRA_ENV_ITB +CONFIG_EXTRA_ENV_KS2_BOARD_SETTINGS +CONFIG_EXTRA_ENV_SETTINGS +CONFIG_EXTRA_ENV_SETTINGS_BASE +CONFIG_EXTRA_ENV_SETTINGS_COMMON +CONFIG_EXTRA_ENV_SETTINGS_DEVEL +CONFIG_EXTRA_ENV_SETTINGS_SELECT +CONFIG_EXTRA_ENV_UNLOCK +CONFIG_EXTRA_ENV_USBTTY +CONFIG_EXT_AHB2AHB_BASE +CONFIG_EXT_AHBAPBBRG_BASE +CONFIG_EXT_AHBPCIBRG_BASE +CONFIG_EXT_AHBSLAVE01_BASE +CONFIG_EXT_AHBSLAVE02_BASE +CONFIG_EXT_PHY +CONFIG_EXT_USB_HOST_BASE +CONFIG_EXYNOS4 +CONFIG_EXYNOS4210 +CONFIG_EXYNOS5 +CONFIG_EXYNOS5250 +CONFIG_EXYNOS5420 +CONFIG_EXYNOS5800 +CONFIG_EXYNOS5_DT +CONFIG_EXYNOS7420 +CONFIG_EXYNOS_ACE_SHA +CONFIG_EXYNOS_DP +CONFIG_EXYNOS_DWMMC +CONFIG_EXYNOS_FB +CONFIG_EXYNOS_MIPI_DSIM +CONFIG_EXYNOS_RELOCATE_CODE_BASE +CONFIG_EXYNOS_SPL +CONFIG_EXYNOS_TMU +CONFIG_FACTORYSET +CONFIG_FASTBOOT_FLASH_FILLBUF_SIZE +CONFIG_FASTBOOT_FLASH_NAND_DEV +CONFIG_FASTBOOT_FLASH_NAND_TRIMFFS +CONFIG_FASTBOOT_GPT_NAME +CONFIG_FAST_FLASH_BIT +CONFIG_FAT_WRITE +CONFIG_FB_ADDR +CONFIG_FB_BACKLIGHT +CONFIG_FB_DEFERRED_IO +CONFIG_FDT1_ENV_ADDR +CONFIG_FDT2_ENV_ADDR +CONFIG_FDTADDR +CONFIG_FDTFILE +CONFIG_FDT_ENV_ADDR +CONFIG_FDT_FIXUP_NOR_FLASH_SIZE +CONFIG_FDT_FIXUP_PARTITIONS +CONFIG_FDT_FIXUP_PCI_IRQ +CONFIG_FEATURE_CLEAN_UP +CONFIG_FEATURE_COMMAND_EDITING +CONFIG_FEATURE_SH_APPLETS_ALWAYS_WIN +CONFIG_FEATURE_SH_EXTRA_QUIET +CONFIG_FEATURE_SH_FANCY_PROMPT +CONFIG_FEATURE_SH_STANDALONE_SHELL +CONFIG_FEC1_PHY +CONFIG_FEC2_PHY +CONFIG_FEC_10MBIT +CONFIG_FEC_AN_TIMEOUT +CONFIG_FEC_ENET +CONFIG_FEC_ENET_DEV +CONFIG_FEC_FIXED_SPEED +CONFIG_FEC_MXC +CONFIG_FEC_MXC_25M_REF_CLK +CONFIG_FEC_MXC_PHYADDR +CONFIG_FEC_MXC_SWAP_PACKET +CONFIG_FEC_XCV_TYPE +CONFIG_FEROCEON +CONFIG_FEROCEON_88FR131 +CONFIG_FFUART +CONFIG_FILE +CONFIG_FIRMWARE_OFFSET +CONFIG_FIRMWARE_SIZE +CONFIG_FIT_DISABLE_SHA256 +CONFIG_FIXED_PHY +CONFIG_FIXED_PHY_ADDR +CONFIG_FIXED_SDHCI_ALIGNED_BUFFER +CONFIG_FLASHBOOTCOMMAND +CONFIG_FLASHCARD +CONFIG_FLASH_16BIT +CONFIG_FLASH_8BIT +CONFIG_FLASH_BASE +CONFIG_FLASH_BR_PRELIM +CONFIG_FLASH_CFI_DRIVER +CONFIG_FLASH_CFI_LEGACY +CONFIG_FLASH_CFI_MTD +CONFIG_FLASH_END +CONFIG_FLASH_NOT_MEM_MAPPED +CONFIG_FLASH_OR_PRELIM +CONFIG_FLASH_PNOR +CONFIG_FLASH_SECTOR_SIZE +CONFIG_FLASH_SHOW_PROGRESS +CONFIG_FLASH_SPANSION_S29WS_N +CONFIG_FLASH_VERIFY +CONFIG_FMAN_ENET +CONFIG_FM_PLAT_CLK_DIV +CONFIG_FO300 +CONFIG_FOO +CONFIG_FORCE_DDR_DATA_BUS_WIDTH_32 +CONFIG_FORMIKE +CONFIG_FPGA +CONFIG_FPGA_ALTERA +CONFIG_FPGA_COUNT +CONFIG_FPGA_CYCLON2 +CONFIG_FPGA_DELAY +CONFIG_FPGA_SOCFPGA +CONFIG_FPGA_SPARTAN2 +CONFIG_FPGA_SPARTAN3 +CONFIG_FPGA_STRATIX_V +CONFIG_FPGA_XILINX +CONFIG_FPGA_ZYNQPL +CONFIG_FSLDMAFEC +CONFIG_FSL_CADMUS +CONFIG_FSL_CORENET +CONFIG_FSL_CPLD +CONFIG_FSL_DCU_FB +CONFIG_FSL_DCU_SII9022A +CONFIG_FSL_DDR_BIST +CONFIG_FSL_DDR_FIRST_SLOT_QUAD_CAPABLE +CONFIG_FSL_DDR_INTERACTIVE +CONFIG_FSL_DDR_SYNC_REFRESH +CONFIG_FSL_DEBUG_SERVER +CONFIG_FSL_DEEP_SLEEP +CONFIG_FSL_DEVICE_DISABLE +CONFIG_FSL_DIU_CH7301 +CONFIG_FSL_DIU_FB +CONFIG_FSL_DMA +CONFIG_FSL_DSPI1 +CONFIG_FSL_ELBC +CONFIG_FSL_ESDHC +CONFIG_FSL_ESDHC_ADAPTER_IDENT +CONFIG_FSL_ESDHC_PIN_MUX +CONFIG_FSL_ESDHC_USE_PERIPHERAL_CLK +CONFIG_FSL_FIXED_MMC_LOCATION +CONFIG_FSL_FM_10GEC_REGULAR_NOTATION +CONFIG_FSL_I2C_CUSTOM_DFSR +CONFIG_FSL_I2C_CUSTOM_FDR +CONFIG_FSL_IFC +CONFIG_FSL_IIM +CONFIG_FSL_ISBC_KEY_EXT +CONFIG_FSL_LAW +CONFIG_FSL_LAYERSCAPE +CONFIG_FSL_LBC +CONFIG_FSL_LINFLEXUART +CONFIG_FSL_LSCH2 +CONFIG_FSL_LSCH3 +CONFIG_FSL_LS_PPA +CONFIG_FSL_MC9SDZ60 +CONFIG_FSL_MC_ENET +CONFIG_FSL_MEMAC +CONFIG_FSL_NFC_CHIPS +CONFIG_FSL_NFC_SPARE_SIZE +CONFIG_FSL_NFC_WIDTH +CONFIG_FSL_NFC_WRITE_SIZE +CONFIG_FSL_NGPIXIS +CONFIG_FSL_PCIE_DISABLE_ASPM +CONFIG_FSL_PCIE_RESET +CONFIG_FSL_PCI_INIT +CONFIG_FSL_PIXIS +CONFIG_FSL_PMIC_BITLEN +CONFIG_FSL_PMIC_BUS +CONFIG_FSL_PMIC_CLK +CONFIG_FSL_PMIC_CS +CONFIG_FSL_PMIC_MODE +CONFIG_FSL_QIXIS +CONFIG_FSL_QIXIS_CLOCK_MEASUREMENT +CONFIG_FSL_QIXIS_V2 +CONFIG_FSL_SATA +CONFIG_FSL_SATA_ERRATUM_A001 +CONFIG_FSL_SATA_V2 +CONFIG_FSL_SDHC_V2_3 +CONFIG_FSL_SDRAM_TYPE +CONFIG_FSL_SERDES +CONFIG_FSL_SERDES1 +CONFIG_FSL_SERDES2 +CONFIG_FSL_SGMII_RISER +CONFIG_FSL_SPI_INTERFACE +CONFIG_FSL_TBCLK_EXTRA_DIV +CONFIG_FSL_TRUST_ARCH_v1 +CONFIG_FSL_TZASC_400 +CONFIG_FSL_TZPC_BP147 +CONFIG_FSL_USDHC +CONFIG_FSL_VIA +CONFIG_FSMC_NAND_BASE +CONFIG_FSMTDBLK +CONFIG_FSNOTIFY +CONFIG_FS_EXT4 +CONFIG_FS_FAT +CONFIG_FS_FAT_MAX_CLUSTSIZE +CONFIG_FS_POSIX_ACL +CONFIG_FTAHBC020S +CONFIG_FTAHBC020S_BASE +CONFIG_FTAPBBRG020S_01_BASE +CONFIG_FTCFC010_BASE +CONFIG_FTDMAC020_BASE +CONFIG_FTGMAC100_BASE +CONFIG_FTGMAC100_EGIGA +CONFIG_FTGPIO010_BASE +CONFIG_FTI2C010_BASE1 +CONFIG_FTI2C010_BASE2 +CONFIG_FTI2C010_BASE3 +CONFIG_FTI2C010_CLOCK +CONFIG_FTI2C010_TIMEOUT +CONFIG_FTIDE020S_BASE +CONFIG_FTIIC010_BASE +CONFIG_FTINTC010_BASE +CONFIG_FTLCDC100_BASE +CONFIG_FTMAC100 +CONFIG_FTMAC100_BASE +CONFIG_FTMAC110_BASE +CONFIG_FTPCI100_BASE +CONFIG_FTPCI100_IO_SIZE +CONFIG_FTPCI100_MEM_BASE +CONFIG_FTPCI100_MEM_SIZE +CONFIG_FTPMU010 +CONFIG_FTPMU010_BASE +CONFIG_FTPMU010_POWER +CONFIG_FTPWM010_BASE +CONFIG_FTRACE_MCOUNT_RECORD +CONFIG_FTRTC010_BASE +CONFIG_FTRTC010_EXTCLK +CONFIG_FTRTC010_PCLK +CONFIG_FTSDC010 +CONFIG_FTSDC010_BASE +CONFIG_FTSDC010_BASE_LIST +CONFIG_FTSDC010_NUMBER +CONFIG_FTSDC010_SDIO +CONFIG_FTSDC021_CLOCK +CONFIG_FTSDMC021 +CONFIG_FTSDMC021_BASE +CONFIG_FTSMC020 +CONFIG_FTSMC020_BASE +CONFIG_FTSSP010_01_BASE +CONFIG_FTSSP010_02_BASE +CONFIG_FTTMR010_BASE +CONFIG_FTTMR010_EXT_CLK +CONFIG_FTUART010_01_BASE +CONFIG_FTUART010_02_BASE +CONFIG_FTUART010_03_BASE +CONFIG_FTWDT010_BASE +CONFIG_FTWDT010_WATCHDOG +CONFIG_FUNC_ISRAM_ADDR +CONFIG_FWUPDATE_DEBUG +CONFIG_FZOTG266HD0A_BASE +CONFIG_GATEWAYIP +CONFIG_GCOV_KERNEL +CONFIG_GCOV_PROFILE_ALL +CONFIG_GENERIC_ATMEL_MCI +CONFIG_GENERIC_MMC +CONFIG_GICV2 +CONFIG_GICV3 +CONFIG_GLOBAL_DATA_NOT_REG10 +CONFIG_GLOBAL_TIMER +CONFIG_GMII +CONFIG_GOOD_SESH4 +CONFIG_GPCNTRL +CONFIG_GPCS_PHY1_ADDR +CONFIG_GPCS_PHY2_ADDR +CONFIG_GPCS_PHY3_ADDR +CONFIG_GPCS_PHY_ADDR +CONFIG_GPIO +CONFIG_GPIO_ENABLE_SPI_FLASH +CONFIG_GPIO_LED +CONFIG_GPIO_LED_INVERTED_TABLE +CONFIG_GPIO_LED_STUBS +CONFIG_GREEN_LED +CONFIG_GRETH +CONFIG_GRETH_10MBIT +CONFIG_GRSIM +CONFIG_GRXC3S1500 +CONFIG_GR_EP2S60 +CONFIG_GURNARD_FPGA +CONFIG_GURNARD_SPLASH +CONFIG_GZIP +CONFIG_GZIP_COMPRESSED +CONFIG_GZIP_COMPRESS_DEF_SZ +CONFIG_G_DNL_THOR_PRODUCT_NUM +CONFIG_G_DNL_THOR_VENDOR_NUM +CONFIG_G_DNL_UMS_PRODUCT_NUM +CONFIG_G_DNL_UMS_VENDOR_NUM +CONFIG_H264_FREQ +CONFIG_H8300 +CONFIG_HALEAKALA +CONFIG_HARD_I2C +CONFIG_HARD_SPI +CONFIG_HASH_VERIFY +CONFIG_HAS_DATAFLASH +CONFIG_HAS_ETH0 +CONFIG_HAS_ETH1 +CONFIG_HAS_ETH2 +CONFIG_HAS_ETH3 +CONFIG_HAS_ETH4 +CONFIG_HAS_ETH5 +CONFIG_HAS_ETH7 +CONFIG_HAS_FEC +CONFIG_HAS_FSL_DR_USB +CONFIG_HAS_FSL_MPH_USB +CONFIG_HAS_FSL_XHCI_USB +CONFIG_HAS_POST +CONFIG_HAS_VR +CONFIG_HAVE_ACPI_RESUME +CONFIG_HAVE_OWN_RESET +CONFIG_HCLK_FREQ +CONFIG_HDBOOT +CONFIG_HDMI_ENCODER_I2C_ADDR +CONFIG_HETROGENOUS_CLUSTERS +CONFIG_HIDE_LOGO_VERSION +CONFIG_HIGH_BATS +CONFIG_HIKEY_DWMMC +CONFIG_HIKEY_GPIO +CONFIG_HIS_DRIVER +CONFIG_HITACHI_SP19X001_Z1A +CONFIG_HITACHI_SX14 +CONFIG_HLD1045 +CONFIG_HOSTNAME +CONFIG_HOST_MAX_DEVICES +CONFIG_HOTPLUG +CONFIG_HPS_ALTERAGRP_DBGATCLK +CONFIG_HPS_ALTERAGRP_MAINCLK +CONFIG_HPS_ALTERAGRP_MPUCLK +CONFIG_HPS_CLK_CAN0_HZ +CONFIG_HPS_CLK_CAN1_HZ +CONFIG_HPS_CLK_EMAC0_HZ +CONFIG_HPS_CLK_EMAC1_HZ +CONFIG_HPS_CLK_F2S_PER_REF_HZ +CONFIG_HPS_CLK_F2S_SDR_REF_HZ +CONFIG_HPS_CLK_GPIODB_HZ +CONFIG_HPS_CLK_L4_MP_HZ +CONFIG_HPS_CLK_L4_SP_HZ +CONFIG_HPS_CLK_MAINVCO_HZ +CONFIG_HPS_CLK_NAND_HZ +CONFIG_HPS_CLK_OSC1_HZ +CONFIG_HPS_CLK_OSC2_HZ +CONFIG_HPS_CLK_PERVCO_HZ +CONFIG_HPS_CLK_QSPI_HZ +CONFIG_HPS_CLK_SDMMC_HZ +CONFIG_HPS_CLK_SDRVCO_HZ +CONFIG_HPS_CLK_SPIM_HZ +CONFIG_HPS_CLK_USBCLK_HZ +CONFIG_HPS_DBCTRL_STAYOSC1 +CONFIG_HPS_IOCSR_SCANCHAIN0_LENGTH +CONFIG_HPS_IOCSR_SCANCHAIN1_LENGTH +CONFIG_HPS_IOCSR_SCANCHAIN2_LENGTH +CONFIG_HPS_IOCSR_SCANCHAIN3_LENGTH +CONFIG_HPS_MAINPLLGRP_CFGS2FUSER0CLK_CNT +CONFIG_HPS_MAINPLLGRP_DBGATCLK_CNT +CONFIG_HPS_MAINPLLGRP_DBGDIV_DBGATCLK +CONFIG_HPS_MAINPLLGRP_DBGDIV_DBGCLK +CONFIG_HPS_MAINPLLGRP_L4SRC_L4MP +CONFIG_HPS_MAINPLLGRP_L4SRC_L4SP +CONFIG_HPS_MAINPLLGRP_MAINCLK_CNT +CONFIG_HPS_MAINPLLGRP_MAINDIV_L3MPCLK +CONFIG_HPS_MAINPLLGRP_MAINDIV_L3SPCLK +CONFIG_HPS_MAINPLLGRP_MAINDIV_L4MPCLK +CONFIG_HPS_MAINPLLGRP_MAINDIV_L4SPCLK +CONFIG_HPS_MAINPLLGRP_MAINNANDSDMMCCLK_CNT +CONFIG_HPS_MAINPLLGRP_MAINQSPICLK_CNT +CONFIG_HPS_MAINPLLGRP_MPUCLK_CNT +CONFIG_HPS_MAINPLLGRP_TRACEDIV_TRACECLK +CONFIG_HPS_MAINPLLGRP_VCO_DENOM +CONFIG_HPS_MAINPLLGRP_VCO_NUMER +CONFIG_HPS_PERPLLGRP_DIV_CAN0CLK +CONFIG_HPS_PERPLLGRP_DIV_CAN1CLK +CONFIG_HPS_PERPLLGRP_DIV_SPIMCLK +CONFIG_HPS_PERPLLGRP_DIV_USBCLK +CONFIG_HPS_PERPLLGRP_EMAC0CLK_CNT +CONFIG_HPS_PERPLLGRP_EMAC1CLK_CNT +CONFIG_HPS_PERPLLGRP_GPIODIV_GPIODBCLK +CONFIG_HPS_PERPLLGRP_PERBASECLK_CNT +CONFIG_HPS_PERPLLGRP_PERNANDSDMMCCLK_CNT +CONFIG_HPS_PERPLLGRP_PERQSPICLK_CNT +CONFIG_HPS_PERPLLGRP_S2FUSER1CLK_CNT +CONFIG_HPS_PERPLLGRP_SRC_NAND +CONFIG_HPS_PERPLLGRP_SRC_QSPI +CONFIG_HPS_PERPLLGRP_SRC_SDMMC +CONFIG_HPS_PERPLLGRP_VCO_DENOM +CONFIG_HPS_PERPLLGRP_VCO_NUMER +CONFIG_HPS_PERPLLGRP_VCO_PSRC +CONFIG_HPS_SDRPLLGRP_DDR2XDQSCLK_CNT +CONFIG_HPS_SDRPLLGRP_DDR2XDQSCLK_PHASE +CONFIG_HPS_SDRPLLGRP_DDRDQCLK_CNT +CONFIG_HPS_SDRPLLGRP_DDRDQCLK_PHASE +CONFIG_HPS_SDRPLLGRP_DDRDQSCLK_CNT +CONFIG_HPS_SDRPLLGRP_DDRDQSCLK_PHASE +CONFIG_HPS_SDRPLLGRP_S2FUSER2CLK_CNT +CONFIG_HPS_SDRPLLGRP_S2FUSER2CLK_PHASE +CONFIG_HPS_SDRPLLGRP_VCO_DENOM +CONFIG_HPS_SDRPLLGRP_VCO_NUMER +CONFIG_HPS_SDRPLLGRP_VCO_SSRC +CONFIG_HPS_SDR_CTRLCFG_CPORTRDWR_CPORTRDWR +CONFIG_HPS_SDR_CTRLCFG_CPORTRMAP_CPORTRMAP +CONFIG_HPS_SDR_CTRLCFG_CPORTWIDTH_CPORTWIDTH +CONFIG_HPS_SDR_CTRLCFG_CPORTWMAP_CPORTWMAP +CONFIG_HPS_SDR_CTRLCFG_CTRLCFG_ADDRORDER +CONFIG_HPS_SDR_CTRLCFG_CTRLCFG_DQSTRKEN +CONFIG_HPS_SDR_CTRLCFG_CTRLCFG_ECCCORREN +CONFIG_HPS_SDR_CTRLCFG_CTRLCFG_ECCEN +CONFIG_HPS_SDR_CTRLCFG_CTRLCFG_MEMBL +CONFIG_HPS_SDR_CTRLCFG_CTRLCFG_MEMTYPE +CONFIG_HPS_SDR_CTRLCFG_CTRLCFG_NODMPINS +CONFIG_HPS_SDR_CTRLCFG_CTRLCFG_REORDEREN +CONFIG_HPS_SDR_CTRLCFG_CTRLCFG_STARVELIMIT +CONFIG_HPS_SDR_CTRLCFG_CTRLWIDTH_CTRLWIDTH +CONFIG_HPS_SDR_CTRLCFG_DRAMADDRW_BANKBITS +CONFIG_HPS_SDR_CTRLCFG_DRAMADDRW_COLBITS +CONFIG_HPS_SDR_CTRLCFG_DRAMADDRW_CSBITS +CONFIG_HPS_SDR_CTRLCFG_DRAMADDRW_ROWBITS +CONFIG_HPS_SDR_CTRLCFG_DRAMDEVWIDTH_DEVWIDTH +CONFIG_HPS_SDR_CTRLCFG_DRAMIFWIDTH_IFWIDTH +CONFIG_HPS_SDR_CTRLCFG_DRAMINTR_INTREN +CONFIG_HPS_SDR_CTRLCFG_DRAMODT_READ +CONFIG_HPS_SDR_CTRLCFG_DRAMODT_WRITE +CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING1_AL +CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING1_TCL +CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING1_TCWL +CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING1_TFAW +CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING1_TRFC +CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING1_TRRD +CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING2_IF_TRCD +CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING2_IF_TREFI +CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING2_IF_TRP +CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING2_IF_TWR +CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING2_IF_TWTR +CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING3_TCCD +CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING3_TMRD +CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING3_TRAS +CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING3_TRC +CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING3_TRTP +CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING4_PWRDOWNEXIT +CONFIG_HPS_SDR_CTRLCFG_DRAMTIMING4_SELFRFSHEXIT +CONFIG_HPS_SDR_CTRLCFG_FIFOCFG_INCSYNC +CONFIG_HPS_SDR_CTRLCFG_FIFOCFG_SYNCMODE +CONFIG_HPS_SDR_CTRLCFG_FPGAPORTRST +CONFIG_HPS_SDR_CTRLCFG_FPGAPORTRST_COMMAND_PORT_USED +CONFIG_HPS_SDR_CTRLCFG_FPGAPORTRST_READ_PORT_USED +CONFIG_HPS_SDR_CTRLCFG_FPGAPORTRST_WRITE_PORT_USED +CONFIG_HPS_SDR_CTRLCFG_LOWPWREQ_SELFRFSHMASK +CONFIG_HPS_SDR_CTRLCFG_LOWPWRTIMING_AUTOPDCYCLES +CONFIG_HPS_SDR_CTRLCFG_LOWPWRTIMING_CLKDISABLECYCLES +CONFIG_HPS_SDR_CTRLCFG_MPPACING_0_THRESHOLD1_31_0 +CONFIG_HPS_SDR_CTRLCFG_MPPACING_1_THRESHOLD1_59_32 +CONFIG_HPS_SDR_CTRLCFG_MPPACING_1_THRESHOLD2_3_0 +CONFIG_HPS_SDR_CTRLCFG_MPPACING_2_THRESHOLD2_35_4 +CONFIG_HPS_SDR_CTRLCFG_MPPACING_3_THRESHOLD2_59_36 +CONFIG_HPS_SDR_CTRLCFG_MPPRIORITY_USERPRIORITY +CONFIG_HPS_SDR_CTRLCFG_MPTHRESHOLDRST_0_THRESHOLDRSTCYCLES_31_0 +CONFIG_HPS_SDR_CTRLCFG_MPTHRESHOLDRST_1_THRESHOLDRSTCYCLES_63_32 +CONFIG_HPS_SDR_CTRLCFG_MPTHRESHOLDRST_2_THRESHOLDRSTCYCLES_79_64 +CONFIG_HPS_SDR_CTRLCFG_MPWIEIGHT_0_STATICWEIGHT_31_0 +CONFIG_HPS_SDR_CTRLCFG_MPWIEIGHT_1_STATICWEIGHT_49_32 +CONFIG_HPS_SDR_CTRLCFG_MPWIEIGHT_1_SUMOFWEIGHT_13_0 +CONFIG_HPS_SDR_CTRLCFG_MPWIEIGHT_2_SUMOFWEIGHT_45_14 +CONFIG_HPS_SDR_CTRLCFG_MPWIEIGHT_3_SUMOFWEIGHT_63_46 +CONFIG_HPS_SDR_CTRLCFG_PHYCTRL_PHYCTRL_0 +CONFIG_HPS_SDR_CTRLCFG_PORTCFG_AUTOPCHEN +CONFIG_HPS_SDR_CTRLCFG_RFIFOCMAP_RFIFOCMAP +CONFIG_HPS_SDR_CTRLCFG_STATICCFG_MEMBL +CONFIG_HPS_SDR_CTRLCFG_STATICCFG_USEECCASDATA +CONFIG_HPS_SDR_CTRLCFG_WFIFOCMAP_WFIFOCMAP +CONFIG_HP_CLK_FREQ +CONFIG_HRCON +CONFIG_HRCON_DH +CONFIG_HRCON_FANS +CONFIG_HSMMC2_8BIT +CONFIG_HUSH_INIT_VAR +CONFIG_HVBOOT +CONFIG_HWCONFIG +CONFIG_HW_ENV_SETTINGS +CONFIG_HW_WATCHDOG +CONFIG_HW_WATCHDOG_TIMEOUT_INITCODE +CONFIG_HW_WATCHDOG_TIMEOUT_MS +CONFIG_I2C +CONFIG_I2CFAST +CONFIG_I2C_CHIPADDRESS +CONFIG_I2C_CMD_TREE +CONFIG_I2C_ENV_EEPROM_BUS +CONFIG_I2C_FPGA +CONFIG_I2C_GSC +CONFIG_I2C_MAC_OFFSET +CONFIG_I2C_MBB_TIMEOUT +CONFIG_I2C_MULTI_BUS +CONFIG_I2C_MV +CONFIG_I2C_MVTWSI +CONFIG_I2C_MVTWSI_BASE +CONFIG_I2C_MVTWSI_BASE0 +CONFIG_I2C_MVTWSI_BASE1 +CONFIG_I2C_MVTWSI_BASE2 +CONFIG_I2C_MVTWSI_BASE3 +CONFIG_I2C_MVTWSI_BASE4 +CONFIG_I2C_MVTWSI_BASE5 +CONFIG_I2C_MXC +CONFIG_I2C_PMIC +CONFIG_I2C_REPEATED_START +CONFIG_I2C_RTC_ADDR +CONFIG_I2C_TIMEOUT +CONFIG_IBM_EMAC4_V4 +CONFIG_ICACHE +CONFIG_ICACHE_OFF +CONFIG_ICON +CONFIG_ICS307_REFCLK_HZ +CONFIG_IDENT_STRING +CONFIG_IDE_8xx_DIRECT +CONFIG_IDE_8xx_PCCARD +CONFIG_IDE_INIT_POSTRESET +CONFIG_IDE_LED +CONFIG_IDE_PCMCIA +CONFIG_IDE_PREINIT +CONFIG_IDE_REG_CS +CONFIG_IDE_RESET +CONFIG_IDE_RESET_ROUTINE +CONFIG_IDE_SIL680 +CONFIG_IDE_SWAP_IO +CONFIG_IDS8313 +CONFIG_IDT8T49N222A +CONFIG_ID_EEPROM +CONFIG_IFM_DEFAULT_ENV_NEW +CONFIG_IFM_DEFAULT_ENV_OLD +CONFIG_IFM_DEFAULT_ENV_SETTINGS +CONFIG_IFM_SENSOR_TYPE +CONFIG_IMA +CONFIG_IMAGE_FORMAT_LEGACY +CONFIG_IMX +CONFIG_IMX31_PHYCORE_EET +CONFIG_IMX6_PWM_PER_CLK +CONFIG_IMX_HDMI +CONFIG_IMX_NAND +CONFIG_IMX_OTP +CONFIG_IMX_THERMAL +CONFIG_IMX_VIDEO_SKIP +CONFIG_IMX_WATCHDOG +CONFIG_INETSPACE_V2 +CONFIG_INITRD_TAG +CONFIG_INIT_CRITICAL +CONFIG_INIT_IGNORE_ERROR +CONFIG_INIT_TLB +CONFIG_INI_ALLOW_MULTILINE +CONFIG_INI_CASE_INSENSITIVE +CONFIG_INI_MAX_LINE +CONFIG_INI_MAX_NAME +CONFIG_INI_MAX_SECTION +CONFIG_INKA4X0 +CONFIG_INTEGRITY +CONFIG_INTEL_ICH6_GPIO +CONFIG_INTERRUPTS +CONFIG_INTIB +CONFIG_IO +CONFIG_IO64 +CONFIG_IOCON +CONFIG_IODELAY_RECALIBRATION +CONFIG_IOMUX_LPSR +CONFIG_IOMUX_SHARE_CONF_REG +CONFIG_IOS +CONFIG_IO_TRACE +CONFIG_IP86x +CONFIG_IPADDR +CONFIG_IPADDR1 +CONFIG_IPADDR2 +CONFIG_IPAM390_GPIO_BOOTMODE +CONFIG_IPAM390_GPIO_LED_GREEN +CONFIG_IPAM390_GPIO_LED_RED +CONFIG_IPEK01 +CONFIG_IPIPE +CONFIG_IPROC +CONFIG_IPUV3_CLK +CONFIG_IP_DEFRAG +CONFIG_IRAM_BASE +CONFIG_IRAM_END +CONFIG_IRAM_SIZE +CONFIG_IRAM_STACK +CONFIG_IRAM_TOP +CONFIG_IRDA_BASE +CONFIG_ISO_PARTITION +CONFIG_ISP1362_USB +CONFIG_IS_ +CONFIG_IS_BUILTIN +CONFIG_IS_ENABLED +CONFIG_IS_INVALID +CONFIG_IS_MODULE +CONFIG_IS_VALID +CONFIG_IVMS8 +CONFIG_JFFS2_CMDLINE +CONFIG_JFFS2_DEV +CONFIG_JFFS2_LZO +CONFIG_JFFS2_NAND +CONFIG_JFFS2_PART_OFFSET +CONFIG_JFFS2_PART_SIZE +CONFIG_JFFS2_SUMMARY +CONFIG_JRSTARTR_JR0 +CONFIG_JTAG_CONSOLE +CONFIG_JTAG_CONSOLE_TIMEOUT +CONFIG_JUPITER +CONFIG_K2E_EVM +CONFIG_K2G_EVM +CONFIG_K2HK_EVM +CONFIG_K2L_EVM +CONFIG_KALLSYMS +CONFIG_KASAN +CONFIG_KATMAI +CONFIG_KCLK_DIS +CONFIG_KEEP_SERVERADDR +CONFIG_KERNEL_OFFSET +CONFIG_KEYBOARD +CONFIG_KEYSTONE_NAND_MAX_RBL_PAGE +CONFIG_KEYSTONE_NAND_MAX_RBL_SIZE +CONFIG_KEYSTONE_RBL_NAND +CONFIG_KEY_REVOCATION +CONFIG_KGDB_BAUDRATE +CONFIG_KGDB_EXTC_PINSEL +CONFIG_KGDB_EXTC_RATE +CONFIG_KGDB_INDEX +CONFIG_KGDB_ON_SCC +CONFIG_KGDB_ON_SMC +CONFIG_KGDB_SER_INDEX +CONFIG_KILAUEA +CONFIG_KIRKWOOD_EGIGA_INIT +CONFIG_KIRKWOOD_GPIO +CONFIG_KIRKWOOD_PCIE_INIT +CONFIG_KIRKWOOD_RGMII_PAD_1V8 +CONFIG_KIRKWOOD_SPI +CONFIG_KIRQ_EN +CONFIG_KM8321 +CONFIG_KM8XX +CONFIG_KMCOGE4 +CONFIG_KMCOGE5NE +CONFIG_KMETER1 +CONFIG_KMLION1 +CONFIG_KMOPTI2 +CONFIG_KMP204X +CONFIG_KMSUPX5 +CONFIG_KMTEGR1 +CONFIG_KMTEPR2 +CONFIG_KMVECT1 +CONFIG_KM_82XX +CONFIG_KM_BOARD_EXTRA_ENV +CONFIG_KM_BOARD_NAME +CONFIG_KM_COGE5UN +CONFIG_KM_COMMON_ETH_INIT +CONFIG_KM_CONSOLE_TTY +CONFIG_KM_CRAMFS_ADDR +CONFIG_KM_DEF_ARCH +CONFIG_KM_DEF_BOOT_ARGS_CPU +CONFIG_KM_DEF_ENV +CONFIG_KM_DEF_ENV_BOOTARGS +CONFIG_KM_DEF_ENV_BOOTPARAMS +CONFIG_KM_DEF_ENV_BOOTTARGETS +CONFIG_KM_DEF_ENV_CONSTANTS +CONFIG_KM_DEF_ENV_CPU +CONFIG_KM_DEF_ENV_FLASH_BOOT +CONFIG_KM_DEF_NETDEV +CONFIG_KM_DEV_ENV_FLASH_BOOT_UBI +CONFIG_KM_DISABLE_PCI +CONFIG_KM_DISABLE_PCIE +CONFIG_KM_ECC_MODE +CONFIG_KM_ENV_IS_IN_SPI_NOR +CONFIG_KM_FDT_ADDR +CONFIG_KM_FPGA_CONFIG +CONFIG_KM_I2C_ABORT +CONFIG_KM_IVM_BUS +CONFIG_KM_KERNEL_ADDR +CONFIG_KM_KIRKWOOD +CONFIG_KM_KIRKWOOD_128M16 +CONFIG_KM_KIRKWOOD_PCI +CONFIG_KM_MGCOGE3UN +CONFIG_KM_MVEXTSW_ADDR +CONFIG_KM_NEW_ENV +CONFIG_KM_NUSA +CONFIG_KM_PHRAM +CONFIG_KM_PIGGY4_88E6061 +CONFIG_KM_PIGGY4_88E6352 +CONFIG_KM_PNVRAM +CONFIG_KM_PORTL2 +CONFIG_KM_RESERVED_PRAM +CONFIG_KM_ROOTFSSIZE +CONFIG_KM_SUGP1 +CONFIG_KM_SUV31 +CONFIG_KM_UBI_LINUX_MTD +CONFIG_KM_UBI_PARTITION_NAME_APP +CONFIG_KM_UBI_PARTITION_NAME_BOOT +CONFIG_KM_UBI_PART_BOOT_OPTS +CONFIG_KM_UIMAGE_NAME +CONFIG_KM_UPDATE_UBOOT +CONFIG_KONA +CONFIG_KONA_GPIO +CONFIG_KONA_RESET_S +CONFIG_KONA_SDHCI +CONFIG_KPROBES +CONFIG_KS8851_MLL +CONFIG_KS8851_MLL_BASEADDR +CONFIG_KSNAV_NETCP_PDMA_CTRL_BASE +CONFIG_KSNAV_NETCP_PDMA_RX_BASE +CONFIG_KSNAV_NETCP_PDMA_RX_CH_NUM +CONFIG_KSNAV_NETCP_PDMA_RX_FLOW_BASE +CONFIG_KSNAV_NETCP_PDMA_RX_FLOW_NUM +CONFIG_KSNAV_NETCP_PDMA_RX_FREE_QUEUE +CONFIG_KSNAV_NETCP_PDMA_RX_RCV_QUEUE +CONFIG_KSNAV_NETCP_PDMA_SCHED_BASE +CONFIG_KSNAV_NETCP_PDMA_TX_BASE +CONFIG_KSNAV_NETCP_PDMA_TX_CH_NUM +CONFIG_KSNAV_NETCP_PDMA_TX_SND_QUEUE +CONFIG_KSNAV_PKTDMA_NETCP +CONFIG_KSNAV_QM_BASE_ADDRESS +CONFIG_KSNAV_QM_CONF_BASE +CONFIG_KSNAV_QM_DESC_SETUP_BASE +CONFIG_KSNAV_QM_INTD_CONF_BASE +CONFIG_KSNAV_QM_LINK_RAM_BASE +CONFIG_KSNAV_QM_MANAGER_QUEUES_BASE +CONFIG_KSNAV_QM_MANAGER_Q_PROXY_BASE +CONFIG_KSNAV_QM_PDSP1_CMD_BASE +CONFIG_KSNAV_QM_PDSP1_CTRL_BASE +CONFIG_KSNAV_QM_PDSP1_IRAM_BASE +CONFIG_KSNAV_QM_QPOOL_NUM +CONFIG_KSNAV_QM_QUEUE_STATUS_BASE +CONFIG_KSNAV_QM_REGION_NUM +CONFIG_KSNAV_QM_STATUS_RAM_BASE +CONFIG_KSNET_CPSW_NUM_PORTS +CONFIG_KSNET_MAC_ID_BASE +CONFIG_KSNET_MDIO_PHY_CONFIG_ENABLE +CONFIG_KSNET_NETCP_BASE +CONFIG_KSNET_NETCP_V1_0 +CONFIG_KSNET_NETCP_V1_5 +CONFIG_KSNET_SERDES_LANES_PER_SGMII +CONFIG_KSNET_SERDES_SGMII2_BASE +CONFIG_KSNET_SERDES_SGMII_BASE +CONFIG_KVM_GUEST +CONFIG_KW88F6192 +CONFIG_KW88F6281 +CONFIG_KW88F6702 +CONFIG_KYOCERA_KCS057QV1AJ +CONFIG_KZM_A9_GT +CONFIG_L1_INIT_RAM +CONFIG_L2_CACHE +CONFIG_LAN91C96_USE_32_BIT +CONFIG_LAST_STAGE_INIT +CONFIG_LAYERSCAPE_NS_ACCESS +CONFIG_LBA48 +CONFIG_LBD +CONFIG_LBDAF +CONFIG_LCD +CONFIG_LCD_ALIGNMENT +CONFIG_LCD_BMP_RLE8 +CONFIG_LCD_DT_SIMPLEFB +CONFIG_LCD_INFO +CONFIG_LCD_INFO_BELOW_LOGO +CONFIG_LCD_IN_PSRAM +CONFIG_LCD_LOGO +CONFIG_LCD_MENU +CONFIG_LCD_MENU_BOARD +CONFIG_LCD_NOSTDOUT +CONFIG_LCD_ROTATION +CONFIG_LD9040 +CONFIG_LEGACY +CONFIG_LEGACY_BOOTCMD_ENV +CONFIG_LEON_RAM_SDRAM +CONFIG_LEON_RAM_SDRAM_NOSRAM +CONFIG_LEON_RAM_SELECT +CONFIG_LEON_RAM_SRAM +CONFIG_LG4573 +CONFIG_LG4573_BUS +CONFIG_LG4573_CS +CONFIG_LIBATA +CONFIG_LIB_HW_RAND +CONFIG_LIB_UUID +CONFIG_LINUX +CONFIG_LINUX_CMDLINE_ADDR +CONFIG_LINUX_CMDLINE_SIZE +CONFIG_LINUX_RESET_VEC +CONFIG_LITTLETON_LCD +CONFIG_LMB +CONFIG_LMS283GF05 +CONFIG_LOADADDR +CONFIG_LOADCMD +CONFIG_LOADS_ECHO +CONFIG_LOGBUFFER +CONFIG_LOWBOOT +CONFIG_LOWPOWER_ADDR +CONFIG_LOWPOWER_FLAG +CONFIG_LOW_MCFCLK +CONFIG_LPC32XX_ETH +CONFIG_LPC32XX_ETH_BUFS_BASE +CONFIG_LPC32XX_HSUART +CONFIG_LPC32XX_NAND_MLC_BUSY_DELAY +CONFIG_LPC32XX_NAND_MLC_NAND_TA +CONFIG_LPC32XX_NAND_MLC_RD_HIGH +CONFIG_LPC32XX_NAND_MLC_RD_LOW +CONFIG_LPC32XX_NAND_MLC_TCEA_DELAY +CONFIG_LPC32XX_NAND_MLC_WR_HIGH +CONFIG_LPC32XX_NAND_MLC_WR_LOW +CONFIG_LPC32XX_NAND_SLC_RDR_CLKS +CONFIG_LPC32XX_NAND_SLC_RHOLD +CONFIG_LPC32XX_NAND_SLC_RSETUP +CONFIG_LPC32XX_NAND_SLC_RWIDTH +CONFIG_LPC32XX_NAND_SLC_WDR_CLKS +CONFIG_LPC32XX_NAND_SLC_WHOLD +CONFIG_LPC32XX_NAND_SLC_WSETUP +CONFIG_LPC32XX_NAND_SLC_WWIDTH +CONFIG_LPC32XX_SDRAM_ +CONFIG_LPC32XX_SPL +CONFIG_LPC32XX_SSP +CONFIG_LPC32XX_SSP_TIMEOUT +CONFIG_LPC_BASE +CONFIG_LPC_IO_BASE +CONFIG_LPUART +CONFIG_LPUART_32B_REG +CONFIG_LQ035Q1_LCD_MODE +CONFIG_LQ035Q1_SPI_BUS +CONFIG_LQ035Q1_SPI_CS +CONFIG_LQ035Q1_USE_RGB565_8_BIT_PPI +CONFIG_LQ035Q1_USE_RGB888_8_BIT_PPI +CONFIG_LQ038J7DH53 +CONFIG_LS1012A +CONFIG_LS102XA +CONFIG_LS102XA_STREAM_ID +CONFIG_LS1043A +CONFIG_LS2080A +CONFIG_LSCHLV2 +CONFIG_LSXHL +CONFIG_LUAN +CONFIG_LWMON5 +CONFIG_LXT971_NO_SLEEP +CONFIG_LYNXKDI +CONFIG_LZMA +CONFIG_LZO +CONFIG_M41T94_SPI_CS +CONFIG_M520x +CONFIG_M52277EVB +CONFIG_M5253DEMO +CONFIG_M5253EVBE +CONFIG_M5275EVB +CONFIG_M5301x +CONFIG_M54418TWR +CONFIG_M54451EVB +CONFIG_M54455EVB +CONFIG_M88E1111_DISABLE_FIBER +CONFIG_M88E1111_PHY +CONFIG_M88E1112_PHY +CONFIG_M88E1141_PHY +CONFIG_MACB +CONFIG_MACB0_PHY +CONFIG_MACB1_PHY +CONFIG_MACB2_PHY +CONFIG_MACB3_PHY +CONFIG_MACB_SEARCH_PHY +CONFIG_MACH_A0 +CONFIG_MACH_A2F +CONFIG_MACH_ABACUS +CONFIG_MACH_ABB_GMA_1_1 +CONFIG_MACH_ABILENE +CONFIG_MACH_ABLE +CONFIG_MACH_ACER_A5 +CONFIG_MACH_ACER_A8 +CONFIG_MACH_ACER_GAUGUIN +CONFIG_MACH_ACER_MAYA +CONFIG_MACH_ACMENETUSFOXG20 +CONFIG_MACH_ACMEROVER1 +CONFIG_MACH_ACRO37XBRD +CONFIG_MACH_ACS5K +CONFIG_MACH_ACSX106 +CONFIG_MACH_ADSSPHERE +CONFIG_MACH_AEBL +CONFIG_MACH_AF4000 +CONFIG_MACH_AFEB9260 +CONFIG_MACH_AG11005 +CONFIG_MACH_AG5EVM +CONFIG_MACH_AKITA +CONFIG_MACH_AMK_A4 +CONFIG_MACH_AML_M5900 +CONFIG_MACH_AMS_DELTA +CONFIG_MACH_ANCHOVY +CONFIG_MACH_ANTARES +CONFIG_MACH_ANTERO +CONFIG_MACH_ANUBIS +CONFIG_MACH_ANW6410 +CONFIG_MACH_AP4EVB +CONFIG_MACH_APALIS_T30 +CONFIG_MACH_APP3K_ROBIN +CONFIG_MACH_AQUARIUS +CONFIG_MACH_AQUILA +CONFIG_MACH_ARCOM_VULCAN +CONFIG_MACH_ARCOM_ZEUS +CONFIG_MACH_ARK9431 +CONFIG_MACH_ARMADA_XP_DB +CONFIG_MACH_ARMADILLO460 +CONFIG_MACH_ARMADILLO5X0 +CONFIG_MACH_ARMADILLO800EVA +CONFIG_MACH_ARMCORE +CONFIG_MACH_ARMLEX4210 +CONFIG_MACH_ARMLGUEST +CONFIG_MACH_AROWANA +CONFIG_MACH_ARTHUR +CONFIG_MACH_ARUBA +CONFIG_MACH_AS1167 +CONFIG_MACH_ASL_PHOENIX +CONFIG_MACH_ASPEN +CONFIG_MACH_ASPENITE +CONFIG_MACH_AST2200 +CONFIG_MACH_AT2440EVB +CONFIG_MACH_AT572D940HFEB +CONFIG_MACH_AT91CAP7STK +CONFIG_MACH_AT91CAP7XDK +CONFIG_MACH_AT91CAP9ADK +CONFIG_MACH_AT91EB01 +CONFIG_MACH_AT91RM9200EK +CONFIG_MACH_AT91SAM9260EK +CONFIG_MACH_AT91SAM9261EK +CONFIG_MACH_AT91SAM9263DESK16L +CONFIG_MACH_AT91SAM9263EK +CONFIG_MACH_AT91SAM9263OTLITE +CONFIG_MACH_AT91SAM9G10EK +CONFIG_MACH_AT91SAM9G20EK +CONFIG_MACH_AT91SAM9G20EK_2MMC +CONFIG_MACH_AT91SAM9G45EKES +CONFIG_MACH_AT91SAM9M10G45EK +CONFIG_MACH_AT91SAM9RLEK +CONFIG_MACH_AT91SAM9X5EK +CONFIG_MACH_ATDGP318 +CONFIG_MACH_ATEB9200 +CONFIG_MACH_ATHENE +CONFIG_MACH_ATLAS5_C1 +CONFIG_MACH_AUTOBOT +CONFIG_MACH_AVENGERS_LITE +CONFIG_MACH_AVILA +CONFIG_MACH_AWM2 +CONFIG_MACH_AX502 +CONFIG_MACH_AX8008 +CONFIG_MACH_B5500 +CONFIG_MACH_BASI +CONFIG_MACH_BCM2708 +CONFIG_MACH_BCM589X +CONFIG_MACH_BCMHANA_SV +CONFIG_MACH_BCMHANA_TABLET +CONFIG_MACH_BCMRING +CONFIG_MACH_BEECT +CONFIG_MACH_BIGDISK +CONFIG_MACH_BIO3K +CONFIG_MACH_BIPNET +CONFIG_MACH_BLISS +CONFIG_MACH_BLISSC +CONFIG_MACH_BLUECHEESE +CONFIG_MACH_BLUEPOINT +CONFIG_MACH_BLUESHARK +CONFIG_MACH_BOCKW +CONFIG_MACH_BONAIRE +CONFIG_MACH_BORABORA +CONFIG_MACH_BORZOI +CONFIG_MACH_BROWNSTONE +CONFIG_MACH_BSTBRD +CONFIG_MACH_BTMAVB101 +CONFIG_MACH_BTMAWB101 +CONFIG_MACH_BUBBA3 +CONFIG_MACH_BUG +CONFIG_MACH_BUG20 +CONFIG_MACH_BURY_BL7582 +CONFIG_MACH_BURY_BPS5270 +CONFIG_MACH_BV07 +CONFIG_MACH_C2MMI +CONFIG_MACH_CALLISTO +CONFIG_MACH_CAM60 +CONFIG_MACH_CAPC7117 +CONFIG_MACH_CARDHU +CONFIG_MACH_CARMEVA +CONFIG_MACH_CAYENNE +CONFIG_MACH_CC9P9360DEV +CONFIG_MACH_CC9P9360JS +CONFIG_MACH_CCMX53 +CONFIG_MACH_CCMX53JS +CONFIG_MACH_CCWMX51MUT +CONFIG_MACH_CCWMX53 +CONFIG_MACH_CCWMX53JS +CONFIG_MACH_CENTRO +CONFIG_MACH_CETUS9263 +CONFIG_MACH_CHACHA +CONFIG_MACH_CHALTEN_XA1 +CONFIG_MACH_CHARON +CONFIG_MACH_CLOD +CONFIG_MACH_CM4745 +CONFIG_MACH_CM_A510 +CONFIG_MACH_CM_T35 +CONFIG_MACH_CM_T3517 +CONFIG_MACH_CM_T3730 +CONFIG_MACH_CM_X300 +CONFIG_MACH_CNS2133EVB +CONFIG_MACH_CNS21XX +CONFIG_MACH_CNS3420VB +CONFIG_MACH_COBRAL138 +CONFIG_MACH_COCONUT +CONFIG_MACH_COLIBRI +CONFIG_MACH_COLIBRI300 +CONFIG_MACH_COLIBRI320 +CONFIG_MACH_COLIBRI_T20 +CONFIG_MACH_COLIBRI_T30 +CONFIG_MACH_CONTROLTEK9G20 +CONFIG_MACH_CORETEC_VCX7400 +CONFIG_MACH_CORGI +CONFIG_MACH_CPUAT9G20 +CONFIG_MACH_CPX2 +CONFIG_MACH_CRANEBOARD +CONFIG_MACH_CRUX +CONFIG_MACH_CSB337 +CONFIG_MACH_CSB637 +CONFIG_MACH_CSB726 +CONFIG_MACH_CSC +CONFIG_MACH_CTBU_GEN2 +CONFIG_MACH_CTERA_PLUG_C2 +CONFIG_MACH_CURACAO +CONFIG_MACH_CV2201 +CONFIG_MACH_CV2202 +CONFIG_MACH_CV2203 +CONFIG_MACH_CWAM1808 +CONFIG_MACH_CWDM365 +CONFIG_MACH_CWME9210 +CONFIG_MACH_CWME9210JS +CONFIG_MACH_CWMX233 +CONFIG_MACH_D2NET +CONFIG_MACH_D2NET_V2 +CONFIG_MACH_D2PLUG +CONFIG_MACH_DA850_K5 +CONFIG_MACH_DAINTREE_CWAC +CONFIG_MACH_DATAWAY +CONFIG_MACH_DAVINCI_CALIMAIN +CONFIG_MACH_DAVINCI_DA830_EVM +CONFIG_MACH_DAVINCI_DA850_EVM +CONFIG_MACH_DAVINCI_DM355_EVM +CONFIG_MACH_DAVINCI_DM355_MMM +CONFIG_MACH_DAVINCI_DM365_BV +CONFIG_MACH_DAVINCI_DM365_DVR +CONFIG_MACH_DAVINCI_DM365_EVM +CONFIG_MACH_DAVINCI_DM6467TEVM +CONFIG_MACH_DAVINCI_DM6467_EVM +CONFIG_MACH_DAVINCI_EVM +CONFIG_MACH_DAVINCI_PICTO +CONFIG_MACH_DAWAD7 +CONFIG_MACH_DB78X00_BP +CONFIG_MACH_DB88F5281 +CONFIG_MACH_DB88F6281_BP +CONFIG_MACH_DDNAS +CONFIG_MACH_DDPLUG +CONFIG_MACH_DDS +CONFIG_MACH_DEEP_R_EK_1 +CONFIG_MACH_DEVIXP +CONFIG_MACH_DEVKIT8000 +CONFIG_MACH_DGM3240 +CONFIG_MACH_DIMMSAM9G20 +CONFIG_MACH_DIMM_IMX28 +CONFIG_MACH_DIMM_MX257 +CONFIG_MACH_DINGO +CONFIG_MACH_DIR665 +CONFIG_MACH_DM355_LEOPARD +CONFIG_MACH_DM365_CV100 +CONFIG_MACH_DM368_LEOPARD +CONFIG_MACH_DM3730_SOM_LV +CONFIG_MACH_DM3730_TORPEDO +CONFIG_MACH_DM6441_ESP +CONFIG_MACH_DM6446_ADBOX +CONFIG_MACH_DMA6410 +CONFIG_MACH_DMA_THUNDERBUG +CONFIG_MACH_DMW96 +CONFIG_MACH_DNS323 +CONFIG_MACH_DOCKSTAR +CONFIG_MACH_DOORBOY +CONFIG_MACH_DOUBLESHOT +CONFIG_MACH_DOVE_AVNG_V3 +CONFIG_MACH_DOVE_DB +CONFIG_MACH_DP6XX +CONFIG_MACH_DRAGONET +CONFIG_MACH_DSM320 +CONFIG_MACH_DSMG600 +CONFIG_MACH_DURIAN +CONFIG_MACH_DYNASTY +CONFIG_MACH_E10 +CONFIG_MACH_E330 +CONFIG_MACH_E350 +CONFIG_MACH_E400 +CONFIG_MACH_E740 +CONFIG_MACH_E750 +CONFIG_MACH_E800 +CONFIG_MACH_EA20 +CONFIG_MACH_EA2478DEVKIT +CONFIG_MACH_EAG_CI4000 +CONFIG_MACH_EASYCRRH +CONFIG_MACH_EC4350SDB +CONFIG_MACH_EC4350TBM +CONFIG_MACH_ECBAT91 +CONFIG_MACH_ECO920 +CONFIG_MACH_ECUV5 +CONFIG_MACH_EDB9301 +CONFIG_MACH_EDB9302 +CONFIG_MACH_EDB9302A +CONFIG_MACH_EDB9307 +CONFIG_MACH_EDB9307A +CONFIG_MACH_EDB9312 +CONFIG_MACH_EDB9315 +CONFIG_MACH_EDB9315A +CONFIG_MACH_EDISON +CONFIG_MACH_EDMINIV2 +CONFIG_MACH_EDMINI_V2 +CONFIG_MACH_EELX2 +CONFIG_MACH_EIGEN_TTR +CONFIG_MACH_ELEPHANT +CONFIG_MACH_ELKE +CONFIG_MACH_ELOG +CONFIG_MACH_EM1SY +CONFIG_MACH_EM7210 +CONFIG_MACH_EMERALD +CONFIG_MACH_EM_X270 +CONFIG_MACH_ENCORE +CONFIG_MACH_ENDIAN_MINI +CONFIG_MACH_EP80219 +CONFIG_MACH_EPC10 +CONFIG_MACH_EPIPHAN +CONFIG_MACH_ES2440 +CONFIG_MACH_ESATA_SHEEVAPLUG +CONFIG_MACH_ESL_MOBILIS_A +CONFIG_MACH_ESL_MOBILIS_B +CONFIG_MACH_ESL_WAVE_A +CONFIG_MACH_ESL_WAVE_B +CONFIG_MACH_ESPRESSO +CONFIG_MACH_ETHERPRO_ISP +CONFIG_MACH_ETNA +CONFIG_MACH_EUKREA_CPUIMX25SD +CONFIG_MACH_EUKREA_CPUIMX35SD +CONFIG_MACH_EUKREA_CPUIMX51 +CONFIG_MACH_EUKREA_CPUIMX51SD +CONFIG_MACH_EVA2000 +CONFIG_MACH_EVSY +CONFIG_MACH_EXEDA +CONFIG_MACH_EXPRESS +CONFIG_MACH_EXPRESSCT +CONFIG_MACH_EXPRESSH +CONFIG_MACH_EXPRESS_KT +CONFIG_MACH_EZX_A1200 +CONFIG_MACH_EZX_A780 +CONFIG_MACH_EZX_A910 +CONFIG_MACH_EZX_E2 +CONFIG_MACH_EZX_E6 +CONFIG_MACH_EZX_E680 +CONFIG_MACH_FA9X27 +CONFIG_MACH_FFCORE +CONFIG_MACH_FLEXIBITY +CONFIG_MACH_FLINT +CONFIG_MACH_FLYER +CONFIG_MACH_FRISMS +CONFIG_MACH_FRRHWCDMA60W +CONFIG_MACH_FSG +CONFIG_MACH_FSM9XXX_FFA +CONFIG_MACH_FSM9XXX_SURF +CONFIG_MACH_FS_S5PC100 +CONFIG_MACH_FUJI +CONFIG_MACH_FWBD_0404 +CONFIG_MACH_G3EVM +CONFIG_MACH_G4EVM +CONFIG_MACH_GATEWAY7001 +CONFIG_MACH_GENEVA_B5 +CONFIG_MACH_GESBC9312 +CONFIG_MACH_GFS_SPM +CONFIG_MACH_GINGER +CONFIG_MACH_GIRA_KNXIP_ROUTER +CONFIG_MACH_GLANTANK +CONFIG_MACH_GNET_SGCE +CONFIG_MACH_GNET_SGME +CONFIG_MACH_GNET_SLC +CONFIG_MACH_GOFLEXHOME +CONFIG_MACH_GOFLEXNET +CONFIG_MACH_GOLDENGATE +CONFIG_MACH_GONI +CONFIG_MACH_GORAMO_MLR +CONFIG_MACH_GPSDISPLAY +CONFIG_MACH_GREECO +CONFIG_MACH_GSIA18S +CONFIG_MACH_GSL_DIAMOND +CONFIG_MACH_GSNCOMM +CONFIG_MACH_GTA04 +CONFIG_MACH_GTIB +CONFIG_MACH_GTL_IT5100 +CONFIG_MACH_GTWX5715 +CONFIG_MACH_GT_I5700 +CONFIG_MACH_GUPPY +CONFIG_MACH_GURNARD +CONFIG_MACH_GURUPLUG +CONFIG_MACH_GW2361 +CONFIG_MACH_H1600 +CONFIG_MACH_H4700 +CONFIG_MACH_HABA_KNX_EXPLORER +CONFIG_MACH_HALIBUT +CONFIG_MACH_HAMMERHEAD +CONFIG_MACH_HARMONY +CONFIG_MACH_HARVEST_DESOTO +CONFIG_MACH_HAWKS +CONFIG_MACH_HDGU +CONFIG_MACH_HDMINI +CONFIG_MACH_HDNVP +CONFIG_MACH_HELIOS_V1 +CONFIG_MACH_HELIOS_V2 +CONFIG_MACH_HERALD +CONFIG_MACH_HERRING +CONFIG_MACH_HIMALAYA +CONFIG_MACH_HJSDU +CONFIG_MACH_HKDKC100 +CONFIG_MACH_HMT +CONFIG_MACH_HOLIDAY +CONFIG_MACH_HREFV60 +CONFIG_MACH_HSGX6D +CONFIG_MACH_HTCMEGA +CONFIG_MACH_HTCTORNADO +CONFIG_MACH_HTC_HD_MINI +CONFIG_MACH_HTC_SPV_M700 +CONFIG_MACH_HUASHAN +CONFIG_MACH_HUSKY +CONFIG_MACH_HWGW6410 +CONFIG_MACH_IAM28 +CONFIG_MACH_ICON +CONFIG_MACH_ICONG +CONFIG_MACH_ICONNECT +CONFIG_MACH_ICONTROL +CONFIG_MACH_ICON_G +CONFIG_MACH_ICS_IF_VOIP +CONFIG_MACH_IDEA6410 +CONFIG_MACH_IGEP0020 +CONFIG_MACH_IGEP0030 +CONFIG_MACH_IGEP0032 +CONFIG_MACH_IJ3K_2440 +CONFIG_MACH_IMATE8502 +CONFIG_MACH_IMX27IPCAM +CONFIG_MACH_IMX27LITE +CONFIG_MACH_IMX27_VISSTRIM_M10 +CONFIG_MACH_INCOME +CONFIG_MACH_INETSPACE_V2 +CONFIG_MACH_INHAND_APEIRON +CONFIG_MACH_INHAND_FURY +CONFIG_MACH_INHAND_SIREN +CONFIG_MACH_INTELMOTE2 +CONFIG_MACH_IOMEGA_IX2_200 +CONFIG_MACH_IQ80332 +CONFIG_MACH_IQ81340MC +CONFIG_MACH_IQ81340SC +CONFIG_MACH_ISC3 +CONFIG_MACH_IXDP2351 +CONFIG_MACH_IXDP28X5 +CONFIG_MACH_IXDP465 +CONFIG_MACH_IXDPG425 +CONFIG_MACH_JANUS +CONFIG_MACH_JIGEN +CONFIG_MACH_JIVE +CONFIG_MACH_JOCPU550 +CONFIG_MACH_KAEN +CONFIG_MACH_KAFA +CONFIG_MACH_KB9200 +CONFIG_MACH_KEV7A400 +CONFIG_MACH_KINGDOM +CONFIG_MACH_KIXRP435 +CONFIG_MACH_KMM2M01 +CONFIG_MACH_KMP_AM17_01 +CONFIG_MACH_KM_KIRKWOOD +CONFIG_MACH_KOI +CONFIG_MACH_KRONOS +CONFIG_MACH_KT_SBC_SAM9_1 +CONFIG_MACH_KUROBOX_PRO +CONFIG_MACH_KX33XX +CONFIG_MACH_KZM9D +CONFIG_MACH_KZM9G +CONFIG_MACH_KZM_ARM11_01 +CONFIG_MACH_LANREADYFN511 +CONFIG_MACH_LAUSANNE +CONFIG_MACH_LB88RC8480 +CONFIG_MACH_LEAD +CONFIG_MACH_LEGACY +CONFIG_MACH_LEMON +CONFIG_MACH_LIBRA +CONFIG_MACH_LIGHTNING +CONFIG_MACH_LILLY1131 +CONFIG_MACH_LINKSTATION_CHLV2 +CONFIG_MACH_LINKSTATION_LSCHL +CONFIG_MACH_LINKSTATION_LS_HGL +CONFIG_MACH_LINKSTATION_MINI +CONFIG_MACH_LINKSTATION_PRO +CONFIG_MACH_LITTLETON +CONFIG_MACH_LOFT +CONFIG_MACH_LOGICPD_PXA270 +CONFIG_MACH_LPC24XX +CONFIG_MACH_LPD7A400 +CONFIG_MACH_LPD7A404 +CONFIG_MACH_LQ2 +CONFIG_MACH_LS9G20 +CONFIG_MACH_LSWXL +CONFIG_MACH_M502 +CONFIG_MACH_MACH_SDH001 +CONFIG_MACH_MACKEREL +CONFIG_MACH_MAGICIAN +CONFIG_MACH_MAGX_ZN5 +CONFIG_MACH_MAHIMAHI +CONFIG_MACH_MAINSTONE +CONFIG_MACH_MANUAE +CONFIG_MACH_MAPLE1 +CONFIG_MACH_MARVEL +CONFIG_MACH_MARVELC +CONFIG_MACH_MARVELCT +CONFIG_MACH_MARVELL_JASPER +CONFIG_MACH_MATRIX505 +CONFIG_MACH_MATRIX518 +CONFIG_MACH_MAXIMASP +CONFIG_MACH_MB3 +CONFIG_MACH_MECHA +CONFIG_MACH_MENO_QNG +CONFIG_MACH_MESON +CONFIG_MACH_MESON_6236M +CONFIG_MACH_MESON_8626M +CONFIG_MACH_MESSINA +CONFIG_MACH_MIC256 +CONFIG_MACH_MICCPT +CONFIG_MACH_MICRO9 +CONFIG_MACH_MICRO9L +CONFIG_MACH_MICRO9M +CONFIG_MACH_MICRO9S +CONFIG_MACH_MIF10P +CONFIG_MACH_MIMAS +CONFIG_MACH_MINI210 +CONFIG_MACH_MINI2440 +CONFIG_MACH_MINI6410 +CONFIG_MACH_MINI8168 +CONFIG_MACH_MIOA502 +CONFIG_MACH_MIOA701 +CONFIG_MACH_MIONE +CONFIG_MACH_MIOS_V1 +CONFIG_MACH_MITYOMAPL138 +CONFIG_MACH_MMM +CONFIG_MACH_MONCH +CONFIG_MACH_MONE +CONFIG_MACH_MOON +CONFIG_MACH_MORA +CONFIG_MACH_MR301A +CONFIG_MACH_MSM7X25_FFA +CONFIG_MACH_MSM7X25_SURF +CONFIG_MACH_MSM7X27A_FFA +CONFIG_MACH_MSM7X27A_RUMI3 +CONFIG_MACH_MSM7X27A_SURF +CONFIG_MACH_MSM7X27_FFA +CONFIG_MACH_MSM7X27_SURF +CONFIG_MACH_MSM7X30_FFA +CONFIG_MACH_MSM7X30_FLUID +CONFIG_MACH_MSM7X30_SURF +CONFIG_MACH_MSM8960_APQ +CONFIG_MACH_MSM8960_CDP +CONFIG_MACH_MSM8960_FLUID +CONFIG_MACH_MSM8960_MDP +CONFIG_MACH_MSM8960_RUMI3 +CONFIG_MACH_MSM8960_SIM +CONFIG_MACH_MSM8X55_SVLTE_FFA +CONFIG_MACH_MSM8X55_SVLTE_SURF +CONFIG_MACH_MSM8X60_FFA +CONFIG_MACH_MSM8X60_FLUID +CONFIG_MACH_MSM8X60_QRDC +CONFIG_MACH_MSM8X60_QT +CONFIG_MACH_MSM8X60_RUMI3 +CONFIG_MACH_MSM8X60_SIM +CONFIG_MACH_MSM8X60_SURF +CONFIG_MACH_MSS2 +CONFIG_MACH_MULTHSU +CONFIG_MACH_MV2120 +CONFIG_MACH_MV88F6281GTW_GE +CONFIG_MACH_MVBLX +CONFIG_MACH_MX21ADS +CONFIG_MACH_MX23EVK +CONFIG_MACH_MX257SOL +CONFIG_MACH_MX257SX +CONFIG_MACH_MX25_3DS +CONFIG_MACH_MX25_E2S_UC +CONFIG_MACH_MX27ADS +CONFIG_MACH_MX27SU2 +CONFIG_MACH_MX27_3DS +CONFIG_MACH_MX27_WMULTRA +CONFIG_MACH_MX28EVK +CONFIG_MACH_MX31ADS +CONFIG_MACH_MX31LITE +CONFIG_MACH_MX31MOBOARD +CONFIG_MACH_MX31_3DS +CONFIG_MACH_MX35_3DS +CONFIG_MACH_MX50_ARM2 +CONFIG_MACH_MX50_RDP +CONFIG_MACH_MX51EREBUS +CONFIG_MACH_MX51_3DS +CONFIG_MACH_MX51_ASTER7 +CONFIG_MACH_MX51_BABBAGE +CONFIG_MACH_MX51_BRAVO +CONFIG_MACH_MX51_EFIKAMX +CONFIG_MACH_MX51_EFIKASB +CONFIG_MACH_MX51_GGC +CONFIG_MACH_MX51_MORAY +CONFIG_MACH_MX51_TULIP +CONFIG_MACH_MX53_ARD +CONFIG_MACH_MX53_EVK +CONFIG_MACH_MX53_LOCO +CONFIG_MACH_MX53_SMD +CONFIG_MACH_MX61_ARD +CONFIG_MACH_MXC25_TOPAZ +CONFIG_MACH_MXLADS +CONFIG_MACH_MXT_TD60 +CONFIG_MACH_MXT_TD61 +CONFIG_MACH_N2100 +CONFIG_MACH_N30 +CONFIG_MACH_N35 +CONFIG_MACH_NAJAY_A9263 +CONFIG_MACH_NANOS +CONFIG_MACH_NANOZOOM +CONFIG_MACH_NAS100D +CONFIG_MACH_NAS4220B +CONFIG_MACH_NAS6210 +CONFIG_MACH_NAVEFIHID +CONFIG_MACH_NAXY1200 +CONFIG_MACH_NAXY400 +CONFIG_MACH_NB31 +CONFIG_MACH_NCP +CONFIG_MACH_NDA_EVM +CONFIG_MACH_NEC_MP900 +CONFIG_MACH_NEO1973_GTA02 +CONFIG_MACH_NEOCORE926 +CONFIG_MACH_NERY_1000 +CONFIG_MACH_NET2BIG +CONFIG_MACH_NET2BIG_NAND_V2 +CONFIG_MACH_NET2BIG_V2 +CONFIG_MACH_NET5BIG_NAND_V2 +CONFIG_MACH_NET5BIG_V2 +CONFIG_MACH_NETSPACE_LITE_V2 +CONFIG_MACH_NETSPACE_MAX_V2 +CONFIG_MACH_NETSPACE_V2 +CONFIG_MACH_NETVIZ +CONFIG_MACH_NETWALKER +CONFIG_MACH_NEUROS_OSD2 +CONFIG_MACH_NEXCODER_2440 +CONFIG_MACH_NITROGEN_IMX51 +CONFIG_MACH_NITROGEN_IMX53 +CONFIG_MACH_NITROGEN_VM_IMX51 +CONFIG_MACH_NMH +CONFIG_MACH_NOKIA770 +CONFIG_MACH_NOKIA_N800 +CONFIG_MACH_NOKIA_N810 +CONFIG_MACH_NOKIA_N810_WIMAX +CONFIG_MACH_NOKIA_RM680 +CONFIG_MACH_NOKIA_RX51 +CONFIG_MACH_NOMADIK +CONFIG_MACH_NOTLE +CONFIG_MACH_NS2416 +CONFIG_MACH_NS2816TB +CONFIG_MACH_NS2816_NTNB +CONFIG_MACH_NS2816_NTPAD +CONFIG_MACH_NSB3AST +CONFIG_MACH_NSK330 +CONFIG_MACH_NSLU2 +CONFIG_MACH_NSSLSBOARD +CONFIG_MACH_NS_K330 +CONFIG_MACH_NUC700EVB +CONFIG_MACH_NUC710EVB +CONFIG_MACH_NUC740EVB +CONFIG_MACH_NUC745EVB +CONFIG_MACH_NUC932EVB +CONFIG_MACH_NUC950TS +CONFIG_MACH_NURI +CONFIG_MACH_NV1000 +CONFIG_MACH_NXDB500 +CONFIG_MACH_NXDKN +CONFIG_MACH_NXEB500HMI +CONFIG_MACH_OCE_NIGMA +CONFIG_MACH_OMAP2EVM +CONFIG_MACH_OMAP3505NOVA8 +CONFIG_MACH_OMAP3517EVM +CONFIG_MACH_OMAP3530_LV_SOM +CONFIG_MACH_OMAP3621_EDP1 +CONFIG_MACH_OMAP3EVM +CONFIG_MACH_OMAP3SMARTDISPLAY +CONFIG_MACH_OMAP3_BAIA +CONFIG_MACH_OMAP3_BC10 +CONFIG_MACH_OMAP3_BEAGLE +CONFIG_MACH_OMAP3_BRAILLO +CONFIG_MACH_OMAP3_IBIZA +CONFIG_MACH_OMAP3_PANDORA +CONFIG_MACH_OMAP3_RFS200 +CONFIG_MACH_OMAP3_TDM3730 +CONFIG_MACH_OMAP3_TORPEDO +CONFIG_MACH_OMAP3_WALDO1 +CONFIG_MACH_OMAP4_PANDA +CONFIG_MACH_OMAP5_SEVM +CONFIG_MACH_OMAPL138_CASE_A3 +CONFIG_MACH_OMAPL138_EUROPALC +CONFIG_MACH_OMAPL138_HAWKBOARD +CONFIG_MACH_OMAPL138_LCDK +CONFIG_MACH_OMAP_2430SDP +CONFIG_MACH_OMAP_3430SDP +CONFIG_MACH_OMAP_3630SDP +CONFIG_MACH_OMAP_4430SDP +CONFIG_MACH_OMAP_APOLLON +CONFIG_MACH_OMAP_BENDER +CONFIG_MACH_OMAP_FSAMPLE +CONFIG_MACH_OMAP_GENERIC +CONFIG_MACH_OMAP_H2 +CONFIG_MACH_OMAP_H3 +CONFIG_MACH_OMAP_H4 +CONFIG_MACH_OMAP_INNOVATOR +CONFIG_MACH_OMAP_LDP +CONFIG_MACH_OMAP_MCOP +CONFIG_MACH_OMAP_OSK +CONFIG_MACH_OMAP_PALMTE +CONFIG_MACH_OMAP_PALMTT +CONFIG_MACH_OMAP_PALMZ71 +CONFIG_MACH_OMAP_PERSEUS2 +CONFIG_MACH_OMAP_ZOOM2 +CONFIG_MACH_OMAP_ZOOM3 +CONFIG_MACH_OMN_AT91SAM9G20 +CONFIG_MACH_ONEARM +CONFIG_MACH_OPENRD_BASE +CONFIG_MACH_OPENRD_CLIENT +CONFIG_MACH_OPENRD_ULTIMATE +CONFIG_MACH_ORATISAES +CONFIG_MACH_ORATISLINK +CONFIG_MACH_ORIGEN +CONFIG_MACH_OSIRIS +CONFIG_MACH_OSLO_AMUNDSEN +CONFIG_MACH_OTOM +CONFIG_MACH_OVERO +CONFIG_MACH_OVERO_CTU_INERTIAL +CONFIG_MACH_P87_SMARTSIM +CONFIG_MACH_PALMLD +CONFIG_MACH_PALMT5 +CONFIG_MACH_PALMTC +CONFIG_MACH_PALMTE2 +CONFIG_MACH_PALMTX +CONFIG_MACH_PALMZ72 +CONFIG_MACH_PAZ00 +CONFIG_MACH_PC7302 +CONFIG_MACH_PC7308 +CONFIG_MACH_PC9260_V2 +CONFIG_MACH_PCA100 +CONFIG_MACH_PCA102 +CONFIG_MACH_PCATS_OVERLAY +CONFIG_MACH_PCM027 +CONFIG_MACH_PCM037 +CONFIG_MACH_PCM038 +CONFIG_MACH_PCM043 +CONFIG_MACH_PCM048 +CONFIG_MACH_PCM049 +CONFIG_MACH_PCONTROL_G20 +CONFIG_MACH_PEC_HC2 +CONFIG_MACH_PEC_TC +CONFIG_MACH_PEMP_OMAP3_APOLLO +CONFIG_MACH_PGS_SITARA +CONFIG_MACH_PHILHWANI +CONFIG_MACH_PHY3250 +CONFIG_MACH_PICASSO +CONFIG_MACH_PICO +CONFIG_MACH_PICOCOM3 +CONFIG_MACH_PICOCOM4 +CONFIG_MACH_PICOTUX2XX +CONFIG_MACH_PIVICC +CONFIG_MACH_PNX4008 +CONFIG_MACH_POLYSAT1 +CONFIG_MACH_POODLE +CONFIG_MACH_PORTUXG20 +CONFIG_MACH_POV15HD +CONFIG_MACH_PREMIERWAVE_EN +CONFIG_MACH_PRIMA2_EVB +CONFIG_MACH_PTX7510 +CONFIG_MACH_PTX7545 +CONFIG_MACH_PUNICA +CONFIG_MACH_PUPITRE +CONFIG_MACH_PVM2030 +CONFIG_MACH_PWB3090 +CONFIG_MACH_PXWNAS_500_1000 +CONFIG_MACH_PYRAMID +CONFIG_MACH_QBC9263 +CONFIG_MACH_QIL_A9260 +CONFIG_MACH_QONG +CONFIG_MACH_QSD8X50A_ST1_5 +CONFIG_MACH_QSD8X50_SURF +CONFIG_MACH_QSD8X72_FFA +CONFIG_MACH_QSD8X72_SURF +CONFIG_MACH_QT2410 +CONFIG_MACH_QUAD_SALSA +CONFIG_MACH_QUICKSTEP +CONFIG_MACH_R1801E +CONFIG_MACH_RASCAL +CONFIG_MACH_RAUMFELD_CONNECTOR +CONFIG_MACH_RAUMFELD_RC +CONFIG_MACH_RAUMFELD_SPEAKER +CONFIG_MACH_RD78X00_MASA +CONFIG_MACH_RD88F5181L_FXO +CONFIG_MACH_RD88F5181L_GE +CONFIG_MACH_RD88F5182 +CONFIG_MACH_RD88F6183AP_GE +CONFIG_MACH_RD88F6192_NAS +CONFIG_MACH_RD88F6281 +CONFIG_MACH_RDSTOR +CONFIG_MACH_RE2REV20 +CONFIG_MACH_RE2REV21 +CONFIG_MACH_REAL6410 +CONFIG_MACH_REALVIEW_EB +CONFIG_MACH_REALVIEW_PB1176 +CONFIG_MACH_REALVIEW_PB11MP +CONFIG_MACH_REALVIEW_PBA8 +CONFIG_MACH_REALVIEW_PBX +CONFIG_MACH_REMUS +CONFIG_MACH_REXMAS +CONFIG_MACH_RFL109145_SSRV +CONFIG_MACH_RHINO +CONFIG_MACH_RIB +CONFIG_MACH_RIDER +CONFIG_MACH_RIOT_BEI2 +CONFIG_MACH_RIOT_X37 +CONFIG_MACH_ROADRUNNER +CONFIG_MACH_ROCKHOPPER +CONFIG_MACH_ROVERPCS8 +CONFIG_MACH_ROVERX7 +CONFIG_MACH_ROVER_G8 +CONFIG_MACH_RPC353 +CONFIG_MACH_RUBY +CONFIG_MACH_RUBYS +CONFIG_MACH_RUMP +CONFIG_MACH_RUT100 +CONFIG_MACH_RV082 +CONFIG_MACH_RX1950 +CONFIG_MACH_RX3715 +CONFIG_MACH_S3C2413 +CONFIG_MACH_S5500 +CONFIG_MACH_S5PC110_CRESPO +CONFIG_MACH_SAAR +CONFIG_MACH_SAARB +CONFIG_MACH_SAARB_MG1 +CONFIG_MACH_SAGA +CONFIG_MACH_SALUDA +CONFIG_MACH_SAM9REPEATER +CONFIG_MACH_SAM9_L9260 +CONFIG_MACH_SANTIAGO +CONFIG_MACH_SAPPHIRE +CONFIG_MACH_SBC3530 +CONFIG_MACH_SBC6000X +CONFIG_MACH_SBCA11 +CONFIG_MACH_SC575IPC +CONFIG_MACH_SC575PLC +CONFIG_MACH_SCB9328 +CONFIG_MACH_SCIPHONE_G2 +CONFIG_MACH_SDI_ESS_9263 +CONFIG_MACH_SDVR +CONFIG_MACH_SEABOARD +CONFIG_MACH_SERRANO +CONFIG_MACH_SFFSDR +CONFIG_MACH_SGH_I740 +CONFIG_MACH_SHARESPACE +CONFIG_MACH_SHEEVAPLUG +CONFIG_MACH_SHENZHOU +CONFIG_MACH_SHEPHERD +CONFIG_MACH_SHOOTER +CONFIG_MACH_SHOOTER_CT +CONFIG_MACH_SHOOTER_U +CONFIG_MACH_SHORTLOIN +CONFIG_MACH_SIEMENS_L0 +CONFIG_MACH_SIMPLENET +CONFIG_MACH_SIMTEC_KIRKMOD +CONFIG_MACH_SIM_ONE +CONFIG_MACH_SKY25 +CONFIG_MACH_SKY6410 +CONFIG_MACH_SM1K +CONFIG_MACH_SMARTQ5 +CONFIG_MACH_SMARTQ7 +CONFIG_MACH_SMARTQV3 +CONFIG_MACH_SMARTQV5 +CONFIG_MACH_SMARTQV7 +CONFIG_MACH_SMDK2412 +CONFIG_MACH_SMDK2413 +CONFIG_MACH_SMDK2416 +CONFIG_MACH_SMDK2443 +CONFIG_MACH_SMDK6410 +CONFIG_MACH_SMDK6440 +CONFIG_MACH_SMDK6442 +CONFIG_MACH_SMDK6450 +CONFIG_MACH_SMDKC100 +CONFIG_MACH_SMDKC110 +CONFIG_MACH_SMDKC210 +CONFIG_MACH_SMDKV210 +CONFIG_MACH_SMDKV310 +CONFIG_MACH_SNAPPER_9260 +CONFIG_MACH_SNAPPER_CL15 +CONFIG_MACH_SOFTWINNER +CONFIG_MACH_SOLI_01 +CONFIG_MACH_SPADE +CONFIG_MACH_SPADE_LTE +CONFIG_MACH_SPDM +CONFIG_MACH_SPEAR1310 +CONFIG_MACH_SPEAR1340 +CONFIG_MACH_SPEAR300 +CONFIG_MACH_SPEAR310 +CONFIG_MACH_SPEAR320 +CONFIG_MACH_SPEAR600 +CONFIG_MACH_SPEAR900 +CONFIG_MACH_SPECIFIC +CONFIG_MACH_SPICA +CONFIG_MACH_SPITZ +CONFIG_MACH_SPLENDOR +CONFIG_MACH_SPX_SAKURA +CONFIG_MACH_SPYPLUG +CONFIG_MACH_SSC +CONFIG_MACH_STAMP9G20 +CONFIG_MACH_STAMP9G45 +CONFIG_MACH_STARGATE2 +CONFIG_MACH_STEELYARD +CONFIG_MACH_STELLA +CONFIG_MACH_STMP378X +CONFIG_MACH_STMP37XX +CONFIG_MACH_STRASBOURG +CONFIG_MACH_STRASBOURG_A2 +CONFIG_MACH_STRETCHS7000 +CONFIG_MACH_SUNFIRE +CONFIG_MACH_SUNFLOWER +CONFIG_MACH_SVCID +CONFIG_MACH_SVP5500 +CONFIG_MACH_SVP8500V1 +CONFIG_MACH_SVP8500V2 +CONFIG_MACH_SWARCOEXTMODEM +CONFIG_MACH_SWEDA_TMS2 +CONFIG_MACH_SX1 +CONFIG_MACH_SYNERGY +CONFIG_MACH_SYNOLOGY_6282 +CONFIG_MACH_T20 +CONFIG_MACH_T5325 +CONFIG_MACH_T5388P +CONFIG_MACH_T55 +CONFIG_MACH_TAG +CONFIG_MACH_TAGW +CONFIG_MACH_TANNA +CONFIG_MACH_TAVOREVB +CONFIG_MACH_TAVOREVB3 +CONFIG_MACH_TCC8000_SDK +CONFIG_MACH_TCT_HAMMER +CONFIG_MACH_TD3_REV1 +CONFIG_MACH_TEENOTE +CONFIG_MACH_TEGRA_DAYTONA +CONFIG_MACH_TEGRA_E1165 +CONFIG_MACH_TEGRA_SWORDFISH +CONFIG_MACH_TEGRA_VOGUE +CONFIG_MACH_TEM3X30 +CONFIG_MACH_TENDERLOIN +CONFIG_MACH_TERASTATION_PRO2 +CONFIG_MACH_TERASTATION_WXL +CONFIG_MACH_TERA_PRO2_RACK +CONFIG_MACH_TETON_BGA +CONFIG_MACH_THALES_ADC +CONFIG_MACH_THALES_CBC +CONFIG_MACH_THEBE +CONFIG_MACH_TI8148EVM +CONFIG_MACH_TI8168EVM +CONFIG_MACH_TIMU +CONFIG_MACH_TIN307 +CONFIG_MACH_TIN510 +CONFIG_MACH_TINY_GURNARD +CONFIG_MACH_TITAN +CONFIG_MACH_TJINC1000 +CONFIG_MACH_TM_EFDC +CONFIG_MACH_TN200 +CONFIG_MACH_TNETV107X +CONFIG_MACH_TNY_T3530 +CONFIG_MACH_TONGA2_TFTTIMER +CONFIG_MACH_TOP9000 +CONFIG_MACH_TOP9000_BSL +CONFIG_MACH_TOP9000_EVAL +CONFIG_MACH_TOP9000_SU +CONFIG_MACH_TOP9000_TCU +CONFIG_MACH_TORBRECK +CONFIG_MACH_TORNADO3240 +CONFIG_MACH_TOSA +CONFIG_MACH_TOUCHBOOK +CONFIG_MACH_TPT_2_0 +CONFIG_MACH_TQ6410 +CONFIG_MACH_TQMA35 +CONFIG_MACH_TQMA9263 +CONFIG_MACH_TRANSCEDE +CONFIG_MACH_TREO680 +CONFIG_MACH_TRICORDER +CONFIG_MACH_TRIDENT +CONFIG_MACH_TRIMSLICE +CONFIG_MACH_TRIPEL +CONFIG_MACH_TRITIP +CONFIG_MACH_TRIZEPS4 +CONFIG_MACH_TRIZEPS4WL +CONFIG_MACH_TROUT +CONFIG_MACH_TS209 +CONFIG_MACH_TS219 +CONFIG_MACH_TS3 +CONFIG_MACH_TS409 +CONFIG_MACH_TS41X +CONFIG_MACH_TS42XX +CONFIG_MACH_TS47XX +CONFIG_MACH_TS4800 +CONFIG_MACH_TS48XX +CONFIG_MACH_TS72XX +CONFIG_MACH_TS75XX +CONFIG_MACH_TS78XX +CONFIG_MACH_TSOPLOADER +CONFIG_MACH_TSUNAGI +CONFIG_MACH_TTC_DKB +CONFIG_MACH_TUBE +CONFIG_MACH_TULIP +CONFIG_MACH_TUNA +CONFIG_MACH_TUXRAIL +CONFIG_MACH_TX28 +CONFIG_MACH_TX53 +CONFIG_MACH_TYPE +CONFIG_MACH_TYPE_COMPAT_REV +CONFIG_MACH_U300 +CONFIG_MACH_U5500 +CONFIG_MACH_UBISYS_P9D_EVP +CONFIG_MACH_UEMD +CONFIG_MACH_UNINO1 +CONFIG_MACH_UNISDEV +CONFIG_MACH_UNISENSE_MMM +CONFIG_MACH_UNIT2S +CONFIG_MACH_UNIVERSAL_C210 +CONFIG_MACH_USB_A9260 +CONFIG_MACH_USB_A9263 +CONFIG_MACH_USDLOADER +CONFIG_MACH_UTM300 +CONFIG_MACH_VALDEZ +CONFIG_MACH_VANGOGH +CONFIG_MACH_VC0718 +CONFIG_MACH_VENTANA +CONFIG_MACH_VERDI +CONFIG_MACH_VERDI_LTE +CONFIG_MACH_VERIDIS_A300 +CONFIG_MACH_VERSATILE_AB +CONFIG_MACH_VEXPRESS +CONFIG_MACH_VIGOR +CONFIG_MACH_VIPRINET +CONFIG_MACH_VIT_IBOX +CONFIG_MACH_VIVO +CONFIG_MACH_VIVOW_CT +CONFIG_MACH_VMX25 +CONFIG_MACH_VMX51 +CONFIG_MACH_VMX53 +CONFIG_MACH_VOICEBLUE +CONFIG_MACH_VPAC270 +CONFIG_MACH_VPR200 +CONFIG_MACH_VR1000 +CONFIG_MACH_VSTMS +CONFIG_MACH_VVBOX_SDLITE2 +CONFIG_MACH_VVBOX_SDORIG2 +CONFIG_MACH_VVBOX_SDPRO4 +CONFIG_MACH_W21 +CONFIG_MACH_W90N960EVB +CONFIG_MACH_W90P910EVB +CONFIG_MACH_W90P950EVB +CONFIG_MACH_WARIO +CONFIG_MACH_WASABI +CONFIG_MACH_WATSON_EFM_PLUGIN +CONFIG_MACH_WB40N +CONFIG_MACH_WBD111 +CONFIG_MACH_WBD222 +CONFIG_MACH_WG302V2 +CONFIG_MACH_WHISTLER +CONFIG_MACH_WLAN_COMPUTER +CONFIG_MACH_WLF_CRAGG_6410 +CONFIG_MACH_WM8505_7IN_NETBOOK +CONFIG_MACH_WM8650REFBOARD +CONFIG_MACH_WN802T +CONFIG_MACH_WNR854T +CONFIG_MACH_WRT350N_V2 +CONFIG_MACH_WTPLUG +CONFIG_MACH_XARINA +CONFIG_MACH_XCEP +CONFIG_MACH_XILINX +CONFIG_MACH_XILINX_EP107 +CONFIG_MACH_XSBASE255 +CONFIG_MACH_YANOMAMI +CONFIG_MACH_YL9200 +CONFIG_MACH_Z3_814X_MOD +CONFIG_MACH_Z3_816X_MOD +CONFIG_MACH_ZIPIT2 +CONFIG_MACH_ZMX25 +CONFIG_MACH_ZYLONITE +CONFIG_MACH_ZYLONITE2 +CONFIG_MACPWR +CONFIG_MACRESET_TIMEOUT +CONFIG_MAC_ADDR_IN_EEPROM +CONFIG_MAC_ADDR_IN_SPIFLASH +CONFIG_MAC_OFFSET +CONFIG_MAC_PARTITION +CONFIG_MAKALU +CONFIG_MALLOC_F_ADDR +CONFIG_MALTA +CONFIG_MARCO_MEMSET +CONFIG_MARUBUN_PCCARD +CONFIG_MARVELL +CONFIG_MARVELL_GPIO +CONFIG_MARVELL_MFP +CONFIG_MASK_AER_AO +CONFIG_MAX_DSP_CPUS +CONFIG_MAX_FPGA_DEVICES +CONFIG_MAX_I2C_NUM +CONFIG_MAX_MEM_MAPPED +CONFIG_MAX_PKT +CONFIG_MAX_RAM_BANK_SIZE +CONFIG_MCAST_TFTP +CONFIG_MCF5249 +CONFIG_MCF5253 +CONFIG_MCFFEC +CONFIG_MCFPIT +CONFIG_MCFRTC +CONFIG_MCFTMR +CONFIG_MCFUART +CONFIG_MCLK_DIS +CONFIG_MD5 +CONFIG_MD5SUM_VERIFY +CONFIG_MDIO_TIMEOUT +CONFIG_MECP5123 +CONFIG_MEMSIZE +CONFIG_MEMSIZE_IN_BYTES +CONFIG_MEMSIZE_MASK +CONFIG_MEM_ADD_WDTH +CONFIG_MEM_HOLE_16M +CONFIG_MEM_INIT_VALUE +CONFIG_MEM_REMAP +CONFIG_MEM_SIZE +CONFIG_MENU +CONFIG_MENUKEY +CONFIG_MENUPROMPT +CONFIG_MENU_SHOW +CONFIG_MFG_ENV_SETTINGS +CONFIG_MGCOGE +CONFIG_MGCOGE3NE +CONFIG_MIGO_R +CONFIG_MII +CONFIG_MIIM_ADDRESS +CONFIG_MII_DEFAULT_TSEC +CONFIG_MII_INIT +CONFIG_MII_SUPPRESS_PREAMBLE +CONFIG_MINIFAP +CONFIG_MIPS_HUGE_TLB_SUPPORT +CONFIG_MIPS_MT_FPAFF +CONFIG_MIRQ_EN +CONFIG_MISC_COMMON +CONFIG_MISC_INIT_F +CONFIG_MISC_INIT_R +CONFIG_MIU_1BIT_INTERLEAVED +CONFIG_MIU_2BIT_21_7_INTERLEAVED +CONFIG_MIU_2BIT_INTERLEAVED +CONFIG_MIU_LINEAR +CONFIG_MK_edb9301 +CONFIG_MK_edb9315a +CONFIG_MMCBOOTCOMMAND +CONFIG_MMCROOT +CONFIG_MMC_DEFAULT_DEV +CONFIG_MMC_RPMB_TRACE +CONFIG_MMC_SDHCI_IO_ACCESSORS +CONFIG_MMC_SDMA +CONFIG_MMC_SPI +CONFIG_MMC_SPI_BUS +CONFIG_MMC_SPI_CRC_ON +CONFIG_MMC_SPI_CS +CONFIG_MMC_SPI_CS_EPGIO +CONFIG_MMC_SPI_MODE +CONFIG_MMC_SPI_NPOWER_EGPIO +CONFIG_MMC_SPI_POWER_EGPIO +CONFIG_MMC_SPI_SPEED +CONFIG_MMC_SUNXI +CONFIG_MMC_SUNXI_SLOT +CONFIG_MMC_TRACE +CONFIG_MMU +CONFIG_MODVERSIONS +CONFIG_MONITOR_IS_IN_RAM +CONFIG_MOTIONPRO +CONFIG_MP +CONFIG_MPC5121ADS +CONFIG_MPC5121ADS_REV2 +CONFIG_MPC512x_FEC +CONFIG_MPC5200 +CONFIG_MPC5200_DDR +CONFIG_MPC52XX_SPI +CONFIG_MPC555 +CONFIG_MPC5xxx_FEC +CONFIG_MPC5xxx_FEC_MII10 +CONFIG_MPC5xxx_FEC_MII100 +CONFIG_MPC823 +CONFIG_MPC8247 +CONFIG_MPC8255 +CONFIG_MPC8272_FAMILY +CONFIG_MPC8308 +CONFIG_MPC8308RDB +CONFIG_MPC8308_P1M +CONFIG_MPC8309 +CONFIG_MPC830x +CONFIG_MPC8313 +CONFIG_MPC8313ERDB +CONFIG_MPC8315 +CONFIG_MPC8315ERDB +CONFIG_MPC831x +CONFIG_MPC832XEMDS +CONFIG_MPC832x +CONFIG_MPC8349 +CONFIG_MPC8349EMDS +CONFIG_MPC8349ITX +CONFIG_MPC8349ITXGP +CONFIG_MPC834x +CONFIG_MPC8360 +CONFIG_MPC837XEMDS +CONFIG_MPC837XERDB +CONFIG_MPC837x +CONFIG_MPC83XX_GPIO +CONFIG_MPC83XX_GPIO_0_INIT_DIRECTION +CONFIG_MPC83XX_GPIO_0_INIT_OPEN_DRAIN +CONFIG_MPC83XX_GPIO_0_INIT_VALUE +CONFIG_MPC83XX_GPIO_1_INIT_DIRECTION +CONFIG_MPC83XX_GPIO_1_INIT_OPEN_DRAIN +CONFIG_MPC83XX_GPIO_1_INIT_VALUE +CONFIG_MPC83XX_PCI2 +CONFIG_MPC850 +CONFIG_MPC8536 +CONFIG_MPC8536DS +CONFIG_MPC8540 +CONFIG_MPC8540ADS +CONFIG_MPC8541 +CONFIG_MPC8541CDS +CONFIG_MPC8544 +CONFIG_MPC8544DS +CONFIG_MPC8548 +CONFIG_MPC8548CDS +CONFIG_MPC855 +CONFIG_MPC8555 +CONFIG_MPC8555CDS +CONFIG_MPC8560 +CONFIG_MPC8560ADS +CONFIG_MPC8568 +CONFIG_MPC8568MDS +CONFIG_MPC8569 +CONFIG_MPC8569MDS +CONFIG_MPC857 +CONFIG_MPC8572 +CONFIG_MPC8572DS +CONFIG_MPC85XX_FEC +CONFIG_MPC85XX_FEC_NAME +CONFIG_MPC85XX_PCI2 +CONFIG_MPC860 +CONFIG_MPC860T +CONFIG_MPC8610 +CONFIG_MPC8610HPCD +CONFIG_MPC862 +CONFIG_MPC8641 +CONFIG_MPC8641HPCN +CONFIG_MPC866 +CONFIG_MPC866_FAMILY +CONFIG_MPC86x +CONFIG_MPC885 +CONFIG_MPC885_FAMILY +CONFIG_MPC8XXX_SPI +CONFIG_MPC8XX_LCD +CONFIG_MPC8xxx_DISABLE_BPTR +CONFIG_MPLL_FREQ +CONFIG_MPR2 +CONFIG_MPX5200 +CONFIG_MP_CLK_FREQ +CONFIG_MS7720SE +CONFIG_MS7722SE +CONFIG_MS7750SE +CONFIG_MSHC_FREQ +CONFIG_MTDMAP +CONFIG_MTDPARTS +CONFIG_MTD_CONCAT +CONFIG_MTD_DEBUG +CONFIG_MTD_DEBUG_VERBOSE +CONFIG_MTD_DEVICE +CONFIG_MTD_ECC_SOFT +CONFIG_MTD_NAND_DENALI_SCRATCH_REG_ADDR +CONFIG_MTD_NAND_ECC_SMC +CONFIG_MTD_NAND_MUSEUM_IDS +CONFIG_MTD_NAND_VERIFY_WRITE +CONFIG_MTD_ONENAND_VERIFY_WRITE +CONFIG_MTD_PARTITION +CONFIG_MTD_PARTITIONS +CONFIG_MTD_UBI_BEB_RESERVE +CONFIG_MTD_UBI_BLOCK +CONFIG_MTD_UBI_DEBUG +CONFIG_MTD_UBI_DEBUG_MSG +CONFIG_MTD_UBI_DEBUG_MSG_BLD +CONFIG_MTD_UBI_DEBUG_MSG_EBA +CONFIG_MTD_UBI_DEBUG_MSG_IO +CONFIG_MTD_UBI_DEBUG_MSG_WL +CONFIG_MTD_UBI_DEBUG_PARANOID +CONFIG_MTD_UBI_GLUEBI +CONFIG_MTD_UBI_MODULE +CONFIG_MULTI_CS +CONFIG_MUNICES +CONFIG_MUSB_HOST +CONFIG_MV88E61XX_CPU_PORT +CONFIG_MV88E61XX_PHY_PORTS +CONFIG_MV88E61XX_SWITCH +CONFIG_MV88E6352_SWITCH +CONFIG_MVEBU_MMC +CONFIG_MVGBE +CONFIG_MVGBE_PORTS +CONFIG_MVMFP_V2 +CONFIG_MVNETA +CONFIG_MVS +CONFIG_MVSATA_IDE +CONFIG_MVSATA_IDE_USE_PORT0 +CONFIG_MVSATA_IDE_USE_PORT1 +CONFIG_MV_ETH_RXQ +CONFIG_MV_I2C_NUM +CONFIG_MV_I2C_REG +CONFIG_MV_SDHCI +CONFIG_MX23 +CONFIG_MX25 +CONFIG_MX25_CLK32 +CONFIG_MX25_HCLK_FREQ +CONFIG_MX27 +CONFIG_MX27_CLK32 +CONFIG_MX27_TIMER_HIGH_PRECISION +CONFIG_MX28 +CONFIG_MX28_FEC_MAC_IN_OCOTP +CONFIG_MX31 +CONFIG_MX31_CLK32 +CONFIG_MX31_HCLK_FREQ +CONFIG_MX35 +CONFIG_MX35_CLK32 +CONFIG_MX35_HCLK_FREQ +CONFIG_MX6DL_LPDDR2 +CONFIG_MX6DQ_LPDDR2 +CONFIG_MX6SX_SABRESD_REVA +CONFIG_MX6UL_14X14_EVK_EMMC_REWORK +CONFIG_MXC_EPDC +CONFIG_MXC_GPIO +CONFIG_MXC_GPT_HCLK +CONFIG_MXC_MCI_REGS_BASE +CONFIG_MXC_MMC +CONFIG_MXC_NAND_HWECC +CONFIG_MXC_NAND_IP_REGS_BASE +CONFIG_MXC_NAND_REGS_BASE +CONFIG_MXC_SPI +CONFIG_MXC_UART +CONFIG_MXC_UART_BASE +CONFIG_MXC_USB_FLAGS +CONFIG_MXC_USB_PORT +CONFIG_MXC_USB_PORTSC +CONFIG_MXS +CONFIG_MXS_AUART +CONFIG_MXS_AUART_BASE +CONFIG_MXS_GPIO +CONFIG_MXS_MMC +CONFIG_MXS_OCOTP +CONFIG_MXS_SPI +CONFIG_MX_CYCLIC +CONFIG_MY_OPTION +CONFIG_NAND +CONFIG_NANDFLASH_SIZE +CONFIG_NAND_6BYTES_OOB_FREE_10BYTES_ECC +CONFIG_NAND_ACTL +CONFIG_NAND_ATMEL +CONFIG_NAND_CS_INIT +CONFIG_NAND_DATA_REG +CONFIG_NAND_DAVINCI +CONFIG_NAND_DENALI_ECC_SIZE +CONFIG_NAND_ECC_BCH +CONFIG_NAND_ENV_DST +CONFIG_NAND_FSL_ELBC +CONFIG_NAND_FSL_IFC +CONFIG_NAND_FSL_NFC +CONFIG_NAND_FSMC +CONFIG_NAND_KIRKWOOD +CONFIG_NAND_KMETER1 +CONFIG_NAND_LPC32XX_MLC +CONFIG_NAND_LPC32XX_SLC +CONFIG_NAND_MODE_REG +CONFIG_NAND_MPC5121_NFC +CONFIG_NAND_MXC +CONFIG_NAND_MXC_V1_1 +CONFIG_NAND_MXS +CONFIG_NAND_NDFC +CONFIG_NAND_OMAP_ECCSCHEME +CONFIG_NAND_OMAP_ELM +CONFIG_NAND_OMAP_GPMC +CONFIG_NAND_OMAP_GPMC_PREFETCH +CONFIG_NAND_OMAP_GPMC_WSCFG +CONFIG_NAND_PLAT +CONFIG_NAND_S3C2410 +CONFIG_NAND_SECBOOT +CONFIG_NAND_SPL +CONFIG_NAND_U_BOOT +CONFIG_NATSEMI +CONFIG_NB +CONFIG_NCEL2C100_BASE +CONFIG_NCEMIC100_BASE +CONFIG_NDS_DLM1_BASE +CONFIG_NDS_DLM2_BASE +CONFIG_NEC_NL6448AC33 +CONFIG_NEC_NL6448BC20 +CONFIG_NEC_NL6448BC33_54 +CONFIG_NEEDS_MANUAL_RELOC +CONFIG_NEO +CONFIG_NET2BIG_V2 +CONFIG_NETCONSOLE_BUFFER_SIZE +CONFIG_NETDEV +CONFIG_NETMASK +CONFIG_NETSPACE_LITE_V2 +CONFIG_NETSPACE_MAX_V2 +CONFIG_NETSPACE_MINI_V2 +CONFIG_NETSPACE_V2 +CONFIG_NET_MAXDEFRAG +CONFIG_NET_MULTI +CONFIG_NET_RETRY_COUNT +CONFIG_NEVER_ASSERT_ODT_TO_CPU +CONFIG_NFC_FREQ +CONFIG_NFSBOOTCOMMAND +CONFIG_NFS_READ_SIZE +CONFIG_NFS_TIMEOUT +CONFIG_NOBQFMAN +CONFIG_NON_SECURE +CONFIG_NORBOOT +CONFIG_NORFLASH_PS32BIT +CONFIG_NOT_SELECTED +CONFIG_NO_ETH +CONFIG_NO_RELOCATION +CONFIG_NO_SERIAL_EEPROM +CONFIG_NO_WAIT +CONFIG_NR_CPUS +CONFIG_NR_DRAM_BANKS +CONFIG_NR_DRAM_BANKS_MAX +CONFIG_NR_DRAM_POPULATED +CONFIG_NS16550_MIN_FUNCTIONS +CONFIG_NS8382X +CONFIG_NS87308 +CONFIG_NUM_DDR_CONTROLLERS +CONFIG_NUM_DSP_CPUS +CONFIG_NUM_PAMU +CONFIG_OCLK_DIV +CONFIG_ODROID_REV_AIN +CONFIG_OFF_PADCONF +CONFIG_OF_ +CONFIG_OF_IDE_FIXUP +CONFIG_OF_PLATDATA +CONFIG_OF_SPI +CONFIG_OF_SPI_FLASH +CONFIG_OF_STDOUT_PATH +CONFIG_OF_SUPPORT_OLD_DEVICE_TREES +CONFIG_OMAP +CONFIG_OMAP3430 +CONFIG_OMAP3_AM3517CRANE +CONFIG_OMAP3_DEVKIT8000 +CONFIG_OMAP3_EVM +CONFIG_OMAP3_GPIO_2 +CONFIG_OMAP3_GPIO_3 +CONFIG_OMAP3_GPIO_4 +CONFIG_OMAP3_GPIO_5 +CONFIG_OMAP3_GPIO_6 +CONFIG_OMAP3_LOGIC_USE_NEW_PRODUCT_ID +CONFIG_OMAP3_MCX +CONFIG_OMAP3_MICRON_DDR +CONFIG_OMAP3_RX51 +CONFIG_OMAP3_SPI_D0_D1_SWAPPED +CONFIG_OMAP3_ZOOM1 +CONFIG_OMAP4430 +CONFIG_OMAP54X +CONFIG_OMAP_COMMON +CONFIG_OMAP_EHCI_PHY1_RESET_GPIO +CONFIG_OMAP_EHCI_PHY2_RESET_GPIO +CONFIG_OMAP_EHCI_PHY3_RESET_GPIO +CONFIG_OMAP_GPIO +CONFIG_OMAP_HSMMC +CONFIG_OMAP_PLATFORM_RESET_TIME_MAX_USEC +CONFIG_OMAP_USB2PHY2_HOST +CONFIG_OMAP_USB3PHY1_HOST +CONFIG_OMAP_USB_PHY +CONFIG_OMAP_VC_I2C_HS_MCODE +CONFIG_OMAP_WATCHDOG +CONFIG_OPTREX_BW +CONFIG_ORIGEN +CONFIG_OS1_ENV_ADDR +CONFIG_OS2_ENV_ADDR +CONFIG_OS_ENV_ADDR +CONFIG_OTHBOOTARGS +CONFIG_OVERWRITE_ETHADDR_ONCE +CONFIG_P1010 +CONFIG_P1010RDB_PA +CONFIG_P1010RDB_PB +CONFIG_P1020 +CONFIG_P1020MBG +CONFIG_P1020RDB_PC +CONFIG_P1020RDB_PD +CONFIG_P1020UTM +CONFIG_P1021 +CONFIG_P1021RDB +CONFIG_P1022 +CONFIG_P1022DS +CONFIG_P1023 +CONFIG_P1024 +CONFIG_P1024RDB +CONFIG_P1025 +CONFIG_P1025RDB +CONFIG_P2020 +CONFIG_P2020RDB +CONFIG_P2041RDB +CONFIG_P3041DS +CONFIG_P4080DS +CONFIG_P5020DS +CONFIG_P5040DS +CONFIG_PAGE_CNT_MASK +CONFIG_PAGE_CNT_SHIFT +CONFIG_PALMAS_AUDPWR +CONFIG_PALMAS_POWER +CONFIG_PALMAS_SMPS7_FPWM +CONFIG_PALMAS_USB_SS_PWR +CONFIG_PANIC_HANG +CONFIG_PARAVIRT +CONFIG_PARTITIONS +CONFIG_PARTITION_TYPE_GUID +CONFIG_PARTITION_UUIDS +CONFIG_PATA_BFIN +CONFIG_PATI +CONFIG_PB1000 +CONFIG_PB1100 +CONFIG_PB1500 +CONFIG_PB1X00 +CONFIG_PCA953X +CONFIG_PCA9564_BASE +CONFIG_PCA9564_I2C +CONFIG_PCA9698 +CONFIG_PCI1 +CONFIG_PCI2 +CONFIG_PCIAUTO_SKIP_HOST_BRIDGE +CONFIG_PCIE +CONFIG_PCIE1 +CONFIG_PCIE2 +CONFIG_PCIE3 +CONFIG_PCIE4 +CONFIG_PCIE_IMX +CONFIG_PCIE_IMX_PERST_GPIO +CONFIG_PCIE_IMX_POWER_GPIO +CONFIG_PCIE_LAYERSCAPE +CONFIG_PCISLAVE +CONFIG_PCIX_CHECK +CONFIG_PCI_33M +CONFIG_PCI_4xx_PTM_OVERWRITE +CONFIG_PCI_66M +CONFIG_PCI_BOOTDELAY +CONFIG_PCI_CLK_FREQ +CONFIG_PCI_CONFIG_HOST_BRIDGE +CONFIG_PCI_DISABLE_PCIE +CONFIG_PCI_EHCI_DEVICE +CONFIG_PCI_EHCI_DEVNO +CONFIG_PCI_ENUM_ONLY +CONFIG_PCI_FIXUP_DEV +CONFIG_PCI_GT64120 +CONFIG_PCI_HOST +CONFIG_PCI_INDIRECT_BRIDGE +CONFIG_PCI_IO_BUS +CONFIG_PCI_IO_PHYS +CONFIG_PCI_IO_SIZE +CONFIG_PCI_MEMORY_BUS +CONFIG_PCI_MEMORY_PHYS +CONFIG_PCI_MEMORY_SIZE +CONFIG_PCI_MEM_BUS +CONFIG_PCI_MEM_PHYS +CONFIG_PCI_MEM_SIZE +CONFIG_PCI_MSC01 +CONFIG_PCI_MVEBU +CONFIG_PCI_NOSCAN +CONFIG_PCI_OHCI +CONFIG_PCI_OHCI_DEVNO +CONFIG_PCI_PNP +CONFIG_PCI_PREF_BUS +CONFIG_PCI_PREF_PHYS +CONFIG_PCI_PREF_SIZE +CONFIG_PCI_SCAN_SHOW +CONFIG_PCI_SKIP_HOST_BRIDGE +CONFIG_PCI_SYS_BUS +CONFIG_PCI_SYS_MEM_BUS +CONFIG_PCI_SYS_MEM_PHYS +CONFIG_PCI_SYS_MEM_SIZE +CONFIG_PCI_SYS_PHYS +CONFIG_PCI_SYS_SIZE +CONFIG_PCMCIA +CONFIG_PCMCIA_SLOT_A +CONFIG_PCMCIA_SLOT_B +CONFIG_PCNET +CONFIG_PCNET_79C973 +CONFIG_PCNET_79C975 +CONFIG_PDM360NG +CONFIG_PDSP188x +CONFIG_PEN_ADDR_BIG_ENDIAN +CONFIG_PERIF1_FREQ +CONFIG_PERIF2_FREQ +CONFIG_PERIF3_FREQ +CONFIG_PERIF4_FREQ +CONFIG_PHY1_ADDR +CONFIG_PHY2_ADDR +CONFIG_PHY3_ADDR +CONFIG_PHYCORE_MPC5200B_TINY +CONFIG_PHYLIB_10G +CONFIG_PHYSMEM +CONFIG_PHY_ADDR +CONFIG_PHY_AQUANTIA +CONFIG_PHY_ATHEROS +CONFIG_PHY_BASE_ADR +CONFIG_PHY_BCM5421S +CONFIG_PHY_BROADCOM +CONFIG_PHY_CLK_FREQ +CONFIG_PHY_CLOCK_FREQ +CONFIG_PHY_CMD_DELAY +CONFIG_PHY_CORTINA +CONFIG_PHY_DAVICOM +CONFIG_PHY_DYNAMIC_ANEG +CONFIG_PHY_ET1011C +CONFIG_PHY_ET1011C_TX_CLK_FIX +CONFIG_PHY_GIGE +CONFIG_PHY_ID +CONFIG_PHY_INTERFACE_MODE +CONFIG_PHY_IRAM_BASE +CONFIG_PHY_KSZ9031 +CONFIG_PHY_LXT +CONFIG_PHY_M88E1111 +CONFIG_PHY_MARVELL +CONFIG_PHY_MAX_ADDR +CONFIG_PHY_MICREL +CONFIG_PHY_MICREL_KSZ9021 +CONFIG_PHY_MICREL_KSZ9031 +CONFIG_PHY_MODE_NEED_CHANGE +CONFIG_PHY_NATSEMI +CONFIG_PHY_REALTEK +CONFIG_PHY_RESET +CONFIG_PHY_RESET_DELAY +CONFIG_PHY_SMSC +CONFIG_PHY_TERANETICS +CONFIG_PHY_TI +CONFIG_PHY_TYPE +CONFIG_PHY_VITESSE +CONFIG_PHY_XILINX +CONFIG_PHYx_ADDR +CONFIG_PICOSAM +CONFIG_PIGGY_MAC_ADRESS_OFFSET +CONFIG_PIP405 +CONFIG_PIXIS_BRDCFG0_SPI +CONFIG_PIXIS_BRDCFG0_USB2 +CONFIG_PIXIS_BRDCFG1_AUDCLK_11 +CONFIG_PIXIS_BRDCFG1_AUDCLK_12 +CONFIG_PIXIS_BRDCFG1_AUDCLK_MASK +CONFIG_PIXIS_BRDCFG1_SSI_TDM_MASK +CONFIG_PIXIS_BRDCFG1_SSI_TDM_SSI +CONFIG_PIXIS_BRDCFG1_TDM +CONFIG_PIXIS_SGMII_CMD +CONFIG_PL010_SERIAL +CONFIG_PL011_CLOCK +CONFIG_PL011_SERIAL +CONFIG_PL011_SERIAL_RLCR +CONFIG_PL01X_SERIAL +CONFIG_PL01x_PORTS +CONFIG_PLATFORM_ENV_SETTINGS +CONFIG_PLATINUM_BOARD +CONFIG_PLATINUM_CPU +CONFIG_PLATINUM_PICON +CONFIG_PLATINUM_PROJECT +CONFIG_PLATINUM_TITANIUM +CONFIG_PLL +CONFIG_PLL1_CLK_FREQ +CONFIG_PLL1_DIV2_CLK_FREQ +CONFIG_PLL_BYPASS +CONFIG_PLL_CTL_VAL +CONFIG_PLL_DIV_VAL +CONFIG_PLL_LOCKCNT_VAL +CONFIG_PLU405 +CONFIG_PM +CONFIG_PM9261 +CONFIG_PM9263 +CONFIG_PM9G45 +CONFIG_PMC405DE +CONFIG_PMC_BR_PRELIM +CONFIG_PMC_OR_PRELIM +CONFIG_PMECC_CAP +CONFIG_PMECC_INDEX_TABLE_OFFSET +CONFIG_PMECC_SECTOR_SIZE +CONFIG_PME_PLAT_CLK_DIV +CONFIG_PMIC +CONFIG_PMU +CONFIG_PMW_BASE +CONFIG_PM_SLEEP +CONFIG_PORTMUX_PIO +CONFIG_PORT_ADDR +CONFIG_PORT_AP +CONFIG_PORT_BEM +CONFIG_PORT_BME +CONFIG_PORT_BS +CONFIG_PORT_BU +CONFIG_PORT_BW +CONFIG_PORT_CR +CONFIG_PORT_CSN +CONFIG_PORT_OEN +CONFIG_PORT_PEN +CONFIG_PORT_RE +CONFIG_PORT_SOR +CONFIG_PORT_TH +CONFIG_PORT_TWE +CONFIG_PORT_WBF +CONFIG_PORT_WBN +CONFIG_POST +CONFIG_POSTBOOTMENU +CONFIG_POST_ALT_LIST +CONFIG_POST_BSPEC1 +CONFIG_POST_BSPEC1_GPIO_LEDS +CONFIG_POST_BSPEC2 +CONFIG_POST_BSPEC2_GPIO_BUTTONS +CONFIG_POST_BSPEC2_GPIO_NAMES +CONFIG_POST_BSPEC3 +CONFIG_POST_BSPEC4 +CONFIG_POST_BSPEC5 +CONFIG_POST_EXTERNAL_WORD_FUNCS +CONFIG_POST_KEY_MAGIC +CONFIG_POST_SKIP_ENV_FLAGS +CONFIG_POST_STD_LIST +CONFIG_POST_UART +CONFIG_POST_WATCHDOG +CONFIG_POWER +CONFIG_POWER_BATTERY +CONFIG_POWER_BATTERY_TRATS +CONFIG_POWER_BATTERY_TRATS2 +CONFIG_POWER_FG +CONFIG_POWER_FG_MAX17042 +CONFIG_POWER_FG_MAX77693 +CONFIG_POWER_FSL +CONFIG_POWER_FSL_MC13892 +CONFIG_POWER_FSL_MC34704 +CONFIG_POWER_HI6553 +CONFIG_POWER_I2C +CONFIG_POWER_LTC3676 +CONFIG_POWER_LTC3676_I2C_ADDR +CONFIG_POWER_MAX77686 +CONFIG_POWER_MAX77696 +CONFIG_POWER_MAX77696_I2C_ADDR +CONFIG_POWER_MAX8997 +CONFIG_POWER_MAX8998 +CONFIG_POWER_MUIC +CONFIG_POWER_MUIC_MAX77693 +CONFIG_POWER_MUIC_MAX8997 +CONFIG_POWER_PFUZE100 +CONFIG_POWER_PFUZE100_I2C_ADDR +CONFIG_POWER_PFUZE3000 +CONFIG_POWER_PFUZE3000_I2C_ADDR +CONFIG_POWER_PMIC_MAX77693 +CONFIG_POWER_SPI +CONFIG_POWER_TPS62362 +CONFIG_POWER_TPS65090_EC +CONFIG_POWER_TPS65217 +CONFIG_POWER_TPS65218 +CONFIG_POWER_TPS65910 +CONFIG_PPC4XX_RAPIDIO_DEBUG +CONFIG_PPC4XX_RAPIDIO_IN_BAR_USE_OCM +CONFIG_PPC4XX_RAPIDIO_LOOPBACK +CONFIG_PPC4XX_RAPIDIO_PROMISCUOUS_MODE +CONFIG_PPC4XX_RAPIDIO_USE_HB_PLB +CONFIG_PPC4xx_DDR_AUTOCALIBRATION +CONFIG_PPC4xx_DDR_METHOD_A +CONFIG_PPC4xx_EMAC +CONFIG_PPC64BRIDGE +CONFIG_PPC_B4420 +CONFIG_PPC_B4860 +CONFIG_PPC_C29X +CONFIG_PPC_CLUSTER_START +CONFIG_PPC_P2041 +CONFIG_PPC_P3041 +CONFIG_PPC_P4080 +CONFIG_PPC_P5020 +CONFIG_PPC_P5040 +CONFIG_PPC_SPINTABLE_COMPATIBLE +CONFIG_PPC_T1023 +CONFIG_PPC_T1024 +CONFIG_PPC_T1040 +CONFIG_PPC_T1042 +CONFIG_PPC_T2080 +CONFIG_PPC_T2081 +CONFIG_PPC_T4160 +CONFIG_PPC_T4240 +CONFIG_PQ_MDS_PIB +CONFIG_PQ_MDS_PIB_ATM +CONFIG_PRAM +CONFIG_PREBOOT +CONFIG_PRE_CONSOLE_BUFFER +CONFIG_PRE_CON_BUF_ADDR +CONFIG_PRE_CON_BUF_SZ +CONFIG_PRIMEVIEW_V16C6448AC +CONFIG_PRINTK +CONFIG_PROC_FS +CONFIG_PROFILE_ALL_BRANCHES +CONFIG_PROFILING +CONFIG_PROG_FDT +CONFIG_PROG_FDT1 +CONFIG_PROG_FDT2 +CONFIG_PROG_OS +CONFIG_PROG_OS1 +CONFIG_PROG_OS2 +CONFIG_PROG_SDRAM_TLB +CONFIG_PROG_UBOOT +CONFIG_PROG_UBOOT1 +CONFIG_PROG_UBOOT2 +CONFIG_PROOF_POINTS +CONFIG_PRPMC_PCI_ALIAS +CONFIG_PS2KBD +CONFIG_PS2MULT +CONFIG_PS2MULT_DELAY +CONFIG_PS2SERIAL +CONFIG_PSC3_USB +CONFIG_PSC_CONSOLE +CONFIG_PSC_CONSOLE2 +CONFIG_PSRAM_SCFG +CONFIG_PWM +CONFIG_PWM_IMX +CONFIG_PXA_LCD +CONFIG_PXA_MMC_GENERIC +CONFIG_PXA_PWR_I2C +CONFIG_PXA_SERIAL +CONFIG_PXA_STD_I2C +CONFIG_PXA_VGA +CONFIG_PXA_VIDEO +CONFIG_P_CLK_FREQ +CONFIG_QBMAN_CLK_DIV +CONFIG_QE +CONFIG_QEMU_E500 +CONFIG_QEMU_MIPS +CONFIG_QIXIS_I2C_ACCESS +CONFIG_QSPI +CONFIG_QSPI_QUAD_SUPPORT +CONFIG_QSPI_SEL_GPIO +CONFIG_QUOTA +CONFIG_R0P7734 +CONFIG_R2DPLUS +CONFIG_R7780MP +CONFIG_R8A66597_BASE_ADDR +CONFIG_R8A66597_ENDIAN +CONFIG_R8A66597_LDRV +CONFIG_R8A66597_XTAL +CONFIG_R8A7740 +CONFIG_R8A7790 +CONFIG_R8A7791 +CONFIG_R8A7792 +CONFIG_R8A7793 +CONFIG_R8A7794 +CONFIG_RAINIER +CONFIG_RAMBOOT +CONFIG_RAMBOOTCOMMAND +CONFIG_RAMBOOTCOMMAND_TFTP +CONFIG_RAMBOOT_NAND +CONFIG_RAMBOOT_PBL +CONFIG_RAMBOOT_SDCARD +CONFIG_RAMBOOT_SPIFLASH +CONFIG_RAMBOOT_TEXT_BASE +CONFIG_RAMDISKFILE +CONFIG_RAMDISK_ADDR +CONFIG_RAMDISK_BOOT +CONFIG_RAM_BOOT +CONFIG_RAM_BOOT_PHYS +CONFIG_RANDOM_UUID +CONFIG_RAPIDIO +CONFIG_RBTREE +CONFIG_RCAR_BOARD_STRING +CONFIG_RD_LVL +CONFIG_REALMODE_DEBUG +CONFIG_RED_LED +CONFIG_REFCLK_FREQ +CONFIG_REG +CONFIG_REG_0 +CONFIG_REG_1_BASE +CONFIG_REG_2 +CONFIG_REG_3 +CONFIG_REG_8 +CONFIG_REG_APER_SIZE +CONFIG_RELOC_GOT_SKIP_NULL +CONFIG_REMAKE_ELF +CONFIG_REQ +CONFIG_RESERVED_01_BASE +CONFIG_RESERVED_02_BASE +CONFIG_RESERVED_03_BASE +CONFIG_RESERVED_04_BASE +CONFIG_RESET +CONFIG_RESET_PHY_R +CONFIG_RESET_TO_RETRY +CONFIG_RESET_VECTOR_ADDRESS +CONFIG_RESTORE_FLASH +CONFIG_RES_BLOCK_SIZE +CONFIG_REV1 +CONFIG_REV3 +CONFIG_REVISION_TAG +CONFIG_RFSPART +CONFIG_RGMII +CONFIG_RIO +CONFIG_RMII +CONFIG_RMOBILE_BOARD_STRING +CONFIG_RMSTP0_ENA +CONFIG_RMSTP10_ENA +CONFIG_RMSTP11_ENA +CONFIG_RMSTP1_ENA +CONFIG_RMSTP2_ENA +CONFIG_RMSTP3_ENA +CONFIG_RMSTP4_ENA +CONFIG_RMSTP5_ENA +CONFIG_RMSTP6_ENA +CONFIG_RMSTP7_ENA +CONFIG_RMSTP8_ENA +CONFIG_RMSTP9_ENA +CONFIG_ROCKCHIP_CHIP_TAG +CONFIG_ROCKCHIP_MAX_INIT_SIZE +CONFIG_ROCKCHIP_SDHCI_MAX_FREQ +CONFIG_ROCKCHIP_USB2_PHY +CONFIG_ROM_STUBS +CONFIG_ROOTFS_OFFSET +CONFIG_ROOTPATH +CONFIG_RSK7203 +CONFIG_RSK7264 +CONFIG_RSK7269 +CONFIG_RTC_BFIN +CONFIG_RTC_DS1307 +CONFIG_RTC_DS1337 +CONFIG_RTC_DS1338 +CONFIG_RTC_DS1374 +CONFIG_RTC_DS1388 +CONFIG_RTC_DS1556 +CONFIG_RTC_DS174x +CONFIG_RTC_DS3231 +CONFIG_RTC_FTRTC010 +CONFIG_RTC_IMXDI +CONFIG_RTC_INTERNAL +CONFIG_RTC_M41T11 +CONFIG_RTC_M41T60 +CONFIG_RTC_M41T62 +CONFIG_RTC_M48T35A +CONFIG_RTC_MC13XXX +CONFIG_RTC_MC146818 +CONFIG_RTC_MCFRRTC +CONFIG_RTC_MCP79411 +CONFIG_RTC_MPC5200 +CONFIG_RTC_MPC8xx +CONFIG_RTC_MV +CONFIG_RTC_MXS +CONFIG_RTC_PCF8563 +CONFIG_RTC_PT7C4338 +CONFIG_RTC_RTC4543 +CONFIG_RTC_RV3029 +CONFIG_RTC_RX8025 +CONFIG_RTC_S3C24X0 +CONFIG_RTC_X1205 +CONFIG_RUN_FROM_DDR0 +CONFIG_RUN_FROM_DDR1 +CONFIG_RUN_FROM_IRAM_ONLY +CONFIG_RX_DESCR_NUM +CONFIG_S32V234 +CONFIG_S3C2400 +CONFIG_S3C2410 +CONFIG_S3C2410_NAND_BBT +CONFIG_S3C2410_NAND_HWECC +CONFIG_S3C2440 +CONFIG_S3C24X0 +CONFIG_S3C24X0_SERIAL +CONFIG_S3C24XX_CUSTOM_NAND_TIMING +CONFIG_S3C24XX_TACLS +CONFIG_S3C24XX_TWRPH0 +CONFIG_S3C24XX_TWRPH1 +CONFIG_S3D2_CLK_FREQ +CONFIG_S5P +CONFIG_S5PC100 +CONFIG_S5PC110 +CONFIG_S5P_PA_SYSRAM +CONFIG_S5P_SDHCI +CONFIG_S6E63D6 +CONFIG_S6E8AX0 +CONFIG_SA1100_ADSBITSY +CONFIG_SA1100_ASSABET +CONFIG_SA1100_BADGE4 +CONFIG_SA1100_BRUTUS +CONFIG_SA1100_CERF +CONFIG_SA1100_COLLIE +CONFIG_SA1100_CONSUS +CONFIG_SA1100_FLEXANET +CONFIG_SA1100_GRAPHICSCLIENT +CONFIG_SA1100_GRAPHICSMASTER +CONFIG_SA1100_H3100 +CONFIG_SA1100_H3600 +CONFIG_SA1100_HACKKIT +CONFIG_SA1100_JORNADA720 +CONFIG_SA1100_LART +CONFIG_SA1100_NANOENGINE +CONFIG_SA1100_PFS168 +CONFIG_SA1100_PLEB +CONFIG_SA1100_PT_SYSTEM3 +CONFIG_SA1100_SHANNON +CONFIG_SA1100_SIMPAD +CONFIG_SA1100_XP860 +CONFIG_SABRELITE +CONFIG_SAMA5D2 +CONFIG_SAMA5D3 +CONFIG_SAMA5D3_LCD_BASE +CONFIG_SAMA5D4 +CONFIG_SAMSUNG +CONFIG_SAMSUNG_ONENAND +CONFIG_SANDBOX_ARCH +CONFIG_SANDBOX_BIG_ENDIAN +CONFIG_SANDBOX_BITS_PER_LONG +CONFIG_SANDBOX_SDL +CONFIG_SANDBOX_SPI_MAX_BUS +CONFIG_SANDBOX_SPI_MAX_CS +CONFIG_SAR2_REG +CONFIG_SAR_REG +CONFIG_SATA1 +CONFIG_SATA2 +CONFIG_SATAPWR +CONFIG_SATA_CEVA +CONFIG_SATA_DWC +CONFIG_SATA_MV +CONFIG_SATA_SIL +CONFIG_SATA_SIL3114 +CONFIG_SATA_ULI5288 +CONFIG_SBC8349 +CONFIG_SBC8548 +CONFIG_SBC8641D +CONFIG_SCC1_ENET +CONFIG_SCC2_ENET +CONFIG_SCF0403_LCD +CONFIG_SCIF +CONFIG_SCIF_A +CONFIG_SCIF_CONSOLE +CONFIG_SCIF_EXT_CLOCK +CONFIG_SCIF_USE_EXT_CLK +CONFIG_SCLK0_DIV +CONFIG_SCLK1_DIV +CONFIG_SCLK_DIV +CONFIG_SCLK_HZ +CONFIG_SCSI +CONFIG_SCSI_AHCI +CONFIG_SCSI_AHCI_PLAT +CONFIG_SCSI_DEV_ID +CONFIG_SCSI_DEV_LIST +CONFIG_SCSI_SYM53C8XX +CONFIG_SC_TIMER_CLK +CONFIG_SDCARD +CONFIG_SDHCI +CONFIG_SDHCI_CMD_DEFAULT_TIMEOUT +CONFIG_SDHCI_CMD_MAX_TIMEOUT +CONFIG_SDRAM_BANK0 +CONFIG_SDRAM_BANK1 +CONFIG_SDRAM_ECC +CONFIG_SDRAM_OFFSET_FOR_RT +CONFIG_SDRAM_PPC4xx_DENALI_DDR2 +CONFIG_SDRAM_PPC4xx_IBM_DDR +CONFIG_SDRAM_PPC4xx_IBM_DDR2 +CONFIG_SDRAM_PPC4xx_IBM_SDRAM +CONFIG_SDRC +CONFIG_SDR_MT48LC16M16A2 +CONFIG_SD_BOOT_QSPI +CONFIG_SECBOOT +CONFIG_SECURE_BL1_ONLY +CONFIG_SECURE_BOOT +CONFIG_SECURE_RUNTIME_RESV_SRAM_SZ +CONFIG_SECURITY +CONFIG_SEC_DEQ_TIMEOUT +CONFIG_SEC_FW_SIZE +CONFIG_SELECTED +CONFIG_SEQUOIA +CONFIG_SERIAL0 +CONFIG_SERIAL1 +CONFIG_SERIAL2 +CONFIG_SERIAL3 +CONFIG_SERIAL_BOOT +CONFIG_SERIAL_FLASH +CONFIG_SERIAL_HW_FLOW_CONTROL +CONFIG_SERIAL_MULTI +CONFIG_SERIAL_SOFTWARE_FIFO +CONFIG_SERIAL_TAG +CONFIG_SERIRQ_CONTINUOUS_MODE +CONFIG_SERVERIP +CONFIG_SETUP_INITRD_TAG +CONFIG_SETUP_MEMORY_TAGS +CONFIG_SET_BIST +CONFIG_SET_BOOTARGS +CONFIG_SET_DFU_ALT_BUF_LEN +CONFIG_SET_DFU_ALT_INFO +CONFIG_SFIO +CONFIG_SF_DATAFLASH +CONFIG_SF_DEFAULT_BUS +CONFIG_SF_DEFAULT_CS +CONFIG_SF_DEFAULT_HZ +CONFIG_SF_DEFAULT_MODE +CONFIG_SF_DEFAULT_SPEED +CONFIG_SF_DUAL_FLASH +CONFIG_SGI_IP28 +CONFIG_SH4_PCI +CONFIG_SH73A0 +CONFIG_SH7751_PCI +CONFIG_SH7752EVB +CONFIG_SH7753EVB +CONFIG_SH7757LCR +CONFIG_SH7757LCR_DDR_ECC +CONFIG_SH7763RDP +CONFIG_SH7780_PCI +CONFIG_SH7780_PCI_BAR +CONFIG_SH7780_PCI_LAR +CONFIG_SH7780_PCI_LSR +CONFIG_SH7785LCR +CONFIG_SHA1SUM_VERIFY +CONFIG_SHARP_16x9 +CONFIG_SHARP_LM8V31 +CONFIG_SHARP_LQ035Q7DH06 +CONFIG_SHARP_LQ057Q3DC02 +CONFIG_SHARP_LQ065T9DR51U +CONFIG_SHARP_LQ084V1DG21 +CONFIG_SHARP_LQ104V7DS01 +CONFIG_SHARP_LQ64D341 +CONFIG_SHEEVA_88SV131 +CONFIG_SHEEVA_88SV331xV5 +CONFIG_SHELL +CONFIG_SHMIN +CONFIG_SHOW_ACTIVITY +CONFIG_SHOW_BOOT_PROGRESS +CONFIG_SH_CMT_CLK_FREQ +CONFIG_SH_DSP +CONFIG_SH_ETHER +CONFIG_SH_ETHER_ALIGNE_SIZE +CONFIG_SH_ETHER_BASE_ADDR +CONFIG_SH_ETHER_CACHE_INVALIDATE +CONFIG_SH_ETHER_CACHE_WRITEBACK +CONFIG_SH_ETHER_PHY_ADDR +CONFIG_SH_ETHER_PHY_MODE +CONFIG_SH_ETHER_SH7734_MII +CONFIG_SH_ETHER_USE_GETHER +CONFIG_SH_ETHER_USE_PORT +CONFIG_SH_GPIO_PFC +CONFIG_SH_I2C_8BIT +CONFIG_SH_I2C_BASE0 +CONFIG_SH_I2C_BASE1 +CONFIG_SH_I2C_CLOCK +CONFIG_SH_I2C_DATA_HIGH +CONFIG_SH_I2C_DATA_LOW +CONFIG_SH_MMCIF +CONFIG_SH_MMCIF_ADDR +CONFIG_SH_MMCIF_CLK +CONFIG_SH_QSPI +CONFIG_SH_QSPI_BASE +CONFIG_SH_SCIF_CLK_FREQ +CONFIG_SH_SDHI_FREQ +CONFIG_SH_SDRAM_OFFSET +CONFIG_SH_SH7734_I2C +CONFIG_SH_SPI +CONFIG_SH_SPI_BASE +CONFIG_SH_TMU_CLK_FREQ +CONFIG_SIEMENS_DRACO +CONFIG_SIEMENS_MACH_TYPE +CONFIG_SIEMENS_PXM2 +CONFIG_SIEMENS_RUT +CONFIG_SILENT_CONSOLE +CONFIG_SILENT_CONSOLE_UPDATE_ON_RELOC +CONFIG_SILENT_CONSOLE_UPDATE_ON_SET +CONFIG_SIMU +CONFIG_SKIP_LOCAL_MAC_RANDOMIZATION +CONFIG_SKIP_LOWLEVEL_INIT +CONFIG_SKIP_LOWLEVEL_INIT_ONLY +CONFIG_SKIP_TRUNOFF_WATCHDOG +CONFIG_SLIC +CONFIG_SLTTMR +CONFIG_SMC91111 +CONFIG_SMC91111_BASE +CONFIG_SMC91111_EXT_PHY +CONFIG_SMC911X +CONFIG_SMC911X_16_BIT +CONFIG_SMC911X_32_BIT +CONFIG_SMC911X_BASE +CONFIG_SMC911X_NO_EEPROM +CONFIG_SMC_91111_EXT_PHY +CONFIG_SMC_AUTONEG_TIMEOUT +CONFIG_SMC_B0CTL_VAL +CONFIG_SMC_B0ETIM_VAL +CONFIG_SMC_B0TIM_VAL +CONFIG_SMC_B1CTL_VAL +CONFIG_SMC_B1ETIM_VAL +CONFIG_SMC_B1TIM_VAL +CONFIG_SMC_B2CTL_VAL +CONFIG_SMC_B2ETIM_VAL +CONFIG_SMC_B2TIM_VAL +CONFIG_SMC_B3CTL_VAL +CONFIG_SMC_B3ETIM_VAL +CONFIG_SMC_B3TIM_VAL +CONFIG_SMC_GCTL_VAL +CONFIG_SMC_USE_32_BIT +CONFIG_SMC_USE_IOFUNCS +CONFIG_SMDK2410 +CONFIG_SMDK5420 +CONFIG_SMDKC100 +CONFIG_SMDKV310 +CONFIG_SMP_PEN_ADDR +CONFIG_SMSC_LPC47M +CONFIG_SMSC_SIO1007 +CONFIG_SMSTP0_ENA +CONFIG_SMSTP10_ENA +CONFIG_SMSTP11_ENA +CONFIG_SMSTP1_ENA +CONFIG_SMSTP2_ENA +CONFIG_SMSTP3_ENA +CONFIG_SMSTP4_ENA +CONFIG_SMSTP5_ENA +CONFIG_SMSTP6_ENA +CONFIG_SMSTP7_ENA +CONFIG_SMSTP8_ENA +CONFIG_SMSTP9_ENA +CONFIG_SOCFPGA_DWMMC +CONFIG_SOCFPGA_DWMMC_FIFO_DEPTH +CONFIG_SOCFPGA_VIRTUAL_TARGET +CONFIG_SOCRATES +CONFIG_SOC_AU1000 +CONFIG_SOC_AU1100 +CONFIG_SOC_AU1500 +CONFIG_SOC_AU1550 +CONFIG_SOC_AU1X00 +CONFIG_SOC_DA850 +CONFIG_SOC_DA8XX +CONFIG_SOC_DM355 +CONFIG_SOC_DM365 +CONFIG_SOC_DM644X +CONFIG_SOC_DM646X +CONFIG_SOC_K2E +CONFIG_SOC_K2G +CONFIG_SOC_K2HK +CONFIG_SOC_K2L +CONFIG_SOC_KEYSTONE +CONFIG_SOC_OMAP3430 +CONFIG_SOFT_I2C_GPIO_SCL +CONFIG_SOFT_I2C_GPIO_SDA +CONFIG_SOFT_I2C_I2C10_SCL +CONFIG_SOFT_I2C_I2C10_SDA +CONFIG_SOFT_I2C_I2C5_SCL +CONFIG_SOFT_I2C_I2C5_SDA +CONFIG_SOFT_I2C_I2C9_SCL +CONFIG_SOFT_I2C_I2C9_SDA +CONFIG_SOFT_I2C_MULTI_BUS +CONFIG_SOFT_I2C_READ_REPEATED_START +CONFIG_SOFT_SPI +CONFIG_SOFT_TWS +CONFIG_SOURCE +CONFIG_SPARSE_RCU_POINTER +CONFIG_SPDDRAM_SILENT +CONFIG_SPD_EEPROM +CONFIG_SPEAR300 +CONFIG_SPEAR310 +CONFIG_SPEAR320 +CONFIG_SPEAR3XX +CONFIG_SPEAR600 +CONFIG_SPEAR_BOOTSTRAPCFG +CONFIG_SPEAR_BOOTSTRAPMASK +CONFIG_SPEAR_BOOTSTRAPSHFT +CONFIG_SPEAR_EMI +CONFIG_SPEAR_EMIBASE +CONFIG_SPEAR_ETHBASE +CONFIG_SPEAR_GPIO +CONFIG_SPEAR_HZ +CONFIG_SPEAR_HZ_CLOCK +CONFIG_SPEAR_MISCBASE +CONFIG_SPEAR_MPMCBASE +CONFIG_SPEAR_MPMCREGS +CONFIG_SPEAR_NORNAND16BOOT +CONFIG_SPEAR_NORNAND8BOOT +CONFIG_SPEAR_NORNANDBOOT +CONFIG_SPEAR_ONLYSNORBOOT +CONFIG_SPEAR_RASBASE +CONFIG_SPEAR_SYSCNTLBASE +CONFIG_SPEAR_TIMERBASE +CONFIG_SPEAR_UART48M +CONFIG_SPEAR_UARTCLKMSK +CONFIG_SPEAR_USBBOOT +CONFIG_SPEAR_USBTTY +CONFIG_SPI +CONFIG_SPI_ADDR +CONFIG_SPI_BAUD_INITBLOCK +CONFIG_SPI_BOOTING +CONFIG_SPI_CS_IS_VALID +CONFIG_SPI_DATAFLASH_WRITE_VERIFY +CONFIG_SPI_FLASH_ALL +CONFIG_SPI_FLASH_ISSI +CONFIG_SPI_FLASH_QUAD +CONFIG_SPI_FLASH_SIZE +CONFIG_SPI_HALF_DUPLEX +CONFIG_SPI_IDLE_VAL +CONFIG_SPI_LENGTH +CONFIG_SPI_N25Q256A_RESET +CONFIG_SPLASHIMAGE_GUARD +CONFIG_SPLASH_SCREEN +CONFIG_SPLASH_SCREEN_ALIGN +CONFIG_SPLASH_SOURCE +CONFIG_SPLL_FREQ +CONFIG_SPL_ +CONFIG_SPL_ABORT_ON_RAW_IMAGE +CONFIG_SPL_AM33XX_ENABLE_RTC32K_OSC +CONFIG_SPL_ATMEL_SIZE +CONFIG_SPL_BOARD_INIT +CONFIG_SPL_BOARD_LOAD_IMAGE +CONFIG_SPL_BOOTROM_SAVE +CONFIG_SPL_BOOT_DEVICE +CONFIG_SPL_BSS_MAX_SIZE +CONFIG_SPL_BSS_START_ADDR +CONFIG_SPL_BUILD +CONFIG_SPL_CMT +CONFIG_SPL_CMT_DEBUG +CONFIG_SPL_COMMON_INIT_DDR +CONFIG_SPL_CONSOLE +CONFIG_SPL_DISPLAY_PRINT +CONFIG_SPL_ETH_DEVICE +CONFIG_SPL_FLUSH_IMAGE +CONFIG_SPL_FOO +CONFIG_SPL_FRAMEWORK +CONFIG_SPL_FSL_PBL +CONFIG_SPL_FS_LOAD_ARGS_NAME +CONFIG_SPL_FS_LOAD_KERNEL_NAME +CONFIG_SPL_FS_LOAD_PAYLOAD_NAME +CONFIG_SPL_GD_ADDR +CONFIG_SPL_GENERATE_ATMEL_PMECC_HEADER +CONFIG_SPL_INIT_MINIMAL +CONFIG_SPL_JR0_LIODN_NS +CONFIG_SPL_JR0_LIODN_S +CONFIG_SPL_LDSCRIPT +CONFIG_SPL_LOAD_FIT_ADDRESS +CONFIG_SPL_MAX_FOOTPRINT +CONFIG_SPL_MAX_PEB_SIZE +CONFIG_SPL_MAX_SIZE +CONFIG_SPL_MMC_BOOT +CONFIG_SPL_MMC_LOAD +CONFIG_SPL_MMC_MINIMAL +CONFIG_SPL_MPC83XX_WAIT_FOR_NAND +CONFIG_SPL_MXS_PSWITCH_WAIT +CONFIG_SPL_NAND_AM33XX_BCH +CONFIG_SPL_NAND_BASE +CONFIG_SPL_NAND_BOOT +CONFIG_SPL_NAND_DRIVERS +CONFIG_SPL_NAND_ECC +CONFIG_SPL_NAND_INIT +CONFIG_SPL_NAND_LOAD +CONFIG_SPL_NAND_MINIMAL +CONFIG_SPL_NAND_MXS +CONFIG_SPL_NAND_RAW_ONLY +CONFIG_SPL_NAND_SIMPLE +CONFIG_SPL_NAND_SOFTECC +CONFIG_SPL_NAND_WORKSPACE +CONFIG_SPL_NO_CPU_SUPPORT_CODE +CONFIG_SPL_OMAP3_ID_NAND +CONFIG_SPL_OS_BOOT +CONFIG_SPL_PAD_TO +CONFIG_SPL_PANIC_ON_RAW_IMAGE +CONFIG_SPL_PBL_PAD +CONFIG_SPL_PPAACT_ADDR +CONFIG_SPL_RAM_DEVICE +CONFIG_SPL_RELOC_MALLOC_ADDR +CONFIG_SPL_RELOC_MALLOC_SIZE +CONFIG_SPL_RELOC_STACK +CONFIG_SPL_RELOC_STACK_SIZE +CONFIG_SPL_RELOC_TEXT_BASE +CONFIG_SPL_SATA_BOOT_DEVICE +CONFIG_SPL_SIZE +CONFIG_SPL_SKIP_RELOCATE +CONFIG_SPL_SPAACT_ADDR +CONFIG_SPL_SPI_BOOT +CONFIG_SPL_SPI_FLASH_MINIMAL +CONFIG_SPL_SPI_LOAD +CONFIG_SPL_STACK +CONFIG_SPL_STACK_ADDR +CONFIG_SPL_STACK_SIZE +CONFIG_SPL_START_S_PATH +CONFIG_SPL_TARGET +CONFIG_SPL_TEXT_BASE +CONFIG_SPL_UBI +CONFIG_SPL_UBI_INFO_ADDR +CONFIG_SPL_UBI_LEB_START +CONFIG_SPL_UBI_LOAD_ARGS_ID +CONFIG_SPL_UBI_LOAD_KERNEL_ID +CONFIG_SPL_UBI_LOAD_MONITOR_ID +CONFIG_SPL_UBI_MAX_PEBS +CONFIG_SPL_UBI_MAX_PEB_SIZE +CONFIG_SPL_UBI_MAX_VOL_LEBS +CONFIG_SPL_UBI_PEB_OFFSET +CONFIG_SPL_UBI_VID_OFFSET +CONFIG_SPL_UBI_VOL_IDS +CONFIG_SPL_UBOOT_KEY_HASH +CONFIG_SRAM_BASE +CONFIG_SRAM_SIZE +CONFIG_SRIO1 +CONFIG_SRIO2 +CONFIG_SRIO_PCIE_BOOT_BRR_OFFSET +CONFIG_SRIO_PCIE_BOOT_IMAGE_MEM_BUS1 +CONFIG_SRIO_PCIE_BOOT_IMAGE_MEM_BUS2 +CONFIG_SRIO_PCIE_BOOT_IMAGE_MEM_PHYS +CONFIG_SRIO_PCIE_BOOT_IMAGE_SIZE +CONFIG_SRIO_PCIE_BOOT_MASTER +CONFIG_SRIO_PCIE_BOOT_RELEASE_MASK +CONFIG_SRIO_PCIE_BOOT_SLAVE +CONFIG_SRIO_PCIE_BOOT_UCODE_ENV_MEM_BUS +CONFIG_SRIO_PCIE_BOOT_UCODE_ENV_MEM_PHYS +CONFIG_SRIO_PCIE_BOOT_UCODE_ENV_SIZE +CONFIG_SSD_BR_PRELIM +CONFIG_SSD_OR_PRELIM +CONFIG_SSE2 +CONFIG_SSI1_FREQ +CONFIG_SSI2_FREQ +CONFIG_SSP1_BASE +CONFIG_SSP2_BASE +CONFIG_SSP3_BASE +CONFIG_STACKBASE +CONFIG_STACKSIZE +CONFIG_STACKSIZE_FIQ +CONFIG_STACKSIZE_IRQ +CONFIG_STAMP_CF +CONFIG_STANDALONE_LOAD_ADDR +CONFIG_STATIC_BOARD_REV +CONFIG_STATIC_RELA +CONFIG_STATUSLED +CONFIG_STATUS_LED +CONFIG_STD_DEVICES_SETTINGS +CONFIG_STK52XX +CONFIG_STK52XX_REV100 +CONFIG_STM32F4DISCOVERY +CONFIG_STM32X7_SERIAL +CONFIG_STM32_FLASH +CONFIG_STM32_GPIO +CONFIG_STM32_HSE_HZ +CONFIG_STM32_HZ +CONFIG_STM32_SERIAL +CONFIG_STORAGE_EMMC +CONFIG_STRESS +CONFIG_STRIDER +CONFIG_STRIDER_CON +CONFIG_STRIDER_CON_DP +CONFIG_STRIDER_CPU +CONFIG_STRIDER_CPU_DP +CONFIG_STRIDER_FANS +CONFIG_STUART +CONFIG_STV0991 +CONFIG_STV0991_HZ +CONFIG_STV0991_HZ_CLOCK +CONFIG_ST_SMI +CONFIG_SUN4 +CONFIG_SUNXI +CONFIG_SUNXI_AHCI +CONFIG_SUNXI_EMAC +CONFIG_SUNXI_GMAC +CONFIG_SUNXI_GPIO +CONFIG_SUNXI_MAX_FB_SIZE +CONFIG_SUNXI_USB_PHYS +CONFIG_SUPERH_ON_CHIP_R8A66597 +CONFIG_SUPPORT_EMMC_BOOT +CONFIG_SUPPORT_EMMC_RPMB +CONFIG_SUPPORT_RAW_INITRD +CONFIG_SUPPORT_VFAT +CONFIG_SUVD3 +CONFIG_SX151X_GPIO_COUNT_8 +CONFIG_SX151X_SPI_BUS +CONFIG_SXNI855T +CONFIG_SYSCOUNTER_TIMER +CONFIG_SYSFLAGS_ADDR +CONFIG_SYSFS +CONFIG_SYSMGR_ISWGRP_HANDOFF +CONFIG_SYSTEMACE +CONFIG_SYS_33MHZ +CONFIG_SYS_405_UART_ERRATA_59 +CONFIG_SYS_460GT_SRIO_ERRATA_1 +CONFIG_SYS_4xx_CHIP_21_405EX_NO_SECURITY +CONFIG_SYS_4xx_CHIP_21_405EX_SECURITY +CONFIG_SYS_4xx_CHIP_21_405EXr_NO_SECURITY +CONFIG_SYS_4xx_CHIP_21_405EXr_SECURITY +CONFIG_SYS_4xx_CHIP_21_ERRATA +CONFIG_SYS_4xx_GPIO_TABLE +CONFIG_SYS_4xx_RESET_TYPE +CONFIG_SYS_64BIT +CONFIG_SYS_64BIT_LBA +CONFIG_SYS_64BIT_VSPRINTF +CONFIG_SYS_66MHZ +CONFIG_SYS_8313ERDB_BROKEN_PMC +CONFIG_SYS_83XX_DDR_USES_CS0 +CONFIG_SYS_8XX_XIN +CONFIG_SYS_8xx_CPUCLK_MAX +CONFIG_SYS_8xx_CPUCLK_MIN +CONFIG_SYS_ACE_BASE +CONFIG_SYS_ACE_BASE_PHYS_H +CONFIG_SYS_ACE_BASE_PHYS_L +CONFIG_SYS_ACR_APARK +CONFIG_SYS_ACR_PARKM +CONFIG_SYS_ACR_PIPE_DEP +CONFIG_SYS_ACR_RPTCNT +CONFIG_SYS_ADDRESS_MAP_A +CONFIG_SYS_ADV7611_I2C +CONFIG_SYS_AHB_BASE +CONFIG_SYS_ALE_MASK +CONFIG_SYS_ALLOC_DPRAM +CONFIG_SYS_ALT_BOOT +CONFIG_SYS_ALT_FLASH +CONFIG_SYS_ALT_MEMTEST +CONFIG_SYS_AMASK0 +CONFIG_SYS_AMASK0_FINAL +CONFIG_SYS_AMASK1 +CONFIG_SYS_AMASK1_FINAL +CONFIG_SYS_AMASK2 +CONFIG_SYS_AMASK2_FINAL +CONFIG_SYS_AMASK3 +CONFIG_SYS_AMASK3_FINAL +CONFIG_SYS_AMASK4 +CONFIG_SYS_AMASK5 +CONFIG_SYS_AMASK6 +CONFIG_SYS_AMASK7 +CONFIG_SYS_APP1_BASE +CONFIG_SYS_APP1_SIZE +CONFIG_SYS_APP2_BASE +CONFIG_SYS_APP2_SIZE +CONFIG_SYS_ARCH_TIMER +CONFIG_SYS_ARIA_FPGA_BASE +CONFIG_SYS_ARIA_FPGA_SIZE +CONFIG_SYS_ARIA_SRAM_BASE +CONFIG_SYS_ARIA_SRAM_SIZE +CONFIG_SYS_ARM_CACHE_WRITETHROUGH +CONFIG_SYS_AT91_CPU_NAME +CONFIG_SYS_AT91_MAIN_CLOCK +CONFIG_SYS_AT91_PLLA +CONFIG_SYS_AT91_PLLB +CONFIG_SYS_AT91_SLOW_CLOCK +CONFIG_SYS_ATA_ALT_OFFSET +CONFIG_SYS_ATA_BASE_ADDR +CONFIG_SYS_ATA_CS_ON_I2C2 +CONFIG_SYS_ATA_CS_ON_TIMER01 +CONFIG_SYS_ATA_DATA_OFFSET +CONFIG_SYS_ATA_IDE0_OFFSET +CONFIG_SYS_ATA_IDE1_OFFSET +CONFIG_SYS_ATA_PORT_ADDR +CONFIG_SYS_ATA_REG_OFFSET +CONFIG_SYS_ATA_STRIDE +CONFIG_SYS_ATI_REV_A11 +CONFIG_SYS_ATI_REV_A12 +CONFIG_SYS_ATI_REV_A13 +CONFIG_SYS_ATI_REV_ID_MASK +CONFIG_SYS_ATMEL_BASE +CONFIG_SYS_ATMEL_BOOT +CONFIG_SYS_ATMEL_CPU_NAME +CONFIG_SYS_ATMEL_REGION +CONFIG_SYS_ATMEL_SECT +CONFIG_SYS_ATMEL_SECTSZ +CONFIG_SYS_ATMEL_TOTALSECT +CONFIG_SYS_AUTOLOAD +CONFIG_SYS_AUTOMATIC_SDRAM_DETECTION +CONFIG_SYS_AUXCORE_BOOTDATA +CONFIG_SYS_BARGSIZE +CONFIG_SYS_BASE_BAUD +CONFIG_SYS_BAUDRATE_TABLE +CONFIG_SYS_BCR +CONFIG_SYS_BCR_60x +CONFIG_SYS_BCR_SINGLE +CONFIG_SYS_BCSR +CONFIG_SYS_BCSR3_PCIE +CONFIG_SYS_BCSR5_PCI66EN +CONFIG_SYS_BCSR_ADDR +CONFIG_SYS_BCSR_BASE +CONFIG_SYS_BCSR_BASE_PHYS +CONFIG_SYS_BCSR_SIZE +CONFIG_SYS_BD_INFO_ADDR +CONFIG_SYS_BD_REV +CONFIG_SYS_BFTIC3_BASE +CONFIG_SYS_BFTIC3_SIZE +CONFIG_SYS_BITBANG_PHY_PORT +CONFIG_SYS_BITBANG_PHY_PORTS +CONFIG_SYS_BLACK_IN_WRITE +CONFIG_SYS_BMAN_CENA_BASE +CONFIG_SYS_BMAN_CENA_SIZE +CONFIG_SYS_BMAN_CINH_BASE +CONFIG_SYS_BMAN_CINH_SIZE +CONFIG_SYS_BMAN_MEM_BASE +CONFIG_SYS_BMAN_MEM_PHYS +CONFIG_SYS_BMAN_MEM_SIZE +CONFIG_SYS_BMAN_NUM_PORTALS +CONFIG_SYS_BMAN_SP_CENA_SIZE +CONFIG_SYS_BMAN_SP_CINH_SIZE +CONFIG_SYS_BMAN_SWP_ISDR_REG +CONFIG_SYS_BOARD_NAME +CONFIG_SYS_BOARD_OMAP3_HA +CONFIG_SYS_BOARD_VERSION +CONFIG_SYS_BOOK3E_HV +CONFIG_SYS_BOOTCOUNT_ADDR +CONFIG_SYS_BOOTCOUNT_BE +CONFIG_SYS_BOOTCOUNT_LE +CONFIG_SYS_BOOTCOUNT_SINGLEWORD +CONFIG_SYS_BOOTCS_CFG +CONFIG_SYS_BOOTCS_SIZE +CONFIG_SYS_BOOTCS_START +CONFIG_SYS_BOOTFILE +CONFIG_SYS_BOOTFILE_PREFIX +CONFIG_SYS_BOOTMAPSZ +CONFIG_SYS_BOOTM_LEN +CONFIG_SYS_BOOTPARAMS_LEN +CONFIG_SYS_BOOTSZ +CONFIG_SYS_BOOT_BASE_ADDR +CONFIG_SYS_BOOT_BLOCK +CONFIG_SYS_BOOT_EEPROM_PAGE_WRITE_BITS +CONFIG_SYS_BOOT_GET_CMDLINE +CONFIG_SYS_BOOT_GET_KBD +CONFIG_SYS_BOOT_RAMDISK_HIGH +CONFIG_SYS_BOOT_SPINOR +CONFIG_SYS_BR0_64M +CONFIG_SYS_BR0_8M +CONFIG_SYS_BR0_PRELIM +CONFIG_SYS_BR10_PRELIM +CONFIG_SYS_BR11_PRELIM +CONFIG_SYS_BR1_PRELIM +CONFIG_SYS_BR2_PRELIM +CONFIG_SYS_BR3_CAN +CONFIG_SYS_BR3_PRELIM +CONFIG_SYS_BR4_PRELIM +CONFIG_SYS_BR5_ISP1362 +CONFIG_SYS_BR5_PRELIM +CONFIG_SYS_BR6_64M +CONFIG_SYS_BR6_8M +CONFIG_SYS_BR6_PRELIM +CONFIG_SYS_BR7_PRELIM +CONFIG_SYS_BR8_PRELIM +CONFIG_SYS_BR9_PRELIM +CONFIG_SYS_BRGCLK_PRESCALE +CONFIG_SYS_BRIGHTNESS +CONFIG_SYS_BUSCLK +CONFIG_SYS_CACHELINE_SHIFT +CONFIG_SYS_CACHE_ACR0 +CONFIG_SYS_CACHE_ACR1 +CONFIG_SYS_CACHE_ACR2 +CONFIG_SYS_CACHE_ACR3 +CONFIG_SYS_CACHE_ACR4 +CONFIG_SYS_CACHE_ACR5 +CONFIG_SYS_CACHE_ACR6 +CONFIG_SYS_CACHE_ACR7 +CONFIG_SYS_CACHE_DCACR +CONFIG_SYS_CACHE_ICACR +CONFIG_SYS_CACHE_STASHING +CONFIG_SYS_CADMUS_BASE_REG +CONFIG_SYS_CAN_BASE +CONFIG_SYS_CAN_OR_AM +CONFIG_SYS_CBSIZE +CONFIG_SYS_CCCR +CONFIG_SYS_CCI400_ADDR +CONFIG_SYS_CCSRBAR +CONFIG_SYS_CCSRBAR_DEFAULT +CONFIG_SYS_CCSRBAR_PHYS +CONFIG_SYS_CCSRBAR_PHYS_HIGH +CONFIG_SYS_CCSRBAR_PHYS_LOW +CONFIG_SYS_CCSR_DEFAULT_DBATL +CONFIG_SYS_CCSR_DEFAULT_DBATU +CONFIG_SYS_CCSR_DEFAULT_IBATL +CONFIG_SYS_CCSR_DEFAULT_IBATU +CONFIG_SYS_CCSR_DO_NOT_RELOCATE +CONFIG_SYS_CFI_FLASH_CONFIG_REGS +CONFIG_SYS_CFI_FLASH_STATUS_POLL +CONFIG_SYS_CF_BASE +CONFIG_SYS_CF_INTC_REG1 +CONFIG_SYS_CF_SIZE +CONFIG_SYS_CH7301_I2C +CONFIG_SYS_CKEN +CONFIG_SYS_CLE_MASK +CONFIG_SYS_CLK +CONFIG_SYS_CLKDIV_CPU +CONFIG_SYS_CLKDIV_HSB +CONFIG_SYS_CLKDIV_PBA +CONFIG_SYS_CLKDIV_PBB +CONFIG_SYS_CLKTL_CBCDR +CONFIG_SYS_CLK_100 +CONFIG_SYS_CLK_100_DDR_100 +CONFIG_SYS_CLK_100_DDR_133 +CONFIG_SYS_CLK_DIV +CONFIG_SYS_CLK_FREQ_C100 +CONFIG_SYS_CLK_FREQ_C110 +CONFIG_SYS_CMD_CONFIGURE +CONFIG_SYS_CMD_EL +CONFIG_SYS_CMD_IAS +CONFIG_SYS_CMD_INT +CONFIG_SYS_CMD_SUSPEND +CONFIG_SYS_CMXFCR_MASK1 +CONFIG_SYS_CMXFCR_MASK2 +CONFIG_SYS_CMXFCR_MASK3 +CONFIG_SYS_CMXFCR_VALUE1 +CONFIG_SYS_CMXFCR_VALUE2 +CONFIG_SYS_CMXFCR_VALUE3 +CONFIG_SYS_CMXSCR_VALUE +CONFIG_SYS_CONSOLE_BG_COL +CONFIG_SYS_CONSOLE_ENV_OVERWRITE +CONFIG_SYS_CONSOLE_FG_COL +CONFIG_SYS_CONSOLE_INFO_QUIET +CONFIG_SYS_CONSOLE_IS_IN_ENV +CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE +CONFIG_SYS_CORE_SRAM +CONFIG_SYS_CORE_SRAM_SIZE +CONFIG_SYS_CORTEX_R4 +CONFIG_SYS_CORTINA_FW_IN_MMC +CONFIG_SYS_CORTINA_FW_IN_NAND +CONFIG_SYS_CORTINA_FW_IN_NOR +CONFIG_SYS_CORTINA_FW_IN_REMOTE +CONFIG_SYS_CORTINA_FW_IN_SPIFLASH +CONFIG_SYS_CPC_REINIT_F +CONFIG_SYS_CPLD +CONFIG_SYS_CPLD_ADDR +CONFIG_SYS_CPLD_AMASK +CONFIG_SYS_CPLD_BASE +CONFIG_SYS_CPLD_BASE_PHYS +CONFIG_SYS_CPLD_CSOR +CONFIG_SYS_CPLD_CSPR +CONFIG_SYS_CPLD_CSPR_EXT +CONFIG_SYS_CPLD_DATA +CONFIG_SYS_CPLD_FTIM0 +CONFIG_SYS_CPLD_FTIM1 +CONFIG_SYS_CPLD_FTIM2 +CONFIG_SYS_CPLD_FTIM3 +CONFIG_SYS_CPLD_SIZE +CONFIG_SYS_CPMFCR_RAMTYPE +CONFIG_SYS_CPM_BOOTCOUNT_ADDR +CONFIG_SYS_CPM_INTERRUPT +CONFIG_SYS_CPM_POST_WORD_ADDR +CONFIG_SYS_CPRI +CONFIG_SYS_CPRI_CLK +CONFIG_SYS_CPUSPEED +CONFIG_SYS_CPU_CLK +CONFIG_SYS_CPU_PCI_IO_START +CONFIG_SYS_CPU_PCI_MEMIO_START +CONFIG_SYS_CPU_PCI_MEM_START +CONFIG_SYS_CS0_BASE +CONFIG_SYS_CS0_CFG +CONFIG_SYS_CS0_CTRL +CONFIG_SYS_CS0_FTIM0 +CONFIG_SYS_CS0_FTIM1 +CONFIG_SYS_CS0_FTIM2 +CONFIG_SYS_CS0_FTIM3 +CONFIG_SYS_CS0_MASK +CONFIG_SYS_CS0_SIZE +CONFIG_SYS_CS0_START +CONFIG_SYS_CS1_BASE +CONFIG_SYS_CS1_CFG +CONFIG_SYS_CS1_CTRL +CONFIG_SYS_CS1_FLASH_BASE +CONFIG_SYS_CS1_FTIM0 +CONFIG_SYS_CS1_FTIM1 +CONFIG_SYS_CS1_FTIM2 +CONFIG_SYS_CS1_FTIM3 +CONFIG_SYS_CS1_MASK +CONFIG_SYS_CS1_SIZE +CONFIG_SYS_CS1_START +CONFIG_SYS_CS2_BASE +CONFIG_SYS_CS2_CFG +CONFIG_SYS_CS2_CTRL +CONFIG_SYS_CS2_FLASH_BASE +CONFIG_SYS_CS2_FTIM0 +CONFIG_SYS_CS2_FTIM1 +CONFIG_SYS_CS2_FTIM2 +CONFIG_SYS_CS2_FTIM3 +CONFIG_SYS_CS2_MASK +CONFIG_SYS_CS2_SIZE +CONFIG_SYS_CS2_START +CONFIG_SYS_CS3_BASE +CONFIG_SYS_CS3_CFG +CONFIG_SYS_CS3_CTRL +CONFIG_SYS_CS3_FLASH_BASE +CONFIG_SYS_CS3_FTIM0 +CONFIG_SYS_CS3_FTIM1 +CONFIG_SYS_CS3_FTIM2 +CONFIG_SYS_CS3_FTIM3 +CONFIG_SYS_CS3_MASK +CONFIG_SYS_CS3_SIZE +CONFIG_SYS_CS3_START +CONFIG_SYS_CS4_BASE +CONFIG_SYS_CS4_CFG +CONFIG_SYS_CS4_CTRL +CONFIG_SYS_CS4_FLASH_BASE +CONFIG_SYS_CS4_FTIM0 +CONFIG_SYS_CS4_FTIM1 +CONFIG_SYS_CS4_FTIM2 +CONFIG_SYS_CS4_FTIM3 +CONFIG_SYS_CS4_MASK +CONFIG_SYS_CS4_SIZE +CONFIG_SYS_CS4_START +CONFIG_SYS_CS5_BASE +CONFIG_SYS_CS5_CFG +CONFIG_SYS_CS5_CTRL +CONFIG_SYS_CS5_FLASH_BASE +CONFIG_SYS_CS5_FTIM0 +CONFIG_SYS_CS5_FTIM1 +CONFIG_SYS_CS5_FTIM2 +CONFIG_SYS_CS5_FTIM3 +CONFIG_SYS_CS5_MASK +CONFIG_SYS_CS5_SIZE +CONFIG_SYS_CS5_START +CONFIG_SYS_CS6_BASE +CONFIG_SYS_CS6_CFG +CONFIG_SYS_CS6_CTRL +CONFIG_SYS_CS6_FTIM0 +CONFIG_SYS_CS6_FTIM1 +CONFIG_SYS_CS6_FTIM2 +CONFIG_SYS_CS6_FTIM3 +CONFIG_SYS_CS6_MASK +CONFIG_SYS_CS6_SIZE +CONFIG_SYS_CS6_START +CONFIG_SYS_CS7_BASE +CONFIG_SYS_CS7_CFG +CONFIG_SYS_CS7_CTRL +CONFIG_SYS_CS7_FTIM0 +CONFIG_SYS_CS7_FTIM1 +CONFIG_SYS_CS7_FTIM2 +CONFIG_SYS_CS7_FTIM3 +CONFIG_SYS_CS7_MASK +CONFIG_SYS_CS7_SIZE +CONFIG_SYS_CS7_START +CONFIG_SYS_CSOR0 +CONFIG_SYS_CSOR0_EXT +CONFIG_SYS_CSOR1 +CONFIG_SYS_CSOR1_EXT +CONFIG_SYS_CSOR2 +CONFIG_SYS_CSOR2_EXT +CONFIG_SYS_CSOR3 +CONFIG_SYS_CSOR3_EXT +CONFIG_SYS_CSOR4 +CONFIG_SYS_CSOR4_EXT +CONFIG_SYS_CSOR5 +CONFIG_SYS_CSOR5_EXT +CONFIG_SYS_CSOR6 +CONFIG_SYS_CSOR6_EXT +CONFIG_SYS_CSOR7 +CONFIG_SYS_CSOR7_EXT +CONFIG_SYS_CSPR0 +CONFIG_SYS_CSPR0_EXT +CONFIG_SYS_CSPR0_FINAL +CONFIG_SYS_CSPR1 +CONFIG_SYS_CSPR1_EXT +CONFIG_SYS_CSPR1_FINAL +CONFIG_SYS_CSPR2 +CONFIG_SYS_CSPR2_EXT +CONFIG_SYS_CSPR2_FINAL +CONFIG_SYS_CSPR3 +CONFIG_SYS_CSPR3_EXT +CONFIG_SYS_CSPR3_FINAL +CONFIG_SYS_CSPR4 +CONFIG_SYS_CSPR4_EXT +CONFIG_SYS_CSPR5 +CONFIG_SYS_CSPR5_EXT +CONFIG_SYS_CSPR6 +CONFIG_SYS_CSPR6_EXT +CONFIG_SYS_CSPR7 +CONFIG_SYS_CSPR7_EXT +CONFIG_SYS_CS_ALETIMING +CONFIG_SYS_CS_BURST +CONFIG_SYS_CS_DEADCYCLE +CONFIG_SYS_CS_HOLDCYCLE +CONFIG_SYS_DA850_CS2CFG +CONFIG_SYS_DA850_CS3CFG +CONFIG_SYS_DA850_DDR2_DDRPHYCR +CONFIG_SYS_DA850_DDR2_PBBPR +CONFIG_SYS_DA850_DDR2_SDBCR +CONFIG_SYS_DA850_DDR2_SDBCR2 +CONFIG_SYS_DA850_DDR2_SDRCR +CONFIG_SYS_DA850_DDR2_SDTIMR +CONFIG_SYS_DA850_DDR2_SDTIMR2 +CONFIG_SYS_DA850_DDR_INIT +CONFIG_SYS_DA850_PLL0_PLLDIV1 +CONFIG_SYS_DA850_PLL0_PLLDIV2 +CONFIG_SYS_DA850_PLL0_PLLDIV3 +CONFIG_SYS_DA850_PLL0_PLLDIV4 +CONFIG_SYS_DA850_PLL0_PLLDIV5 +CONFIG_SYS_DA850_PLL0_PLLDIV6 +CONFIG_SYS_DA850_PLL0_PLLDIV7 +CONFIG_SYS_DA850_PLL0_PLLM +CONFIG_SYS_DA850_PLL0_POSTDIV +CONFIG_SYS_DA850_PLL0_PREDIV +CONFIG_SYS_DA850_PLL1_PLLDIV1 +CONFIG_SYS_DA850_PLL1_PLLDIV2 +CONFIG_SYS_DA850_PLL1_PLLDIV3 +CONFIG_SYS_DA850_PLL1_PLLM +CONFIG_SYS_DA850_PLL1_POSTDIV +CONFIG_SYS_DA850_PLL_INIT +CONFIG_SYS_DA850_SYSCFG_SUSPSRC +CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS0 +CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS1 +CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS2 +CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS3 +CONFIG_SYS_DAVINCI_EMAC_PHY_COUNT +CONFIG_SYS_DAVINCI_I2C_SLAVE +CONFIG_SYS_DAVINCI_I2C_SLAVE1 +CONFIG_SYS_DAVINCI_I2C_SLAVE2 +CONFIG_SYS_DAVINCI_I2C_SPEED +CONFIG_SYS_DAVINCI_I2C_SPEED1 +CONFIG_SYS_DAVINCI_I2C_SPEED2 +CONFIG_SYS_DBAT +CONFIG_SYS_DBAT0L +CONFIG_SYS_DBAT0U +CONFIG_SYS_DBAT1L +CONFIG_SYS_DBAT1U +CONFIG_SYS_DBAT2L +CONFIG_SYS_DBAT2U +CONFIG_SYS_DBAT3L +CONFIG_SYS_DBAT3U +CONFIG_SYS_DBAT4L +CONFIG_SYS_DBAT4U +CONFIG_SYS_DBAT5L +CONFIG_SYS_DBAT5U +CONFIG_SYS_DBAT6L +CONFIG_SYS_DBAT6L_EARLY +CONFIG_SYS_DBAT6U +CONFIG_SYS_DBAT6U_EARLY +CONFIG_SYS_DBAT7L +CONFIG_SYS_DBAT7U +CONFIG_SYS_DCACHE_INV +CONFIG_SYS_DCACHE_LINESZ +CONFIG_SYS_DCACHE_SACR_VALUE +CONFIG_SYS_DCSRBAR +CONFIG_SYS_DCSRBAR_PHYS +CONFIG_SYS_DCSR_COP_CCP_ADDR +CONFIG_SYS_DCSR_DCFG_ADDR +CONFIG_SYS_DCSR_DCFG_OFFSET +CONFIG_SYS_DCU_ADDR +CONFIG_SYS_DDR1_CS0_BNDS +CONFIG_SYS_DDR2_CFG_1A +CONFIG_SYS_DDR2_CFG_1B +CONFIG_SYS_DDR2_CFG_2 +CONFIG_SYS_DDR2_CLK_CTRL +CONFIG_SYS_DDR2_CS0_BNDS +CONFIG_SYS_DDR2_CS0_CONFIG +CONFIG_SYS_DDR2_CS1_BNDS +CONFIG_SYS_DDR2_CS1_CONFIG +CONFIG_SYS_DDR2_CS2_BNDS +CONFIG_SYS_DDR2_CS2_CONFIG +CONFIG_SYS_DDR2_CS3_BNDS +CONFIG_SYS_DDR2_CS3_CONFIG +CONFIG_SYS_DDR2_DATA_INIT +CONFIG_SYS_DDR2_EXT_REFRESH +CONFIG_SYS_DDR2_INTERVAL +CONFIG_SYS_DDR2_MODE_1 +CONFIG_SYS_DDR2_MODE_2 +CONFIG_SYS_DDR2_MODE_CTL +CONFIG_SYS_DDR2_TIMING_0 +CONFIG_SYS_DDR2_TIMING_1 +CONFIG_SYS_DDR2_TIMING_2 +CONFIG_SYS_DDRCDR +CONFIG_SYS_DDRCDR_VALUE +CONFIG_SYS_DDRCMD_EM2 +CONFIG_SYS_DDRCMD_EM3 +CONFIG_SYS_DDRCMD_EN_DLL +CONFIG_SYS_DDRCMD_NOP +CONFIG_SYS_DDRCMD_OCD_DEFAULT +CONFIG_SYS_DDRCMD_OCD_EXIT +CONFIG_SYS_DDRCMD_PCHG_ALL +CONFIG_SYS_DDRCMD_RES_DLL +CONFIG_SYS_DDRCMD_RFSH +CONFIG_SYS_DDRD +CONFIG_SYS_DDRTC +CONFIG_SYS_DDRUA +CONFIG_SYS_DDR_BASE +CONFIG_SYS_DDR_BLOCK1_SIZE +CONFIG_SYS_DDR_BLOCK2_BASE +CONFIG_SYS_DDR_CACHED_ADDR +CONFIG_SYS_DDR_CDR_1 +CONFIG_SYS_DDR_CDR_2 +CONFIG_SYS_DDR_CFG_1A +CONFIG_SYS_DDR_CFG_1B +CONFIG_SYS_DDR_CFG_2 +CONFIG_SYS_DDR_CLKSEL +CONFIG_SYS_DDR_CLK_CNTL +CONFIG_SYS_DDR_CLK_CONTROL +CONFIG_SYS_DDR_CLK_CTRL +CONFIG_SYS_DDR_CLK_CTRL_1000 +CONFIG_SYS_DDR_CLK_CTRL_1200 +CONFIG_SYS_DDR_CLK_CTRL_1333 +CONFIG_SYS_DDR_CLK_CTRL_667 +CONFIG_SYS_DDR_CLK_CTRL_800 +CONFIG_SYS_DDR_CLK_CTRL_900 +CONFIG_SYS_DDR_CONFIG +CONFIG_SYS_DDR_CONFIG_2 +CONFIG_SYS_DDR_CONFIG_256 +CONFIG_SYS_DDR_CONTROL +CONFIG_SYS_DDR_CONTROL2 +CONFIG_SYS_DDR_CONTROL_1333 +CONFIG_SYS_DDR_CONTROL_2 +CONFIG_SYS_DDR_CONTROL_2_1333 +CONFIG_SYS_DDR_CONTROL_2_800 +CONFIG_SYS_DDR_CONTROL_800 +CONFIG_SYS_DDR_CPO +CONFIG_SYS_DDR_CS0_BNDS +CONFIG_SYS_DDR_CS0_CONFIG +CONFIG_SYS_DDR_CS0_CONFIG_1333 +CONFIG_SYS_DDR_CS0_CONFIG_2 +CONFIG_SYS_DDR_CS0_CONFIG_800 +CONFIG_SYS_DDR_CS1_BNDS +CONFIG_SYS_DDR_CS1_CONFIG +CONFIG_SYS_DDR_CS1_CONFIG_2 +CONFIG_SYS_DDR_CS2_BNDS +CONFIG_SYS_DDR_CS2_CONFIG +CONFIG_SYS_DDR_CS3_BNDS +CONFIG_SYS_DDR_CS3_CONFIG +CONFIG_SYS_DDR_DATA_INIT +CONFIG_SYS_DDR_ERR_DIS +CONFIG_SYS_DDR_ERR_INT_EN +CONFIG_SYS_DDR_INIT_ADDR +CONFIG_SYS_DDR_INIT_EXT_ADDR +CONFIG_SYS_DDR_INTERVAL +CONFIG_SYS_DDR_INTERVAL_1000 +CONFIG_SYS_DDR_INTERVAL_1200 +CONFIG_SYS_DDR_INTERVAL_1333 +CONFIG_SYS_DDR_INTERVAL_667 +CONFIG_SYS_DDR_INTERVAL_800 +CONFIG_SYS_DDR_INTERVAL_900 +CONFIG_SYS_DDR_MODE +CONFIG_SYS_DDR_MODE2 +CONFIG_SYS_DDR_MODE_1 +CONFIG_SYS_DDR_MODE_1_1000 +CONFIG_SYS_DDR_MODE_1_1200 +CONFIG_SYS_DDR_MODE_1_1333 +CONFIG_SYS_DDR_MODE_1_667 +CONFIG_SYS_DDR_MODE_1_800 +CONFIG_SYS_DDR_MODE_1_900 +CONFIG_SYS_DDR_MODE_2 +CONFIG_SYS_DDR_MODE_2_1000 +CONFIG_SYS_DDR_MODE_2_1200 +CONFIG_SYS_DDR_MODE_2_1333 +CONFIG_SYS_DDR_MODE_2_667 +CONFIG_SYS_DDR_MODE_2_800 +CONFIG_SYS_DDR_MODE_2_900 +CONFIG_SYS_DDR_MODE_CONTROL +CONFIG_SYS_DDR_MODE_CTL +CONFIG_SYS_DDR_MODE_WEAK +CONFIG_SYS_DDR_OCD_CTRL +CONFIG_SYS_DDR_OCD_STATUS +CONFIG_SYS_DDR_RAW_TIMING +CONFIG_SYS_DDR_RCW_1 +CONFIG_SYS_DDR_RCW_2 +CONFIG_SYS_DDR_SBE +CONFIG_SYS_DDR_SDRAM_BASE +CONFIG_SYS_DDR_SDRAM_BASE2 +CONFIG_SYS_DDR_SDRAM_CFG +CONFIG_SYS_DDR_SDRAM_CFG2 +CONFIG_SYS_DDR_SDRAM_CFG_2 +CONFIG_SYS_DDR_SDRAM_CLK_CNTL +CONFIG_SYS_DDR_SDRAM_INTERVAL +CONFIG_SYS_DDR_SDRAM_MODE +CONFIG_SYS_DDR_SDRAM_MODE_2 +CONFIG_SYS_DDR_SIZE +CONFIG_SYS_DDR_SR_CNTR +CONFIG_SYS_DDR_TIMING_0 +CONFIG_SYS_DDR_TIMING_0_1000 +CONFIG_SYS_DDR_TIMING_0_1200 +CONFIG_SYS_DDR_TIMING_0_1333 +CONFIG_SYS_DDR_TIMING_0_667 +CONFIG_SYS_DDR_TIMING_0_800 +CONFIG_SYS_DDR_TIMING_0_900 +CONFIG_SYS_DDR_TIMING_1 +CONFIG_SYS_DDR_TIMING_1_1000 +CONFIG_SYS_DDR_TIMING_1_1200 +CONFIG_SYS_DDR_TIMING_1_1333 +CONFIG_SYS_DDR_TIMING_1_667 +CONFIG_SYS_DDR_TIMING_1_800 +CONFIG_SYS_DDR_TIMING_1_900 +CONFIG_SYS_DDR_TIMING_2 +CONFIG_SYS_DDR_TIMING_2_1000 +CONFIG_SYS_DDR_TIMING_2_1200 +CONFIG_SYS_DDR_TIMING_2_1333 +CONFIG_SYS_DDR_TIMING_2_667 +CONFIG_SYS_DDR_TIMING_2_800 +CONFIG_SYS_DDR_TIMING_2_900 +CONFIG_SYS_DDR_TIMING_3 +CONFIG_SYS_DDR_TIMING_3_1000 +CONFIG_SYS_DDR_TIMING_3_1200 +CONFIG_SYS_DDR_TIMING_3_1333 +CONFIG_SYS_DDR_TIMING_3_667 +CONFIG_SYS_DDR_TIMING_3_800 +CONFIG_SYS_DDR_TIMING_3_900 +CONFIG_SYS_DDR_TIMING_4 +CONFIG_SYS_DDR_TIMING_4_1333 +CONFIG_SYS_DDR_TIMING_4_800 +CONFIG_SYS_DDR_TIMING_5 +CONFIG_SYS_DDR_TIMING_5_1333 +CONFIG_SYS_DDR_TIMING_5_800 +CONFIG_SYS_DDR_WRITE_DATA_DELAY +CONFIG_SYS_DDR_WRLVL_CNTL +CONFIG_SYS_DDR_WRLVL_CONTROL +CONFIG_SYS_DDR_WRLVL_CONTROL_1333 +CONFIG_SYS_DDR_WRLVL_CONTROL_667 +CONFIG_SYS_DDR_WRLVL_CONTROL_800 +CONFIG_SYS_DDR_ZQ_CNTL +CONFIG_SYS_DDR_ZQ_CONTROL +CONFIG_SYS_DEBUG +CONFIG_SYS_DEBUG_SERVER_DRAM_BLOCK_MIN_SIZE +CONFIG_SYS_DEBUG_SERVER_FW_ADDR +CONFIG_SYS_DEBUG_SERVER_FW_IN_NOR +CONFIG_SYS_DEBUG_SERVER_TIMEOUT +CONFIG_SYS_DECREMENT_PATTERNS +CONFIG_SYS_DEFAULT_IMMR +CONFIG_SYS_DEFAULT_LPDDR2_TIMINGS +CONFIG_SYS_DEFAULT_MBAR +CONFIG_SYS_DEFAULT_VIDEO_MODE +CONFIG_SYS_DEF_EEPROM_ADDR +CONFIG_SYS_DELAYED_ICACHE +CONFIG_SYS_DER +CONFIG_SYS_DEVICE_NULLDEV +CONFIG_SYS_DFU_DATA_BUF_SIZE +CONFIG_SYS_DFU_MAX_FILE_SIZE +CONFIG_SYS_DIAG_ADDR +CONFIG_SYS_DIALOG_PMIC_I2C_ADDR +CONFIG_SYS_DIMM_SLOTS_PER_CTLR +CONFIG_SYS_DIRECT_FLASH_NFS +CONFIG_SYS_DIRECT_FLASH_TFTP +CONFIG_SYS_DISCOVER_PHY +CONFIG_SYS_DISPLAY_BASE +CONFIG_SYS_DISP_CHR_RAM +CONFIG_SYS_DIU_ADDR +CONFIG_SYS_DM36x_PINMUX0 +CONFIG_SYS_DM36x_PINMUX1 +CONFIG_SYS_DM36x_PINMUX2 +CONFIG_SYS_DM36x_PINMUX3 +CONFIG_SYS_DM36x_PINMUX4 +CONFIG_SYS_DM36x_PLL1_PREDIV +CONFIG_SYS_DM36x_PLL2_PREDIV +CONFIG_SYS_DMA_USE_INTSRAM +CONFIG_SYS_DOC_SHORT_TIMEOUT +CONFIG_SYS_DOC_SUPPORT_2000 +CONFIG_SYS_DOC_SUPPORT_MILLENNIUM +CONFIG_SYS_DP501_BASE +CONFIG_SYS_DP501_DIFFERENTIAL +CONFIG_SYS_DP501_I2C +CONFIG_SYS_DP501_VCAPCTRL0 +CONFIG_SYS_DPAA_DCE +CONFIG_SYS_DPAA_FMAN +CONFIG_SYS_DPAA_PME +CONFIG_SYS_DPAA_QBMAN +CONFIG_SYS_DPAA_RMAN +CONFIG_SYS_DP_DDR_BASE +CONFIG_SYS_DP_DDR_BASE_PHY +CONFIG_SYS_DRAMSZ +CONFIG_SYS_DRAMSZ1 +CONFIG_SYS_DRAM_BASE +CONFIG_SYS_DRAM_SIZE +CONFIG_SYS_DRAM_TEST +CONFIG_SYS_DS1339_TCR_VAL +CONFIG_SYS_DS1388_TCR_VAL +CONFIG_SYS_DSPIC_TEST_ADDR +CONFIG_SYS_DSPIC_TEST_MASK +CONFIG_SYS_DSPI_CS0 +CONFIG_SYS_DSPI_CS2 +CONFIG_SYS_DSPI_CTAR0 +CONFIG_SYS_DSPI_CTAR1 +CONFIG_SYS_DSPI_CTAR2 +CONFIG_SYS_DSPI_CTAR3 +CONFIG_SYS_DSPI_CTAR4 +CONFIG_SYS_DSPI_CTAR5 +CONFIG_SYS_DSPI_CTAR6 +CONFIG_SYS_DSPI_CTAR7 +CONFIG_SYS_DTT_ADM1021 +CONFIG_SYS_DTT_BUS_NUM +CONFIG_SYS_DTT_HYSTERESIS +CONFIG_SYS_DTT_LOW_TEMP +CONFIG_SYS_DTT_MAX_TEMP +CONFIG_SYS_DTT_MIN_TEMP +CONFIG_SYS_DUART_RST +CONFIG_SYS_DV_CLKMODE +CONFIG_SYS_DV_NOR_BOOT_CFG +CONFIG_SYS_EBC_CFG +CONFIG_SYS_EBC_PB0AP +CONFIG_SYS_EBC_PB0CR +CONFIG_SYS_EBC_PB1AP +CONFIG_SYS_EBC_PB1CR +CONFIG_SYS_EBC_PB2AP +CONFIG_SYS_EBC_PB2CR +CONFIG_SYS_EBC_PB3AP +CONFIG_SYS_EBC_PB3CR +CONFIG_SYS_EBC_PB4AP +CONFIG_SYS_EBC_PB4CR +CONFIG_SYS_EBC_PB5AP +CONFIG_SYS_EBC_PB5CR +CONFIG_SYS_EBC_PB6AP +CONFIG_SYS_EBC_PB6CR +CONFIG_SYS_EBC_PB7AP +CONFIG_SYS_EBC_PB7CR +CONFIG_SYS_EBI_CFGR_VAL +CONFIG_SYS_EBI_CSA_VAL +CONFIG_SYS_EEPROM_BASE +CONFIG_SYS_EEPROM_BUS_NUM +CONFIG_SYS_EEPROM_PAGE_WRITE_BITS +CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS +CONFIG_SYS_EEPROM_PAGE_WRITE_ENABLE +CONFIG_SYS_EEPROM_SIZE +CONFIG_SYS_EEPROM_WP +CONFIG_SYS_EEPROM_WREN +CONFIG_SYS_EHCI_USB1_ADDR +CONFIG_SYS_ELBC_BASE +CONFIG_SYS_ELBC_BASE_PHYS +CONFIG_SYS_ELO3_DMA3 +CONFIG_SYS_ELPIDA_INIT_DEV_OP +CONFIG_SYS_ELPIDA_OCD_EXIT +CONFIG_SYS_ELPIDA_RES_DLL +CONFIG_SYS_EMAC_TI_CLKDIV +CONFIG_SYS_EMIF_PRECALCULATED_TIMING_REGS +CONFIG_SYS_ENABLE_PADS_ALL +CONFIG_SYS_ENET_BD_BASE +CONFIG_SYS_ENV_ADDR +CONFIG_SYS_ENV_OFFSET +CONFIG_SYS_ENV_SECT_SIZE +CONFIG_SYS_EPLD_BASE +CONFIG_SYS_ETHOC_BASE +CONFIG_SYS_ETHOC_BUFFER_ADDR +CONFIG_SYS_ETH_IOBASE +CONFIG_SYS_ETVPE_CLK +CONFIG_SYS_EXCEPTION_VECTORS_HIGH +CONFIG_SYS_EXTBDINFO +CONFIG_SYS_EXTRA_ENV_RELOC +CONFIG_SYS_EXT_SERIAL_CLOCK +CONFIG_SYS_FAST_CLK +CONFIG_SYS_FAULT_ECCONFIG_SYS_NO_FLASHHO_LINK_DOWN +CONFIG_SYS_FAULT_ECHO_LINK_DOWN +CONFIG_SYS_FAULT_MII_ADDR +CONFIG_SYS_FCC_PSMR +CONFIG_SYS_FCPU133MHZ +CONFIG_SYS_FCPU266MHZ +CONFIG_SYS_FCPU333MHZ +CONFIG_SYS_FDC_DRIVE_NUMBER +CONFIG_SYS_FDC_HW_INIT +CONFIG_SYS_FDT_ADDR +CONFIG_SYS_FDT_BASE +CONFIG_SYS_FDT_LOAD_ADDR +CONFIG_SYS_FDT_PAD +CONFIG_SYS_FDT_SIZE +CONFIG_SYS_FEC0_IOBASE +CONFIG_SYS_FEC0_MIIBASE +CONFIG_SYS_FEC0_PHYADDR +CONFIG_SYS_FEC0_PINMUX +CONFIG_SYS_FEC1_IOBASE +CONFIG_SYS_FEC1_MIIBASE +CONFIG_SYS_FEC1_PHYADDR +CONFIG_SYS_FEC1_PINMUX +CONFIG_SYS_FECI2C +CONFIG_SYS_FEC_BUF_USE_SRAM +CONFIG_SYS_FEC_FULL_MII +CONFIG_SYS_FEC_NO_SHARED_PHY +CONFIG_SYS_FIFO_BASE +CONFIG_SYS_FIXED_PHY_ADDR +CONFIG_SYS_FIXED_PHY_PORT +CONFIG_SYS_FIXED_PHY_PORTS +CONFIG_SYS_FLASH +CONFIG_SYS_FLASH0 +CONFIG_SYS_FLASH0_BASE +CONFIG_SYS_FLASH1 +CONFIG_SYS_FLASH1_BASE +CONFIG_SYS_FLASH1_BASE_PHYS +CONFIG_SYS_FLASH1_BASE_PHYS_EARLY +CONFIG_SYS_FLASH2_BASE +CONFIG_SYS_FLASHBOOT +CONFIG_SYS_FLASH_2ND_16BIT_DEV +CONFIG_SYS_FLASH_2ND_ADDR +CONFIG_SYS_FLASH_ADDR0 +CONFIG_SYS_FLASH_ADDR1 +CONFIG_SYS_FLASH_ADDR_BASE +CONFIG_SYS_FLASH_AMD_CHECK_DQ7 +CONFIG_SYS_FLASH_AUTOPROTECT_LIST +CONFIG_SYS_FLASH_BANKS_LIST +CONFIG_SYS_FLASH_BANKS_SIZES +CONFIG_SYS_FLASH_BANK_SIZE +CONFIG_SYS_FLASH_BASE +CONFIG_SYS_FLASH_BASE0 +CONFIG_SYS_FLASH_BASE1 +CONFIG_SYS_FLASH_BASE2 +CONFIG_SYS_FLASH_BASE_1 +CONFIG_SYS_FLASH_BASE_2 +CONFIG_SYS_FLASH_BASE_CS1 +CONFIG_SYS_FLASH_BASE_PHYS +CONFIG_SYS_FLASH_BASE_PHYS_EARLY +CONFIG_SYS_FLASH_BASE_PHYS_H +CONFIG_SYS_FLASH_BASE_PHYS_L +CONFIG_SYS_FLASH_BASE_PHYS_LOW +CONFIG_SYS_FLASH_BR_PRELIM +CONFIG_SYS_FLASH_CFI +CONFIG_SYS_FLASH_CFI_AMD_RESET +CONFIG_SYS_FLASH_CFI_BROKEN_TABLE +CONFIG_SYS_FLASH_CFI_BYPASS_READ +CONFIG_SYS_FLASH_CFI_NONBLOCK +CONFIG_SYS_FLASH_CFI_WIDTH +CONFIG_SYS_FLASH_CHECKSUM +CONFIG_SYS_FLASH_CHECK_BLANK_BEFORE_ERASE +CONFIG_SYS_FLASH_EMPTY_INFO +CONFIG_SYS_FLASH_ERASE_TOUT +CONFIG_SYS_FLASH_LEGACY_256Kx8 +CONFIG_SYS_FLASH_LEGACY_512Kx16 +CONFIG_SYS_FLASH_LEGACY_512Kx8 +CONFIG_SYS_FLASH_LOCK_TOUT +CONFIG_SYS_FLASH_OR_PRELIM +CONFIG_SYS_FLASH_PARMSECT_SZ +CONFIG_SYS_FLASH_PROTECTION +CONFIG_SYS_FLASH_QUIET_TEST +CONFIG_SYS_FLASH_READ0 +CONFIG_SYS_FLASH_READ1 +CONFIG_SYS_FLASH_READ2 +CONFIG_SYS_FLASH_SECT_SIZE +CONFIG_SYS_FLASH_SECT_SZ +CONFIG_SYS_FLASH_SIZE +CONFIG_SYS_FLASH_SIZE_1 +CONFIG_SYS_FLASH_SIZE_2 +CONFIG_SYS_FLASH_UNLOCK_TOUT +CONFIG_SYS_FLASH_USE_BUFFER_WRITE +CONFIG_SYS_FLASH_VERIFY_AFTER_WRITE +CONFIG_SYS_FLASH_WORD_SIZE +CONFIG_SYS_FLASH_WRITE_TOUT +CONFIG_SYS_FLYCNFG_VAL +CONFIG_SYS_FM1_10GEC1_PHY_ADDR +CONFIG_SYS_FM1_10GEC2_PHY_ADDR +CONFIG_SYS_FM1_CLK +CONFIG_SYS_FM1_DTSEC1_MDIO_ADDR +CONFIG_SYS_FM1_DTSEC1_PHY_ADDR +CONFIG_SYS_FM1_DTSEC1_RISER_PHY_ADDR +CONFIG_SYS_FM1_DTSEC2_PHY_ADDR +CONFIG_SYS_FM1_DTSEC2_RISER_PHY_ADDR +CONFIG_SYS_FM1_DTSEC3_PHY_ADDR +CONFIG_SYS_FM1_DTSEC3_RISER_PHY_ADDR +CONFIG_SYS_FM1_DTSEC4_PHY_ADDR +CONFIG_SYS_FM1_DTSEC4_RISER_PHY_ADDR +CONFIG_SYS_FM1_DTSEC5_PHY_ADDR +CONFIG_SYS_FM1_DTSEC_MDIO_ADDR +CONFIG_SYS_FM1_ONBOARD_PHY1_ADDR +CONFIG_SYS_FM1_ONBOARD_PHY2_ADDR +CONFIG_SYS_FM1_QSGMII11_PHY_ADDR +CONFIG_SYS_FM1_QSGMII21_PHY_ADDR +CONFIG_SYS_FM1_TGEC_MDIO_ADDR +CONFIG_SYS_FM2_10GEC1_PHY_ADDR +CONFIG_SYS_FM2_CLK +CONFIG_SYS_FM2_DTSEC1_PHY_ADDR +CONFIG_SYS_FM2_DTSEC2_PHY_ADDR +CONFIG_SYS_FM2_DTSEC3_PHY_ADDR +CONFIG_SYS_FM2_DTSEC4_PHY_ADDR +CONFIG_SYS_FM2_DTSEC_MDIO_ADDR +CONFIG_SYS_FM2_TGEC_MDIO_ADDR +CONFIG_SYS_FMAN_FW_ADDR +CONFIG_SYS_FMAN_V3 +CONFIG_SYS_FM_MURAM_SIZE +CONFIG_SYS_FORM_3U_CPCI +CONFIG_SYS_FORM_3U_VPX +CONFIG_SYS_FORM_6U_CPCI +CONFIG_SYS_FORM_6U_VPX +CONFIG_SYS_FORM_AMC +CONFIG_SYS_FORM_ATCA_AMC +CONFIG_SYS_FORM_ATCA_PMC +CONFIG_SYS_FORM_CUSTOM +CONFIG_SYS_FORM_PCI +CONFIG_SYS_FORM_PCI_EXPRESS +CONFIG_SYS_FORM_PMC +CONFIG_SYS_FORM_PMC_XMC +CONFIG_SYS_FORM_VME +CONFIG_SYS_FORM_XMC +CONFIG_SYS_FPGA0_BASE +CONFIG_SYS_FPGA0_SIZE +CONFIG_SYS_FPGA1_BASE +CONFIG_SYS_FPGA2_BASE +CONFIG_SYS_FPGA3_BASE +CONFIG_SYS_FPGAREG_DATE +CONFIG_SYS_FPGAREG_DIPSW +CONFIG_SYS_FPGAREG_FREQ +CONFIG_SYS_FPGAREG_RESET +CONFIG_SYS_FPGAREG_RESET_CODE +CONFIG_SYS_FPGA_AMASK +CONFIG_SYS_FPGA_BASE +CONFIG_SYS_FPGA_BASE0 +CONFIG_SYS_FPGA_BASE1 +CONFIG_SYS_FPGA_BASE_0 +CONFIG_SYS_FPGA_BASE_1 +CONFIG_SYS_FPGA_BASE_ADDR +CONFIG_SYS_FPGA_BASE_PHYS +CONFIG_SYS_FPGA_CHECK_BUSY +CONFIG_SYS_FPGA_CHECK_CTRLC +CONFIG_SYS_FPGA_CHECK_ERROR +CONFIG_SYS_FPGA_CHIPSIDE_LOOPBACK +CONFIG_SYS_FPGA_CLK +CONFIG_SYS_FPGA_COMMON +CONFIG_SYS_FPGA_COUNT +CONFIG_SYS_FPGA_CSOR +CONFIG_SYS_FPGA_CSPR +CONFIG_SYS_FPGA_CSPR_EXT +CONFIG_SYS_FPGA_CTRL +CONFIG_SYS_FPGA_CTRL_CF_RESET +CONFIG_SYS_FPGA_CTRL_PS2_RESET +CONFIG_SYS_FPGA_CTRL_WDI +CONFIG_SYS_FPGA_DATA +CONFIG_SYS_FPGA_DONE +CONFIG_SYS_FPGA_DPRAM_RST +CONFIG_SYS_FPGA_DPRAM_RW_TYPE +CONFIG_SYS_FPGA_DPRAM_R_INT_LINE +CONFIG_SYS_FPGA_DPRAM_W_INT_LINE +CONFIG_SYS_FPGA_FIFO_BASE +CONFIG_SYS_FPGA_FTIM0 +CONFIG_SYS_FPGA_FTIM1 +CONFIG_SYS_FPGA_FTIM2 +CONFIG_SYS_FPGA_FTIM3 +CONFIG_SYS_FPGA_INIT +CONFIG_SYS_FPGA_IS_PROTO +CONFIG_SYS_FPGA_LINESIDE_LOOPBACK +CONFIG_SYS_FPGA_MAGIC +CONFIG_SYS_FPGA_MAGIC_MASK +CONFIG_SYS_FPGA_MAX_SIZE +CONFIG_SYS_FPGA_MODE +CONFIG_SYS_FPGA_MODE_CF_RESET +CONFIG_SYS_FPGA_MODE_DUART_RESET +CONFIG_SYS_FPGA_MODE_ENABLE_OUTPUT +CONFIG_SYS_FPGA_MODE_TS_CLEAR +CONFIG_SYS_FPGA_MODE_TS_IRQ_CLEAR +CONFIG_SYS_FPGA_MODE_TS_IRQ_ENABLE +CONFIG_SYS_FPGA_NO_RFL_HI +CONFIG_SYS_FPGA_PHY0_INT +CONFIG_SYS_FPGA_PHY1_INT +CONFIG_SYS_FPGA_PRG +CONFIG_SYS_FPGA_PROG +CONFIG_SYS_FPGA_PROG_FEEDBACK +CONFIG_SYS_FPGA_PROG_TIME +CONFIG_SYS_FPGA_PTR +CONFIG_SYS_FPGA_REG_BASE +CONFIG_SYS_FPGA_REG_BASE_ADDR +CONFIG_SYS_FPGA_SIZE +CONFIG_SYS_FPGA_SLIC0_CS +CONFIG_SYS_FPGA_SLIC0_ENABLE +CONFIG_SYS_FPGA_SLIC0_INT +CONFIG_SYS_FPGA_SLIC0_R_DPRAM_INT +CONFIG_SYS_FPGA_SLIC0_W_DPRAM_INT +CONFIG_SYS_FPGA_SLIC1_CS +CONFIG_SYS_FPGA_SLIC1_ENABLE +CONFIG_SYS_FPGA_SLIC1_INT +CONFIG_SYS_FPGA_SLIC1_R_DPRAM_INT +CONFIG_SYS_FPGA_SLIC1_W_DPRAM_INT +CONFIG_SYS_FPGA_SPARTAN2 +CONFIG_SYS_FPGA_STATUS +CONFIG_SYS_FPGA_STATUS_DIP0 +CONFIG_SYS_FPGA_STATUS_DIP1 +CONFIG_SYS_FPGA_STATUS_DIP2 +CONFIG_SYS_FPGA_STATUS_FLASH +CONFIG_SYS_FPGA_STATUS_TS_IRQ +CONFIG_SYS_FPGA_TS +CONFIG_SYS_FPGA_TS_CAP0 +CONFIG_SYS_FPGA_TS_CAP0_LOW +CONFIG_SYS_FPGA_TS_CAP1 +CONFIG_SYS_FPGA_TS_CAP1_LOW +CONFIG_SYS_FPGA_TS_CAP2 +CONFIG_SYS_FPGA_TS_CAP2_LOW +CONFIG_SYS_FPGA_TS_CAP3 +CONFIG_SYS_FPGA_TS_CAP3_LOW +CONFIG_SYS_FPGA_TS_LOW +CONFIG_SYS_FPGA_UART0_FO +CONFIG_SYS_FPGA_UART1_FO +CONFIG_SYS_FPGA_USER_LED0 +CONFIG_SYS_FPGA_USER_LED1 +CONFIG_SYS_FPGA_VER_MASK +CONFIG_SYS_FPGA_WAIT +CONFIG_SYS_FPGA_WAIT_BUSY +CONFIG_SYS_FPGA_WAIT_CONFIG +CONFIG_SYS_FPGA_WAIT_INIT +CONFIG_SYS_FPGA_xxx +CONFIG_SYS_FSL_A004447_SVR_REV +CONFIG_SYS_FSL_AIOP1_BASE +CONFIG_SYS_FSL_AIOP1_SIZE +CONFIG_SYS_FSL_B4860QDS_XFI_ERR +CONFIG_SYS_FSL_BMAN_ADDR +CONFIG_SYS_FSL_BMAN_OFFSET +CONFIG_SYS_FSL_BOOTROM_BASE +CONFIG_SYS_FSL_BOOTROM_SIZE +CONFIG_SYS_FSL_CCSR_BASE +CONFIG_SYS_FSL_CCSR_GUR_BE +CONFIG_SYS_FSL_CCSR_GUR_LE +CONFIG_SYS_FSL_CCSR_SCFG_BE +CONFIG_SYS_FSL_CCSR_SCFG_LE +CONFIG_SYS_FSL_CCSR_SIZE +CONFIG_SYS_FSL_CH3_CLK_CTRL_ADDR +CONFIG_SYS_FSL_CH3_CLK_GRPA_ADDR +CONFIG_SYS_FSL_CH3_CLK_GRPB_ADDR +CONFIG_SYS_FSL_CLK +CONFIG_SYS_FSL_CLK_ADDR +CONFIG_SYS_FSL_CLUSTER_1_L2 +CONFIG_SYS_FSL_CLUSTER_1_L2_OFFSET +CONFIG_SYS_FSL_CLUSTER_CLOCKS +CONFIG_SYS_FSL_CORENET_CCM_ADDR +CONFIG_SYS_FSL_CORENET_CCM_OFFSET +CONFIG_SYS_FSL_CORENET_CLK_ADDR +CONFIG_SYS_FSL_CORENET_CLK_OFFSET +CONFIG_SYS_FSL_CORENET_PMAN +CONFIG_SYS_FSL_CORENET_PMAN1_OFFSET +CONFIG_SYS_FSL_CORENET_PMAN2_OFFSET +CONFIG_SYS_FSL_CORENET_PMAN3_OFFSET +CONFIG_SYS_FSL_CORENET_PME_ADDR +CONFIG_SYS_FSL_CORENET_PME_OFFSET +CONFIG_SYS_FSL_CORENET_RCPM_ADDR +CONFIG_SYS_FSL_CORENET_RCPM_OFFSET +CONFIG_SYS_FSL_CORENET_RMAN_ADDR +CONFIG_SYS_FSL_CORENET_RMAN_OFFSET +CONFIG_SYS_FSL_CORENET_SERDES2_ADDR +CONFIG_SYS_FSL_CORENET_SERDES2_OFFSET +CONFIG_SYS_FSL_CORENET_SERDES3_ADDR +CONFIG_SYS_FSL_CORENET_SERDES3_OFFSET +CONFIG_SYS_FSL_CORENET_SERDES4_ADDR +CONFIG_SYS_FSL_CORENET_SERDES4_OFFSET +CONFIG_SYS_FSL_CORENET_SERDES_ADDR +CONFIG_SYS_FSL_CORENET_SERDES_OFFSET +CONFIG_SYS_FSL_CORENET_SNOOPVEC_COREONLY +CONFIG_SYS_FSL_CORES_PER_CLUSTER +CONFIG_SYS_FSL_CPC +CONFIG_SYS_FSL_CPC_ADDR +CONFIG_SYS_FSL_CPC_OFFSET +CONFIG_SYS_FSL_CSU_ADDR +CONFIG_SYS_FSL_DCFG_ADDR +CONFIG_SYS_FSL_DCSR_BASE +CONFIG_SYS_FSL_DCSR_DDR2_ADDR +CONFIG_SYS_FSL_DCSR_DDR3_ADDR +CONFIG_SYS_FSL_DCSR_DDR4_ADDR +CONFIG_SYS_FSL_DCSR_DDR_ADDR +CONFIG_SYS_FSL_DCSR_SIZE +CONFIG_SYS_FSL_DCU_BE +CONFIG_SYS_FSL_DCU_LE +CONFIG_SYS_FSL_DDR +CONFIG_SYS_FSL_DDR1 +CONFIG_SYS_FSL_DDR2 +CONFIG_SYS_FSL_DDR2_ADDR +CONFIG_SYS_FSL_DDR3 +CONFIG_SYS_FSL_DDR3L +CONFIG_SYS_FSL_DDR3_ADDR +CONFIG_SYS_FSL_DDR4 +CONFIG_SYS_FSL_DDRC_ARM_GEN3 +CONFIG_SYS_FSL_DDRC_GEN1 +CONFIG_SYS_FSL_DDRC_GEN2 +CONFIG_SYS_FSL_DDRC_GEN3 +CONFIG_SYS_FSL_DDRC_GEN4 +CONFIG_SYS_FSL_DDR_86XX +CONFIG_SYS_FSL_DDR_ADDR +CONFIG_SYS_FSL_DDR_BE +CONFIG_SYS_FSL_DDR_EMU +CONFIG_SYS_FSL_DDR_INTLV_256B +CONFIG_SYS_FSL_DDR_LE +CONFIG_SYS_FSL_DDR_MAIN_NUM_CTRLS +CONFIG_SYS_FSL_DDR_SDRAM_BASE_PHY +CONFIG_SYS_FSL_DDR_VER +CONFIG_SYS_FSL_DRAM_BASE1 +CONFIG_SYS_FSL_DRAM_BASE2 +CONFIG_SYS_FSL_DRAM_BASE3 +CONFIG_SYS_FSL_DRAM_SIZE1 +CONFIG_SYS_FSL_DRAM_SIZE2 +CONFIG_SYS_FSL_DRAM_SIZE3 +CONFIG_SYS_FSL_DSPI_BE +CONFIG_SYS_FSL_DSP_CCSRBAR +CONFIG_SYS_FSL_DSP_CCSRBAR_DEFAULT +CONFIG_SYS_FSL_DSP_CCSRBAR_PHYS +CONFIG_SYS_FSL_DSP_CCSR_DDR_ADDR +CONFIG_SYS_FSL_DSP_CCSR_DDR_OFFSET +CONFIG_SYS_FSL_DSP_DDR_ADDR +CONFIG_SYS_FSL_DSP_M2_RAM_ADDR +CONFIG_SYS_FSL_DSP_M3_RAM_ADDR +CONFIG_SYS_FSL_ERRATUM_A004468 +CONFIG_SYS_FSL_ERRATUM_A004477 +CONFIG_SYS_FSL_ERRATUM_A004508 +CONFIG_SYS_FSL_ERRATUM_A004510 +CONFIG_SYS_FSL_ERRATUM_A004510_SVR_REV +CONFIG_SYS_FSL_ERRATUM_A004510_SVR_REV2 +CONFIG_SYS_FSL_ERRATUM_A004580 +CONFIG_SYS_FSL_ERRATUM_A004699 +CONFIG_SYS_FSL_ERRATUM_A004849 +CONFIG_SYS_FSL_ERRATUM_A005125 +CONFIG_SYS_FSL_ERRATUM_A005434 +CONFIG_SYS_FSL_ERRATUM_A005812 +CONFIG_SYS_FSL_ERRATUM_A005871 +CONFIG_SYS_FSL_ERRATUM_A006261 +CONFIG_SYS_FSL_ERRATUM_A006379 +CONFIG_SYS_FSL_ERRATUM_A006384 +CONFIG_SYS_FSL_ERRATUM_A006475 +CONFIG_SYS_FSL_ERRATUM_A006593 +CONFIG_SYS_FSL_ERRATUM_A007075 +CONFIG_SYS_FSL_ERRATUM_A007186 +CONFIG_SYS_FSL_ERRATUM_A007212 +CONFIG_SYS_FSL_ERRATUM_A007798 +CONFIG_SYS_FSL_ERRATUM_A008044 +CONFIG_SYS_FSL_ERRATUM_A008336 +CONFIG_SYS_FSL_ERRATUM_A008378 +CONFIG_SYS_FSL_ERRATUM_A008407 +CONFIG_SYS_FSL_ERRATUM_A008511 +CONFIG_SYS_FSL_ERRATUM_A008514 +CONFIG_SYS_FSL_ERRATUM_A008585 +CONFIG_SYS_FSL_ERRATUM_A008751 +CONFIG_SYS_FSL_ERRATUM_A008850 +CONFIG_SYS_FSL_ERRATUM_A009635 +CONFIG_SYS_FSL_ERRATUM_A009660 +CONFIG_SYS_FSL_ERRATUM_A009663 +CONFIG_SYS_FSL_ERRATUM_A009801 +CONFIG_SYS_FSL_ERRATUM_A009803 +CONFIG_SYS_FSL_ERRATUM_A009929 +CONFIG_SYS_FSL_ERRATUM_A009942 +CONFIG_SYS_FSL_ERRATUM_A010165 +CONFIG_SYS_FSL_ERRATUM_A_004934 +CONFIG_SYS_FSL_ERRATUM_CPC_A002 +CONFIG_SYS_FSL_ERRATUM_CPC_A003 +CONFIG_SYS_FSL_ERRATUM_CPU_A003999 +CONFIG_SYS_FSL_ERRATUM_DDR111_DDR134 +CONFIG_SYS_FSL_ERRATUM_DDR_115 +CONFIG_SYS_FSL_ERRATUM_DDR_A003 +CONFIG_SYS_FSL_ERRATUM_DDR_A003474 +CONFIG_SYS_FSL_ERRATUM_ELBC_A001 +CONFIG_SYS_FSL_ERRATUM_ESDHC111 +CONFIG_SYS_FSL_ERRATUM_ESDHC13 +CONFIG_SYS_FSL_ERRATUM_ESDHC135 +CONFIG_SYS_FSL_ERRATUM_ESDHC_A001 +CONFIG_SYS_FSL_ERRATUM_I2C_A004447 +CONFIG_SYS_FSL_ERRATUM_IFC_A002769 +CONFIG_SYS_FSL_ERRATUM_IFC_A003399 +CONFIG_SYS_FSL_ERRATUM_NMG_CPU_A011 +CONFIG_SYS_FSL_ERRATUM_NMG_DDR120 +CONFIG_SYS_FSL_ERRATUM_NMG_ETSEC129 +CONFIG_SYS_FSL_ERRATUM_NMG_LBC103 +CONFIG_SYS_FSL_ERRATUM_P1010_A003549 +CONFIG_SYS_FSL_ERRATUM_SEC_A003571 +CONFIG_SYS_FSL_ERRATUM_SRIO_A004034 +CONFIG_SYS_FSL_ERRATUM_USB14 +CONFIG_SYS_FSL_ESDHC_ADDR +CONFIG_SYS_FSL_ESDHC_BE +CONFIG_SYS_FSL_ESDHC_BROKEN_TIMEOUT +CONFIG_SYS_FSL_ESDHC_FORCE_VSELECT +CONFIG_SYS_FSL_ESDHC_HAS_DDR_MODE +CONFIG_SYS_FSL_ESDHC_LE +CONFIG_SYS_FSL_ESDHC_NUM +CONFIG_SYS_FSL_ESDHC_P1010_BROKEN_SDCLK +CONFIG_SYS_FSL_ESDHC_USE_PIO +CONFIG_SYS_FSL_FM +CONFIG_SYS_FSL_FM1_ADDR +CONFIG_SYS_FSL_FM1_DTSEC1_ADDR +CONFIG_SYS_FSL_FM1_DTSEC1_OFFSET +CONFIG_SYS_FSL_FM1_OFFSET +CONFIG_SYS_FSL_FM1_RX0_10G_OFFSET +CONFIG_SYS_FSL_FM1_RX0_1G_OFFSET +CONFIG_SYS_FSL_FM1_RX1_10G_OFFSET +CONFIG_SYS_FSL_FM1_RX1_1G_OFFSET +CONFIG_SYS_FSL_FM1_RX2_1G_OFFSET +CONFIG_SYS_FSL_FM1_RX3_1G_OFFSET +CONFIG_SYS_FSL_FM1_RX4_1G_OFFSET +CONFIG_SYS_FSL_FM1_RX5_1G_OFFSET +CONFIG_SYS_FSL_FM2_ADDR +CONFIG_SYS_FSL_FM2_OFFSET +CONFIG_SYS_FSL_FM2_RX0_10G_OFFSET +CONFIG_SYS_FSL_FM2_RX0_1G_OFFSET +CONFIG_SYS_FSL_FM2_RX1_10G_OFFSET +CONFIG_SYS_FSL_FM2_RX1_1G_OFFSET +CONFIG_SYS_FSL_FM2_RX2_1G_OFFSET +CONFIG_SYS_FSL_FM2_RX3_1G_OFFSET +CONFIG_SYS_FSL_FM2_RX4_1G_OFFSET +CONFIG_SYS_FSL_FM2_RX5_1G_OFFSET +CONFIG_SYS_FSL_FMAN_ADDR +CONFIG_SYS_FSL_GUTS_ADDR +CONFIG_SYS_FSL_HAS_DP_DDR +CONFIG_SYS_FSL_I2C +CONFIG_SYS_FSL_I2C2_OFFSET +CONFIG_SYS_FSL_I2C2_SLAVE +CONFIG_SYS_FSL_I2C2_SPEED +CONFIG_SYS_FSL_I2C3_OFFSET +CONFIG_SYS_FSL_I2C3_SLAVE +CONFIG_SYS_FSL_I2C3_SPEED +CONFIG_SYS_FSL_I2C4_OFFSET +CONFIG_SYS_FSL_I2C4_SLAVE +CONFIG_SYS_FSL_I2C4_SPEED +CONFIG_SYS_FSL_I2C_OFFSET +CONFIG_SYS_FSL_I2C_SLAVE +CONFIG_SYS_FSL_I2C_SPEED +CONFIG_SYS_FSL_IFC_BANK_COUNT +CONFIG_SYS_FSL_IFC_BASE +CONFIG_SYS_FSL_IFC_BASE1 +CONFIG_SYS_FSL_IFC_BASE2 +CONFIG_SYS_FSL_IFC_BE +CONFIG_SYS_FSL_IFC_LE +CONFIG_SYS_FSL_IFC_SIZE +CONFIG_SYS_FSL_IFC_SIZE1 +CONFIG_SYS_FSL_IFC_SIZE1_1 +CONFIG_SYS_FSL_IFC_SIZE2 +CONFIG_SYS_FSL_ISBC_VER +CONFIG_SYS_FSL_JR0_ADDR +CONFIG_SYS_FSL_JR0_OFFSET +CONFIG_SYS_FSL_LS1_CLK_ADDR +CONFIG_SYS_FSL_LSCH3_SERDES_ADDR +CONFIG_SYS_FSL_MAX_NUM_OF_SEC +CONFIG_SYS_FSL_MC9SDZ60_I2C_ADDR +CONFIG_SYS_FSL_MC_BASE +CONFIG_SYS_FSL_MC_SIZE +CONFIG_SYS_FSL_MMC_HAS_CAPBLT_VS33 +CONFIG_SYS_FSL_NI_BASE +CONFIG_SYS_FSL_NI_SIZE +CONFIG_SYS_FSL_NO_SERDES +CONFIG_SYS_FSL_NUM_CC_PLL +CONFIG_SYS_FSL_NUM_CC_PLLS +CONFIG_SYS_FSL_NUM_LAWS +CONFIG_SYS_FSL_OCRAM_BASE +CONFIG_SYS_FSL_OCRAM_SIZE +CONFIG_SYS_FSL_OTHER_DDR_NUM_CTRLS +CONFIG_SYS_FSL_PAMU_OFFSET +CONFIG_SYS_FSL_PBL_PBI +CONFIG_SYS_FSL_PBL_RCW +CONFIG_SYS_FSL_PCIE_COMPAT +CONFIG_SYS_FSL_PCI_VER_3_X +CONFIG_SYS_FSL_PEBUF_BASE +CONFIG_SYS_FSL_PEBUF_SIZE +CONFIG_SYS_FSL_PEX_LUT_BE +CONFIG_SYS_FSL_PEX_LUT_LE +CONFIG_SYS_FSL_PMIC_I2C_ADDR +CONFIG_SYS_FSL_PMU_ADDR +CONFIG_SYS_FSL_PMU_CLTBENR +CONFIG_SYS_FSL_QBMAN_BASE +CONFIG_SYS_FSL_QBMAN_SIZE +CONFIG_SYS_FSL_QBMAN_SIZE_1 +CONFIG_SYS_FSL_QMAN_ADDR +CONFIG_SYS_FSL_QMAN_OFFSET +CONFIG_SYS_FSL_QMAN_V3 +CONFIG_SYS_FSL_QORIQ_CHASSIS1 +CONFIG_SYS_FSL_QORIQ_CHASSIS2 +CONFIG_SYS_FSL_QSPI_AHB +CONFIG_SYS_FSL_QSPI_BASE +CONFIG_SYS_FSL_QSPI_BASE1 +CONFIG_SYS_FSL_QSPI_BASE2 +CONFIG_SYS_FSL_QSPI_BE +CONFIG_SYS_FSL_QSPI_LE +CONFIG_SYS_FSL_QSPI_SIZE +CONFIG_SYS_FSL_QSPI_SIZE1 +CONFIG_SYS_FSL_QSPI_SIZE2 +CONFIG_SYS_FSL_RAID_ENGINE +CONFIG_SYS_FSL_RAID_ENGINE_ADDR +CONFIG_SYS_FSL_RAID_ENGINE_OFFSET +CONFIG_SYS_FSL_RCPM_ADDR +CONFIG_SYS_FSL_RMU +CONFIG_SYS_FSL_RST_ADDR +CONFIG_SYS_FSL_SCFG_ADDR +CONFIG_SYS_FSL_SCFG_IODSECR1_ADDR +CONFIG_SYS_FSL_SCFG_IODSECR1_OFFSET +CONFIG_SYS_FSL_SCFG_OFFSET +CONFIG_SYS_FSL_SCFG_PIXCLKCR_OFFSET +CONFIG_SYS_FSL_SCFG_PIXCLK_ADDR +CONFIG_SYS_FSL_SEC_ADDR +CONFIG_SYS_FSL_SEC_BE +CONFIG_SYS_FSL_SEC_COMPAT +CONFIG_SYS_FSL_SEC_IDX_OFFSET +CONFIG_SYS_FSL_SEC_LE +CONFIG_SYS_FSL_SEC_MON_BE +CONFIG_SYS_FSL_SEC_MON_LE +CONFIG_SYS_FSL_SEC_OFFSET +CONFIG_SYS_FSL_SERDES +CONFIG_SYS_FSL_SERDES_ADDR +CONFIG_SYS_FSL_SFP_BE +CONFIG_SYS_FSL_SFP_LE +CONFIG_SYS_FSL_SFP_VER_3_0 +CONFIG_SYS_FSL_SFP_VER_3_2 +CONFIG_SYS_FSL_SFP_VER_3_4 +CONFIG_SYS_FSL_SINGLE_SOURCE_CLK +CONFIG_SYS_FSL_SNVS_LE +CONFIG_SYS_FSL_SP_ADDR +CONFIG_SYS_FSL_SP_LOOPBACK_DUART +CONFIG_SYS_FSL_SP_VSG_GIC_ADDR +CONFIG_SYS_FSL_SP_VSG_GIC_VIGR1 +CONFIG_SYS_FSL_SP_VSG_GIC_VIGR2 +CONFIG_SYS_FSL_SRDS_1 +CONFIG_SYS_FSL_SRDS_2 +CONFIG_SYS_FSL_SRDS_3 +CONFIG_SYS_FSL_SRDS_4 +CONFIG_SYS_FSL_SRDS_NUM_PLLS +CONFIG_SYS_FSL_SRIO_ADDR +CONFIG_SYS_FSL_SRIO_IB_WIN_NUM +CONFIG_SYS_FSL_SRIO_LIODN +CONFIG_SYS_FSL_SRIO_MAX_PORTS +CONFIG_SYS_FSL_SRIO_MSG_UNIT_NUM +CONFIG_SYS_FSL_SRIO_OB_WIN_NUM +CONFIG_SYS_FSL_SRIO_OFFSET +CONFIG_SYS_FSL_SRK_LE +CONFIG_SYS_FSL_TBCLK_DIV +CONFIG_SYS_FSL_THREADS_PER_CORE +CONFIG_SYS_FSL_TIMER_ADDR +CONFIG_SYS_FSL_USB1_ADDR +CONFIG_SYS_FSL_USB1_PHY_ENABLE +CONFIG_SYS_FSL_USB2_ADDR +CONFIG_SYS_FSL_USB2_PHY_ENABLE +CONFIG_SYS_FSL_USB_CTRL_PHY_EN +CONFIG_SYS_FSL_USB_DRVVBUS_CR_EN +CONFIG_SYS_FSL_USB_DUAL_PHY_ENABLE +CONFIG_SYS_FSL_USB_ENABLE_OVERRIDE +CONFIG_SYS_FSL_USB_HS_DISCNCT_INC +CONFIG_SYS_FSL_USB_INTERNAL_SOC_CLK_EN +CONFIG_SYS_FSL_USB_INTERNAL_UTMI_PHY +CONFIG_SYS_FSL_USB_PLLPRG1_PHY_DIV +CONFIG_SYS_FSL_USB_PLLPRG2_FRAC_LPF_EN +CONFIG_SYS_FSL_USB_PLLPRG2_MFI +CONFIG_SYS_FSL_USB_PLLPRG2_MFI_INTERNAL_CLK +CONFIG_SYS_FSL_USB_PLLPRG2_PHY1_CLK_EN +CONFIG_SYS_FSL_USB_PLLPRG2_PHY2_CLK_EN +CONFIG_SYS_FSL_USB_PLLPRG2_PLL_EN +CONFIG_SYS_FSL_USB_PLLPRG2_REF_DIV +CONFIG_SYS_FSL_USB_PLLPRG2_REF_DIV_INTERNAL_CLK +CONFIG_SYS_FSL_USB_PWRFLT_CR_EN +CONFIG_SYS_FSL_USB_RX_AUTO_CAL_RD_WR_SEL +CONFIG_SYS_FSL_USB_SQUELCH_PROG_MASK +CONFIG_SYS_FSL_USB_SQUELCH_PROG_RD_0 +CONFIG_SYS_FSL_USB_SQUELCH_PROG_RD_3 +CONFIG_SYS_FSL_USB_SQUELCH_PROG_WR_0 +CONFIG_SYS_FSL_USB_SQUELCH_PROG_WR_3 +CONFIG_SYS_FSL_USB_SYS_CLK_VALID +CONFIG_SYS_FSL_USB_XCVRPRG_HS_DCNT_PROG_EN +CONFIG_SYS_FSL_USB_XCVRPRG_HS_DCNT_PROG_MASK +CONFIG_SYS_FSL_USDHC_NUM +CONFIG_SYS_FSL_WDOG_BE +CONFIG_SYS_FSL_WRIOP1_ADDR +CONFIG_SYS_FSL_WRIOP1_BASE +CONFIG_SYS_FSL_WRIOP1_MDIO1 +CONFIG_SYS_FSL_WRIOP1_MDIO2 +CONFIG_SYS_FSL_WRIOP1_SIZE +CONFIG_SYS_FSL_XHCI_USB1_ADDR +CONFIG_SYS_FSL_XHCI_USB2_ADDR +CONFIG_SYS_FSL_XHCI_USB3_ADDR +CONFIG_SYS_FSMC_BASE +CONFIG_SYS_FSMC_NAND_16BIT +CONFIG_SYS_FSMC_NAND_8BIT +CONFIG_SYS_FSMC_NAND_SP +CONFIG_SYS_FTAHBC020S_SLAVE_BSR_6 +CONFIG_SYS_FTAHBC020S_SLAVE_BSR_BASE +CONFIG_SYS_FTPMU010_PDLLCR0_HCLKOUTDIS +CONFIG_SYS_FTPMU010_SDRAMHTC +CONFIG_SYS_FTSDMC021_BANK0_BASE +CONFIG_SYS_FTSDMC021_BANK0_BSR +CONFIG_SYS_FTSDMC021_BANK1_BASE +CONFIG_SYS_FTSDMC021_BANK1_BSR +CONFIG_SYS_FTSDMC021_CR1 +CONFIG_SYS_FTSDMC021_CR2 +CONFIG_SYS_FTSDMC021_TP1 +CONFIG_SYS_FTSDMC021_TP2 +CONFIG_SYS_FTSMC020_CONFIGS +CONFIG_SYS_FULL_VA +CONFIG_SYS_GAFR0_L_VAL +CONFIG_SYS_GAFR0_U_VAL +CONFIG_SYS_GAFR1_L_VAL +CONFIG_SYS_GAFR1_U_VAL +CONFIG_SYS_GAFR2_L_VAL +CONFIG_SYS_GAFR2_U_VAL +CONFIG_SYS_GAFR3_L_VAL +CONFIG_SYS_GAFR3_U_VAL +CONFIG_SYS_GBIT_MII1_BUSNAME +CONFIG_SYS_GBIT_MII_BUSNAME +CONFIG_SYS_GBL_DATA_ADDR +CONFIG_SYS_GBL_DATA_OFFSET +CONFIG_SYS_GBL_DATA_SIZE +CONFIG_SYS_GENERIC_BOARD +CONFIG_SYS_GENERIC_GLOBAL_DATA +CONFIG_SYS_GIC400_ADDR +CONFIG_SYS_GLOBAL_SDRAM_LIMIT +CONFIG_SYS_GP1DIR +CONFIG_SYS_GP1ODR +CONFIG_SYS_GP2DIR +CONFIG_SYS_GP2ODR +CONFIG_SYS_GPCR0_VAL +CONFIG_SYS_GPCR1_VAL +CONFIG_SYS_GPCR2_VAL +CONFIG_SYS_GPCR3_VAL +CONFIG_SYS_GPDR0_VAL +CONFIG_SYS_GPDR1_VAL +CONFIG_SYS_GPDR2_VAL +CONFIG_SYS_GPDR3_VAL +CONFIG_SYS_GPIO0_ISR1H +CONFIG_SYS_GPIO0_ISR1L +CONFIG_SYS_GPIO0_ISR2H +CONFIG_SYS_GPIO0_ISR2L +CONFIG_SYS_GPIO0_ODR +CONFIG_SYS_GPIO0_OR +CONFIG_SYS_GPIO0_OSRH +CONFIG_SYS_GPIO0_OSRL +CONFIG_SYS_GPIO0_TCR +CONFIG_SYS_GPIO0_TSRH +CONFIG_SYS_GPIO0_TSRL +CONFIG_SYS_GPIO1_DAT +CONFIG_SYS_GPIO1_DIR +CONFIG_SYS_GPIO1_EN +CONFIG_SYS_GPIO1_FUNC +CONFIG_SYS_GPIO1_ISR1H +CONFIG_SYS_GPIO1_ISR1L +CONFIG_SYS_GPIO1_LED +CONFIG_SYS_GPIO1_OSRH +CONFIG_SYS_GPIO1_OSRL +CONFIG_SYS_GPIO1_OUT +CONFIG_SYS_GPIO1_PRELIM +CONFIG_SYS_GPIO1_TCR +CONFIG_SYS_GPIO1_TSRH +CONFIG_SYS_GPIO1_TSRL +CONFIG_SYS_GPIO2_DAT +CONFIG_SYS_GPIO2_DIR +CONFIG_SYS_GPIO2_PRELIM +CONFIG_SYS_GPIO_0_ADDR +CONFIG_SYS_GPIO_BASE +CONFIG_SYS_GPIO_BOARD_RESET +CONFIG_SYS_GPIO_CAN_ENABLE +CONFIG_SYS_GPIO_CRAM_ADV +CONFIG_SYS_GPIO_CRAM_CLK +CONFIG_SYS_GPIO_CRAM_CRE +CONFIG_SYS_GPIO_CRAM_WAIT +CONFIG_SYS_GPIO_DATADIR +CONFIG_SYS_GPIO_DATAVALUE +CONFIG_SYS_GPIO_DSPIC_READY +CONFIG_SYS_GPIO_EEPROM_EXT_WP +CONFIG_SYS_GPIO_EEPROM_INT_WP +CONFIG_SYS_GPIO_EEPROM_WP +CONFIG_SYS_GPIO_EN +CONFIG_SYS_GPIO_ENABLE +CONFIG_SYS_GPIO_EREADY +CONFIG_SYS_GPIO_FLASH_WP +CONFIG_SYS_GPIO_FUNC +CONFIG_SYS_GPIO_HIGHSIDE +CONFIG_SYS_GPIO_HWREV_MASK +CONFIG_SYS_GPIO_HWREV_SHIFT +CONFIG_SYS_GPIO_I2C_SCL +CONFIG_SYS_GPIO_I2C_SDA +CONFIG_SYS_GPIO_LEDA_N +CONFIG_SYS_GPIO_LEDB_N +CONFIG_SYS_GPIO_LEDRUN_N +CONFIG_SYS_GPIO_LIME_RST +CONFIG_SYS_GPIO_LIME_S +CONFIG_SYS_GPIO_LSB_ENABLE +CONFIG_SYS_GPIO_M66EN +CONFIG_SYS_GPIO_MONARCH_N +CONFIG_SYS_GPIO_ODR +CONFIG_SYS_GPIO_OPENDRAIN +CONFIG_SYS_GPIO_OR +CONFIG_SYS_GPIO_OUT +CONFIG_SYS_GPIO_PCIE_CLKREQ +CONFIG_SYS_GPIO_PCIE_PRESENT0 +CONFIG_SYS_GPIO_PCIE_PRESENT1 +CONFIG_SYS_GPIO_PCIE_PRESENT2 +CONFIG_SYS_GPIO_PCIE_RST +CONFIG_SYS_GPIO_PCIE_WAKE +CONFIG_SYS_GPIO_PERM_VOLT_FEED +CONFIG_SYS_GPIO_PHY0_RST +CONFIG_SYS_GPIO_PHY1_RST +CONFIG_SYS_GPIO_PHY_RST +CONFIG_SYS_GPIO_RS232_FORCEOFF +CONFIG_SYS_GPIO_SELFRST_N +CONFIG_SYS_GPIO_STARTUP_FINISHED +CONFIG_SYS_GPIO_STARTUP_FINISHED_N +CONFIG_SYS_GPIO_SYSMON_STATUS +CONFIG_SYS_GPIO_TCR +CONFIG_SYS_GPIO_WATCHDOG +CONFIG_SYS_GPIO_WIDTH +CONFIG_SYS_GPR1 +CONFIG_SYS_GPSR0_VAL +CONFIG_SYS_GPSR1_VAL +CONFIG_SYS_GPSR2_VAL +CONFIG_SYS_GPSR3_VAL +CONFIG_SYS_GPS_PORT_CONFIG +CONFIG_SYS_GPS_PORT_CONFIG_1 +CONFIG_SYS_GPS_PORT_CONFIG_2 +CONFIG_SYS_GRLIB_APBUART_INDEX +CONFIG_SYS_GRLIB_ESA_MCTRL1 +CONFIG_SYS_GRLIB_ESA_MCTRL1_CFG1 +CONFIG_SYS_GRLIB_ESA_MCTRL1_CFG2 +CONFIG_SYS_GRLIB_ESA_MCTRL1_CFG3 +CONFIG_SYS_GRLIB_ESA_MCTRL2 +CONFIG_SYS_GRLIB_ESA_MCTRL2_CFG1 +CONFIG_SYS_GRLIB_ESA_MCTRL2_CFG2 +CONFIG_SYS_GRLIB_ESA_MCTRL2_CFG3 +CONFIG_SYS_GRLIB_GAISLER_DDR2SPA1 +CONFIG_SYS_GRLIB_GAISLER_DDR2SPA1_CFG1 +CONFIG_SYS_GRLIB_GAISLER_DDR2SPA1_CFG3 +CONFIG_SYS_GRLIB_GAISLER_DDR2SPA1_CFG4 +CONFIG_SYS_GRLIB_GAISLER_DDR2SPA2 +CONFIG_SYS_GRLIB_GAISLER_DDR2SPA2_CFG1 +CONFIG_SYS_GRLIB_GAISLER_DDR2SPA2_CFG3 +CONFIG_SYS_GRLIB_GAISLER_DDR2SPA2_CFG4 +CONFIG_SYS_GRLIB_GAISLER_DDRSPA1 +CONFIG_SYS_GRLIB_GAISLER_DDRSPA1_CTRL +CONFIG_SYS_GRLIB_GAISLER_DDRSPA2 +CONFIG_SYS_GRLIB_GAISLER_DDRSPA2_CTRL +CONFIG_SYS_GRLIB_GAISLER_FTMCTRL1 +CONFIG_SYS_GRLIB_GAISLER_FTMCTRL1_CFG1 +CONFIG_SYS_GRLIB_GAISLER_FTMCTRL1_CFG2 +CONFIG_SYS_GRLIB_GAISLER_FTMCTRL1_CFG3 +CONFIG_SYS_GRLIB_GAISLER_FTMCTRL2 +CONFIG_SYS_GRLIB_GAISLER_FTMCTRL2_CFG1 +CONFIG_SYS_GRLIB_GAISLER_FTMCTRL2_CFG2 +CONFIG_SYS_GRLIB_GAISLER_FTMCTRL2_CFG3 +CONFIG_SYS_GRLIB_GAISLER_SDCTRL1 +CONFIG_SYS_GRLIB_GAISLER_SDCTRL1_CTRL +CONFIG_SYS_GRLIB_GAISLER_SDCTRL2 +CONFIG_SYS_GRLIB_GAISLER_SDCTRL2_CTRL +CONFIG_SYS_GRLIB_GPTIMER_INDEX +CONFIG_SYS_GRLIB_GRETH_INDEX +CONFIG_SYS_GRLIB_GRETH_PHYADDR +CONFIG_SYS_GRLIB_GRUSB_INDEX +CONFIG_SYS_GRLIB_MEMCFG1 +CONFIG_SYS_GRLIB_MEMCFG2 +CONFIG_SYS_GRLIB_MEMCFG3 +CONFIG_SYS_GRLIB_SDRAM +CONFIG_SYS_GRLIB_SINGLE_BUS +CONFIG_SYS_HALT_BEFOR_RAM_JUMP +CONFIG_SYS_HAS_NO_CACHE +CONFIG_SYS_HAS_SERDES +CONFIG_SYS_HELP_CMD_WIDTH +CONFIG_SYS_HID0_FINAL +CONFIG_SYS_HID0_INIT +CONFIG_SYS_HID2 +CONFIG_SYS_HIGH +CONFIG_SYS_HMI_BASE +CONFIG_SYS_HOSTNAME +CONFIG_SYS_HRCW_HIGH +CONFIG_SYS_HRCW_HIGH_BASE +CONFIG_SYS_HRCW_LOW +CONFIG_SYS_HRCW_MASTER +CONFIG_SYS_HRCW_SLAVE1 +CONFIG_SYS_HRCW_SLAVE2 +CONFIG_SYS_HRCW_SLAVE3 +CONFIG_SYS_HRCW_SLAVE4 +CONFIG_SYS_HRCW_SLAVE5 +CONFIG_SYS_HRCW_SLAVE6 +CONFIG_SYS_HRCW_SLAVE7 +CONFIG_SYS_HSDRAMC +CONFIG_SYS_HWINFO_MAGIC +CONFIG_SYS_HWINFO_OFFSET +CONFIG_SYS_HWINFO_SIZE +CONFIG_SYS_HZ_CLOCK +CONFIG_SYS_I2C +CONFIG_SYS_I2C2_FSL_OFFSET +CONFIG_SYS_I2C2_OFFSET +CONFIG_SYS_I2C2_PINMUX_CLR +CONFIG_SYS_I2C2_PINMUX_REG +CONFIG_SYS_I2C2_PINMUX_SET +CONFIG_SYS_I2C_0 +CONFIG_SYS_I2C_2 +CONFIG_SYS_I2C_5 +CONFIG_SYS_I2C_8574A_ADDR1 +CONFIG_SYS_I2C_8574A_ADDR2 +CONFIG_SYS_I2C_8574_ADDR1 +CONFIG_SYS_I2C_8574_ADDR2 +CONFIG_SYS_I2C_ADI +CONFIG_SYS_I2C_BASE +CONFIG_SYS_I2C_BASE0 +CONFIG_SYS_I2C_BASE1 +CONFIG_SYS_I2C_BASE2 +CONFIG_SYS_I2C_BASE3 +CONFIG_SYS_I2C_BASE4 +CONFIG_SYS_I2C_BASE5 +CONFIG_SYS_I2C_BOARD_LATE_INIT +CONFIG_SYS_I2C_BOOT_EEPROM_ADDR +CONFIG_SYS_I2C_BUSES +CONFIG_SYS_I2C_BUS_MAX +CONFIG_SYS_I2C_CLK_OFFSET +CONFIG_SYS_I2C_DAVINCI +CONFIG_SYS_I2C_DIRECT_BUS +CONFIG_SYS_I2C_DPMEM_OFFSET +CONFIG_SYS_I2C_DS1621_ADDR +CONFIG_SYS_I2C_DS4510_ADDR +CONFIG_SYS_I2C_DSPIC_2_ADDR +CONFIG_SYS_I2C_DSPIC_ADDR +CONFIG_SYS_I2C_DSPIC_IO_ADDR +CONFIG_SYS_I2C_DSPIC_KEYB_ADDR +CONFIG_SYS_I2C_DTT_ADDR +CONFIG_SYS_I2C_DVI_ADDR +CONFIG_SYS_I2C_DVI_BUS_NUM +CONFIG_SYS_I2C_EARLY_INIT +CONFIG_SYS_I2C_EEPROM +CONFIG_SYS_I2C_EEPROM_ADDR +CONFIG_SYS_I2C_EEPROM_ADDR_LEN +CONFIG_SYS_I2C_EEPROM_ADDR_OVERFLOW +CONFIG_SYS_I2C_EEPROM_BUS +CONFIG_SYS_I2C_EEPROM_BUS_NUM +CONFIG_SYS_I2C_EEPROM_CCID +CONFIG_SYS_I2C_EEPROM_CPU_ADDR +CONFIG_SYS_I2C_EEPROM_MAC_OFFSET +CONFIG_SYS_I2C_EEPROM_MB_ADDR +CONFIG_SYS_I2C_EEPROM_NXID +CONFIG_SYS_I2C_EEPROM_NXID_MAC +CONFIG_SYS_I2C_EEPROM_PAGE_WRITE_BITS +CONFIG_SYS_I2C_EEPROM_PAGE_WRITE_DELAY_MS +CONFIG_SYS_I2C_EXPANDER_ADDR +CONFIG_SYS_I2C_FACT_ADDR +CONFIG_SYS_I2C_FPGA_ADDR +CONFIG_SYS_I2C_FRAM +CONFIG_SYS_I2C_G762_ADDR +CONFIG_SYS_I2C_GENERIC_MAC +CONFIG_SYS_I2C_HWMON_ADDR +CONFIG_SYS_I2C_IDT6V49205B +CONFIG_SYS_I2C_IFDR_DIV +CONFIG_SYS_I2C_IHS +CONFIG_SYS_I2C_IHS_CH0 +CONFIG_SYS_I2C_IHS_CH0_1 +CONFIG_SYS_I2C_IHS_CH1 +CONFIG_SYS_I2C_IHS_CH1_1 +CONFIG_SYS_I2C_IHS_CH2 +CONFIG_SYS_I2C_IHS_CH2_1 +CONFIG_SYS_I2C_IHS_CH3 +CONFIG_SYS_I2C_IHS_CH3_1 +CONFIG_SYS_I2C_IHS_DUAL +CONFIG_SYS_I2C_IHS_SLAVE_0 +CONFIG_SYS_I2C_IHS_SLAVE_0_1 +CONFIG_SYS_I2C_IHS_SLAVE_1 +CONFIG_SYS_I2C_IHS_SLAVE_1_1 +CONFIG_SYS_I2C_IHS_SLAVE_2 +CONFIG_SYS_I2C_IHS_SLAVE_2_1 +CONFIG_SYS_I2C_IHS_SLAVE_3 +CONFIG_SYS_I2C_IHS_SLAVE_3_1 +CONFIG_SYS_I2C_IHS_SPEED_0 +CONFIG_SYS_I2C_IHS_SPEED_0_1 +CONFIG_SYS_I2C_IHS_SPEED_1 +CONFIG_SYS_I2C_IHS_SPEED_1_1 +CONFIG_SYS_I2C_IHS_SPEED_2 +CONFIG_SYS_I2C_IHS_SPEED_2_1 +CONFIG_SYS_I2C_IHS_SPEED_3 +CONFIG_SYS_I2C_IHS_SPEED_3_1 +CONFIG_SYS_I2C_INIT_BOARD +CONFIG_SYS_I2C_IO +CONFIG_SYS_I2C_KEYBD_ADDR +CONFIG_SYS_I2C_KONA +CONFIG_SYS_I2C_LDI_ADDR +CONFIG_SYS_I2C_LM75_ADDR +CONFIG_SYS_I2C_LM90_ADDR +CONFIG_SYS_I2C_LPC32XX +CONFIG_SYS_I2C_LPC32XX_SLAVE +CONFIG_SYS_I2C_LPC32XX_SPEED +CONFIG_SYS_I2C_MAC1_BUS +CONFIG_SYS_I2C_MAC1_CHIP_ADDR +CONFIG_SYS_I2C_MAC1_DATA_ADDR +CONFIG_SYS_I2C_MAC2_BUS +CONFIG_SYS_I2C_MAC2_CHIP_ADDR +CONFIG_SYS_I2C_MAC2_DATA_ADDR +CONFIG_SYS_I2C_MAC_OFFSET +CONFIG_SYS_I2C_MAX1237_ADDR +CONFIG_SYS_I2C_MAX_HOPS +CONFIG_SYS_I2C_MODULE +CONFIG_SYS_I2C_MXC +CONFIG_SYS_I2C_MXC_I2C1 +CONFIG_SYS_I2C_MXC_I2C2 +CONFIG_SYS_I2C_MXC_I2C3 +CONFIG_SYS_I2C_MXC_I2C4 +CONFIG_SYS_I2C_MXS +CONFIG_SYS_I2C_NCT72_ADDR +CONFIG_SYS_I2C_NOPROBES +CONFIG_SYS_I2C_OFFSET +CONFIG_SYS_I2C_OMAP24XX +CONFIG_SYS_I2C_OMAP34XX +CONFIG_SYS_I2C_PCA953X_ADDR +CONFIG_SYS_I2C_PCA953X_ADDR0 +CONFIG_SYS_I2C_PCA953X_ADDR1 +CONFIG_SYS_I2C_PCA953X_ADDR2 +CONFIG_SYS_I2C_PCA953X_ADDR3 +CONFIG_SYS_I2C_PCA953X_WIDTH +CONFIG_SYS_I2C_PCA9553_ADDR +CONFIG_SYS_I2C_PCA9555_ADDR +CONFIG_SYS_I2C_PCA9557_ADDR +CONFIG_SYS_I2C_PCF8574A_ADDR +CONFIG_SYS_I2C_PEX8518_ADDR +CONFIG_SYS_I2C_PINMUX_CLR +CONFIG_SYS_I2C_PINMUX_REG +CONFIG_SYS_I2C_PINMUX_SET +CONFIG_SYS_I2C_POWERIC_ADDR +CONFIG_SYS_I2C_PPC4XX +CONFIG_SYS_I2C_PPC4XX_CH0 +CONFIG_SYS_I2C_PPC4XX_CH1 +CONFIG_SYS_I2C_PPC4XX_SLAVE_0 +CONFIG_SYS_I2C_PPC4XX_SLAVE_1 +CONFIG_SYS_I2C_PPC4XX_SPEED_0 +CONFIG_SYS_I2C_PPC4XX_SPEED_1 +CONFIG_SYS_I2C_PXA +CONFIG_SYS_I2C_QIXIS_ADDR +CONFIG_SYS_I2C_RCAR +CONFIG_SYS_I2C_RTC_ADDR +CONFIG_SYS_I2C_S3C24X0 +CONFIG_SYS_I2C_S3C24X0_SLAVE +CONFIG_SYS_I2C_S3C24X0_SPEED +CONFIG_SYS_I2C_SH +CONFIG_SYS_I2C_SH_BASE0 +CONFIG_SYS_I2C_SH_BASE1 +CONFIG_SYS_I2C_SH_BASE2 +CONFIG_SYS_I2C_SH_BASE3 +CONFIG_SYS_I2C_SH_BASE4 +CONFIG_SYS_I2C_SH_NUM_CONTROLLERS +CONFIG_SYS_I2C_SH_SPEED0 +CONFIG_SYS_I2C_SH_SPEED1 +CONFIG_SYS_I2C_SH_SPEED2 +CONFIG_SYS_I2C_SH_SPEED3 +CONFIG_SYS_I2C_SH_SPEED4 +CONFIG_SYS_I2C_SLAVE +CONFIG_SYS_I2C_SLAVE1 +CONFIG_SYS_I2C_SLAVE2 +CONFIG_SYS_I2C_SLAVE3 +CONFIG_SYS_I2C_SOFT +CONFIG_SYS_I2C_SOFT_SLAVE +CONFIG_SYS_I2C_SOFT_SLAVE_10 +CONFIG_SYS_I2C_SOFT_SLAVE_11 +CONFIG_SYS_I2C_SOFT_SLAVE_12 +CONFIG_SYS_I2C_SOFT_SLAVE_2 +CONFIG_SYS_I2C_SOFT_SLAVE_3 +CONFIG_SYS_I2C_SOFT_SLAVE_4 +CONFIG_SYS_I2C_SOFT_SLAVE_5 +CONFIG_SYS_I2C_SOFT_SLAVE_6 +CONFIG_SYS_I2C_SOFT_SLAVE_7 +CONFIG_SYS_I2C_SOFT_SLAVE_8 +CONFIG_SYS_I2C_SOFT_SLAVE_9 +CONFIG_SYS_I2C_SOFT_SPEED +CONFIG_SYS_I2C_SOFT_SPEED_10 +CONFIG_SYS_I2C_SOFT_SPEED_11 +CONFIG_SYS_I2C_SOFT_SPEED_12 +CONFIG_SYS_I2C_SOFT_SPEED_2 +CONFIG_SYS_I2C_SOFT_SPEED_3 +CONFIG_SYS_I2C_SOFT_SPEED_4 +CONFIG_SYS_I2C_SOFT_SPEED_5 +CONFIG_SYS_I2C_SOFT_SPEED_6 +CONFIG_SYS_I2C_SOFT_SPEED_7 +CONFIG_SYS_I2C_SOFT_SPEED_8 +CONFIG_SYS_I2C_SOFT_SPEED_9 +CONFIG_SYS_I2C_SPEED +CONFIG_SYS_I2C_SPEED1 +CONFIG_SYS_I2C_SPEED2 +CONFIG_SYS_I2C_SPEED3 +CONFIG_SYS_I2C_TCA642X_ADDR +CONFIG_SYS_I2C_TCA642X_BUS_NUM +CONFIG_SYS_I2C_TEGRA +CONFIG_SYS_I2C_UCODE_PATCH +CONFIG_SYS_I2C_W83782G_ADDR +CONFIG_SYS_I2C_ZYNQ +CONFIG_SYS_I2C_ZYNQ_SLAVE +CONFIG_SYS_I2C_ZYNQ_SPEED +CONFIG_SYS_I2ODMA_BASE +CONFIG_SYS_I2ODMA_PHYS_ADDR +CONFIG_SYS_I2c_INIT_MPC5XXX +CONFIG_SYS_IBAT +CONFIG_SYS_IBAT0L +CONFIG_SYS_IBAT0U +CONFIG_SYS_IBAT1L +CONFIG_SYS_IBAT1U +CONFIG_SYS_IBAT2L +CONFIG_SYS_IBAT2U +CONFIG_SYS_IBAT3L +CONFIG_SYS_IBAT3U +CONFIG_SYS_IBAT4L +CONFIG_SYS_IBAT4U +CONFIG_SYS_IBAT5L +CONFIG_SYS_IBAT5U +CONFIG_SYS_IBAT6L +CONFIG_SYS_IBAT6L_EARLY +CONFIG_SYS_IBAT6U +CONFIG_SYS_IBAT6U_EARLY +CONFIG_SYS_IBAT7L +CONFIG_SYS_IBAT7U +CONFIG_SYS_ICACHE_INV +CONFIG_SYS_ICACHE_LINESZ +CONFIG_SYS_ICACHE_SACR_VALUE +CONFIG_SYS_ICS8N3QV01_I2C +CONFIG_SYS_ICTRL +CONFIG_SYS_IDE_MAXBUS +CONFIG_SYS_IDE_MAXDEVICE +CONFIG_SYS_ID_EEPROM +CONFIG_SYS_IFC_ADDR +CONFIG_SYS_IFC_CCR +CONFIG_SYS_IMMR +CONFIG_SYS_INIT_DBCR +CONFIG_SYS_INIT_DCACHE_CS +CONFIG_SYS_INIT_DCACHE_PBxAR +CONFIG_SYS_INIT_DCACHE_PBxCR +CONFIG_SYS_INIT_EXTRA_SIZE +CONFIG_SYS_INIT_L2CSR0 +CONFIG_SYS_INIT_L2_ADDR +CONFIG_SYS_INIT_L2_ADDR_PHYS +CONFIG_SYS_INIT_L2_END +CONFIG_SYS_INIT_L3_ADDR +CONFIG_SYS_INIT_L3_ADDR_PHYS +CONFIG_SYS_INIT_L3_END +CONFIG_SYS_INIT_L3_VADDR +CONFIG_SYS_INIT_RAM1_ADDR +CONFIG_SYS_INIT_RAM1_CTRL +CONFIG_SYS_INIT_RAM1_END +CONFIG_SYS_INIT_RAM_ADDR +CONFIG_SYS_INIT_RAM_ADDR_PHYS +CONFIG_SYS_INIT_RAM_ADDR_PHYS_HIGH +CONFIG_SYS_INIT_RAM_ADDR_PHYS_LOW +CONFIG_SYS_INIT_RAM_CTRL +CONFIG_SYS_INIT_RAM_DCACHE +CONFIG_SYS_INIT_RAM_LOCK +CONFIG_SYS_INIT_RAM_PATTERN +CONFIG_SYS_INIT_RAM_SIZE +CONFIG_SYS_INIT_SP_ADDR +CONFIG_SYS_INIT_SP_OFFSET +CONFIG_SYS_INPUT_CLKSRC +CONFIG_SYS_INTA_FAKE +CONFIG_SYS_INTEL_BOOT +CONFIG_SYS_INTERLAKEN +CONFIG_SYS_INTRAM_BASE +CONFIG_SYS_INTRAM_SIZE +CONFIG_SYS_INTR_BASE +CONFIG_SYS_INTSRAM +CONFIG_SYS_INTSRAMSZ +CONFIG_SYS_INT_FLASH_BASE +CONFIG_SYS_INT_FLASH_ENABLE +CONFIG_SYS_IOCTRL_MUX_DDR +CONFIG_SYS_IO_BASE +CONFIG_SYS_IPBCLK_EQUALS_XLBCLK +CONFIG_SYS_IPBSPEED_133 +CONFIG_SYS_IR_REG_BASE_ADDR +CONFIG_SYS_ISA_BASE +CONFIG_SYS_ISA_IO +CONFIG_SYS_ISA_IO_BASE_ADDRESS +CONFIG_SYS_ISA_IO_OFFSET +CONFIG_SYS_ISA_IO_STRIDE +CONFIG_SYS_ISA_MEM +CONFIG_SYS_ISB +CONFIG_SYS_ISRAM_BASE +CONFIG_SYS_IVM_EEPROM_ADR +CONFIG_SYS_IVM_EEPROM_MAX_LEN +CONFIG_SYS_IVM_EEPROM_PAGE_LEN +CONFIG_SYS_JFFS2_FIRST_BANK +CONFIG_SYS_JFFS2_FIRST_SECTOR +CONFIG_SYS_JFFS2_MEM_NAND +CONFIG_SYS_JFFS2_NUM_BANKS +CONFIG_SYS_JFFS2_SORT_FRAGMENTS +CONFIG_SYS_KBYTES_SDRAM +CONFIG_SYS_KEY_REG_BASE_ADDR +CONFIG_SYS_KMBEC_FPGA_BASE +CONFIG_SYS_KMBEC_FPGA_SIZE +CONFIG_SYS_KWD_CONFIG +CONFIG_SYS_KW_SPI_MPP +CONFIG_SYS_L2 +CONFIG_SYS_L2_PL310 +CONFIG_SYS_L2_SIZE +CONFIG_SYS_L3_SIZE +CONFIG_SYS_LARGE_FLASH +CONFIG_SYS_LATCH0_BOOT +CONFIG_SYS_LATCH0_RESET +CONFIG_SYS_LATCH1_BOOT +CONFIG_SYS_LATCH1_RESET +CONFIG_SYS_LATCH_ADDR +CONFIG_SYS_LATCH_BASE +CONFIG_SYS_LBAPP1_BASE +CONFIG_SYS_LBAPP1_BASE_PHYS +CONFIG_SYS_LBAPP1_BR_PRELIM +CONFIG_SYS_LBAPP1_OR_PRELIM +CONFIG_SYS_LBAPP2_BASE +CONFIG_SYS_LBAPP2_BASE_PHYS +CONFIG_SYS_LBAPP2_BR_PRELIM +CONFIG_SYS_LBAPP2_OR_PRELIM +CONFIG_SYS_LBC0_BASE +CONFIG_SYS_LBC0_BASE_PHYS +CONFIG_SYS_LBC1_BASE +CONFIG_SYS_LBC1_BASE_PHYS +CONFIG_SYS_LBCR_ADDR +CONFIG_SYS_LBC_ADDR +CONFIG_SYS_LBC_BASE +CONFIG_SYS_LBC_BASE_PHYS_LOW +CONFIG_SYS_LBC_CACHE_BASE +CONFIG_SYS_LBC_FLASH_BASE +CONFIG_SYS_LBC_LBCR +CONFIG_SYS_LBC_LCRR +CONFIG_SYS_LBC_LSDMR_1 +CONFIG_SYS_LBC_LSDMR_2 +CONFIG_SYS_LBC_LSDMR_3 +CONFIG_SYS_LBC_LSDMR_4 +CONFIG_SYS_LBC_LSDMR_5 +CONFIG_SYS_LBC_LSDMR_ARFRSH +CONFIG_SYS_LBC_LSDMR_COMMON +CONFIG_SYS_LBC_LSDMR_MRW +CONFIG_SYS_LBC_LSDMR_PCHALL +CONFIG_SYS_LBC_LSDMR_RFEN +CONFIG_SYS_LBC_LSRT +CONFIG_SYS_LBC_MRTPR +CONFIG_SYS_LBC_NONCACHE_BASE +CONFIG_SYS_LBC_SDRAM_BASE +CONFIG_SYS_LBC_SDRAM_BASE_PHYS +CONFIG_SYS_LBC_SDRAM_SIZE +CONFIG_SYS_LBLAWAR0_PRELIM +CONFIG_SYS_LBLAWAR1_PRELIM +CONFIG_SYS_LBLAWAR2_PRELIM +CONFIG_SYS_LBLAWAR3_PRELIM +CONFIG_SYS_LBLAWAR4_PRELIM +CONFIG_SYS_LBLAWAR5_PRELIM +CONFIG_SYS_LBLAWAR6_PRELIM +CONFIG_SYS_LBLAWAR7_PRELIM +CONFIG_SYS_LBLAWBAR0_PRELIM +CONFIG_SYS_LBLAWBAR1_PRELIM +CONFIG_SYS_LBLAWBAR2_PRELIM +CONFIG_SYS_LBLAWBAR3_PRELIM +CONFIG_SYS_LBLAWBAR4_PRELIM +CONFIG_SYS_LBLAWBAR5_PRELIM +CONFIG_SYS_LBLAWBAR6_PRELIM +CONFIG_SYS_LBLAWBAR7_PRELIM +CONFIG_SYS_LB_SDRAM +CONFIG_SYS_LCD0_RST +CONFIG_SYS_LCD1_RST +CONFIG_SYS_LCD_BASE +CONFIG_SYS_LCD_ENDIAN +CONFIG_SYS_LCRR_CLKDIV +CONFIG_SYS_LCRR_DBYP +CONFIG_SYS_LCRR_EADC +CONFIG_SYS_LDB_CLOCK +CONFIG_SYS_LDSCRIPT +CONFIG_SYS_LED_ADDR +CONFIG_SYS_LED_BASE +CONFIG_SYS_LED_DISP_BASE +CONFIG_SYS_LIME_BASE +CONFIG_SYS_LIME_BASE_0 +CONFIG_SYS_LIME_BASE_1 +CONFIG_SYS_LIME_BASE_2 +CONFIG_SYS_LIME_BASE_3 +CONFIG_SYS_LIME_CLOCK_100MHZ +CONFIG_SYS_LIME_CLOCK_133MHZ +CONFIG_SYS_LIME_MMR +CONFIG_SYS_LIME_SDRAM_CLOCK +CONFIG_SYS_LIME_SIZE +CONFIG_SYS_LINUX_LOWMEM_MAX_SIZE +CONFIG_SYS_LOADS_BAUD_CHANGE +CONFIG_SYS_LOAD_ADDR +CONFIG_SYS_LOAD_ADDR2 +CONFIG_SYS_LOCAL_CONF_REGS +CONFIG_SYS_LONGHELP +CONFIG_SYS_LOW +CONFIG_SYS_LOWBOOT +CONFIG_SYS_LOWBOOT16 +CONFIG_SYS_LOWBOOT32 +CONFIG_SYS_LOWMEM_BASE +CONFIG_SYS_LOW_RES_TIMER +CONFIG_SYS_LPAE_SDRAM_BASE +CONFIG_SYS_LPC32XX_UART +CONFIG_SYS_LS1_DDR_BLOCK1_SIZE +CONFIG_SYS_LS2_DDR_BLOCK1_SIZE +CONFIG_SYS_LS_MC_AIOP_IMG_MAX_LENGTH +CONFIG_SYS_LS_MC_BOOT_TIMEOUT_MS +CONFIG_SYS_LS_MC_DPC_ADDR +CONFIG_SYS_LS_MC_DPC_IN_DDR +CONFIG_SYS_LS_MC_DPC_IN_NOR +CONFIG_SYS_LS_MC_DPC_MAX_LENGTH +CONFIG_SYS_LS_MC_DPL_ADDR +CONFIG_SYS_LS_MC_DPL_IN_DDR +CONFIG_SYS_LS_MC_DPL_IN_NOR +CONFIG_SYS_LS_MC_DPL_MAX_LENGTH +CONFIG_SYS_LS_MC_DRAM_AIOP_IMG_OFFSET +CONFIG_SYS_LS_MC_DRAM_BLOCK_MIN_SIZE +CONFIG_SYS_LS_MC_DRAM_DPC_OFFSET +CONFIG_SYS_LS_MC_DRAM_DPL_OFFSET +CONFIG_SYS_LS_MC_FW_ADDR +CONFIG_SYS_LS_MC_FW_IN_DDR +CONFIG_SYS_LS_MC_FW_IN_NOR +CONFIG_SYS_LS_PPA_FW_ADDR +CONFIG_SYS_LS_PPA_FW_IN_XIP +CONFIG_SYS_LS_PPA_FW_IN_xxx +CONFIG_SYS_M41T11_BASE_YEAR +CONFIG_SYS_M41T11_EXT_CENTURY_DATA +CONFIG_SYS_MACB0_BASE +CONFIG_SYS_MACB1_BASE +CONFIG_SYS_MACB2_BASE +CONFIG_SYS_MACB3_BASE +CONFIG_SYS_MAIN_PWR_ON +CONFIG_SYS_MALLOC_BASE +CONFIG_SYS_MALLOC_CLEAR_ON_INIT +CONFIG_SYS_MALLOC_END +CONFIG_SYS_MALLOC_LEN +CONFIG_SYS_MALLOC_SIMPLE +CONFIG_SYS_MAMR +CONFIG_SYS_MAMR_10COL +CONFIG_SYS_MAMR_8COL +CONFIG_SYS_MAMR_9COL +CONFIG_SYS_MAMR_PTA +CONFIG_SYS_MAPLE +CONFIG_SYS_MAPLE_MEM_PHYS +CONFIG_SYS_MAPPED_RAM_BASE +CONFIG_SYS_MARUBUN_IO +CONFIG_SYS_MARUBUN_MRSHPC +CONFIG_SYS_MARUBUN_MW1 +CONFIG_SYS_MARUBUN_MW2 +CONFIG_SYS_MASK +CONFIG_SYS_MASTER_CLOCK +CONFIG_SYS_MATRIX_EBI0CSA_VAL +CONFIG_SYS_MATRIX_EBICSA_VAL +CONFIG_SYS_MATRIX_MCFG_REMAP +CONFIG_SYS_MAXARGS +CONFIG_SYS_MAXIDLE +CONFIG_SYS_MAX_DATAFLASH_BANKS +CONFIG_SYS_MAX_DDR_BAT_SIZE +CONFIG_SYS_MAX_DOC_DEVICE +CONFIG_SYS_MAX_FLASH_BANKS +CONFIG_SYS_MAX_FLASH_BANKS_DETECT +CONFIG_SYS_MAX_FLASH_SECT +CONFIG_SYS_MAX_I2C_BUS +CONFIG_SYS_MAX_MTD_BANKS +CONFIG_SYS_MAX_NAND_CHIPS +CONFIG_SYS_MAX_NAND_DEVICE +CONFIG_SYS_MAX_PCI_EPS +CONFIG_SYS_MAX_RAM_SIZE +CONFIG_SYS_MB862xx_CCF +CONFIG_SYS_MB862xx_MMR +CONFIG_SYS_MBAR +CONFIG_SYS_MBAR2 +CONFIG_SYS_MBYTES_RAM +CONFIG_SYS_MBYTES_SDRAM +CONFIG_SYS_MCATT0_VAL +CONFIG_SYS_MCATT1_VAL +CONFIG_SYS_MCFRRTC_BASE +CONFIG_SYS_MCFRTC_BASE +CONFIG_SYS_MCF_SYNCR +CONFIG_SYS_MCIO0_VAL +CONFIG_SYS_MCIO1_VAL +CONFIG_SYS_MCKR +CONFIG_SYS_MCKR1_VAL +CONFIG_SYS_MCKR2_VAL +CONFIG_SYS_MCKR_CSS +CONFIG_SYS_MCKR_VAL +CONFIG_SYS_MCLINK_MAX +CONFIG_SYS_MCMEM0_VAL +CONFIG_SYS_MCMEM1_VAL +CONFIG_SYS_MC_RSV_MEM_ALIGN +CONFIG_SYS_MDC1_PIN +CONFIG_SYS_MDCNFG_VAL +CONFIG_SYS_MDC_PIN +CONFIG_SYS_MDDRCGRP_HIPRIO_CFG +CONFIG_SYS_MDDRCGRP_LUT0_AL +CONFIG_SYS_MDDRCGRP_LUT0_AU +CONFIG_SYS_MDDRCGRP_LUT0_ML +CONFIG_SYS_MDDRCGRP_LUT0_MU +CONFIG_SYS_MDDRCGRP_LUT1_AL +CONFIG_SYS_MDDRCGRP_LUT1_AU +CONFIG_SYS_MDDRCGRP_LUT1_ML +CONFIG_SYS_MDDRCGRP_LUT1_MU +CONFIG_SYS_MDDRCGRP_LUT2_AL +CONFIG_SYS_MDDRCGRP_LUT2_AU +CONFIG_SYS_MDDRCGRP_LUT2_ML +CONFIG_SYS_MDDRCGRP_LUT2_MU +CONFIG_SYS_MDDRCGRP_LUT3_AL +CONFIG_SYS_MDDRCGRP_LUT3_AU +CONFIG_SYS_MDDRCGRP_LUT3_ML +CONFIG_SYS_MDDRCGRP_LUT3_MU +CONFIG_SYS_MDDRCGRP_LUT4_AL +CONFIG_SYS_MDDRCGRP_LUT4_AU +CONFIG_SYS_MDDRCGRP_LUT4_ML +CONFIG_SYS_MDDRCGRP_LUT4_MU +CONFIG_SYS_MDDRCGRP_PM_CFG1 +CONFIG_SYS_MDDRCGRP_PM_CFG2 +CONFIG_SYS_MDDRC_SYS_CFG +CONFIG_SYS_MDDRC_SYS_CFG_ALT1 +CONFIG_SYS_MDDRC_SYS_CFG_ELPIDA +CONFIG_SYS_MDDRC_SYS_CFG_EN +CONFIG_SYS_MDDRC_TIME_CFG0 +CONFIG_SYS_MDDRC_TIME_CFG0_ALT1 +CONFIG_SYS_MDDRC_TIME_CFG1 +CONFIG_SYS_MDDRC_TIME_CFG1_ALT1 +CONFIG_SYS_MDDRC_TIME_CFG1_ELPIDA +CONFIG_SYS_MDDRC_TIME_CFG2 +CONFIG_SYS_MDDRC_TIME_CFG2_ALT1 +CONFIG_SYS_MDDRC_TIME_CFG2_ELPIDA +CONFIG_SYS_MDIO1_OFFSET +CONFIG_SYS_MDIO1_PIN +CONFIG_SYS_MDIO_BASE_ADDR +CONFIG_SYS_MDIO_PIN +CONFIG_SYS_MDMRS_VAL +CONFIG_SYS_MDREFR_VAL +CONFIG_SYS_MEASURE_CPUCLK +CONFIG_SYS_MECR_VAL +CONFIG_SYS_MEMAC_LITTLE_ENDIAN +CONFIG_SYS_MEMORY_BASE +CONFIG_SYS_MEMORY_SIZE +CONFIG_SYS_MEMORY_TOP +CONFIG_SYS_MEMTEST_END +CONFIG_SYS_MEMTEST_SCRATCH +CONFIG_SYS_MEMTEST_START +CONFIG_SYS_MEM_MAP +CONFIG_SYS_MEM_RESERVE_SECURE +CONFIG_SYS_MEM_SIZE +CONFIG_SYS_MEM_TOP_HIDE +CONFIG_SYS_MFD +CONFIG_SYS_MHZ +CONFIG_SYS_MICRON_BMODE +CONFIG_SYS_MICRON_BMODE_PARAM +CONFIG_SYS_MICRON_BMODE_RSTDLL +CONFIG_SYS_MICRON_EMODE +CONFIG_SYS_MICRON_EMODE2 +CONFIG_SYS_MICRON_EMODE3 +CONFIG_SYS_MICRON_EMODE_PARAM +CONFIG_SYS_MICRON_EMR +CONFIG_SYS_MICRON_EMR2 +CONFIG_SYS_MICRON_EMR3 +CONFIG_SYS_MICRON_EMR_OCD +CONFIG_SYS_MICRON_INIT_DEV_OP +CONFIG_SYS_MII_MODE +CONFIG_SYS_MIPS_CACHE_MODE +CONFIG_SYS_MIPS_TIMER_FREQ +CONFIG_SYS_MMCSD_FS_BOOT_PARTITION +CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR +CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS +CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR +CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION +CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR +CONFIG_SYS_MMC_BASE +CONFIG_SYS_MMC_CD_PIN +CONFIG_SYS_MMC_CLK_OD +CONFIG_SYS_MMC_ENV_DEV +CONFIG_SYS_MMC_ENV_PART +CONFIG_SYS_MMC_IMG_LOAD_PART +CONFIG_SYS_MMC_MAX_BLK_COUNT +CONFIG_SYS_MMC_MAX_DEVICE +CONFIG_SYS_MMC_U_BOOT_DST +CONFIG_SYS_MMC_U_BOOT_OFFS +CONFIG_SYS_MMC_U_BOOT_SIZE +CONFIG_SYS_MMC_U_BOOT_START +CONFIG_SYS_MMDC_CORE_ADDR_PARTITION +CONFIG_SYS_MMDC_CORE_CONTROL_1 +CONFIG_SYS_MMDC_CORE_CONTROL_2 +CONFIG_SYS_MMDC_CORE_MISC +CONFIG_SYS_MMDC_CORE_ODT_TIMING +CONFIG_SYS_MMDC_CORE_OUT_OF_RESET_DELAY +CONFIG_SYS_MMDC_CORE_PWR_DOWN_CTRL +CONFIG_SYS_MMDC_CORE_PWR_SAV_CTRL_STAT +CONFIG_SYS_MMDC_CORE_RDWR_CMD_DELAY +CONFIG_SYS_MMDC_CORE_REFRESH_CTL +CONFIG_SYS_MMDC_CORE_TIMING_CFG_0 +CONFIG_SYS_MMDC_CORE_TIMING_CFG_1 +CONFIG_SYS_MMDC_CORE_TIMING_CFG_2 +CONFIG_SYS_MMDC_PHY_MEASURE_UNIT +CONFIG_SYS_MMDC_PHY_ODT_CTRL +CONFIG_SYS_MMDC_PHY_RD_DLY_LINES_CFG +CONFIG_SYS_MMDC_PHY_ZQ_HW_CTRL +CONFIG_SYS_MM_TOP_HIDE +CONFIG_SYS_MONITOR_ +CONFIG_SYS_MONITOR_BASE +CONFIG_SYS_MONITOR_BASE_EARLY +CONFIG_SYS_MONITOR_LEN +CONFIG_SYS_MONITOR_SEC +CONFIG_SYS_MOR_VAL +CONFIG_SYS_MPC512X_CLKIN +CONFIG_SYS_MPC512x_USB1_ADDR +CONFIG_SYS_MPC512x_USB1_OFFSET +CONFIG_SYS_MPC5XXX_CLKIN +CONFIG_SYS_MPC83xx_DMA_ADDR +CONFIG_SYS_MPC83xx_DMA_OFFSET +CONFIG_SYS_MPC83xx_ESDHC_ADDR +CONFIG_SYS_MPC83xx_ESDHC_OFFSET +CONFIG_SYS_MPC83xx_USB1_ADDR +CONFIG_SYS_MPC83xx_USB1_OFFSET +CONFIG_SYS_MPC83xx_USB2_ADDR +CONFIG_SYS_MPC83xx_USB2_OFFSET +CONFIG_SYS_MPC85XX_NO_RESETVEC +CONFIG_SYS_MPC85xx_CPM_ADDR +CONFIG_SYS_MPC85xx_CPM_OFFSET +CONFIG_SYS_MPC85xx_DMA +CONFIG_SYS_MPC85xx_DMA1_OFFSET +CONFIG_SYS_MPC85xx_DMA2_OFFSET +CONFIG_SYS_MPC85xx_DMA3_OFFSET +CONFIG_SYS_MPC85xx_DMA_ADDR +CONFIG_SYS_MPC85xx_DMA_OFFSET +CONFIG_SYS_MPC85xx_ECM_ADDR +CONFIG_SYS_MPC85xx_ECM_OFFSET +CONFIG_SYS_MPC85xx_ESDHC_ADDR +CONFIG_SYS_MPC85xx_ESDHC_OFFSET +CONFIG_SYS_MPC85xx_ESPI_ADDR +CONFIG_SYS_MPC85xx_ESPI_OFFSET +CONFIG_SYS_MPC85xx_GPIO3_ADDR +CONFIG_SYS_MPC85xx_GPIO_ADDR +CONFIG_SYS_MPC85xx_GPIO_OFFSET +CONFIG_SYS_MPC85xx_GUTS_ADDR +CONFIG_SYS_MPC85xx_GUTS_OFFSET +CONFIG_SYS_MPC85xx_IFC_OFFSET +CONFIG_SYS_MPC85xx_L2_ADDR +CONFIG_SYS_MPC85xx_L2_OFFSET +CONFIG_SYS_MPC85xx_LBC_OFFSET +CONFIG_SYS_MPC85xx_PCI1_OFFSET +CONFIG_SYS_MPC85xx_PCI2_OFFSET +CONFIG_SYS_MPC85xx_PCIE +CONFIG_SYS_MPC85xx_PCIE1_OFFSET +CONFIG_SYS_MPC85xx_PCIE2_OFFSET +CONFIG_SYS_MPC85xx_PCIE3_OFFSET +CONFIG_SYS_MPC85xx_PCIE4_OFFSET +CONFIG_SYS_MPC85xx_PCIX2_ADDR +CONFIG_SYS_MPC85xx_PCIX2_OFFSET +CONFIG_SYS_MPC85xx_PCIX_ADDR +CONFIG_SYS_MPC85xx_PCIX_OFFSET +CONFIG_SYS_MPC85xx_PIC_OFFSET +CONFIG_SYS_MPC85xx_QE_OFFSET +CONFIG_SYS_MPC85xx_SATA +CONFIG_SYS_MPC85xx_SATA1_ADDR +CONFIG_SYS_MPC85xx_SATA1_OFFSET +CONFIG_SYS_MPC85xx_SATA2_ADDR +CONFIG_SYS_MPC85xx_SATA2_OFFSET +CONFIG_SYS_MPC85xx_SCFG +CONFIG_SYS_MPC85xx_SCFG_OFFSET +CONFIG_SYS_MPC85xx_SERDES1_ADDR +CONFIG_SYS_MPC85xx_SERDES1_OFFSET +CONFIG_SYS_MPC85xx_SERDES2_ADDR +CONFIG_SYS_MPC85xx_SERDES2_OFFSET +CONFIG_SYS_MPC85xx_TDM_OFFSET +CONFIG_SYS_MPC85xx_USB +CONFIG_SYS_MPC85xx_USB1_ADDR +CONFIG_SYS_MPC85xx_USB1_OFFSET +CONFIG_SYS_MPC85xx_USB1_PHY_ADDR +CONFIG_SYS_MPC85xx_USB1_PHY_OFFSET +CONFIG_SYS_MPC85xx_USB2_ADDR +CONFIG_SYS_MPC85xx_USB2_OFFSET +CONFIG_SYS_MPC85xx_USB2_PHY_ADDR +CONFIG_SYS_MPC85xx_USB2_PHY_OFFSET +CONFIG_SYS_MPC86xx_DMA_ADDR +CONFIG_SYS_MPC86xx_DMA_OFFSET +CONFIG_SYS_MPC86xx_PCI1_OFFSET +CONFIG_SYS_MPC86xx_PCI2_OFFSET +CONFIG_SYS_MPC86xx_PCIE1_OFFSET +CONFIG_SYS_MPC86xx_PCIE2_OFFSET +CONFIG_SYS_MPC86xx_PIC_OFFSET +CONFIG_SYS_MPC8xxx_DDR2_OFFSET +CONFIG_SYS_MPC8xxx_DDR3_OFFSET +CONFIG_SYS_MPC8xxx_DDR_OFFSET +CONFIG_SYS_MPC8xxx_GUTS_ADDR +CONFIG_SYS_MPC8xxx_PIC_ADDR +CONFIG_SYS_MPC92469AC +CONFIG_SYS_MPEG_BASE +CONFIG_SYS_MPEG_SIZE +CONFIG_SYS_MPTPR +CONFIG_SYS_MPTPR_1BK_2K +CONFIG_SYS_MPTPR_1BK_4K +CONFIG_SYS_MPTPR_1BK_8K +CONFIG_SYS_MPTPR_2BK_2K +CONFIG_SYS_MPTPR_2BK_4K +CONFIG_SYS_MPTPR_2BK_8K +CONFIG_SYS_MPUCLK +CONFIG_SYS_MRAM_BASE +CONFIG_SYS_MRAM_SIZE +CONFIG_SYS_MRS_OFFS +CONFIG_SYS_MSC0_VAL +CONFIG_SYS_MSC1_VAL +CONFIG_SYS_MSC2_VAL +CONFIG_SYS_MTDPARTS_RUNTIME +CONFIG_SYS_MVEBU_PLL_CLOCK +CONFIG_SYS_MVFS +CONFIG_SYS_MX5_CLK32 +CONFIG_SYS_MX5_HCLK +CONFIG_SYS_MX6_CLK32 +CONFIG_SYS_MX6_HCLK +CONFIG_SYS_MX7_CLK32 +CONFIG_SYS_MX7_HCLK +CONFIG_SYS_MXC_I2C1_SLAVE +CONFIG_SYS_MXC_I2C1_SPEED +CONFIG_SYS_MXC_I2C2_SLAVE +CONFIG_SYS_MXC_I2C2_SPEED +CONFIG_SYS_MXC_I2C3_SLAVE +CONFIG_SYS_MXC_I2C3_SPEED +CONFIG_SYS_MXC_I2C4_SLAVE +CONFIG_SYS_MXC_I2C4_SPEED +CONFIG_SYS_MXS_VDD5V_ONLY +CONFIG_SYS_NAND2_ADDR +CONFIG_SYS_NAND_4BIT_HW_ECC_OOBFIRST +CONFIG_SYS_NAND_4_ADDR_CYCLE +CONFIG_SYS_NAND_5_ADDR_CYCLE +CONFIG_SYS_NAND_ACTL_ALE +CONFIG_SYS_NAND_ACTL_CLE +CONFIG_SYS_NAND_ACTL_DELAY +CONFIG_SYS_NAND_ACTL_NCE +CONFIG_SYS_NAND_ADDR +CONFIG_SYS_NAND_ALE +CONFIG_SYS_NAND_AMASK +CONFIG_SYS_NAND_BAD_BLOCK_POS +CONFIG_SYS_NAND_BASE +CONFIG_SYS_NAND_BASE2 +CONFIG_SYS_NAND_BASE_LIST +CONFIG_SYS_NAND_BASE_PHYS +CONFIG_SYS_NAND_BCR +CONFIG_SYS_NAND_BLOCK_SIZE +CONFIG_SYS_NAND_BOOT +CONFIG_SYS_NAND_BR_PRELIM +CONFIG_SYS_NAND_BUSWIDTH_16 +CONFIG_SYS_NAND_BUSWIDTH_16_BIT +CONFIG_SYS_NAND_CE +CONFIG_SYS_NAND_CLE +CONFIG_SYS_NAND_CS +CONFIG_SYS_NAND_CSOR +CONFIG_SYS_NAND_CSPR +CONFIG_SYS_NAND_CSPR_EXT +CONFIG_SYS_NAND_DATA_BASE +CONFIG_SYS_NAND_DBW_16 +CONFIG_SYS_NAND_DBW_8 +CONFIG_SYS_NAND_DDR_LAW +CONFIG_SYS_NAND_ECCBYTES +CONFIG_SYS_NAND_ECCPOS +CONFIG_SYS_NAND_ECCSIZE +CONFIG_SYS_NAND_ECCSTEPS +CONFIG_SYS_NAND_ECCTOTAL +CONFIG_SYS_NAND_ECC_BASE +CONFIG_SYS_NAND_ENABLE_PIN +CONFIG_SYS_NAND_ENABLE_PIN_SPL +CONFIG_SYS_NAND_FTIM0 +CONFIG_SYS_NAND_FTIM1 +CONFIG_SYS_NAND_FTIM2 +CONFIG_SYS_NAND_FTIM3 +CONFIG_SYS_NAND_HW_ECC +CONFIG_SYS_NAND_HW_ECC_OOBFIRST +CONFIG_SYS_NAND_LARGEPAGE +CONFIG_SYS_NAND_LBLAWAR_PRELIM +CONFIG_SYS_NAND_LBLAWBAR_PRELIM +CONFIG_SYS_NAND_MASK_ALE +CONFIG_SYS_NAND_MASK_CLE +CONFIG_SYS_NAND_MAX_CHIPS +CONFIG_SYS_NAND_MAX_ECCPOS +CONFIG_SYS_NAND_MAX_OOBFREE +CONFIG_SYS_NAND_MX7_GPMI_62_ECC_BYTES +CONFIG_SYS_NAND_NO_SUBPAGE +CONFIG_SYS_NAND_NO_SUBPAGE_WRITE +CONFIG_SYS_NAND_ONFI_DETECTION +CONFIG_SYS_NAND_OOBSIZE +CONFIG_SYS_NAND_OR_PRELIM +CONFIG_SYS_NAND_PAGE_2K +CONFIG_SYS_NAND_PAGE_4K +CONFIG_SYS_NAND_PAGE_COUNT +CONFIG_SYS_NAND_PAGE_SIZE +CONFIG_SYS_NAND_QUIET +CONFIG_SYS_NAND_RDY +CONFIG_SYS_NAND_READY_PIN +CONFIG_SYS_NAND_REGS_BASE +CONFIG_SYS_NAND_SELECT_DEVICE +CONFIG_SYS_NAND_SIZE +CONFIG_SYS_NAND_SKIP_BAD_DOT_I +CONFIG_SYS_NAND_SPL_KERNEL_OFFS +CONFIG_SYS_NAND_SPL_SIZE +CONFIG_SYS_NAND_USE_FLASH_BBT +CONFIG_SYS_NAND_U_BOOT_DST +CONFIG_SYS_NAND_U_BOOT_RELOC +CONFIG_SYS_NAND_U_BOOT_RELOC_SP +CONFIG_SYS_NAND_U_BOOT_SIZE +CONFIG_SYS_NAND_U_BOOT_START +CONFIG_SYS_NAND_WINDOW_SIZE +CONFIG_SYS_NDFC_EBC0_CFG +CONFIG_SYS_NETA_INTERFACE_TYPE +CONFIG_SYS_NONCACHED_MEMORY +CONFIG_SYS_NOR0_CSPR +CONFIG_SYS_NOR0_CSPR_EARLY +CONFIG_SYS_NOR0_CSPR_EXT +CONFIG_SYS_NOR1SZ +CONFIG_SYS_NOR1_CSPR +CONFIG_SYS_NOR1_CSPR_EARLY +CONFIG_SYS_NOR1_CSPR_EXT +CONFIG_SYS_NOR_AMASK +CONFIG_SYS_NOR_AMASK_EARLY +CONFIG_SYS_NOR_BR_PRELIM +CONFIG_SYS_NOR_CS +CONFIG_SYS_NOR_CSOR +CONFIG_SYS_NOR_CSPR +CONFIG_SYS_NOR_CSPR_EXT +CONFIG_SYS_NOR_FTIM0 +CONFIG_SYS_NOR_FTIM1 +CONFIG_SYS_NOR_FTIM2 +CONFIG_SYS_NOR_FTIM3 +CONFIG_SYS_NOR_OR_PRELIM +CONFIG_SYS_NO_DCACHE +CONFIG_SYS_NR_PIOS +CONFIG_SYS_NR_VM_REGIONS +CONFIG_SYS_NS16550_CLK +CONFIG_SYS_NS16550_CLK_DIV +CONFIG_SYS_NS16550_COM1 +CONFIG_SYS_NS16550_COM2 +CONFIG_SYS_NS16550_COM3 +CONFIG_SYS_NS16550_COM4 +CONFIG_SYS_NS16550_COM5 +CONFIG_SYS_NS16550_COM6 +CONFIG_SYS_NS16550_IER +CONFIG_SYS_NS16550_MEM32 +CONFIG_SYS_NS16550_PORT_MAPPED +CONFIG_SYS_NS16550_REG_SIZE +CONFIG_SYS_NS16550_SERIAL +CONFIG_SYS_NS87308_CS0_BASE +CONFIG_SYS_NS87308_CS0_CONF +CONFIG_SYS_NS87308_CS1_BASE +CONFIG_SYS_NS87308_CS1_CONF +CONFIG_SYS_NS87308_CS2_BASE +CONFIG_SYS_NS87308_CS2_CONF +CONFIG_SYS_NS87308_FDC +CONFIG_SYS_NS87308_FDC_BASE +CONFIG_SYS_NS87308_GPIO +CONFIG_SYS_NS87308_GPIO_BASE +CONFIG_SYS_NS87308_KBC1 +CONFIG_SYS_NS87308_KBC1_BASE +CONFIG_SYS_NS87308_KBC2 +CONFIG_SYS_NS87308_LPT_BASE +CONFIG_SYS_NS87308_MOUSE +CONFIG_SYS_NS87308_PARP +CONFIG_SYS_NS87308_PMC1 +CONFIG_SYS_NS87308_PMC2 +CONFIG_SYS_NS87308_PMC3 +CONFIG_SYS_NS87308_POWRMAN +CONFIG_SYS_NS87308_PS2MOD +CONFIG_SYS_NS87308_PWMAN_BASE +CONFIG_SYS_NS87308_RARP +CONFIG_SYS_NS87308_RTC_APC +CONFIG_SYS_NS87308_RTC_BASE +CONFIG_SYS_NS87308_UART1 +CONFIG_SYS_NS87308_UART1_BASE +CONFIG_SYS_NS87308_UART2 +CONFIG_SYS_NS87308_UART2_BASE +CONFIG_SYS_NUM_ADDR_MAP +CONFIG_SYS_NUM_CPC +CONFIG_SYS_NUM_DDR_CTLRS +CONFIG_SYS_NUM_FM1_10GEC +CONFIG_SYS_NUM_FM1_DTSEC +CONFIG_SYS_NUM_FM2_10GEC +CONFIG_SYS_NUM_FM2_DTSEC +CONFIG_SYS_NUM_FMAN +CONFIG_SYS_NUM_I2C_BUSES +CONFIG_SYS_NUM_IRQS +CONFIG_SYS_NUM_TLBCAMS +CONFIG_SYS_NVRAM_ACCESS_ROUTINE +CONFIG_SYS_NVRAM_BASE +CONFIG_SYS_NVRAM_BASE_ADDR +CONFIG_SYS_NVRAM_SIZE +CONFIG_SYS_OBIR +CONFIG_SYS_OCM_BASE +CONFIG_SYS_OCM_DATA_ADDR +CONFIG_SYS_OCM_DATA_SIZE +CONFIG_SYS_OCM_SIZE +CONFIG_SYS_OCM_STATUS_ADDR +CONFIG_SYS_OCM_STATUS_FAIL +CONFIG_SYS_OCM_STATUS_MASK +CONFIG_SYS_OCM_STATUS_OK +CONFIG_SYS_OHCI_BE_CONTROLLER +CONFIG_SYS_OHCI_SWAP_REG_ACCESS +CONFIG_SYS_OHCI_USE_NPS +CONFIG_SYS_OMAP24_I2C_SLAVE +CONFIG_SYS_OMAP24_I2C_SLAVE1 +CONFIG_SYS_OMAP24_I2C_SLAVE2 +CONFIG_SYS_OMAP24_I2C_SLAVE3 +CONFIG_SYS_OMAP24_I2C_SLAVE4 +CONFIG_SYS_OMAP24_I2C_SPEED +CONFIG_SYS_OMAP24_I2C_SPEED1 +CONFIG_SYS_OMAP24_I2C_SPEED2 +CONFIG_SYS_OMAP24_I2C_SPEED3 +CONFIG_SYS_OMAP24_I2C_SPEED4 +CONFIG_SYS_OMAP24_I2C_SPEED_PSOC +CONFIG_SYS_OMAP_ABE_SYSCK +CONFIG_SYS_ONENAND_BASE +CONFIG_SYS_ONENAND_BLOCK_SIZE +CONFIG_SYS_ONENAND_PAGE_SIZE +CONFIG_SYS_OPENRISC_TMR_HZ +CONFIG_SYS_OPER_FLASH +CONFIG_SYS_OR0_64M +CONFIG_SYS_OR0_8M +CONFIG_SYS_OR0_PRELIM +CONFIG_SYS_OR0_REMAP +CONFIG_SYS_OR1 +CONFIG_SYS_OR10_PRELIM +CONFIG_SYS_OR11_PRELIM +CONFIG_SYS_OR1_PRELIM +CONFIG_SYS_OR1_REMAP +CONFIG_SYS_OR2_PRELIM +CONFIG_SYS_OR3_CAN +CONFIG_SYS_OR3_PRELIM +CONFIG_SYS_OR4_PRELIM +CONFIG_SYS_OR5_ISP1362 +CONFIG_SYS_OR5_PRELIM +CONFIG_SYS_OR5_REMAP +CONFIG_SYS_OR6_64M +CONFIG_SYS_OR6_8M +CONFIG_SYS_OR6_PRELIM +CONFIG_SYS_OR7_PRELIM +CONFIG_SYS_OR8_PRELIM +CONFIG_SYS_OR9_PRELIM +CONFIG_SYS_OR_TIMING_FLASH +CONFIG_SYS_OR_TIMING_FLASH_AT_50MHZ +CONFIG_SYS_OR_TIMING_MRAM +CONFIG_SYS_OR_TIMING_SDRAM +CONFIG_SYS_OSC0_HZ +CONFIG_SYS_OSC1_HZ +CONFIG_SYS_OSCIN_FREQ +CONFIG_SYS_OSC_CLK +CONFIG_SYS_OSD_DH +CONFIG_SYS_OSD_SCREENS +CONFIG_SYS_OSPR_OFFSET +CONFIG_SYS_OS_BASE +CONFIG_SYS_P4080_ERRATUM_CPU22 +CONFIG_SYS_P4080_ERRATUM_PCIE_A003 +CONFIG_SYS_P4080_ERRATUM_SERDES8 +CONFIG_SYS_P4080_ERRATUM_SERDES9 +CONFIG_SYS_P4080_ERRATUM_SERDES_A001 +CONFIG_SYS_P4080_ERRATUM_SERDES_A005 +CONFIG_SYS_PACNT +CONFIG_SYS_PADAT +CONFIG_SYS_PADDR +CONFIG_SYS_PAGE_SIZE +CONFIG_SYS_PAMU_ADDR +CONFIG_SYS_PASPAR +CONFIG_SYS_PAXE_BASE +CONFIG_SYS_PAXE_SIZE +CONFIG_SYS_PBCNT +CONFIG_SYS_PBDAT +CONFIG_SYS_PBDDR +CONFIG_SYS_PBI_FLASH_BASE +CONFIG_SYS_PBI_FLASH_WINDOW +CONFIG_SYS_PBSIZE +CONFIG_SYS_PB_LED +CONFIG_SYS_PCA953X_BRD_CFG0 +CONFIG_SYS_PCA953X_BRD_CFG1 +CONFIG_SYS_PCA953X_BRD_CFG2 +CONFIG_SYS_PCA953X_C0_FLASH_PASS_CS +CONFIG_SYS_PCA953X_C0_SER0_EN +CONFIG_SYS_PCA953X_C0_SER0_MODE +CONFIG_SYS_PCA953X_C0_SER1_EN +CONFIG_SYS_PCA953X_C0_SER1_MODE +CONFIG_SYS_PCA953X_C0_VCORE_VID2 +CONFIG_SYS_PCA953X_C0_VCORE_VID3 +CONFIG_SYS_PCA953X_EREADY +CONFIG_SYS_PCA953X_FLASH_PASS_CS +CONFIG_SYS_PCA953X_GPIO_VPX0 +CONFIG_SYS_PCA953X_GPIO_VPX1 +CONFIG_SYS_PCA953X_GPIO_VPX2 +CONFIG_SYS_PCA953X_GPIO_VPX3 +CONFIG_SYS_PCA953X_MC_GPIO0 +CONFIG_SYS_PCA953X_MC_GPIO1 +CONFIG_SYS_PCA953X_MC_GPIO2 +CONFIG_SYS_PCA953X_MC_GPIO3 +CONFIG_SYS_PCA953X_MC_GPIO4 +CONFIG_SYS_PCA953X_MC_GPIO5 +CONFIG_SYS_PCA953X_MC_GPIO6 +CONFIG_SYS_PCA953X_MC_GPIO7 +CONFIG_SYS_PCA953X_MONARCH +CONFIG_SYS_PCA953X_NVM_WP +CONFIG_SYS_PCA953X_P0_GA0 +CONFIG_SYS_PCA953X_P0_GA1 +CONFIG_SYS_PCA953X_P0_GA2 +CONFIG_SYS_PCA953X_P0_GA3 +CONFIG_SYS_PCA953X_P0_GA4 +CONFIG_SYS_PCA953X_P0_GAP +CONFIG_SYS_PCA953X_P14_IO0 +CONFIG_SYS_PCA953X_P14_IO1 +CONFIG_SYS_PCA953X_P14_IO2 +CONFIG_SYS_PCA953X_P14_IO3 +CONFIG_SYS_PCA953X_P14_IO4 +CONFIG_SYS_PCA953X_P14_IO5 +CONFIG_SYS_PCA953X_P14_IO6 +CONFIG_SYS_PCA953X_P14_IO7 +CONFIG_SYS_PCA953X_P1_SYSEN +CONFIG_SYS_PCA953X_PLUG_GPIO0 +CONFIG_SYS_PCA953X_PMC0_EREADY +CONFIG_SYS_PCA953X_PMC0_MONARCH +CONFIG_SYS_PCA953X_PMC_EREADY +CONFIG_SYS_PCA953X_PMC_MONARCH +CONFIG_SYS_PCA953X_PMC_PRESENT +CONFIG_SYS_PCA953X_VPX_FRU_WRCTL +CONFIG_SYS_PCA953X_VPX_GPIO0 +CONFIG_SYS_PCA953X_VPX_GPIO1 +CONFIG_SYS_PCA953X_VPX_GPIO2 +CONFIG_SYS_PCA953X_VPX_GPIO3 +CONFIG_SYS_PCA953X_XMC0_BIST +CONFIG_SYS_PCA953X_XMC0_MVMR0 +CONFIG_SYS_PCA953X_XMC0_ROOT0 +CONFIG_SYS_PCA953X_XMC0_WAKE +CONFIG_SYS_PCA953X_XMC_BIST +CONFIG_SYS_PCA953X_XMC_GA0 +CONFIG_SYS_PCA953X_XMC_GA1 +CONFIG_SYS_PCA953X_XMC_GA2 +CONFIG_SYS_PCA953X_XMC_PRESENT +CONFIG_SYS_PCA953X_XMC_ROOT0 +CONFIG_SYS_PCA953X_XMC_WAKE +CONFIG_SYS_PCCNT +CONFIG_SYS_PCDAT +CONFIG_SYS_PCDDR +CONFIG_SYS_PCI +CONFIG_SYS_PCI0_IO_SPACE +CONFIG_SYS_PCI1_ADDR +CONFIG_SYS_PCI1_IO_BASE +CONFIG_SYS_PCI1_IO_BUS +CONFIG_SYS_PCI1_IO_PHYS +CONFIG_SYS_PCI1_IO_SIZE +CONFIG_SYS_PCI1_IO_VIRT +CONFIG_SYS_PCI1_MEM_BASE +CONFIG_SYS_PCI1_MEM_BUS +CONFIG_SYS_PCI1_MEM_PHYS +CONFIG_SYS_PCI1_MEM_SIZE +CONFIG_SYS_PCI1_MEM_VIRT +CONFIG_SYS_PCI1_MMIO_BASE +CONFIG_SYS_PCI1_MMIO_PHYS +CONFIG_SYS_PCI1_MMIO_SIZE +CONFIG_SYS_PCI2_ADDR +CONFIG_SYS_PCI2_IO_BASE +CONFIG_SYS_PCI2_IO_BUS +CONFIG_SYS_PCI2_IO_PHYS +CONFIG_SYS_PCI2_IO_SIZE +CONFIG_SYS_PCI2_IO_VIRT +CONFIG_SYS_PCI2_MEM_BASE +CONFIG_SYS_PCI2_MEM_BUS +CONFIG_SYS_PCI2_MEM_PHYS +CONFIG_SYS_PCI2_MEM_SIZE +CONFIG_SYS_PCI2_MEM_VIRT +CONFIG_SYS_PCI2_MMIO_BASE +CONFIG_SYS_PCI2_MMIO_PHYS +CONFIG_SYS_PCI2_MMIO_SIZE +CONFIG_SYS_PCI64_MEMORY_BUS +CONFIG_SYS_PCI9054_IOBASE +CONFIG_SYS_PCICLK_EQUALS_IPBCLK_DIV2 +CONFIG_SYS_PCIE +CONFIG_SYS_PCIE0_CFGBASE +CONFIG_SYS_PCIE0_CFGMASK +CONFIG_SYS_PCIE0_MEMBASE +CONFIG_SYS_PCIE0_REGBASE +CONFIG_SYS_PCIE0_UTLBASE +CONFIG_SYS_PCIE0_XCFGBASE +CONFIG_SYS_PCIE1_ADDR +CONFIG_SYS_PCIE1_BASE +CONFIG_SYS_PCIE1_CFGBASE +CONFIG_SYS_PCIE1_CFGMASK +CONFIG_SYS_PCIE1_CFG_BASE +CONFIG_SYS_PCIE1_CFG_SIZE +CONFIG_SYS_PCIE1_IO_BASE +CONFIG_SYS_PCIE1_IO_BUS +CONFIG_SYS_PCIE1_IO_PHYS +CONFIG_SYS_PCIE1_IO_PHYS_LOW +CONFIG_SYS_PCIE1_IO_SIZE +CONFIG_SYS_PCIE1_IO_VIRT +CONFIG_SYS_PCIE1_MEMBASE +CONFIG_SYS_PCIE1_MEM_BASE +CONFIG_SYS_PCIE1_MEM_BUS +CONFIG_SYS_PCIE1_MEM_PHYS +CONFIG_SYS_PCIE1_MEM_PHYS_HIGH +CONFIG_SYS_PCIE1_MEM_PHYS_LOW +CONFIG_SYS_PCIE1_MEM_SIZE +CONFIG_SYS_PCIE1_MEM_VIRT +CONFIG_SYS_PCIE1_NAME +CONFIG_SYS_PCIE1_PHYS_ADDR +CONFIG_SYS_PCIE1_PHYS_BASE +CONFIG_SYS_PCIE1_PHYS_SIZE +CONFIG_SYS_PCIE1_REGBASE +CONFIG_SYS_PCIE1_UTLBASE +CONFIG_SYS_PCIE1_VIRT_ADDR +CONFIG_SYS_PCIE1_XCFGBASE +CONFIG_SYS_PCIE2_ADDR +CONFIG_SYS_PCIE2_BASE +CONFIG_SYS_PCIE2_CFGBASE +CONFIG_SYS_PCIE2_CFG_BASE +CONFIG_SYS_PCIE2_CFG_SIZE +CONFIG_SYS_PCIE2_IO_BASE +CONFIG_SYS_PCIE2_IO_BUS +CONFIG_SYS_PCIE2_IO_PHYS +CONFIG_SYS_PCIE2_IO_PHYS_LOW +CONFIG_SYS_PCIE2_IO_SIZE +CONFIG_SYS_PCIE2_IO_VIRT +CONFIG_SYS_PCIE2_MEM_BASE +CONFIG_SYS_PCIE2_MEM_BUS +CONFIG_SYS_PCIE2_MEM_PHYS +CONFIG_SYS_PCIE2_MEM_PHYS_HIGH +CONFIG_SYS_PCIE2_MEM_PHYS_LOW +CONFIG_SYS_PCIE2_MEM_SIZE +CONFIG_SYS_PCIE2_MEM_VIRT +CONFIG_SYS_PCIE2_NAME +CONFIG_SYS_PCIE2_PHYS_ADDR +CONFIG_SYS_PCIE2_PHYS_BASE +CONFIG_SYS_PCIE2_PHYS_SIZE +CONFIG_SYS_PCIE2_REGBASE +CONFIG_SYS_PCIE2_VIRT_ADDR +CONFIG_SYS_PCIE2_XCFGBASE +CONFIG_SYS_PCIE3_ADDR +CONFIG_SYS_PCIE3_IO_BUS +CONFIG_SYS_PCIE3_IO_PHYS +CONFIG_SYS_PCIE3_IO_SIZE +CONFIG_SYS_PCIE3_IO_VIRT +CONFIG_SYS_PCIE3_MEM_BUS +CONFIG_SYS_PCIE3_MEM_BUS2 +CONFIG_SYS_PCIE3_MEM_PHYS +CONFIG_SYS_PCIE3_MEM_PHYS2 +CONFIG_SYS_PCIE3_MEM_SIZE +CONFIG_SYS_PCIE3_MEM_SIZE2 +CONFIG_SYS_PCIE3_MEM_VIRT +CONFIG_SYS_PCIE3_MEM_VIRT2 +CONFIG_SYS_PCIE3_NAME +CONFIG_SYS_PCIE3_PHYS_ADDR +CONFIG_SYS_PCIE3_PHYS_SIZE +CONFIG_SYS_PCIE4_ADDR +CONFIG_SYS_PCIE4_IO_BUS +CONFIG_SYS_PCIE4_IO_PHYS +CONFIG_SYS_PCIE4_IO_SIZE +CONFIG_SYS_PCIE4_IO_VIRT +CONFIG_SYS_PCIE4_MEM_BUS +CONFIG_SYS_PCIE4_MEM_PHYS +CONFIG_SYS_PCIE4_MEM_SIZE +CONFIG_SYS_PCIE4_MEM_VIRT +CONFIG_SYS_PCIE4_NAME +CONFIG_SYS_PCIE4_PHYS_ADDR +CONFIG_SYS_PCIE4_PHYS_SIZE +CONFIG_SYS_PCIE_ADDR_HIGH +CONFIG_SYS_PCIE_BASE +CONFIG_SYS_PCIE_CFG0_PHYS_OFF +CONFIG_SYS_PCIE_CFG0_SIZE +CONFIG_SYS_PCIE_CFG1_PHYS_OFF +CONFIG_SYS_PCIE_CFG1_SIZE +CONFIG_SYS_PCIE_INBOUND_BASE +CONFIG_SYS_PCIE_IO_BUS +CONFIG_SYS_PCIE_IO_PHYS_OFF +CONFIG_SYS_PCIE_IO_SIZE +CONFIG_SYS_PCIE_MEMBASE +CONFIG_SYS_PCIE_MEMSIZE +CONFIG_SYS_PCIE_MEM_BUS +CONFIG_SYS_PCIE_MEM_PHYS_OFF +CONFIG_SYS_PCIE_MEM_SIZE +CONFIG_SYS_PCIE_MMAP_SIZE +CONFIG_SYS_PCIE_NR_PORTS +CONFIG_SYS_PCIE_PHYS +CONFIG_SYS_PCIE_VIRT +CONFIG_SYS_PCIMSK0_MASK +CONFIG_SYS_PCIMSK1_MASK +CONFIG_SYS_PCISPEED_66 +CONFIG_SYS_PCI_64BIT +CONFIG_SYS_PCI_BAR0 +CONFIG_SYS_PCI_BAR1 +CONFIG_SYS_PCI_BAR2 +CONFIG_SYS_PCI_BAR3 +CONFIG_SYS_PCI_BAR4 +CONFIG_SYS_PCI_BAR5 +CONFIG_SYS_PCI_BASE +CONFIG_SYS_PCI_BOARD_FIXUP_IRQ +CONFIG_SYS_PCI_CACHE_LINE_SIZE +CONFIG_SYS_PCI_CFG_BASE +CONFIG_SYS_PCI_CFG_BUS +CONFIG_SYS_PCI_CFG_PHYS +CONFIG_SYS_PCI_CFG_SIZE +CONFIG_SYS_PCI_CLASSCODE +CONFIG_SYS_PCI_CLASSCODE_MONARCH +CONFIG_SYS_PCI_CLASSCODE_NONMONARCH +CONFIG_SYS_PCI_CON_DEVICE +CONFIG_SYS_PCI_EP_MEMORY_BASE +CONFIG_SYS_PCI_FORCE_PCI_CONV +CONFIG_SYS_PCI_IO_BASE +CONFIG_SYS_PCI_IO_BUS +CONFIG_SYS_PCI_IO_PHYS +CONFIG_SYS_PCI_IO_SIZE +CONFIG_SYS_PCI_MAP_END +CONFIG_SYS_PCI_MAP_START +CONFIG_SYS_PCI_MASTER_INIT +CONFIG_SYS_PCI_MEMBASE +CONFIG_SYS_PCI_MEMBASE1 +CONFIG_SYS_PCI_MEMBASE2 +CONFIG_SYS_PCI_MEMBASE3 +CONFIG_SYS_PCI_MEMORY_BUS +CONFIG_SYS_PCI_MEMORY_PHYS +CONFIG_SYS_PCI_MEMORY_SIZE +CONFIG_SYS_PCI_MEMSIZE +CONFIG_SYS_PCI_MEM_BASE +CONFIG_SYS_PCI_MEM_BUS +CONFIG_SYS_PCI_MEM_PHYS +CONFIG_SYS_PCI_MEM_SIZE +CONFIG_SYS_PCI_MMIO_BASE +CONFIG_SYS_PCI_MMIO_PHYS +CONFIG_SYS_PCI_MMIO_SIZE +CONFIG_SYS_PCI_MSTR0_LOCAL +CONFIG_SYS_PCI_MSTR1_LOCAL +CONFIG_SYS_PCI_MSTR_IO_BUS +CONFIG_SYS_PCI_MSTR_IO_LOCAL +CONFIG_SYS_PCI_MSTR_IO_SIZE +CONFIG_SYS_PCI_MSTR_MEMIO_BUS +CONFIG_SYS_PCI_MSTR_MEMIO_LOCAL +CONFIG_SYS_PCI_MSTR_MEMIO_SIZE +CONFIG_SYS_PCI_MSTR_MEM_BUS +CONFIG_SYS_PCI_MSTR_MEM_LOCAL +CONFIG_SYS_PCI_MSTR_MEM_SIZE +CONFIG_SYS_PCI_NR_INBOUND_WIN +CONFIG_SYS_PCI_PHYS +CONFIG_SYS_PCI_PTM1LA +CONFIG_SYS_PCI_PTM1MS +CONFIG_SYS_PCI_PTM1PCI +CONFIG_SYS_PCI_PTM2LA +CONFIG_SYS_PCI_PTM2MS +CONFIG_SYS_PCI_PTM2PCI +CONFIG_SYS_PCI_SLV_MEM_BUS +CONFIG_SYS_PCI_SLV_MEM_LOCAL +CONFIG_SYS_PCI_SLV_MEM_SIZE +CONFIG_SYS_PCI_SUBSYS_DEVICEID +CONFIG_SYS_PCI_SUBSYS_DEVICEID2 +CONFIG_SYS_PCI_SUBSYS_ID +CONFIG_SYS_PCI_SUBSYS_ID_MONARCH +CONFIG_SYS_PCI_SUBSYS_ID_NONMONARCH +CONFIG_SYS_PCI_SUBSYS_VENDORID +CONFIG_SYS_PCI_SYS_MEM_BUS +CONFIG_SYS_PCI_SYS_MEM_PHYS +CONFIG_SYS_PCI_SYS_MEM_SIZE +CONFIG_SYS_PCI_TARGBASE +CONFIG_SYS_PCI_TARGET_INIT +CONFIG_SYS_PCI_TBATR0 +CONFIG_SYS_PCI_TBATR1 +CONFIG_SYS_PCI_TBATR2 +CONFIG_SYS_PCI_TBATR3 +CONFIG_SYS_PCI_TBATR4 +CONFIG_SYS_PCI_TBATR5 +CONFIG_SYS_PCI_VIRT +CONFIG_SYS_PCMCIA_ATTRB_ADDR +CONFIG_SYS_PCMCIA_ATTRB_SIZE +CONFIG_SYS_PCMCIA_ATTR_BASE +CONFIG_SYS_PCMCIA_CIS_WIN +CONFIG_SYS_PCMCIA_CIS_WIN_SIZE +CONFIG_SYS_PCMCIA_DMA_ADDR +CONFIG_SYS_PCMCIA_DMA_SIZE +CONFIG_SYS_PCMCIA_IO_ADDR +CONFIG_SYS_PCMCIA_IO_BASE +CONFIG_SYS_PCMCIA_IO_SIZE +CONFIG_SYS_PCMCIA_IO_WIN +CONFIG_SYS_PCMCIA_IO_WIN_SIZE +CONFIG_SYS_PCMCIA_MEM_ADDR +CONFIG_SYS_PCMCIA_MEM_SIZE +CONFIG_SYS_PCMCIA_PBR0 +CONFIG_SYS_PCMCIA_PBR1 +CONFIG_SYS_PCMCIA_PBR2 +CONFIG_SYS_PCMCIA_PBR3 +CONFIG_SYS_PCMCIA_PBR4 +CONFIG_SYS_PCMCIA_PBR5 +CONFIG_SYS_PCMCIA_PBR6 +CONFIG_SYS_PCMCIA_PBR7 +CONFIG_SYS_PCMCIA_POR0 +CONFIG_SYS_PCMCIA_POR1 +CONFIG_SYS_PCMCIA_POR2 +CONFIG_SYS_PCMCIA_POR3 +CONFIG_SYS_PCMCIA_POR4 +CONFIG_SYS_PCMCIA_POR5 +CONFIG_SYS_PCMCIA_POR6 +CONFIG_SYS_PCMCIA_POR7 +CONFIG_SYS_PCMCIA_TIMING +CONFIG_SYS_PDCNT +CONFIG_SYS_PDM360NG_COPROC_BAUDRATE +CONFIG_SYS_PDM360NG_COPROC_READ_DELAY +CONFIG_SYS_PEHLPAR +CONFIG_SYS_PEPAR +CONFIG_SYS_PERIPHERAL_BASE +CONFIG_SYS_PFC0 +CONFIG_SYS_PFPAR +CONFIG_SYS_PHYS_ADDR_HIGH +CONFIG_SYS_PHY_UBOOT_BASE +CONFIG_SYS_PIB_BASE +CONFIG_SYS_PIB_WINDOW_SIZE +CONFIG_SYS_PICMR0_MASK_ATTRIB +CONFIG_SYS_PIOC_ASR_VAL +CONFIG_SYS_PIOC_BSR_VAL +CONFIG_SYS_PIOC_PDR_VAL +CONFIG_SYS_PIOC_PDR_VAL1 +CONFIG_SYS_PIOC_PPUDR_VAL +CONFIG_SYS_PIOD_PDR_VAL1 +CONFIG_SYS_PIOD_PPUDR_VAL +CONFIG_SYS_PIO_MODE +CONFIG_SYS_PISCR +CONFIG_SYS_PIT_BASE +CONFIG_SYS_PIT_PRESCALE +CONFIG_SYS_PIXIS_VBOOT_ENABLE +CONFIG_SYS_PIXIS_VBOOT_MASK +CONFIG_SYS_PIXIS_VCFGEN0_ENABLE +CONFIG_SYS_PJPAR +CONFIG_SYS_PL310_BASE +CONFIG_SYS_PLATFORM_SRAM_BASE +CONFIG_SYS_PLATFORM_SRAM_BASE_PHYS +CONFIG_SYS_PLATFORM_SRAM_SIZE +CONFIG_SYS_PLL0_DIV +CONFIG_SYS_PLL0_MUL +CONFIG_SYS_PLL0_OPT +CONFIG_SYS_PLL0_SUPPRESS_CYCLES +CONFIG_SYS_PLLAR_VAL +CONFIG_SYS_PLLBR_VAL +CONFIG_SYS_PLLCR +CONFIG_SYS_PLL_BYPASS +CONFIG_SYS_PLL_FDR +CONFIG_SYS_PLL_ODR +CONFIG_SYS_PLL_RECONFIG +CONFIG_SYS_PLL_SETTLING_TIME +CONFIG_SYS_PLPRCR +CONFIG_SYS_PLUG_BASE +CONFIG_SYS_PMAN +CONFIG_SYS_PMC_BASE +CONFIG_SYS_PMC_BASE_PHYS +CONFIG_SYS_PME_CLK +CONFIG_SYS_POCMR0_MASK_ATTRIB +CONFIG_SYS_POCMR1_MASK_ATTRIB +CONFIG_SYS_POCMR2_MASK_ATTRIB +CONFIG_SYS_PORTTC +CONFIG_SYS_POST_BSPEC1 +CONFIG_SYS_POST_BSPEC2 +CONFIG_SYS_POST_BSPEC3 +CONFIG_SYS_POST_BSPEC4 +CONFIG_SYS_POST_BSPEC5 +CONFIG_SYS_POST_CACHE +CONFIG_SYS_POST_CACHE_ADDR +CONFIG_SYS_POST_CODEC +CONFIG_SYS_POST_COPROC +CONFIG_SYS_POST_CPU +CONFIG_SYS_POST_DSP +CONFIG_SYS_POST_ECC +CONFIG_SYS_POST_ETHER +CONFIG_SYS_POST_ETHER_EXT_LOOPBACK +CONFIG_SYS_POST_ETH_LOOPS +CONFIG_SYS_POST_FLASH +CONFIG_SYS_POST_FLASH_END +CONFIG_SYS_POST_FLASH_NUM +CONFIG_SYS_POST_FLASH_START +CONFIG_SYS_POST_FPU +CONFIG_SYS_POST_FPU_ON +CONFIG_SYS_POST_HOTKEYS_GPIO +CONFIG_SYS_POST_I2C +CONFIG_SYS_POST_I2C_ADDRS +CONFIG_SYS_POST_I2C_IGNORES +CONFIG_SYS_POST_MEMORY +CONFIG_SYS_POST_MEMORY_ON +CONFIG_SYS_POST_MEM_REGIONS +CONFIG_SYS_POST_OCM +CONFIG_SYS_POST_PREREL +CONFIG_SYS_POST_RTC +CONFIG_SYS_POST_SPI +CONFIG_SYS_POST_SPR +CONFIG_SYS_POST_SYSMON +CONFIG_SYS_POST_UART +CONFIG_SYS_POST_UART_TABLE +CONFIG_SYS_POST_USB +CONFIG_SYS_POST_WATCHDOG +CONFIG_SYS_POST_WORD_ADDR +CONFIG_SYS_POWER_MANAGER +CONFIG_SYS_PPC4XX_USB_ADDR +CONFIG_SYS_PPC64 +CONFIG_SYS_PPC_DDR_WIMGE +CONFIG_SYS_PPC_E500_DEBUG_TLB +CONFIG_SYS_PQSPAR +CONFIG_SYS_PRELIM_OR_AM +CONFIG_SYS_PROMPT_HUSH_PS2 +CONFIG_SYS_PROM_OFFSET +CONFIG_SYS_PROM_SIZE +CONFIG_SYS_PSC1 +CONFIG_SYS_PSC3 +CONFIG_SYS_PSC4 +CONFIG_SYS_PSC6 +CONFIG_SYS_PSDMR +CONFIG_SYS_PSDPAR +CONFIG_SYS_PSRT +CONFIG_SYS_PSSR_VAL +CONFIG_SYS_PTA_PER_CLK +CONFIG_SYS_PTCPAR +CONFIG_SYS_PTDPAR +CONFIG_SYS_PTL2_BITS +CONFIG_SYS_PTV +CONFIG_SYS_PUAPAR +CONFIG_SYS_QE_FMAN_FW_IN_MMC +CONFIG_SYS_QE_FMAN_FW_IN_NAND +CONFIG_SYS_QE_FMAN_FW_IN_NOR +CONFIG_SYS_QE_FMAN_FW_IN_REMOTE +CONFIG_SYS_QE_FMAN_FW_LENGTH +CONFIG_SYS_QE_FW_ADDR +CONFIG_SYS_QE_FW_IN_SPIFLASH +CONFIG_SYS_QMAN_CENA_BASE +CONFIG_SYS_QMAN_CENA_SIZE +CONFIG_SYS_QMAN_CINH_BASE +CONFIG_SYS_QMAN_CINH_SIZE +CONFIG_SYS_QMAN_MEM_BASE +CONFIG_SYS_QMAN_MEM_PHYS +CONFIG_SYS_QMAN_MEM_SIZE +CONFIG_SYS_QMAN_NUM_PORTALS +CONFIG_SYS_QMAN_SP_CENA_SIZE +CONFIG_SYS_QMAN_SP_CINH_SIZE +CONFIG_SYS_QMAN_SWP_ISDR_REG +CONFIG_SYS_QRIO_BASE +CONFIG_SYS_QRIO_BASE_PHYS +CONFIG_SYS_QRIO_BR_PRELIM +CONFIG_SYS_QRIO_OR_PRELIM +CONFIG_SYS_R7780MP_OLD_FLASH +CONFIG_SYS_RAMBOOT +CONFIG_SYS_RAM_BASE +CONFIG_SYS_RAM_CS +CONFIG_SYS_RAM_END +CONFIG_SYS_RAM_FREQ_DIV +CONFIG_SYS_RAM_SIZE +CONFIG_SYS_RCAR_I2C0_BASE +CONFIG_SYS_RCAR_I2C0_SPEED +CONFIG_SYS_RCAR_I2C1_BASE +CONFIG_SYS_RCAR_I2C1_SPEED +CONFIG_SYS_RCAR_I2C2_BASE +CONFIG_SYS_RCAR_I2C2_SPEED +CONFIG_SYS_RCAR_I2C3_BASE +CONFIG_SYS_RCAR_I2C3_SPEED +CONFIG_SYS_RCCR +CONFIG_SYS_RCWH_PCIHOST +CONFIG_SYS_READ_SPD +CONFIG_SYS_REDUNDAND_ENVIRONMENT +CONFIG_SYS_RELOC_MONITOR_BASE +CONFIG_SYS_RELOC_MONITOR_MAX_END +CONFIG_SYS_REMAP_OR_AM +CONFIG_SYS_RESET_ADDR +CONFIG_SYS_RESET_ADDRESS +CONFIG_SYS_RESET_BASE +CONFIG_SYS_RESET_SCTRL +CONFIG_SYS_RFD +CONFIG_SYS_RGMII1_PHY_ADDR +CONFIG_SYS_RGMII2_PHY_ADDR +CONFIG_SYS_RIO_MEM_BASE +CONFIG_SYS_RIO_MEM_BUS +CONFIG_SYS_RIO_MEM_PHYS +CONFIG_SYS_RIO_MEM_SIZE +CONFIG_SYS_RIO_MEM_VIRT +CONFIG_SYS_RMDS +CONFIG_SYS_RMR +CONFIG_SYS_ROM_BASE +CONFIG_SYS_ROOTPATH +CONFIG_SYS_RSTC_RMR_VAL +CONFIG_SYS_RTCSC +CONFIG_SYS_RTC_BUS_NUM +CONFIG_SYS_RTC_CNT +CONFIG_SYS_RTC_DS1337 +CONFIG_SYS_RTC_DS1337_NOOSC +CONFIG_SYS_RTC_DS1388 +CONFIG_SYS_RTC_OSCILLATOR +CONFIG_SYS_RTC_PL031_BASE +CONFIG_SYS_RTC_REG_BASE_ADDR +CONFIG_SYS_RTC_SETUP +CONFIG_SYS_RV3029_TCR +CONFIG_SYS_RX_ETH_BUFFER +CONFIG_SYS_S3C2410_NAND_HWECC +CONFIG_SYS_SATA +CONFIG_SYS_SATA1 +CONFIG_SYS_SATA1_FLAGS +CONFIG_SYS_SATA1_OFFSET +CONFIG_SYS_SATA2 +CONFIG_SYS_SATA2_FLAGS +CONFIG_SYS_SATA2_OFFSET +CONFIG_SYS_SATA_ENV_DEV +CONFIG_SYS_SATA_FAT_BOOT_PARTITION +CONFIG_SYS_SATA_MAX_DEVICE +CONFIG_SYS_SBFHDR_DATA_OFFSET +CONFIG_SYS_SBFHDR_SIZE +CONFIG_SYS_SCCR +CONFIG_SYS_SCCR_ENCCM +CONFIG_SYS_SCCR_PCICM +CONFIG_SYS_SCCR_PCIEXP1CM +CONFIG_SYS_SCCR_PCIEXP2CM +CONFIG_SYS_SCCR_SATACM +CONFIG_SYS_SCCR_TSEC1CM +CONFIG_SYS_SCCR_TSEC1ON +CONFIG_SYS_SCCR_TSEC2CM +CONFIG_SYS_SCCR_TSEC2ON +CONFIG_SYS_SCCR_TSECCM +CONFIG_SYS_SCCR_USBDRCM +CONFIG_SYS_SCCR_USBMPHCM +CONFIG_SYS_SCC_TOUT_LOOP +CONFIG_SYS_SCR +CONFIG_SYS_SCRATCH_VA +CONFIG_SYS_SCSI_MAXDEVICE +CONFIG_SYS_SCSI_MAX_DEVICE +CONFIG_SYS_SCSI_MAX_LUN +CONFIG_SYS_SCSI_MAX_SCSI_ID +CONFIG_SYS_SCSI_SPIN_UP_TIME +CONFIG_SYS_SCSI_SYM53C8XX_CCF +CONFIG_SYS_SDHC_CLK +CONFIG_SYS_SDHC_CLK_2_PLL +CONFIG_SYS_SDIO0 +CONFIG_SYS_SDIO0_MAX_CLK +CONFIG_SYS_SDIO1 +CONFIG_SYS_SDIO1_MAX_CLK +CONFIG_SYS_SDIO2 +CONFIG_SYS_SDIO2_MAX_CLK +CONFIG_SYS_SDIO3 +CONFIG_SYS_SDIO3_MAX_CLK +CONFIG_SYS_SDIO_BASE0 +CONFIG_SYS_SDIO_BASE1 +CONFIG_SYS_SDIO_BASE2 +CONFIG_SYS_SDIO_BASE3 +CONFIG_SYS_SDMR +CONFIG_SYS_SDRAM +CONFIG_SYS_SDRAM0_CFG0 +CONFIG_SYS_SDRAM0_CLKTR +CONFIG_SYS_SDRAM0_CODT +CONFIG_SYS_SDRAM0_DLCR +CONFIG_SYS_SDRAM0_INITPLR0 +CONFIG_SYS_SDRAM0_INITPLR1 +CONFIG_SYS_SDRAM0_INITPLR10 +CONFIG_SYS_SDRAM0_INITPLR11 +CONFIG_SYS_SDRAM0_INITPLR12 +CONFIG_SYS_SDRAM0_INITPLR13 +CONFIG_SYS_SDRAM0_INITPLR14 +CONFIG_SYS_SDRAM0_INITPLR15 +CONFIG_SYS_SDRAM0_INITPLR2 +CONFIG_SYS_SDRAM0_INITPLR3 +CONFIG_SYS_SDRAM0_INITPLR4 +CONFIG_SYS_SDRAM0_INITPLR5 +CONFIG_SYS_SDRAM0_INITPLR6 +CONFIG_SYS_SDRAM0_INITPLR7 +CONFIG_SYS_SDRAM0_INITPLR8 +CONFIG_SYS_SDRAM0_INITPLR9 +CONFIG_SYS_SDRAM0_MB0CF +CONFIG_SYS_SDRAM0_MB0CF_BASE +CONFIG_SYS_SDRAM0_MB1CF +CONFIG_SYS_SDRAM0_MB1CF_BASE +CONFIG_SYS_SDRAM0_MB2CF +CONFIG_SYS_SDRAM0_MB3CF +CONFIG_SYS_SDRAM0_MCOPT1 +CONFIG_SYS_SDRAM0_MCOPT2 +CONFIG_SYS_SDRAM0_MEMODE +CONFIG_SYS_SDRAM0_MMODE +CONFIG_SYS_SDRAM0_MODT0 +CONFIG_SYS_SDRAM0_MODT1 +CONFIG_SYS_SDRAM0_MODT2 +CONFIG_SYS_SDRAM0_MODT3 +CONFIG_SYS_SDRAM0_RDCC +CONFIG_SYS_SDRAM0_RFDC +CONFIG_SYS_SDRAM0_RQDC +CONFIG_SYS_SDRAM0_RTR +CONFIG_SYS_SDRAM0_SDTR1 +CONFIG_SYS_SDRAM0_SDTR2 +CONFIG_SYS_SDRAM0_SDTR3 +CONFIG_SYS_SDRAM0_TR0 +CONFIG_SYS_SDRAM0_WDDCTR +CONFIG_SYS_SDRAM0_WRDTR +CONFIG_SYS_SDRAM1 +CONFIG_SYS_SDRAM_BANKS +CONFIG_SYS_SDRAM_BASE +CONFIG_SYS_SDRAM_BASE0 +CONFIG_SYS_SDRAM_BASE1 +CONFIG_SYS_SDRAM_BASE1xx +CONFIG_SYS_SDRAM_BASE2 +CONFIG_SYS_SDRAM_CASL +CONFIG_SYS_SDRAM_CFG +CONFIG_SYS_SDRAM_CFG1 +CONFIG_SYS_SDRAM_CFG2 +CONFIG_SYS_SDRAM_CL +CONFIG_SYS_SDRAM_CONF1HB +CONFIG_SYS_SDRAM_CONF1LL +CONFIG_SYS_SDRAM_CONFPATHB +CONFIG_SYS_SDRAM_CS1 +CONFIG_SYS_SDRAM_CTP +CONFIG_SYS_SDRAM_CTRL +CONFIG_SYS_SDRAM_DRVSTRENGTH +CONFIG_SYS_SDRAM_DRV_STRENGTH +CONFIG_SYS_SDRAM_EMOD +CONFIG_SYS_SDRAM_END +CONFIG_SYS_SDRAM_LDF +CONFIG_SYS_SDRAM_LIST +CONFIG_SYS_SDRAM_LOWER +CONFIG_SYS_SDRAM_MODE +CONFIG_SYS_SDRAM_PLBADDUHB +CONFIG_SYS_SDRAM_PLBADDULL +CONFIG_SYS_SDRAM_PTA +CONFIG_SYS_SDRAM_R0BAS +CONFIG_SYS_SDRAM_R1BAS +CONFIG_SYS_SDRAM_R2BAS +CONFIG_SYS_SDRAM_R3BAS +CONFIG_SYS_SDRAM_RCD +CONFIG_SYS_SDRAM_RFTA +CONFIG_SYS_SDRAM_SIZE +CONFIG_SYS_SDRAM_SIZE0 +CONFIG_SYS_SDRAM_SIZE1 +CONFIG_SYS_SDRAM_SIZE_LAW +CONFIG_SYS_SDRAM_SIZE_MB +CONFIG_SYS_SDRAM_TABLE +CONFIG_SYS_SDRAM_UPPER +CONFIG_SYS_SDRAM_VAL +CONFIG_SYS_SDRAM_VAL1 +CONFIG_SYS_SDRAM_VAL10 +CONFIG_SYS_SDRAM_VAL11 +CONFIG_SYS_SDRAM_VAL12 +CONFIG_SYS_SDRAM_VAL2 +CONFIG_SYS_SDRAM_VAL3 +CONFIG_SYS_SDRAM_VAL4 +CONFIG_SYS_SDRAM_VAL5 +CONFIG_SYS_SDRAM_VAL6 +CONFIG_SYS_SDRAM_VAL7 +CONFIG_SYS_SDRAM_VAL8 +CONFIG_SYS_SDRAM_VAL9 +CONFIG_SYS_SDRAM_tRC +CONFIG_SYS_SDRAM_tRCD +CONFIG_SYS_SDRAM_tRFC +CONFIG_SYS_SDRAM_tRP +CONFIG_SYS_SDRC_CR_VAL +CONFIG_SYS_SDRC_MDR_VAL +CONFIG_SYS_SDRC_MR_VAL +CONFIG_SYS_SDRC_MR_VAL1 +CONFIG_SYS_SDRC_MR_VAL2 +CONFIG_SYS_SDRC_MR_VAL3 +CONFIG_SYS_SDRC_MR_VAL4 +CONFIG_SYS_SDRC_MR_VAL5 +CONFIG_SYS_SDRC_TR_VAL +CONFIG_SYS_SDRC_TR_VAL1 +CONFIG_SYS_SDRC_TR_VAL2 +CONFIG_SYS_SDSR +CONFIG_SYS_SD_VOLTAGE +CONFIG_SYS_SEC_MON_ADDR +CONFIG_SYS_SEC_MON_OFFSET +CONFIG_SYS_SELF_RST +CONFIG_SYS_SERIAL0 +CONFIG_SYS_SERIAL1 +CONFIG_SYS_SERIAL2 +CONFIG_SYS_SERIAL3 +CONFIG_SYS_SERIAL4 +CONFIG_SYS_SERIAL5 +CONFIG_SYS_SERIAL_BOOT +CONFIG_SYS_SFP_ADDR +CONFIG_SYS_SFP_OFFSET +CONFIG_SYS_SGMII1_PHY_ADDR +CONFIG_SYS_SGMII2_PHY_ADDR +CONFIG_SYS_SGMII3_PHY_ADDR +CONFIG_SYS_SGMII_LINERATE_MHZ +CONFIG_SYS_SGMII_RATESCALE +CONFIG_SYS_SGMII_REFCLK_MHZ +CONFIG_SYS_SH_SDHI0_BASE +CONFIG_SYS_SH_SDHI1_BASE +CONFIG_SYS_SH_SDHI2_BASE +CONFIG_SYS_SH_SDHI3_BASE +CONFIG_SYS_SH_SDHI_NR_CHANNEL +CONFIG_SYS_SICRH +CONFIG_SYS_SICRL +CONFIG_SYS_SIL1178_I2C +CONFIG_SYS_SIMULATE_SPD_EEPROM +CONFIG_SYS_SIUMCR +CONFIG_SYS_SIUMCR_HIGH +CONFIG_SYS_SIUMCR_LOW +CONFIG_SYS_SJA1000_BASE +CONFIG_SYS_SMALL_FLASH +CONFIG_SYS_SMC0_CYCLE0_VAL +CONFIG_SYS_SMC0_MODE0_VAL +CONFIG_SYS_SMC0_PULSE0_VAL +CONFIG_SYS_SMC0_SETUP0_VAL +CONFIG_SYS_SMC_CSR0_VAL +CONFIG_SYS_SMC_DPMEM_OFFSET +CONFIG_SYS_SMC_RXBUFLEN +CONFIG_SYS_SMC_UCODE_PATCH +CONFIG_SYS_SMI_BASE +CONFIG_SYS_SPANSION_BASE +CONFIG_SYS_SPANSION_BOOT +CONFIG_SYS_SPC1920_PLD_BASE +CONFIG_SYS_SPC1920_SMC1_CLK4 +CONFIG_SYS_SPCR_OPT +CONFIG_SYS_SPCR_TSEC1EP +CONFIG_SYS_SPCR_TSEC2EP +CONFIG_SYS_SPCR_TSECEP +CONFIG_SYS_SPD_BUS_NUM +CONFIG_SYS_SPD_MAX_DIMMS +CONFIG_SYS_SPI0 +CONFIG_SYS_SPI0_NUM_CS +CONFIG_SYS_SPI1 +CONFIG_SYS_SPI1_BASE +CONFIG_SYS_SPI1_NUM_CS +CONFIG_SYS_SPI2 +CONFIG_SYS_SPI2_BASE +CONFIG_SYS_SPI2_NUM_CS +CONFIG_SYS_SPI_ARGS_OFFS +CONFIG_SYS_SPI_ARGS_SIZE +CONFIG_SYS_SPI_BASE +CONFIG_SYS_SPI_CLK +CONFIG_SYS_SPI_CS_ACT +CONFIG_SYS_SPI_CS_BASE +CONFIG_SYS_SPI_CS_USED +CONFIG_SYS_SPI_DPMEM_OFFSET +CONFIG_SYS_SPI_FLASH_U_BOOT_DST +CONFIG_SYS_SPI_FLASH_U_BOOT_OFFS +CONFIG_SYS_SPI_FLASH_U_BOOT_SIZE +CONFIG_SYS_SPI_FLASH_U_BOOT_START +CONFIG_SYS_SPI_INIT_OFFSET +CONFIG_SYS_SPI_KERNEL_OFFS +CONFIG_SYS_SPI_MXC_WAIT +CONFIG_SYS_SPI_RTC_DEVID +CONFIG_SYS_SPI_ST_ENABLE_WP_PIN +CONFIG_SYS_SPI_UCODE_PATCH +CONFIG_SYS_SPI_U_BOOT_OFFS +CONFIG_SYS_SPI_U_BOOT_SIZE +CONFIG_SYS_SPI_WRITE_TOUT +CONFIG_SYS_SPL_ARGS_ADDR +CONFIG_SYS_SPL_LEN +CONFIG_SYS_SPL_MALLOC_SIZE +CONFIG_SYS_SPL_MALLOC_START +CONFIG_SYS_SPL_MAX_LEN +CONFIG_SYS_SPR +CONFIG_SYS_SRAM_BASE +CONFIG_SYS_SRAM_END +CONFIG_SYS_SRAM_SIZE +CONFIG_SYS_SRAM_START +CONFIG_SYS_SRGPL0_CFG_BAR +CONFIG_SYS_SRGPL0_MNT_BAR +CONFIG_SYS_SRGPL0_MSG_BAR +CONFIG_SYS_SRGPL0_REG_BAR +CONFIG_SYS_SRIO +CONFIG_SYS_SRIO1_MEM_BASE +CONFIG_SYS_SRIO1_MEM_BUS +CONFIG_SYS_SRIO1_MEM_PHYS +CONFIG_SYS_SRIO1_MEM_PHYS_HIGH +CONFIG_SYS_SRIO1_MEM_PHYS_LOW +CONFIG_SYS_SRIO1_MEM_SIZE +CONFIG_SYS_SRIO1_MEM_VIRT +CONFIG_SYS_SRIO2_MEM_PHYS +CONFIG_SYS_SRIO2_MEM_SIZE +CONFIG_SYS_SRIO2_MEM_VIRT +CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR +CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR_PHYS +CONFIG_SYS_SRIO_PCIE_BOOT_UCODE_ENV_ADDR +CONFIG_SYS_SRIO_PCIE_BOOT_UCODE_ENV_ADDR_PHYS +CONFIG_SYS_SSD_BASE +CONFIG_SYS_SSD_BASE_PHYS +CONFIG_SYS_SSP_PORT +CONFIG_SYS_SST_SECT +CONFIG_SYS_SST_SECTSZ +CONFIG_SYS_STACKSIZE +CONFIG_SYS_STACK_LENGTH +CONFIG_SYS_STACK_SIZE +CONFIG_SYS_STATUS_C +CONFIG_SYS_STATUS_OK +CONFIG_SYS_STDIO_DEREGISTER +CONFIG_SYS_STMICRO_BOOT +CONFIG_SYS_SUPPORT_64BIT_DATA +CONFIG_SYS_SXCNFG_VAL +CONFIG_SYS_SYPCR +CONFIG_SYS_SYSTEMACE_BASE +CONFIG_SYS_SYSTEMACE_WIDTH +CONFIG_SYS_TBIPA_VALUE +CONFIG_SYS_TBSCR +CONFIG_SYS_TCLK +CONFIG_SYS_TEMP_STACK_OCM +CONFIG_SYS_TEXT_ADDR +CONFIG_SYS_TEXT_BASE_NOR +CONFIG_SYS_TEXT_BASE_SPL +CONFIG_SYS_TFP410_ADDR +CONFIG_SYS_TFP410_BUS +CONFIG_SYS_THUMB_BUILD +CONFIG_SYS_TIMERBASE +CONFIG_SYS_TIMER_BASE +CONFIG_SYS_TIMER_COUNTER +CONFIG_SYS_TIMER_COUNTS_DOWN +CONFIG_SYS_TIMER_PRESCALER +CONFIG_SYS_TIMER_RATE +CONFIG_SYS_TLB_FOR_BOOT_FLASH +CONFIG_SYS_TMCNTSC +CONFIG_SYS_TMPVIRT +CONFIG_SYS_TMRINTR_MASK +CONFIG_SYS_TMRINTR_NO +CONFIG_SYS_TMRINTR_PEND +CONFIG_SYS_TMRINTR_PRI +CONFIG_SYS_TMRPND_REG +CONFIG_SYS_TMR_BASE +CONFIG_SYS_TMU_CLK_DIV +CONFIG_SYS_TSEC1 +CONFIG_SYS_TSEC1_OFFSET +CONFIG_SYS_TSEC2 +CONFIG_SYS_TSEC2_OFFSET +CONFIG_SYS_TSEC3_OFFSET +CONFIG_SYS_TX_ETH_BUFFER +CONFIG_SYS_UART1_ALT1_GPIO +CONFIG_SYS_UART1_PRI_GPIO +CONFIG_SYS_UART2_ALT1_GPIO +CONFIG_SYS_UART2_ALT3_GPIO +CONFIG_SYS_UART2_PRI_GPIO +CONFIG_SYS_UART_BASE +CONFIG_SYS_UART_BAUD +CONFIG_SYS_UART_FREQ +CONFIG_SYS_UART_PORT +CONFIG_SYS_UBOOT_BASE +CONFIG_SYS_UBOOT_END +CONFIG_SYS_UBOOT_START +CONFIG_SYS_UCC_RGMII_MODE +CONFIG_SYS_UCC_RMII_MODE +CONFIG_SYS_UDELAY_BASE +CONFIG_SYS_UEC +CONFIG_SYS_UEC1_ETH_TYPE +CONFIG_SYS_UEC1_INTERFACE_SPEED +CONFIG_SYS_UEC1_INTERFACE_TYPE +CONFIG_SYS_UEC1_PHY_ADDR +CONFIG_SYS_UEC1_RX_CLK +CONFIG_SYS_UEC1_TX_CLK +CONFIG_SYS_UEC1_UCC_NUM +CONFIG_SYS_UEC2_ETH_TYPE +CONFIG_SYS_UEC2_INTERFACE_SPEED +CONFIG_SYS_UEC2_INTERFACE_TYPE +CONFIG_SYS_UEC2_PHY_ADDR +CONFIG_SYS_UEC2_RX_CLK +CONFIG_SYS_UEC2_TX_CLK +CONFIG_SYS_UEC2_UCC_NUM +CONFIG_SYS_UEC3_ETH_TYPE +CONFIG_SYS_UEC3_INTERFACE_SPEED +CONFIG_SYS_UEC3_INTERFACE_TYPE +CONFIG_SYS_UEC3_PHY_ADDR +CONFIG_SYS_UEC3_RX_CLK +CONFIG_SYS_UEC3_TX_CLK +CONFIG_SYS_UEC3_UCC_NUM +CONFIG_SYS_UEC4_ETH_TYPE +CONFIG_SYS_UEC4_INTERFACE_SPEED +CONFIG_SYS_UEC4_INTERFACE_TYPE +CONFIG_SYS_UEC4_PHY_ADDR +CONFIG_SYS_UEC4_RX_CLK +CONFIG_SYS_UEC4_TX_CLK +CONFIG_SYS_UEC4_UCC_NUM +CONFIG_SYS_UEC5_ETH_TYPE +CONFIG_SYS_UEC5_INTERFACE_SPEED +CONFIG_SYS_UEC5_INTERFACE_TYPE +CONFIG_SYS_UEC5_PHY_ADDR +CONFIG_SYS_UEC5_RX_CLK +CONFIG_SYS_UEC5_TX_CLK +CONFIG_SYS_UEC5_UCC_NUM +CONFIG_SYS_UEC6_ETH_TYPE +CONFIG_SYS_UEC6_INTERFACE_SPEED +CONFIG_SYS_UEC6_INTERFACE_TYPE +CONFIG_SYS_UEC6_PHY_ADDR +CONFIG_SYS_UEC6_RX_CLK +CONFIG_SYS_UEC6_TX_CLK +CONFIG_SYS_UEC6_UCC_NUM +CONFIG_SYS_UEC8_ETH_TYPE +CONFIG_SYS_UEC8_INTERFACE_SPEED +CONFIG_SYS_UEC8_INTERFACE_TYPE +CONFIG_SYS_UEC8_PHY_ADDR +CONFIG_SYS_UEC8_RX_CLK +CONFIG_SYS_UEC8_TX_CLK +CONFIG_SYS_UEC8_UCC_NUM +CONFIG_SYS_UECx_PHY_ADDR +CONFIG_SYS_UHC0_EHCI_BASE +CONFIG_SYS_UHC1_EHCI_BASE +CONFIG_SYS_ULB_CLK +CONFIG_SYS_UMCR +CONFIG_SYS_UNIFY_CACHE +CONFIG_SYS_UNSPEC_PHYID +CONFIG_SYS_UNSPEC_STRID +CONFIG_SYS_UPDATE_FLASH_SIZE +CONFIG_SYS_USB2D0_BASE +CONFIG_SYS_USBCTRL +CONFIG_SYS_USBD_BASE +CONFIG_SYS_USB_BRGCLK +CONFIG_SYS_USB_DEVICE +CONFIG_SYS_USB_EHCI_CPU_INIT +CONFIG_SYS_USB_EHCI_MAX_ROOT_PORTS +CONFIG_SYS_USB_EHCI_REGS_BASE +CONFIG_SYS_USB_EVENT_POLL +CONFIG_SYS_USB_EVENT_POLL_VIA_CONTROL_EP +CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE +CONFIG_SYS_USB_FAT_BOOT_PARTITION +CONFIG_SYS_USB_HOST +CONFIG_SYS_USB_OHCI_BOARD_INIT +CONFIG_SYS_USB_OHCI_CPU_INIT +CONFIG_SYS_USB_OHCI_MAX_ROOT_PORTS +CONFIG_SYS_USB_OHCI_REGS_BASE +CONFIG_SYS_USB_OHCI_SLOT_NAME +CONFIG_SYS_USB_XHCI_MAX_ROOT_PORTS +CONFIG_SYS_USER_SWITCHES_BASE +CONFIG_SYS_USE_BOOT_NORFLASH +CONFIG_SYS_USE_DATAFLASH +CONFIG_SYS_USE_DATAFLASH_CS0 +CONFIG_SYS_USE_DATAFLASH_CS1 +CONFIG_SYS_USE_DATAFLASH_CS3 +CONFIG_SYS_USE_DSPLINK +CONFIG_SYS_USE_FLASH +CONFIG_SYS_USE_MAIN_OSCILLATOR +CONFIG_SYS_USE_MMC +CONFIG_SYS_USE_MPC834XSYS_USB_PHY +CONFIG_SYS_USE_NAND +CONFIG_SYS_USE_NANDFLASH +CONFIG_SYS_USE_NOR +CONFIG_SYS_USE_NORFLASH +CONFIG_SYS_USE_PPCENV +CONFIG_SYS_USE_SERIALFLASH +CONFIG_SYS_USE_SPIFLASH +CONFIG_SYS_USE_UBI +CONFIG_SYS_USR_EXCEP +CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS +CONFIG_SYS_U_BOOT_OFFS +CONFIG_SYS_VA_BITS +CONFIG_SYS_VCXK_ACKNOWLEDGE_DDR +CONFIG_SYS_VCXK_ACKNOWLEDGE_PIN +CONFIG_SYS_VCXK_ACKNOWLEDGE_PORT +CONFIG_SYS_VCXK_AUTODETECT +CONFIG_SYS_VCXK_BASE +CONFIG_SYS_VCXK_DEFAULT_LINEALIGN +CONFIG_SYS_VCXK_DOUBLEBUFFERED +CONFIG_SYS_VCXK_ENABLE_DDR +CONFIG_SYS_VCXK_ENABLE_PIN +CONFIG_SYS_VCXK_ENABLE_PORT +CONFIG_SYS_VCXK_INVERT_DDR +CONFIG_SYS_VCXK_INVERT_PIN +CONFIG_SYS_VCXK_INVERT_PORT +CONFIG_SYS_VCXK_REQUEST_DDR +CONFIG_SYS_VCXK_REQUEST_PIN +CONFIG_SYS_VCXK_REQUEST_PORT +CONFIG_SYS_VCXK_RESET_DDR +CONFIG_SYS_VCXK_RESET_PIN +CONFIG_SYS_VCXK_RESET_PORT +CONFIG_SYS_VGA_RAM_EN +CONFIG_SYS_VIDEO +CONFIG_SYS_VIDEO_LOGO_MAX_SIZE +CONFIG_SYS_VPC3_BASE +CONFIG_SYS_VPC3_SIZE +CONFIG_SYS_VSC7385_BASE +CONFIG_SYS_VSC7385_BASE_PHYS +CONFIG_SYS_VSC7385_BR_PRELIM +CONFIG_SYS_VSC7385_OR_PRELIM +CONFIG_SYS_VSC7385_SIZE +CONFIG_SYS_VSC8601_SKEWFIX +CONFIG_SYS_VXWORKS_MAC_PTR +CONFIG_SYS_WATCHDOG_FLAGS_ADDR +CONFIG_SYS_WATCHDOG_FREQ +CONFIG_SYS_WATCHDOG_MAGIC +CONFIG_SYS_WATCHDOG_MAGIC_MASK +CONFIG_SYS_WATCHDOG_TIME_ADDR +CONFIG_SYS_WATCHDOG_VALUE +CONFIG_SYS_WDTC_WDMR_VAL +CONFIG_SYS_WDTTIMERBASE +CONFIG_SYS_WDT_PERIOD_HIGH +CONFIG_SYS_WDT_PERIOD_LOW +CONFIG_SYS_WHITE_ON_BLACK +CONFIG_SYS_WINDOW1_BASE +CONFIG_SYS_WRITE_SWAPPED_DATA +CONFIG_SYS_XHCI_USB1_ADDR +CONFIG_SYS_XHCI_USB2_ADDR +CONFIG_SYS_XHCI_USB3_ADDR +CONFIG_SYS_XILINX_SPI_LIST +CONFIG_SYS_XIMG_LEN +CONFIG_SYS_XLB_PIPELINING +CONFIG_SYS_XSVF_DEFAULT_ADDR +CONFIG_SYS_XWAY_EBU_BOOTCFG +CONFIG_SYS_XXX +CONFIG_SYS_ZYNQ_QSPI_WAIT +CONFIG_SYS_ZYNQ_SPI_WAIT +CONFIG_SYS_i2C_FSL +CONFIG_T1023RDB +CONFIG_T1024RDB +CONFIG_T1040D4RDB +CONFIG_T1040QDS +CONFIG_T1040RDB +CONFIG_T1042D4RDB +CONFIG_T1042RDB +CONFIG_T1042RDB_PI +CONFIG_T104XD4RDB +CONFIG_T104xRDB +CONFIG_T2080QDS +CONFIG_T2080RDB +CONFIG_T2081QDS +CONFIG_T4240QDS +CONFIG_T4240RDB +CONFIG_TAM3517_SETTINGS +CONFIG_TAM3517_SW3_SETTINGS +CONFIG_TCA642X +CONFIG_TEGRA_BOARD_STRING +CONFIG_TEGRA_CLOCK_SCALING +CONFIG_TEGRA_ENABLE_UARTA +CONFIG_TEGRA_ENABLE_UARTB +CONFIG_TEGRA_ENABLE_UARTC +CONFIG_TEGRA_ENABLE_UARTD +CONFIG_TEGRA_ENABLE_UARTE +CONFIG_TEGRA_GPU +CONFIG_TEGRA_KEYBOARD +CONFIG_TEGRA_LP0 +CONFIG_TEGRA_MMC +CONFIG_TEGRA_NAND +CONFIG_TEGRA_PMU +CONFIG_TEGRA_SLINK_CTRLS +CONFIG_TEGRA_SPI +CONFIG_TEGRA_UARTA_GPU +CONFIG_TEGRA_UARTA_SDIO1 +CONFIG_TEGRA_UARTA_UAA_UAB +CONFIG_TEGRA_VDD_CORE_TPS62361B_SET3 +CONFIG_TEGRA_VDD_CORE_TPS62366A_SET1 +CONFIG_TESTPIN_MASK +CONFIG_TESTPIN_REG +CONFIG_TEST_LIST_SORT +CONFIG_TFP410_I2C_ADDR +CONFIG_TFTP_BLOCKSIZE +CONFIG_TFTP_FILE_NAME_MAX_LEN +CONFIG_TFTP_PORT +CONFIG_TFTP_TSIZE +CONFIG_THOR_RESET_OFF +CONFIG_THUMB2_KERNEL +CONFIG_THUNDERX +CONFIG_TI814X +CONFIG_TI816X +CONFIG_TI816X_DDR_PLL_796 +CONFIG_TI816X_EVM_DDR2 +CONFIG_TI816X_EVM_DDR3 +CONFIG_TI816X_USE_EMIF0 +CONFIG_TI816X_USE_EMIF1 +CONFIG_TI81XX +CONFIG_TIMER_CLK_FREQ +CONFIG_TIMESTAMP +CONFIG_TIZEN +CONFIG_TI_KEYSTONE_SERDES +CONFIG_TI_KSNAV +CONFIG_TI_SPI_MMAP +CONFIG_TMU_CMD_DTT +CONFIG_TMU_TIMER +CONFIG_TOTAL5200 +CONFIG_TPL_BUILD +CONFIG_TPL_DRIVERS_MISC_SUPPORT +CONFIG_TPL_PAD_TO +CONFIG_TPM_TIS_BASE_ADDRESS +CONFIG_TPS6586X_POWER +CONFIG_TQM5200 +CONFIG_TQM5200S +CONFIG_TQM5200_B +CONFIG_TQM5200_REV100 +CONFIG_TQM823L +CONFIG_TQM823M +CONFIG_TQM834X +CONFIG_TQM850L +CONFIG_TQM850M +CONFIG_TQM855L +CONFIG_TQM855M +CONFIG_TQM860L +CONFIG_TQM860M +CONFIG_TQM862L +CONFIG_TQM862M +CONFIG_TQM866M +CONFIG_TQM885D +CONFIG_TQM8xxL +CONFIG_TQM8xxM +CONFIG_TRACE +CONFIG_TRACE_BUFFER_SIZE +CONFIG_TRACE_EARLY +CONFIG_TRACE_EARLY_ADDR +CONFIG_TRACE_EARLY_SIZE +CONFIG_TRAILBLAZER +CONFIG_TRATS +CONFIG_TRDX_PID_COLIBRI_VF50 +CONFIG_TRDX_PID_COLIBRI_VF50IT +CONFIG_TRDX_PID_COLIBRI_VF61 +CONFIG_TRDX_PID_COLIBRI_VF61IT +CONFIG_TRDX_VID +CONFIG_TSEC +CONFIG_TSEC1 +CONFIG_TSEC1_NAME +CONFIG_TSEC2 +CONFIG_TSEC2_NAME +CONFIG_TSEC3 +CONFIG_TSEC3_NAME +CONFIG_TSEC4 +CONFIG_TSEC4_NAME +CONFIG_TSECV2 +CONFIG_TSECV2_1 +CONFIG_TSEC_ENET +CONFIG_TSEC_TBI +CONFIG_TSEC_TBICR_SETTINGS +CONFIG_TSI108_ETH_NUM_PORTS +CONFIG_TSIM +CONFIG_TUGE1 +CONFIG_TULIP +CONFIG_TULIP_FIX_DAVICOM +CONFIG_TULIP_SELECT_MEDIA +CONFIG_TULIP_USE_IO +CONFIG_TUXX1 +CONFIG_TWL4030_INPUT +CONFIG_TWL4030_KEYPAD +CONFIG_TWL4030_LED +CONFIG_TWL4030_POWER +CONFIG_TWL4030_PWM +CONFIG_TWL4030_USB +CONFIG_TWL6030_INPUT +CONFIG_TWL6030_POWER +CONFIG_TWR +CONFIG_TWR_P1025 +CONFIG_TX_DESCR_NUM +CONFIG_TZSW_RESERVED_DRAM_SIZE +CONFIG_T_SH7706LSR +CONFIG_UART_BASE +CONFIG_UART_BR_PRELIM +CONFIG_UART_CONSOLE +CONFIG_UART_CONSOLE_IS_JTAG +CONFIG_UART_MEM +CONFIG_UART_OR_PRELIM +CONFIG_UBIBLOCK +CONFIG_UBIFS_SILENCE_MSG +CONFIG_UBIFS_VOLUME +CONFIG_UBI_PART +CONFIG_UBI_SILENCE_MSG +CONFIG_UBI_SIZE +CONFIG_UBOOT1_ENV_ADDR +CONFIG_UBOOT2_ENV_ADDR +CONFIG_UBOOTPATH +CONFIG_UBOOT_ENABLE_PADS_ALL +CONFIG_UBOOT_ENV_ADDR +CONFIG_UBOOT_SECTOR_COUNT +CONFIG_UBOOT_SECTOR_START +CONFIG_UCP1020 +CONFIG_UCP1020_REV_1_3 +CONFIG_UDP_CHECKSUM +CONFIG_UEC_ETH +CONFIG_UEC_ETH1 +CONFIG_UEC_ETH2 +CONFIG_UEC_ETH3 +CONFIG_UEC_ETH4 +CONFIG_UEC_ETH5 +CONFIG_UEC_ETH6 +CONFIG_UEC_ETH7 +CONFIG_UEC_ETH8 +CONFIG_UID16 +CONFIG_ULI526X +CONFIG_ULPI_REF_CLK +CONFIG_UMSDEVS +CONFIG_UNIPHIER_ETH +CONFIG_UPDATEB +CONFIG_UPDATE_LOAD_ADDR +CONFIG_UPDATE_TFTP +CONFIG_UPDATE_TFTP_CNT_MAX +CONFIG_UPDATE_TFTP_MSEC_MAX +CONFIG_USART1 +CONFIG_USART3 +CONFIG_USART_BASE +CONFIG_USART_ID +CONFIG_USBBOOTCOMMAND +CONFIG_USBDEBUG +CONFIG_USBD_CONFIGURATION_STR +CONFIG_USBD_CTRL_INTERFACE_STR +CONFIG_USBD_DATA_INTERFACE_STR +CONFIG_USBD_HS +CONFIG_USBD_MANUFACTURER +CONFIG_USBD_PRODUCTID +CONFIG_USBD_PRODUCTID_CDCACM +CONFIG_USBD_PRODUCTID_GSERIAL +CONFIG_USBD_PRODUCT_NAME +CONFIG_USBD_SERIAL_BULK_HS_PKTSIZE +CONFIG_USBD_SERIAL_BULK_PKTSIZE +CONFIG_USBD_SERIAL_INT_ENDPOINT +CONFIG_USBD_SERIAL_INT_PKTSIZE +CONFIG_USBD_SERIAL_IN_ENDPOINT +CONFIG_USBD_SERIAL_IN_PKTSIZE +CONFIG_USBD_SERIAL_OUT_ENDPOINT +CONFIG_USBD_SERIAL_OUT_PKTSIZE +CONFIG_USBD_VENDORID +CONFIG_USBID_ADDR +CONFIG_USBNET_DEV_ADDR +CONFIG_USBNET_HOST_ADDR +CONFIG_USBNET_MANUFACTURER +CONFIG_USBTTY +CONFIG_USB_AM35X +CONFIG_USB_ATMEL +CONFIG_USB_ATMEL_CLK_SEL_PLLB +CONFIG_USB_ATMEL_CLK_SEL_UPLL +CONFIG_USB_BIN_FIXUP +CONFIG_USB_BLACKFIN +CONFIG_USB_BLACKFIN_CLKIN +CONFIG_USB_BOOTING +CONFIG_USB_CABLE_CHECK +CONFIG_USB_CLOCK +CONFIG_USB_CONFIG +CONFIG_USB_DEVICE +CONFIG_USB_DEV_BASE +CONFIG_USB_DEV_PULLUP_GPIO +CONFIG_USB_DWC2 +CONFIG_USB_DWC2_REG_ADDR +CONFIG_USB_EHCI_ARMADA100 +CONFIG_USB_EHCI_BASE +CONFIG_USB_EHCI_BASE_LIST +CONFIG_USB_EHCI_EXYNOS +CONFIG_USB_EHCI_FARADAY +CONFIG_USB_EHCI_FSL +CONFIG_USB_EHCI_KIRKWOOD +CONFIG_USB_EHCI_MX5 +CONFIG_USB_EHCI_MXC +CONFIG_USB_EHCI_MXS +CONFIG_USB_EHCI_OMAP +CONFIG_USB_EHCI_PCI +CONFIG_USB_EHCI_PPC4XX +CONFIG_USB_EHCI_RMOBILE +CONFIG_USB_EHCI_SPEAR +CONFIG_USB_EHCI_SUNXI +CONFIG_USB_EHCI_TEGRA +CONFIG_USB_EHCI_TXFIFO_THRESH +CONFIG_USB_EHCI_VCT +CONFIG_USB_EHCI_VF +CONFIG_USB_ETHER +CONFIG_USB_ETHER_ASIX +CONFIG_USB_ETHER_ASIX88179 +CONFIG_USB_ETHER_DM9601 +CONFIG_USB_ETHER_MCS7830 +CONFIG_USB_ETHER_RNDIS +CONFIG_USB_ETHER_RTL8152 +CONFIG_USB_ETHER_SMSC95XX +CONFIG_USB_ETHER_xxx +CONFIG_USB_ETH_CDC +CONFIG_USB_ETH_QMULT +CONFIG_USB_ETH_RNDIS +CONFIG_USB_ETH_SUBSET +CONFIG_USB_EXT2_BOOT +CONFIG_USB_FAT_BOOT +CONFIG_USB_FREQ +CONFIG_USB_FUNCTION_DFU +CONFIG_USB_FUNCTION_MASS_STORAGE +CONFIG_USB_FUNCTION_THOR +CONFIG_USB_GADGET_AMD5536UDC +CONFIG_USB_GADGET_AT91 +CONFIG_USB_GADGET_AU1X00 +CONFIG_USB_GADGET_DUMMY_HCD +CONFIG_USB_GADGET_DWC2_OTG_PHY +CONFIG_USB_GADGET_FOTG210 +CONFIG_USB_GADGET_FSL_USB2 +CONFIG_USB_GADGET_GOKU +CONFIG_USB_GADGET_IMX +CONFIG_USB_GADGET_M66592 +CONFIG_USB_GADGET_MASS_STORAGE +CONFIG_USB_GADGET_MPC8272 +CONFIG_USB_GADGET_MQ11XX +CONFIG_USB_GADGET_MUSBHSFC +CONFIG_USB_GADGET_N9604 +CONFIG_USB_GADGET_NET2280 +CONFIG_USB_GADGET_OMAP +CONFIG_USB_GADGET_PXA27X +CONFIG_USB_GADGET_PXA2XX +CONFIG_USB_GADGET_S3C2410 +CONFIG_USB_GADGET_SA1100 +CONFIG_USB_GADGET_SUPERH +CONFIG_USB_GADGET_SX2 +CONFIG_USB_HOST_ETHER +CONFIG_USB_HOST_XHCI_BASE +CONFIG_USB_INVENTRA_DMA +CONFIG_USB_ISP1301_I2C_ADDR +CONFIG_USB_MAX_CONTROLLER_COUNT +CONFIG_USB_MUSB_AM35X +CONFIG_USB_MUSB_DISABLE_BULK_COMBINE_SPLIT +CONFIG_USB_MUSB_DSPS +CONFIG_USB_MUSB_HCD +CONFIG_USB_MUSB_OMAP2PLUS +CONFIG_USB_MUSB_PIO_ONLY +CONFIG_USB_MUSB_TIMEOUT +CONFIG_USB_MUSB_TUSB6010 +CONFIG_USB_MUSB_UDC +CONFIG_USB_MUSB_UDD +CONFIG_USB_OHCI +CONFIG_USB_OHCI_EP93XX +CONFIG_USB_OHCI_LPC32XX +CONFIG_USB_OHCI_NEW +CONFIG_USB_OHCI_S3C24XX +CONFIG_USB_OHCI_SUNXI +CONFIG_USB_OMAP3 +CONFIG_USB_OTG +CONFIG_USB_OTG_BLACKLIST_HUB +CONFIG_USB_PHY_CFG_BASE +CONFIG_USB_PHY_TYPE +CONFIG_USB_PXA25X_SMALL +CONFIG_USB_R8A66597_HCD +CONFIG_USB_SERIALNO +CONFIG_USB_SS_BASE +CONFIG_USB_TI_CPPI_DMA +CONFIG_USB_TTY +CONFIG_USB_TUSB_OMAP_DMA +CONFIG_USB_UHCI +CONFIG_USB_ULPI_TIMEOUT +CONFIG_USB_XHCI_EXYNOS +CONFIG_USB_XHCI_FSL +CONFIG_USB_XHCI_KEYSTONE +CONFIG_USB_XHCI_OMAP +CONFIG_USB_XHCI_PCI +CONFIG_USB_XHCI_ZYNQMP +CONFIG_USER_LOWLEVEL_INIT +CONFIG_USE_ARCH_MEMCPY +CONFIG_USE_ARCH_MEMSET +CONFIG_USE_FDT +CONFIG_USE_INTERRUPT +CONFIG_USE_IRQ +CONFIG_USE_NAND +CONFIG_USE_NETDEV +CONFIG_USE_NOR +CONFIG_USE_ONENAND_BOARD_INIT +CONFIG_USE_SPIFLASH +CONFIG_USE_STDINT +CONFIG_USE_TTY +CONFIG_UTBIPAR_INIT_TBIPA +CONFIG_U_BOOT_HDR_ADDR +CONFIG_U_BOOT_HDR_SIZE +CONFIG_U_QE +CONFIG_V38B +CONFIG_VAL +CONFIG_VAR_SIZE_SPL +CONFIG_VCMA9 +CONFIG_VCO_HZ +CONFIG_VCO_MULT +CONFIG_VCT_NOR +CONFIG_VE8313 +CONFIG_VERY_BIG_RAM +CONFIG_VEXPRESS_EXTENDED_MEMORY_MAP +CONFIG_VEXPRESS_ORIGINAL_MEMORY_MAP +CONFIG_VF610 +CONFIG_VGA_AS_SINGLE_DEVICE +CONFIG_VID +CONFIG_VIDEO_BCM2835 +CONFIG_VIDEO_BMP_GZIP +CONFIG_VIDEO_BMP_LOGO +CONFIG_VIDEO_BMP_RLE8 +CONFIG_VIDEO_CORALP +CONFIG_VIDEO_CT69000 +CONFIG_VIDEO_DA8XX +CONFIG_VIDEO_DT_SIMPLEFB +CONFIG_VIDEO_FONT_4X6 +CONFIG_VIDEO_HW_CURSOR +CONFIG_VIDEO_IPUV3 +CONFIG_VIDEO_LCD_I2C_BUS +CONFIG_VIDEO_LOGO +CONFIG_VIDEO_MB862xx +CONFIG_VIDEO_MB862xx_ACCEL +CONFIG_VIDEO_MX3 +CONFIG_VIDEO_MXS +CONFIG_VIDEO_MXS_MODE_SYSTEM +CONFIG_VIDEO_OMAP3 +CONFIG_VIDEO_ONBOARD +CONFIG_VIDEO_SED13806 +CONFIG_VIDEO_SM501 +CONFIG_VIDEO_SM501_16BPP +CONFIG_VIDEO_SM501_32BPP +CONFIG_VIDEO_SM501_8BPP +CONFIG_VIDEO_SM501_PCI +CONFIG_VIDEO_SMI_LYNXEM +CONFIG_VIDEO_STD_TIMINGS +CONFIG_VIDEO_SUNXI +CONFIG_VIDEO_SW_CURSOR +CONFIG_VIDEO_VCXK +CONFIG_VID_FLS_ENV +CONFIG_VM86 +CONFIG_VME8349 +CONFIG_VOIPAC_LCD +CONFIG_VOL_MONITOR_INA220 +CONFIG_VOL_MONITOR_IR36021_READ +CONFIG_VOL_MONITOR_IR36021_SET +CONFIG_VOM405 +CONFIG_VR_CTL_CLKBUF +CONFIG_VR_CTL_FREQ +CONFIG_VR_CTL_VAL +CONFIG_VR_CTL_VLEV +CONFIG_VSC7385_ENET +CONFIG_VSC7385_IMAGE +CONFIG_VSC7385_IMAGE_SIZE +CONFIG_VSC9953 +CONFIG_VSC_CROSSBAR +CONFIG_WALNUT +CONFIG_WATCHDOG +CONFIG_WATCHDOG_BASEADDR +CONFIG_WATCHDOG_IRQ +CONFIG_WATCHDOG_NOWAYOUT +CONFIG_WATCHDOG_PRESC +CONFIG_WATCHDOG_RC +CONFIG_WATCHDOG_TIMEOUT +CONFIG_WATCHDOG_TIMEOUT_MSECS +CONFIG_WDOG_GPIO_PIN +CONFIG_WD_MAX_RATE +CONFIG_WD_PERIOD +CONFIG_WINBOND_83C553 +CONFIG_X600 +CONFIG_X86EMU_DEBUG +CONFIG_X86EMU_RAW_IO +CONFIG_X86_64 +CONFIG_X86_BSWAP +CONFIG_X86_MRC_ADDR +CONFIG_X86_REFCODE_ADDR +CONFIG_X86_REFCODE_RUN_ADDR +CONFIG_XGI_XG22_BASE +CONFIG_XILINX_405 +CONFIG_XILINX_440 +CONFIG_XILINX_GPIO +CONFIG_XILINX_LL_TEMAC +CONFIG_XILINX_LL_TEMAC_CLK +CONFIG_XILINX_PPC440_GENERIC +CONFIG_XILINX_SPI_IDLE_VAL +CONFIG_XILINX_TB_WATCHDOG +CONFIG_XPEDITE1000 +CONFIG_XPEDITE5140 +CONFIG_XPEDITE5200 +CONFIG_XPEDITE5370 +CONFIG_XPEDITE550X +CONFIG_XR16L2751 +CONFIG_XSENGINE +CONFIG_XTFPGA +CONFIG_YAFFS2 +CONFIG_YAFFSFS_PROVIDE_VALUES +CONFIG_YAFFS_AUTO_UNICODE +CONFIG_YAFFS_CASE_INSENSITIVE +CONFIG_YAFFS_DEFINES_TYPES +CONFIG_YAFFS_DIRECT +CONFIG_YAFFS_PROVIDE_DEFS +CONFIG_YAFFS_UNICODE +CONFIG_YAFFS_UTIL +CONFIG_YAFFS_WINCE +CONFIG_YELLOWSTONE +CONFIG_YELLOW_LED +CONFIG_YOSEMITE +CONFIG_ZBOOT_32 +CONFIG_ZC770_XM010 +CONFIG_ZC770_XM011 +CONFIG_ZC770_XM012 +CONFIG_ZC770_XM013 +CONFIG_ZLIB +CONFIG_ZLT +CONFIG_ZM7300 +CONFIG_ZYNQMP_EEPROM +CONFIG_ZYNQMP_XHCI_LIST +CONFIG_ZYNQ_EEPROM +CONFIG_ZYNQ_EEPROM_BUS +CONFIG_ZYNQ_GEM_EEPROM_ADDR +CONFIG_ZYNQ_GEM_I2C_MAC_OFFSET +CONFIG_ZYNQ_HISPD_BROKEN +CONFIG_ZYNQ_I2C0 +CONFIG_ZYNQ_I2C1 +CONFIG_ZYNQ_PS_CLK_FREQ +CONFIG_ZYNQ_SDHCI0 +CONFIG_ZYNQ_SDHCI1 +CONFIG_ZYNQ_SDHCI_MAX_FREQ +CONFIG_ZYNQ_SDHCI_MIN_FREQ +CONFIG_ZYNQ_SERIAL +CONFIG_eTSEC_MDIO_BUS +CONFIG_n +CONFIG_prefix +CONFIG_xxx diff --git a/test/fs/fs-test.sh b/test/fs/fs-test.sh index 93679cb21e..6e71b61ce9 100755 --- a/test/fs/fs-test.sh +++ b/test/fs/fs-test.sh @@ -9,14 +9,14 @@ # It currently tests the fs/sb and native commands for ext4 and fat partitions # Expected results are as follows: # EXT4 tests: -# fs-test.sb.ext4.out: Summary: PASS: 17 FAIL: 2 -# fs-test.ext4.out: Summary: PASS: 10 FAIL: 9 -# fs-test.fs.ext4.out: Summary: PASS: 10 FAIL: 9 +# fs-test.sb.ext4.out: Summary: PASS: 23 FAIL: 0 +# fs-test.ext4.out: Summary: PASS: 14 FAIL: 9 +# fs-test.fs.ext4.out: Summary: PASS: 14 FAIL: 9 # FAT tests: -# fs-test.sb.fat.out: Summary: PASS: 17 FAIL: 2 -# fs-test.fat.out: Summary: PASS: 19 FAIL: 0 -# fs-test.fs.fat.out: Summary: PASS: 19 FAIL: 0 -# Total Summary: TOTAL PASS: 92 TOTAL FAIL: 22 +# fs-test.sb.fat.out: Summary: PASS: 23 FAIL: 0 +# fs-test.fat.out: Summary: PASS: 20 FAIL: 3 +# fs-test.fs.fat.out: Summary: PASS: 20 FAIL: 3 +# Total Summary: TOTAL PASS: 114 TOTAL FAIL: 24 # pre-requisite binaries list. PREREQ_BINS="md5sum mkfs mount umount dd fallocate mkdir" @@ -135,22 +135,6 @@ function create_image() { fi } -# 1st parameter is the FS type: fat/ext4 -# 2nd parameter is the name of small file -# Returns filename which can be used for fat or ext4 for writing -function fname_for_write() { - case $1 in - ext4) - # ext4 needs absolute path name of file - echo /${2}.w - ;; - - *) - echo ${2}.w - ;; - esac -} - # 1st parameter is image file # 2nd parameter is file system type - fat/ext4 # 3rd parameter is name of small file @@ -166,11 +150,14 @@ function test_image() { case "$2" in fat) + FPATH="" PREFIX="fat" WRITE="write" ;; ext4) + # ext4 needs absolute path + FPATH="/" PREFIX="ext4" WRITE="write" ;; @@ -205,16 +192,15 @@ function test_image() { esac - if [ -z "$6" ]; then - FILE_WRITE=`fname_for_write $2 $3` - FILE_SMALL=$3 - FILE_BIG=$4 - else - FILE_WRITE=$6/`fname_for_write $2 $3` - FILE_SMALL=$6/$3 - FILE_BIG=$6/$4 + # sb always uses full path to mointpoint, irrespective of filesystem + if [ "$5" = "sb" ]; then + FPATH=${6}/ fi + FILE_WRITE=${3}.w + FILE_SMALL=$3 + FILE_BIG=$4 + # In u-boot commands, <interface> stands for host or hostfs # hostfs maps to the host fs. # host maps to the "sb bind" that we do @@ -230,13 +216,13 @@ ${PREFIX}ls host${SUFFIX} $6 # sb size hostfs - $3 for hostfs commands. # 1MB is 0x0010 0000 # Test Case 2 - size of small file -${PREFIX}size host${SUFFIX} $FILE_SMALL +${PREFIX}size host${SUFFIX} ${FPATH}$FILE_SMALL printenv filesize setenv filesize # 2.5GB (1024*1024*2500) is 0x9C40 0000 # Test Case 3 - size of big file -${PREFIX}size host${SUFFIX} $FILE_BIG +${PREFIX}size host${SUFFIX} ${FPATH}$FILE_BIG printenv filesize setenv filesize @@ -245,14 +231,14 @@ setenv filesize # Last two parameters are size and offset. # Test Case 4a - Read full 1MB of small file -${PREFIX}load host${SUFFIX} $addr $FILE_SMALL +${PREFIX}load host${SUFFIX} $addr ${FPATH}$FILE_SMALL printenv filesize # Test Case 4b - Read full 1MB of small file md5sum $addr \$filesize setenv filesize # Test Case 5a - First 1MB of big file -${PREFIX}load host${SUFFIX} $addr $FILE_BIG $length 0x0 +${PREFIX}load host${SUFFIX} $addr ${FPATH}$FILE_BIG $length 0x0 printenv filesize # Test Case 5b - First 1MB of big file md5sum $addr \$filesize @@ -260,7 +246,7 @@ setenv filesize # fails for ext as no offset support # Test Case 6a - Last 1MB of big file -${PREFIX}load host${SUFFIX} $addr $FILE_BIG $length 0x9C300000 +${PREFIX}load host${SUFFIX} $addr ${FPATH}$FILE_BIG $length 0x9C300000 printenv filesize # Test Case 6b - Last 1MB of big file md5sum $addr \$filesize @@ -268,7 +254,7 @@ setenv filesize # fails for ext as no offset support # Test Case 7a - One from the last 1MB chunk of 2GB -${PREFIX}load host${SUFFIX} $addr $FILE_BIG $length 0x7FF00000 +${PREFIX}load host${SUFFIX} $addr ${FPATH}$FILE_BIG $length 0x7FF00000 printenv filesize # Test Case 7b - One from the last 1MB chunk of 2GB md5sum $addr \$filesize @@ -276,7 +262,7 @@ setenv filesize # fails for ext as no offset support # Test Case 8a - One from the start 1MB chunk from 2GB -${PREFIX}load host${SUFFIX} $addr $FILE_BIG $length 0x80000000 +${PREFIX}load host${SUFFIX} $addr ${FPATH}$FILE_BIG $length 0x80000000 printenv filesize # Test Case 8b - One from the start 1MB chunk from 2GB md5sum $addr \$filesize @@ -284,7 +270,7 @@ setenv filesize # fails for ext as no offset support # Test Case 9a - One 1MB chunk crossing the 2GB boundary -${PREFIX}load host${SUFFIX} $addr $FILE_BIG $length 0x7FF80000 +${PREFIX}load host${SUFFIX} $addr ${FPATH}$FILE_BIG $length 0x7FF80000 printenv filesize # Test Case 9b - One 1MB chunk crossing the 2GB boundary md5sum $addr \$filesize @@ -292,21 +278,44 @@ setenv filesize # Generic failure case # Test Case 10 - 2MB chunk from the last 1MB of big file -${PREFIX}load host${SUFFIX} $addr $FILE_BIG 0x00200000 0x9C300000 +${PREFIX}load host${SUFFIX} $addr ${FPATH}$FILE_BIG 0x00200000 0x9C300000 printenv filesize # # Read 1MB from small file -${PREFIX}load host${SUFFIX} $addr $FILE_SMALL +${PREFIX}load host${SUFFIX} $addr ${FPATH}$FILE_SMALL # Write it back to test the writes # Test Case 11a - Check that the write succeeded -${PREFIX}${WRITE} host${SUFFIX} $addr $FILE_WRITE \$filesize +${PREFIX}${WRITE} host${SUFFIX} $addr ${FPATH}$FILE_WRITE \$filesize mw.b $addr 00 100 -${PREFIX}load host${SUFFIX} $addr $FILE_WRITE +${PREFIX}load host${SUFFIX} $addr ${FPATH}$FILE_WRITE # Test Case 11b - Check md5 of written to is same as the one read from md5sum $addr \$filesize setenv filesize # + +# Next test case checks writing a file whose dirent +# is the first in the block, which is always true for "." +# The write should fail, but the lookup should work +# Test Case 12 - Check directory traversal +${PREFIX}${WRITE} host${SUFFIX} $addr ${FPATH}. 0x10 + +# Read 1MB from small file +${PREFIX}load host${SUFFIX} $addr ${FPATH}$FILE_SMALL +# Write it via "same directory", i.e. "." dirent +# Test Case 13a - Check directory traversal +${PREFIX}${WRITE} host${SUFFIX} $addr ${FPATH}./${FILE_WRITE}2 \$filesize +mw.b $addr 00 100 +${PREFIX}load host${SUFFIX} $addr ${FPATH}./${FILE_WRITE}2 +# Test Case 13b - Check md5 of written to is same as the one read from +md5sum $addr \$filesize +setenv filesize +mw.b $addr 00 100 +${PREFIX}load host${SUFFIX} $addr ${FPATH}${FILE_WRITE}2 +# Test Case 13c - Check md5 of written to is same as the one read from +md5sum $addr \$filesize +setenv filesize +# reset EOF @@ -343,9 +352,10 @@ function create_files() { &> /dev/null fi - # Delete the small file which possibly is written as part of a + # Delete the small file copies which possibly are written as part of a # previous test. sudo rm -f "${MB1}.w" + sudo rm -f "${MB1}.w2" # Generate the md5sums of reads that we will test against small file dd if="${MB1}" bs=1M skip=0 count=1 2> /dev/null | md5sum > "$2" @@ -400,7 +410,7 @@ check_md5() { # md5sum in u-boot has output of form: # md5 for 01000008 ... 01100007 ==> <md5> # the 7th field is the actual md5 - md5_src=`grep -A3 "$1" "$2" | grep "md5 for" | tr -d '\r'` + md5_src=`grep -A2 "$1" "$2" | grep "md5 for" | tr -d '\r'` md5_src=($md5_src) md5_src=${md5_src[6]} @@ -445,48 +455,60 @@ function check_results() { pass_fail "TC3: size of $4" # Check read full mb of 1MB.file - grep -A6 "Test Case 4a " "$1" | grep -q "filesize=100000" + grep -A4 "Test Case 4a " "$1" | grep -q "filesize=100000" pass_fail "TC4: load of $3 size" check_md5 "Test Case 4b " "$1" "$2" 1 "TC4: load from $3" # Check first mb of 2.5GB.file - grep -A6 "Test Case 5a " "$1" | grep -q "filesize=100000" + grep -A4 "Test Case 5a " "$1" | grep -q "filesize=100000" pass_fail "TC5: load of 1st MB from $4 size" check_md5 "Test Case 5b " "$1" "$2" 2 "TC5: load of 1st MB from $4" # Check last mb of 2.5GB.file - grep -A6 "Test Case 6a " "$1" | grep -q "filesize=100000" + grep -A4 "Test Case 6a " "$1" | grep -q "filesize=100000" pass_fail "TC6: load of last MB from $4 size" check_md5 "Test Case 6b " "$1" "$2" 3 "TC6: load of last MB from $4" # Check last 1mb chunk of 2gb from 2.5GB file - grep -A6 "Test Case 7a " "$1" | grep -q "filesize=100000" + grep -A4 "Test Case 7a " "$1" | grep -q "filesize=100000" pass_fail "TC7: load of last 1mb chunk of 2GB from $4 size" check_md5 "Test Case 7b " "$1" "$2" 4 \ "TC7: load of last 1mb chunk of 2GB from $4" # Check first 1mb chunk after 2gb from 2.5GB file - grep -A6 "Test Case 8a " "$1" | grep -q "filesize=100000" + grep -A4 "Test Case 8a " "$1" | grep -q "filesize=100000" pass_fail "TC8: load 1st MB chunk after 2GB from $4 size" check_md5 "Test Case 8b " "$1" "$2" 5 \ "TC8: load 1st MB chunk after 2GB from $4" # Check 1mb chunk crossing the 2gb boundary from 2.5GB file - grep -A6 "Test Case 9a " "$1" | grep -q "filesize=100000" + grep -A4 "Test Case 9a " "$1" | grep -q "filesize=100000" pass_fail "TC9: load 1MB chunk crossing 2GB boundary from $4 size" check_md5 "Test Case 9b " "$1" "$2" 6 \ "TC9: load 1MB chunk crossing 2GB boundary from $4" # Check 2mb chunk from the last 1MB of 2.5GB file loads 1MB - grep -A6 "Test Case 10 " "$1" | grep -q "filesize=100000" + grep -A5 "Test Case 10 " "$1" | grep -q "filesize=100000" pass_fail "TC10: load 2MB from the last 1MB of $4 loads 1MB" # Check 1mb chunk write - grep -A3 "Test Case 11a " "$1" | \ - egrep -q '1048576 bytes written|update journal' - pass_fail "TC11: 1MB write to $5 - write succeeded" + grep -A2 "Test Case 11a " "$1" | grep -q '1048576 bytes written' + pass_fail "TC11: 1MB write to $3.w - write succeeded" check_md5 "Test Case 11b " "$1" "$2" 1 \ - "TC11: 1MB write to $5 - content verified" + "TC11: 1MB write to $3.w - content verified" + + # Check lookup of 'dot' directory + grep -A4 "Test Case 12 " "$1" | grep -q 'Unable to write file' + pass_fail "TC12: 1MB write to . - write denied" + + # Check directory traversal + grep -A2 "Test Case 13a " "$1" | grep -q '1048576 bytes written' + pass_fail "TC13: 1MB write to ./$3.w2 - write succeeded" + check_md5 "Test Case 13b " "$1" "$2" 1 \ + "TC13: 1MB read from ./$3.w2 - content verified" + check_md5 "Test Case 13c " "$1" "$2" 1 \ + "TC13: 1MB read from $3.w2 - content verified" + echo "** End $1" } @@ -500,8 +522,12 @@ function test_fs_nonfs() { OUT_FILE="${OUT}.$1.${fs}.out" test_image $IMAGE $fs $SMALL_FILE $BIG_FILE $1 "" \ > ${OUT_FILE} 2>&1 - check_results $OUT_FILE $MD5_FILE_FS $SMALL_FILE $BIG_FILE \ - $WRITE_FILE + # strip out noise from fs code + grep -v -e "File System is consistent\|update journal finished" \ + -e "reading .*\.file\|writing .*\.file.w" \ + < ${OUT_FILE} > ${OUT_FILE}_clean + check_results ${OUT_FILE}_clean $MD5_FILE_FS $SMALL_FILE \ + $BIG_FILE TOTAL_FAIL=$((TOTAL_FAIL + FAIL)) TOTAL_PASS=$((TOTAL_PASS + PASS)) echo "Summary: PASS: $PASS FAIL: $FAIL" @@ -551,8 +577,7 @@ for fs in ext4 fat; do sudo umount "$MOUNT_DIR" rmdir "$MOUNT_DIR" - check_results $OUT_FILE $MD5_FILE_FS $SMALL_FILE $BIG_FILE \ - $WRITE_FILE + check_results $OUT_FILE $MD5_FILE_FS $SMALL_FILE $BIG_FILE TOTAL_FAIL=$((TOTAL_FAIL + FAIL)) TOTAL_PASS=$((TOTAL_PASS + PASS)) echo "Summary: PASS: $PASS FAIL: $FAIL" diff --git a/test/py/tests/test_vboot.py b/test/py/tests/test_vboot.py index 021892bb3d..6e62820743 100644 --- a/test/py/tests/test_vboot.py +++ b/test/py/tests/test_vboot.py @@ -53,7 +53,7 @@ def test_vboot(u_boot_console): util.run_and_log(cons, 'dtc %s %s%s -O dtb ' '-o %s%s' % (dtc_args, datadir, dts, tmpdir, dtb)) - def run_bootm(sha_algo, test_type, expect_string): + def run_bootm(sha_algo, test_type, expect_string, boots): """Run a 'bootm' command U-Boot. This always starts a fresh U-Boot instance since the device tree may @@ -64,6 +64,8 @@ def test_vboot(u_boot_console): expect_string: A string which is expected in the output. sha_algo: Either 'sha1' or 'sha256', to select the algorithm to use. + boots: A boolean that is True if Linux should boot and False if + we are expected to not boot """ cons.restart_uboot() with cons.log.section('Verified boot %s %s' % (sha_algo, test_type)): @@ -72,6 +74,8 @@ def test_vboot(u_boot_console): 'fdt addr 100', 'bootm 100']) assert(expect_string in ''.join(output)) + if boots: + assert('sandbox: continuing, as we cannot run' in ''.join(output)) def make_fit(its): """Make a new FIT from the .its source file. @@ -117,22 +121,22 @@ def test_vboot(u_boot_console): # Build the FIT, but don't sign anything yet cons.log.action('%s: Test FIT with signed images' % sha_algo) make_fit('sign-images-%s.its' % sha_algo) - run_bootm(sha_algo, 'unsigned images', 'dev-') + run_bootm(sha_algo, 'unsigned images', 'dev-', True) # Sign images with our dev keys sign_fit(sha_algo) - run_bootm(sha_algo, 'signed images', 'dev+') + run_bootm(sha_algo, 'signed images', 'dev+', True) # Create a fresh .dtb without the public keys dtc('sandbox-u-boot.dts') cons.log.action('%s: Test FIT with signed configuration' % sha_algo) make_fit('sign-configs-%s.its' % sha_algo) - run_bootm(sha_algo, 'unsigned config', '%s+ OK' % sha_algo) + run_bootm(sha_algo, 'unsigned config', '%s+ OK' % sha_algo, True) # Sign images with our dev keys sign_fit(sha_algo) - run_bootm(sha_algo, 'signed config', 'dev+') + run_bootm(sha_algo, 'signed config', 'dev+', True) cons.log.action('%s: Check signed config on the host' % sha_algo) @@ -149,7 +153,7 @@ def test_vboot(u_boot_console): util.run_and_log(cons, 'fdtput -t bx %s %s value %s' % (fit, sig_node, sig)) - run_bootm(sha_algo, 'Signed config with bad hash', 'Bad Data Hash') + run_bootm(sha_algo, 'Signed config with bad hash', 'Bad Data Hash', False) cons.log.action('%s: Check bad config on the host' % sha_algo) util.run_and_log_expect_exception(cons, [fit_check_sign, '-f', fit, diff --git a/tools/buildman/control.py b/tools/buildman/control.py index b86d7b3c1f..0b6ab03b4c 100644 --- a/tools/buildman/control.py +++ b/tools/buildman/control.py @@ -237,7 +237,7 @@ def DoBuildman(options, args, toolchains=None, make_func=None, boards=None, options.step = len(series.commits) - 1 gnu_make = command.Output(os.path.join(options.git, - 'scripts/show-gnu-make')).rstrip() + 'scripts/show-gnu-make'), raise_on_error=False).rstrip() if not gnu_make: sys.exit('GNU Make not found') diff --git a/tools/dtoc/dtoc.py b/tools/dtoc/dtoc.py index ec80abe717..518aa51216 100755 --- a/tools/dtoc/dtoc.py +++ b/tools/dtoc/dtoc.py @@ -9,27 +9,16 @@ import copy from optparse import OptionError, OptionParser import os +import struct import sys -import fdt_util - # Bring in the patman libraries our_path = os.path.dirname(os.path.realpath(__file__)) sys.path.append(os.path.join(our_path, '../patman')) -# Bring in either the normal fdt library (which relies on libfdt) or the -# fallback one (which uses fdtget and is slower). Both provide the same -# interfface for this file to use. -try: - from fdt import Fdt - import fdt - have_libfdt = True -except ImportError: - have_libfdt = False - from fdt_fallback import Fdt - import fdt_fallback as fdt - -import struct +import fdt +import fdt_select +import fdt_util # When we see these properties we ignore them - i.e. do not create a structure member PROP_IGNORE_LIST = [ @@ -45,10 +34,10 @@ PROP_IGNORE_LIST = [ # C type declarations for the tyues we support TYPE_NAMES = { - fdt_util.TYPE_INT: 'fdt32_t', - fdt_util.TYPE_BYTE: 'unsigned char', - fdt_util.TYPE_STRING: 'const char *', - fdt_util.TYPE_BOOL: 'bool', + fdt.TYPE_INT: 'fdt32_t', + fdt.TYPE_BYTE: 'unsigned char', + fdt.TYPE_STRING: 'const char *', + fdt.TYPE_BOOL: 'bool', }; STRUCT_PREFIX = 'dtd_' @@ -150,13 +139,13 @@ class DtbPlatdata: type: Data type (fdt_util) value: Data value, as a string of bytes """ - if type == fdt_util.TYPE_INT: + if type == fdt.TYPE_INT: return '%#x' % fdt_util.fdt32_to_cpu(value) - elif type == fdt_util.TYPE_BYTE: + elif type == fdt.TYPE_BYTE: return '%#x' % ord(value[0]) - elif type == fdt_util.TYPE_STRING: + elif type == fdt.TYPE_STRING: return '"%s"' % value - elif type == fdt_util.TYPE_BOOL: + elif type == fdt.TYPE_BOOL: return 'true' def GetCompatName(self, node): @@ -178,8 +167,7 @@ class DtbPlatdata: Once this is done, self.fdt.GetRoot() can be called to obtain the device tree root node, and progress from there. """ - self.fdt = Fdt(self._dtb_fname) - self.fdt.Scan() + self.fdt = fdt_select.FdtScan(self._dtb_fname) def ScanTree(self): """Scan the device tree for useful information diff --git a/tools/dtoc/fdt.py b/tools/dtoc/fdt.py index 1d913a925e..816fdbe525 100644 --- a/tools/dtoc/fdt.py +++ b/tools/dtoc/fdt.py @@ -6,17 +6,26 @@ # SPDX-License-Identifier: GPL-2.0+ # -import fdt_util -import libfdt +import struct import sys -# This deals with a device tree, presenting it as a list of Node and Prop -# objects, representing nodes and properties, respectively. -# -# This implementation uses a libfdt Python library to access the device tree, -# so it is fairly efficient. +import fdt_util + +# This deals with a device tree, presenting it as an assortment of Node and +# Prop objects, representing nodes and properties, respectively. This file +# contains the base classes and defines the high-level API. Most of the +# implementation is in the FdtFallback and FdtNormal subclasses. See +# fdt_select.py for how to create an Fdt object. + +# A list of types we support +(TYPE_BYTE, TYPE_INT, TYPE_STRING, TYPE_BOOL) = range(4) -class Prop: +def CheckErr(errnum, msg): + if errnum: + raise ValueError('Error %d: %s: %s' % + (errnum, libfdt.fdt_strerror(errnum), msg)) + +class PropBase: """A device tree property Properties: @@ -25,14 +34,11 @@ class Prop: bytes type: Value type """ - def __init__(self, name, bytes): + def __init__(self, node, offset, name): + self._node = node + self._offset = offset self.name = name self.value = None - if not bytes: - self.type = fdt_util.TYPE_BOOL - self.value = True - return - self.type, self.value = fdt_util.BytesToValue(bytes) def GetPhandle(self): """Get a (single) phandle value from a property @@ -71,12 +77,85 @@ class Prop: self.value = [self.value] if type(self.value) == list and len(newprop.value) > len(self.value): - val = fdt_util.GetEmpty(self.type) + val = self.GetEmpty(self.type) while len(self.value) < len(newprop.value): self.value.append(val) + def BytesToValue(self, bytes): + """Converts a string of bytes into a type and value + + Args: + A string containing bytes + + Return: + A tuple: + Type of data + Data, either a single element or a list of elements. Each element + is one of: + TYPE_STRING: string value from the property + TYPE_INT: a byte-swapped integer stored as a 4-byte string + TYPE_BYTE: a byte stored as a single-byte string + """ + size = len(bytes) + strings = bytes.split('\0') + is_string = True + count = len(strings) - 1 + if count > 0 and not strings[-1]: + for string in strings[:-1]: + if not string: + is_string = False + break + for ch in string: + if ch < ' ' or ch > '~': + is_string = False + break + else: + is_string = False + if is_string: + if count == 1: + return TYPE_STRING, strings[0] + else: + return TYPE_STRING, strings[:-1] + if size % 4: + if size == 1: + return TYPE_BYTE, bytes[0] + else: + return TYPE_BYTE, list(bytes) + val = [] + for i in range(0, size, 4): + val.append(bytes[i:i + 4]) + if size == 4: + return TYPE_INT, val[0] + else: + return TYPE_INT, val + + def GetEmpty(self, type): + """Get an empty / zero value of the given type + + Returns: + A single value of the given type + """ + if type == TYPE_BYTE: + return chr(0) + elif type == TYPE_INT: + return struct.pack('<I', 0); + elif type == TYPE_STRING: + return '' + else: + return True + + def GetOffset(self): + """Get the offset of a property + + This can be implemented by subclasses. + + Returns: + The offset of the property (struct fdt_property) within the + file, or None if not known. + """ + return None -class Node: +class NodeBase: """A device tree node Properties: @@ -89,32 +168,42 @@ class Node: Keyed by property name """ def __init__(self, fdt, offset, name, path): - self.offset = offset + self._fdt = fdt + self._offset = offset self.name = name self.path = path - self._fdt = fdt self.subnodes = [] self.props = {} + def _FindNode(self, name): + """Find a node given its name + + Args: + name: Node name to look for + Returns: + Node object if found, else None + """ + for subnode in self.subnodes: + if subnode.name == name: + return subnode + return None + def Scan(self): - """Scan a node's properties and subnodes + """Scan the subnodes of a node - This fills in the props and subnodes properties, recursively - searching into subnodes so that the entire tree is built. + This should be implemented by subclasses """ - self.props = self._fdt.GetProps(self.path) + raise NotImplementedError() - offset = libfdt.fdt_first_subnode(self._fdt.GetFdt(), self.offset) - while offset >= 0: - sep = '' if self.path[-1] == '/' else '/' - name = libfdt.Name(self._fdt.GetFdt(), offset) - path = self.path + sep + name - node = Node(self._fdt, offset, name, path) - self.subnodes.append(node) + def DeleteProp(self, prop_name): + """Delete a property of a node - node.Scan() - offset = libfdt.fdt_next_subnode(self._fdt.GetFdt(), offset) + This should be implemented by subclasses + Args: + prop_name: Name of the property to delete + """ + raise NotImplementedError() class Fdt: """Provides simple access to a flat device tree blob. @@ -123,26 +212,20 @@ class Fdt: fname: Filename of fdt _root: Root of device tree (a Node object) """ - def __init__(self, fname): - self.fname = fname - with open(fname) as fd: - self._fdt = fd.read() - - def GetFdt(self): - """Get the contents of the FDT + self._fname = fname - Returns: - The FDT contents as a string of bytes - """ - return self._fdt - - def Scan(self): + def Scan(self, root='/'): """Scan a device tree, building up a tree of Node objects This fills in the self._root property + + Args: + root: Ignored + + TODO(sjg@chromium.org): Implement the 'root' parameter """ - self._root = Node(self, 0, '/', '/') + self._root = self.Node(self, 0, '/', '/') self._root.Scan() def GetRoot(self): @@ -153,28 +236,34 @@ class Fdt: """ return self._root - def GetProps(self, node): - """Get all properties from a node. + def GetNode(self, path): + """Look up a node from its path Args: - node: Full path to node name to look in. - + path: Path to look up, e.g. '/microcode/update@0' Returns: - A dictionary containing all the properties, indexed by node name. - The entries are Prop objects. + Node object, or None if not found + """ + node = self._root + for part in path.split('/')[1:]: + node = node._FindNode(part) + if not node: + return None + return node + + def Flush(self): + """Flush device tree changes back to the file + + If the device tree has changed in memory, write it back to the file. + Subclasses can implement this if needed. + """ + pass + + def Pack(self): + """Pack the device tree down to its minimum size - Raises: - ValueError: if the node does not exist. + When nodes and properties shrink or are deleted, wasted space can + build up in the device tree binary. Subclasses can implement this + to remove that spare space. """ - offset = libfdt.fdt_path_offset(self._fdt, node) - if offset < 0: - libfdt.Raise(offset) - props_dict = {} - poffset = libfdt.fdt_first_property_offset(self._fdt, offset) - while poffset >= 0: - dprop, plen = libfdt.fdt_get_property_by_offset(self._fdt, poffset) - prop = Prop(libfdt.String(self._fdt, dprop.nameoff), libfdt.Data(dprop)) - props_dict[prop.name] = prop - - poffset = libfdt.fdt_next_property_offset(self._fdt, poffset) - return props_dict + pass diff --git a/tools/dtoc/fdt_fallback.py b/tools/dtoc/fdt_fallback.py index 9ed11e4cbf..0c0ebbcf47 100644 --- a/tools/dtoc/fdt_fallback.py +++ b/tools/dtoc/fdt_fallback.py @@ -7,6 +7,8 @@ # import command +import fdt +from fdt import Fdt, NodeBase, PropBase import fdt_util import sys @@ -17,7 +19,7 @@ import sys # is not very efficient for larger trees. The tool is called once for each # node and property in the tree. -class Prop: +class Prop(PropBase): """A device tree property Properties: @@ -26,58 +28,17 @@ class Prop: bytes type: Value type """ - def __init__(self, name, byte_list_str): - self.name = name - self.value = None + def __init__(self, node, name, byte_list_str): + PropBase.__init__(self, node, 0, name) if not byte_list_str.strip(): - self.type = fdt_util.TYPE_BOOL + self.type = fdt.TYPE_BOOL return - bytes = [chr(int(byte, 16)) for byte in byte_list_str.strip().split(' ')] - self.type, self.value = fdt_util.BytesToValue(''.join(bytes)) + self.bytes = [chr(int(byte, 16)) + for byte in byte_list_str.strip().split(' ')] + self.type, self.value = self.BytesToValue(''.join(self.bytes)) - def GetPhandle(self): - """Get a (single) phandle value from a property - Gets the phandle valuie from a property and returns it as an integer - """ - return fdt_util.fdt32_to_cpu(self.value[:4]) - - def Widen(self, newprop): - """Figure out which property type is more general - - Given a current property and a new property, this function returns the - one that is less specific as to type. The less specific property will - be ble to represent the data in the more specific property. This is - used for things like: - - node1 { - compatible = "fred"; - value = <1>; - }; - node1 { - compatible = "fred"; - value = <1 2>; - }; - - He we want to use an int array for 'value'. The first property - suggests that a single int is enough, but the second one shows that - it is not. Calling this function with these two propertes would - update the current property to be like the second, since it is less - specific. - """ - if newprop.type < self.type: - self.type = newprop.type - - if type(newprop.value) == list and type(self.value) != list: - self.value = newprop.value - - if type(self.value) == list and len(newprop.value) > len(self.value): - val = fdt_util.GetEmpty(self.type) - while len(self.value) < len(newprop.value): - self.value.append(val) - - -class Node: +class Node(NodeBase): """A device tree node Properties: @@ -88,12 +49,8 @@ class Node: props: A dict of properties for this node, each a Prop object. Keyed by property name """ - def __init__(self, fdt, name, path): - self.name = name - self.path = path - self._fdt = fdt - self.subnodes = [] - self.props = {} + def __init__(self, fdt, offset, name, path): + NodeBase.__init__(self, fdt, offset, name, path) def Scan(self): """Scan a node's properties and subnodes @@ -102,44 +59,42 @@ class Node: searching into subnodes so that the entire tree is built. """ for name, byte_list_str in self._fdt.GetProps(self.path).iteritems(): - prop = Prop(name, byte_list_str) + prop = Prop(self, name, byte_list_str) self.props[name] = prop for name in self._fdt.GetSubNodes(self.path): sep = '' if self.path[-1] == '/' else '/' path = self.path + sep + name - node = Node(self._fdt, name, path) + node = Node(self._fdt, 0, name, path) self.subnodes.append(node) node.Scan() + def DeleteProp(self, prop_name): + """Delete a property of a node -class Fdt: - """Provides simple access to a flat device tree blob. + The property is deleted using fdtput. + + Args: + prop_name: Name of the property to delete + Raises: + CommandError if the property does not exist + """ + args = [self._fdt._fname, '-d', self.path, prop_name] + command.Output('fdtput', *args) + del self.props[prop_name] + +class FdtFallback(Fdt): + """Provides simple access to a flat device tree blob using fdtget/fdtput Properties: - fname: Filename of fdt - _root: Root of device tree (a Node object) + See superclass """ def __init__(self, fname): - self.fname = fname - - def Scan(self): - """Scan a device tree, building up a tree of Node objects - - This fills in the self._root property - """ - self._root = Node(self, '/', '/') - self._root.Scan() - - def GetRoot(self): - """Get the root Node of the device tree - - Returns: - The root Node object - """ - return self._root + Fdt.__init__(self, fname) + if self._fname: + self._fname = fdt_util.EnsureCompiled(self._fname) def GetSubNodes(self, node): """Returns a list of sub-nodes of a given node @@ -153,15 +108,14 @@ class Fdt: Raises: CmdError: if the node does not exist. """ - out = command.Output('fdtget', self.fname, '-l', node) + out = command.Output('fdtget', self._fname, '-l', node) return out.strip().splitlines() - def GetProps(self, node, convert_dashes=False): + def GetProps(self, node): """Get all properties from a node Args: node: full path to node name to look in - convert_dashes: True to convert - to _ in node names Returns: A dictionary containing all the properties, indexed by node name. @@ -171,13 +125,11 @@ class Fdt: Raises: CmdError: if the node does not exist. """ - out = command.Output('fdtget', self.fname, node, '-p') + out = command.Output('fdtget', self._fname, node, '-p') props = out.strip().splitlines() props_dict = {} for prop in props: name = prop - if convert_dashes: - prop = re.sub('-', '_', prop) props_dict[prop] = self.GetProp(node, name) return props_dict @@ -204,10 +156,26 @@ class Fdt: Raises: CmdError: if the property does not exist and no default is provided. """ - args = [self.fname, node, prop, '-t', 'bx'] + args = [self._fname, node, prop, '-t', 'bx'] if default is not None: args += ['-d', str(default)] if typespec is not None: args += ['-t%s' % typespec] out = command.Output('fdtget', *args) return out.strip() + + @classmethod + def Node(self, fdt, offset, name, path): + """Create a new node + + This is used by Fdt.Scan() to create a new node using the correct + class. + + Args: + fdt: Fdt object + offset: Offset of node + name: Node name + path: Full path to node + """ + node = Node(fdt, offset, name, path) + return node diff --git a/tools/dtoc/fdt_normal.py b/tools/dtoc/fdt_normal.py new file mode 100644 index 0000000000..aae258e412 --- /dev/null +++ b/tools/dtoc/fdt_normal.py @@ -0,0 +1,228 @@ +#!/usr/bin/python +# +# Copyright (C) 2016 Google, Inc +# Written by Simon Glass <sjg@chromium.org> +# +# SPDX-License-Identifier: GPL-2.0+ +# + +import struct +import sys + +import fdt +from fdt import Fdt, NodeBase, PropBase +import fdt_util +import libfdt + +# This deals with a device tree, presenting it as a list of Node and Prop +# objects, representing nodes and properties, respectively. +# +# This implementation uses a libfdt Python library to access the device tree, +# so it is fairly efficient. + +def CheckErr(errnum, msg): + if errnum: + raise ValueError('Error %d: %s: %s' % + (errnum, libfdt.fdt_strerror(errnum), msg)) + +class Prop(PropBase): + """A device tree property + + Properties: + name: Property name (as per the device tree) + value: Property value as a string of bytes, or a list of strings of + bytes + type: Value type + """ + def __init__(self, node, offset, name, bytes): + PropBase.__init__(self, node, offset, name) + self.bytes = bytes + if not bytes: + self.type = fdt.TYPE_BOOL + self.value = True + return + self.type, self.value = self.BytesToValue(bytes) + + def GetOffset(self): + """Get the offset of a property + + Returns: + The offset of the property (struct fdt_property) within the file + """ + return self._node._fdt.GetStructOffset(self._offset) + +class Node(NodeBase): + """A device tree node + + Properties: + offset: Integer offset in the device tree + name: Device tree node tname + path: Full path to node, along with the node name itself + _fdt: Device tree object + subnodes: A list of subnodes for this node, each a Node object + props: A dict of properties for this node, each a Prop object. + Keyed by property name + """ + def __init__(self, fdt, offset, name, path): + NodeBase.__init__(self, fdt, offset, name, path) + + def Offset(self): + """Returns the offset of a node, after checking the cache + + This should be used instead of self._offset directly, to ensure that + the cache does not contain invalid offsets. + """ + self._fdt.CheckCache() + return self._offset + + def Scan(self): + """Scan a node's properties and subnodes + + This fills in the props and subnodes properties, recursively + searching into subnodes so that the entire tree is built. + """ + self.props = self._fdt.GetProps(self, self.path) + + offset = libfdt.fdt_first_subnode(self._fdt.GetFdt(), self.Offset()) + while offset >= 0: + sep = '' if self.path[-1] == '/' else '/' + name = libfdt.Name(self._fdt.GetFdt(), offset) + path = self.path + sep + name + node = Node(self._fdt, offset, name, path) + self.subnodes.append(node) + + node.Scan() + offset = libfdt.fdt_next_subnode(self._fdt.GetFdt(), offset) + + def Refresh(self, my_offset): + """Fix up the _offset for each node, recursively + + Note: This does not take account of property offsets - these will not + be updated. + """ + if self._offset != my_offset: + #print '%s: %d -> %d\n' % (self.path, self._offset, my_offset) + self._offset = my_offset + offset = libfdt.fdt_first_subnode(self._fdt.GetFdt(), self._offset) + for subnode in self.subnodes: + subnode.Refresh(offset) + offset = libfdt.fdt_next_subnode(self._fdt.GetFdt(), offset) + + def DeleteProp(self, prop_name): + """Delete a property of a node + + The property is deleted and the offset cache is invalidated. + + Args: + prop_name: Name of the property to delete + Raises: + ValueError if the property does not exist + """ + CheckErr(libfdt.fdt_delprop(self._fdt.GetFdt(), self.Offset(), prop_name), + "Node '%s': delete property: '%s'" % (self.path, prop_name)) + del self.props[prop_name] + self._fdt.Invalidate() + +class FdtNormal(Fdt): + """Provides simple access to a flat device tree blob using libfdt. + + Properties: + _fdt: Device tree contents (bytearray) + _cached_offsets: True if all the nodes have a valid _offset property, + False if something has changed to invalidate the offsets + """ + def __init__(self, fname): + Fdt.__init__(self, fname) + self._cached_offsets = False + if self._fname: + self._fname = fdt_util.EnsureCompiled(self._fname) + + with open(self._fname) as fd: + self._fdt = bytearray(fd.read()) + + def GetFdt(self): + """Get the contents of the FDT + + Returns: + The FDT contents as a string of bytes + """ + return self._fdt + + def Flush(self): + """Flush device tree changes back to the file""" + with open(self._fname, 'wb') as fd: + fd.write(self._fdt) + + def Pack(self): + """Pack the device tree down to its minimum size""" + CheckErr(libfdt.fdt_pack(self._fdt), 'pack') + fdt_len = libfdt.fdt_totalsize(self._fdt) + del self._fdt[fdt_len:] + + def GetProps(self, node, path): + """Get all properties from a node. + + Args: + node: Full path to node name to look in. + + Returns: + A dictionary containing all the properties, indexed by node name. + The entries are Prop objects. + + Raises: + ValueError: if the node does not exist. + """ + offset = libfdt.fdt_path_offset(self._fdt, path) + if offset < 0: + libfdt.Raise(offset) + props_dict = {} + poffset = libfdt.fdt_first_property_offset(self._fdt, offset) + while poffset >= 0: + dprop, plen = libfdt.fdt_get_property_by_offset(self._fdt, poffset) + prop = Prop(node, poffset, libfdt.String(self._fdt, dprop.nameoff), + libfdt.Data(dprop)) + props_dict[prop.name] = prop + + poffset = libfdt.fdt_next_property_offset(self._fdt, poffset) + return props_dict + + def Invalidate(self): + """Mark our offset cache as invalid""" + self._cached_offsets = False + + def CheckCache(self): + """Refresh the offset cache if needed""" + if self._cached_offsets: + return + self.Refresh() + self._cached_offsets = True + + def Refresh(self): + """Refresh the offset cache""" + self._root.Refresh(0) + + def GetStructOffset(self, offset): + """Get the file offset of a given struct offset + + Args: + offset: Offset within the 'struct' region of the device tree + Returns: + Position of @offset within the device tree binary + """ + return libfdt.fdt_off_dt_struct(self._fdt) + offset + + @classmethod + def Node(self, fdt, offset, name, path): + """Create a new node + + This is used by Fdt.Scan() to create a new node using the correct + class. + + Args: + fdt: Fdt object + offset: Offset of node + name: Node name + path: Full path to node + """ + node = Node(fdt, offset, name, path) + return node diff --git a/tools/dtoc/fdt_select.py b/tools/dtoc/fdt_select.py new file mode 100644 index 0000000000..18a36d88a0 --- /dev/null +++ b/tools/dtoc/fdt_select.py @@ -0,0 +1,26 @@ +#!/usr/bin/python +# +# Copyright (C) 2016 Google, Inc +# Written by Simon Glass <sjg@chromium.org> +# +# SPDX-License-Identifier: GPL-2.0+ +# + +# Bring in either the normal fdt library (which relies on libfdt) or the +# fallback one (which uses fdtget and is slower). Both provide the same +# interface for this file to use. +try: + import fdt_normal + have_libfdt = True +except ImportError: + have_libfdt = False + import fdt_fallback + +def FdtScan(fname): + """Returns a new Fdt object from the implementation we are using""" + if have_libfdt: + dtb = fdt_normal.FdtNormal(fname) + else: + dtb = fdt_fallback.FdtFallback(fname) + dtb.Scan() + return dtb diff --git a/tools/dtoc/fdt_util.py b/tools/dtoc/fdt_util.py index 929b524fcf..3a10838109 100644 --- a/tools/dtoc/fdt_util.py +++ b/tools/dtoc/fdt_util.py @@ -6,81 +6,81 @@ # SPDX-License-Identifier: GPL-2.0+ # +import os import struct +import tempfile -# A list of types we support -(TYPE_BYTE, TYPE_INT, TYPE_STRING, TYPE_BOOL) = range(4) +import command +import tools -def BytesToValue(bytes): - """Converts a string of bytes into a type and value +def fdt32_to_cpu(val): + """Convert a device tree cell to an integer Args: - A string containing bytes + Value to convert (4-character string representing the cell value) Return: - A tuple: - Type of data - Data, either a single element or a list of elements. Each element - is one of: - TYPE_STRING: string value from the property - TYPE_INT: a byte-swapped integer stored as a 4-byte string - TYPE_BYTE: a byte stored as a single-byte string + A native-endian integer value """ - size = len(bytes) - strings = bytes.split('\0') - is_string = True - count = len(strings) - 1 - if count > 0 and not strings[-1]: - for string in strings[:-1]: - if not string: - is_string = False - break - for ch in string: - if ch < ' ' or ch > '~': - is_string = False - break - else: - is_string = False - if is_string: - if count == 1: - return TYPE_STRING, strings[0] - else: - return TYPE_STRING, strings[:-1] - if size % 4: - if size == 1: - return TYPE_BYTE, bytes[0] - else: - return TYPE_BYTE, list(bytes) - val = [] - for i in range(0, size, 4): - val.append(bytes[i:i + 4]) - if size == 4: - return TYPE_INT, val[0] - else: - return TYPE_INT, val + return struct.unpack('>I', val)[0] -def GetEmpty(type): - """Get an empty / zero value of the given type +def EnsureCompiled(fname): + """Compile an fdt .dts source file into a .dtb binary blob if needed. + + Args: + fname: Filename (if .dts it will be compiled). It not it will be + left alone Returns: - A single value of the given type + Filename of resulting .dtb file """ - if type == TYPE_BYTE: - return chr(0) - elif type == TYPE_INT: - return struct.pack('<I', 0); - elif type == TYPE_STRING: - return '' - else: - return True + _, ext = os.path.splitext(fname) + if ext != '.dts': + return fname -def fdt32_to_cpu(val): - """Convert a device tree cell to an integer + dts_input = tools.GetOutputFilename('source.dts') + dtb_output = tools.GetOutputFilename('source.dtb') - Args: - Value to convert (4-character string representing the cell value) + search_paths = [os.path.join(os.getcwd(), 'include')] + root, _ = os.path.splitext(fname) + args = ['-E', '-P', '-x', 'assembler-with-cpp', '-D__ASSEMBLY__'] + args += ['-Ulinux'] + for path in search_paths: + args.extend(['-I', path]) + args += ['-o', dts_input, fname] + command.Run('cc', *args) - Return: - A native-endian integer value - """ - return struct.unpack(">I", val)[0] + # If we don't have a directory, put it in the tools tempdir + search_list = [] + for path in search_paths: + search_list.extend(['-i', path]) + args = ['-I', 'dts', '-o', dtb_output, '-O', 'dtb'] + args.extend(search_list) + args.append(dts_input) + command.Run('dtc', *args) + return dtb_output + +def GetInt(node, propname, default=None): + prop = node.props.get(propname) + if not prop: + return default + value = fdt32_to_cpu(prop.value) + if type(value) == type(list): + raise ValueError("Node '%s' property '%' has list value: expecting" + "a single integer" % (node.name, propname)) + return value + +def GetString(node, propname, default=None): + prop = node.props.get(propname) + if not prop: + return default + value = prop.value + if type(value) == type(list): + raise ValueError("Node '%s' property '%' has list value: expecting" + "a single string" % (node.name, propname)) + return value + +def GetBool(node, propname, default=False): + if propname in node.props: + return True + return default diff --git a/tools/moveconfig.py b/tools/moveconfig.py index 5576b574a8..87e2bb2324 100755 --- a/tools/moveconfig.py +++ b/tools/moveconfig.py @@ -122,6 +122,10 @@ Available options Surround each portion of the log with escape sequences to display it in color on the terminal. + -C, --commit + Create a git commit with the changes when the operation is complete. A + standard commit message is used which may need to be edited. + -d, --defconfigs Specify a file containing a list of defconfigs to move @@ -162,6 +166,10 @@ Available options -v, --verbose Show any build errors as boards are built + -y, --yes + Instead of prompting, automatically go ahead with all operations. This + includes cleaning up headers and CONFIG_SYS_EXTRA_OPTIONS. + To see the complete list of supported options, run $ tools/moveconfig.py -h @@ -481,14 +489,15 @@ def cleanup_headers(configs, options): configs: A list of CONFIGs to remove. options: option flags. """ - while True: - choice = raw_input('Clean up headers? [y/n]: ').lower() - print choice - if choice == 'y' or choice == 'n': - break + if not options.yes: + while True: + choice = raw_input('Clean up headers? [y/n]: ').lower() + print choice + if choice == 'y' or choice == 'n': + break - if choice == 'n': - return + if choice == 'n': + return patterns = [] for config in configs: @@ -560,14 +569,16 @@ def cleanup_extra_options(configs, options): configs: A list of CONFIGs to remove. options: option flags. """ - while True: - choice = raw_input('Clean up CONFIG_SYS_EXTRA_OPTIONS? [y/n]: ').lower() - print choice - if choice == 'y' or choice == 'n': - break + if not options.yes: + while True: + choice = (raw_input('Clean up CONFIG_SYS_EXTRA_OPTIONS? [y/n]: '). + lower()) + print choice + if choice == 'y' or choice == 'n': + break - if choice == 'n': - return + if choice == 'n': + return configs = [ config[len('CONFIG_'):] for config in configs ] @@ -1233,6 +1244,8 @@ def main(): # Add options here parser.add_option('-c', '--color', action='store_true', default=False, help='display the log in color') + parser.add_option('-C', '--commit', action='store_true', default=False, + help='Create a git commit for the operation') parser.add_option('-d', '--defconfigs', type='string', help='a file containing a list of defconfigs to move') parser.add_option('-n', '--dry-run', action='store_true', default=False, @@ -1251,6 +1264,8 @@ def main(): help='the number of jobs to run simultaneously') parser.add_option('-r', '--git-ref', type='string', help='the git ref to clone for building the autoconf.mk') + parser.add_option('-y', '--yes', action='store_true', default=False, + help="respond 'yes' to any prompts") parser.add_option('-v', '--verbose', action='store_true', default=False, help='show any build errors as boards are built') parser.usage += ' CONFIG ...' @@ -1276,5 +1291,17 @@ def main(): cleanup_headers(configs, options) cleanup_extra_options(configs, options) + if options.commit: + subprocess.call(['git', 'add', '-u']) + if configs: + msg = 'Convert %s %sto Kconfig' % (configs[0], + 'et al ' if len(configs) > 1 else '') + msg += ('\n\nThis converts the following to Kconfig:\n %s\n' % + '\n '.join(configs)) + else: + msg = 'configs: Resync with savedefconfig' + msg += '\n\nRsync all defconfig files using moveconfig.py' + subprocess.call(['git', 'commit', '-s', '-m', msg]) + if __name__ == '__main__': main() diff --git a/tools/patman/checkpatch.py b/tools/patman/checkpatch.py index 34a3bd22b0..3eef6de221 100644 --- a/tools/patman/checkpatch.py +++ b/tools/patman/checkpatch.py @@ -63,7 +63,8 @@ def CheckPatch(fname, verbose=False): result.problems = [] chk = FindCheckPatch() item = {} - result.stdout = command.Output(chk, '--no-tree', fname) + result.stdout = command.Output(chk, '--no-tree', fname, + raise_on_error=False) #pipe = subprocess.Popen(cmd, stdout=subprocess.PIPE) #stdout, stderr = pipe.communicate() diff --git a/tools/patman/command.py b/tools/patman/command.py index d586f11158..d1f0ca505c 100644 --- a/tools/patman/command.py +++ b/tools/patman/command.py @@ -104,8 +104,9 @@ def RunPipe(pipe_list, infile=None, outfile=None, raise Exception("Error running '%s'" % user_pipestr) return result -def Output(*cmd): - return RunPipe([cmd], capture=True, raise_on_error=False).stdout +def Output(*cmd, **kwargs): + raise_on_error = kwargs.get('raise_on_error', True) + return RunPipe([cmd], capture=True, raise_on_error=raise_on_error).stdout def OutputOneLine(*cmd, **kwargs): raise_on_error = kwargs.pop('raise_on_error', True) diff --git a/tools/patman/gitutil.py b/tools/patman/gitutil.py index e088baeb81..bb7c9e08bc 100644 --- a/tools/patman/gitutil.py +++ b/tools/patman/gitutil.py @@ -391,7 +391,8 @@ def EmailPatches(series, cover_fname, args, dry_run, raise_on_error, cc_fname, """ to = BuildEmailList(series.get('to'), '--to', alias, raise_on_error) if not to: - git_config_to = command.Output('git', 'config', 'sendemail.to') + git_config_to = command.Output('git', 'config', 'sendemail.to', + raise_on_error=False) if not git_config_to: print ("No recipient.\n" "Please add something like this to a commit\n" diff --git a/tools/patman/tools.py b/tools/patman/tools.py new file mode 100644 index 0000000000..ba24853030 --- /dev/null +++ b/tools/patman/tools.py @@ -0,0 +1,120 @@ +# +# Copyright (c) 2016 Google, Inc +# +# SPDX-License-Identifier: GPL-2.0+ +# + +import os +import shutil +import tempfile + +import tout + +outdir = None +indirs = None +preserve_outdir = False + +def PrepareOutputDir(dirname, preserve=False): + """Select an output directory, ensuring it exists. + + This either creates a temporary directory or checks that the one supplied + by the user is valid. For a temporary directory, it makes a note to + remove it later if required. + + Args: + dirname: a string, name of the output directory to use to store + intermediate and output files. If is None - create a temporary + directory. + preserve: a Boolean. If outdir above is None and preserve is False, the + created temporary directory will be destroyed on exit. + + Raises: + OSError: If it cannot create the output directory. + """ + global outdir, preserve_outdir + + preserve_outdir = dirname or preserve + if dirname: + outdir = dirname + if not os.path.isdir(outdir): + try: + os.makedirs(outdir) + except OSError as err: + raise CmdError("Cannot make output directory '%s': '%s'" % + (outdir, err.strerror)) + tout.Debug("Using output directory '%s'" % outdir) + else: + outdir = tempfile.mkdtemp(prefix='binman.') + tout.Debug("Using temporary directory '%s'" % outdir) + +def _RemoveOutputDir(): + global outdir + + shutil.rmtree(outdir) + tout.Debug("Deleted temporary directory '%s'" % outdir) + outdir = None + +def FinaliseOutputDir(): + global outdir, preserve_outdir + + """Tidy up: delete output directory if temporary and not preserved.""" + if outdir and not preserve_outdir: + _RemoveOutputDir() + +def GetOutputFilename(fname): + """Return a filename within the output directory. + + Args: + fname: Filename to use for new file + + Returns: + The full path of the filename, within the output directory + """ + return os.path.join(outdir, fname) + +def _FinaliseForTest(): + """Remove the output directory (for use by tests)""" + global outdir + + if outdir: + _RemoveOutputDir() + +def SetInputDirs(dirname): + """Add a list of input directories, where input files are kept. + + Args: + dirname: a list of paths to input directories to use for obtaining + files needed by binman to place in the image. + """ + global indir + + indir = dirname + tout.Debug("Using input directories %s" % indir) + +def GetInputFilename(fname): + """Return a filename for use as input. + + Args: + fname: Filename to use for new file + + Returns: + The full path of the filename, within the input directory + """ + if not indir: + return fname + for dirname in indir: + pathname = os.path.join(dirname, fname) + if os.path.exists(pathname): + return pathname + + raise ValueError("Filename '%s' not found in input path (%s)" % + (fname, ','.join(indir))) + +def Align(pos, align): + if align: + mask = align - 1 + pos = (pos + mask) & ~mask + return pos + +def NotPowerOfTwo(num): + return num and (num & (num - 1)) diff --git a/tools/patman/tout.py b/tools/patman/tout.py new file mode 100644 index 0000000000..c5fbd80dbc --- /dev/null +++ b/tools/patman/tout.py @@ -0,0 +1,166 @@ +# Copyright (c) 2016 Google, Inc +# +# SPDX-License-Identifier: GPL-2.0+ +# +# Terminal output logging. +# + +import sys + +import terminal + +# Output verbosity levels that we support +ERROR = 0 +WARNING = 1 +NOTICE = 2 +INFO = 3 +DEBUG = 4 + +""" +This class handles output of progress and other useful information +to the user. It provides for simple verbosity level control and can +output nothing but errors at verbosity zero. + +The idea is that modules set up an Output object early in their years and pass +it around to other modules that need it. This keeps the output under control +of a single class. + +Public properties: + verbose: Verbosity level: 0=silent, 1=progress, 3=full, 4=debug +""" +def __enter__(): + return + +def __exit__(unused1, unused2, unused3): + """Clean up and remove any progress message.""" + ClearProgress() + return False + +def UserIsPresent(): + """This returns True if it is likely that a user is present. + + Sometimes we want to prompt the user, but if no one is there then this + is a waste of time, and may lock a script which should otherwise fail. + + Returns: + True if it thinks the user is there, and False otherwise + """ + return stdout_is_tty and verbose > 0 + +def ClearProgress(): + """Clear any active progress message on the terminal.""" + if verbose > 0 and stdout_is_tty: + _stdout.write('\r%s\r' % (" " * len (_progress))) + _stdout.flush() + +def Progress(msg, warning=False, trailer='...'): + """Display progress information. + + Args: + msg: Message to display. + warning: True if this is a warning.""" + ClearProgress() + if verbose > 0: + _progress = msg + trailer + if stdout_is_tty: + col = _color.YELLOW if warning else _color.GREEN + _stdout.write('\r' + _color.Color(col, _progress)) + _stdout.flush() + else: + _stdout.write(_progress + '\n') + +def _Output(level, msg, color=None): + """Output a message to the terminal. + + Args: + level: Verbosity level for this message. It will only be displayed if + this as high as the currently selected level. + msg; Message to display. + error: True if this is an error message, else False. + """ + if verbose >= level: + ClearProgress() + if color: + msg = _color.Color(color, msg) + _stdout.write(msg + '\n') + +def DoOutput(level, msg): + """Output a message to the terminal. + + Args: + level: Verbosity level for this message. It will only be displayed if + this as high as the currently selected level. + msg; Message to display. + """ + _Output(level, msg) + +def Error(msg): + """Display an error message + + Args: + msg; Message to display. + """ + _Output(0, msg, _color.RED) + +def Warning(msg): + """Display a warning message + + Args: + msg; Message to display. + """ + _Output(1, msg, _color.YELLOW) + +def Notice(msg): + """Display an important infomation message + + Args: + msg; Message to display. + """ + _Output(2, msg) + +def Info(msg): + """Display an infomation message + + Args: + msg; Message to display. + """ + _Output(3, msg) + +def Debug(msg): + """Display a debug message + + Args: + msg; Message to display. + """ + _Output(4, msg) + +def UserOutput(msg): + """Display a message regardless of the current output level. + + This is used when the output was specifically requested by the user. + Args: + msg; Message to display. + """ + _Output(0, msg) + +def Init(_verbose=WARNING, stdout=sys.stdout): + """Initialize a new output object. + + Args: + verbose: Verbosity level (0-4). + stdout: File to use for stdout. + """ + global verbose, _progress, _color, _stdout, stdout_is_tty + + verbose = _verbose + _progress = '' # Our last progress message + _color = terminal.Color() + _stdout = stdout + + # TODO(sjg): Move this into Chromite libraries when we have them + stdout_is_tty = hasattr(sys.stdout, 'isatty') and sys.stdout.isatty() + +def Uninit(): + ClearProgress() + +Init() |