diff options
429 files changed, 2593 insertions, 1272 deletions
@@ -91,7 +91,7 @@ config SYS_EXTRA_OPTIONS depends on !SPL_BUILD help The old configuration infrastructure (= mkconfig + boards.cfg) - provided the extra options field. It you have something like + provided the extra options field. If you have something like "HAS_BAR,BAZ=64", the optional options #define CONFIG_HAS #define CONFIG_BAZ 64 @@ -103,3 +103,15 @@ config SYS_EXTRA_OPTIONS endmenu # Boot images source "arch/Kconfig" + +source "common/Kconfig" + +source "dts/Kconfig" + +source "net/Kconfig" + +source "drivers/Kconfig" + +source "fs/Kconfig" + +source "lib/Kconfig" @@ -613,11 +613,9 @@ libs-y += fs/ libs-y += net/ libs-y += disk/ libs-y += drivers/ -libs-$(CONFIG_DM) += drivers/core/ libs-y += drivers/dma/ libs-y += drivers/gpio/ libs-y += drivers/i2c/ -libs-y += drivers/input/ libs-y += drivers/mmc/ libs-y += drivers/mtd/ libs-$(CONFIG_CMD_NAND) += drivers/mtd/nand/ @@ -649,7 +647,6 @@ libs-$(CONFIG_API) += api/ libs-$(CONFIG_HAS_POST) += post/ libs-y += test/ libs-y += test/dm/ -libs-$(CONFIG_DM_DEMO) += drivers/demo/ ifneq (,$(filter $(SOC), mx25 mx27 mx5 mx6 mx31 mx35 mxs vf610)) libs-y += arch/$(ARCH)/imx-common/ @@ -1629,6 +1629,16 @@ The following options need to be configured: downloads. This buffer should be as large as possible for a platform. Define this to the size available RAM for fastboot. + CONFIG_FASTBOOT_FLASH + The fastboot protocol includes a "flash" command for writing + the downloaded image to a non-volatile storage device. Define + this to enable the "fastboot flash" command. + + CONFIG_FASTBOOT_FLASH_MMC_DEV + The fastboot "flash" command requires additional information + regarding the non-volatile storage device. Define this to + the eMMC device that fastboot should use to store the image. + - Journaling Flash filesystem support: CONFIG_JFFS2_NAND, CONFIG_JFFS2_NAND_OFF, CONFIG_JFFS2_NAND_SIZE, CONFIG_JFFS2_NAND_DEV diff --git a/arch/Kconfig b/arch/Kconfig index c9ccb7d..bf26764 100644 --- a/arch/Kconfig +++ b/arch/Kconfig @@ -7,6 +7,7 @@ config ARC config ARM bool "ARM architecture" + select SUPPORT_OF_CONTROL config AVR32 bool "AVR32 architecture" @@ -19,6 +20,7 @@ config M68K config MICROBLAZE bool "MicroBlaze architecture" + select SUPPORT_OF_CONTROL config MIPS bool "MIPS architecture" @@ -37,6 +39,7 @@ config PPC config SANDBOX bool "Sandbox" + select SUPPORT_OF_CONTROL config SH bool "SuperH architecture" @@ -46,6 +49,7 @@ config SPARC config X86 bool "x86 architecture" + select SUPPORT_OF_CONTROL endchoice diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 106aed9..3efede2 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -462,6 +462,7 @@ config ZYNQ config TEGRA bool "NVIDIA Tegra" select SPL + select OF_CONTROL if !SPL_BUILD config TARGET_VEXPRESS_AEMV8A bool "Support vexpress_aemv8a" diff --git a/arch/arm/cpu/arm1176/tnetv107x/clock.c b/arch/arm/cpu/arm1176/tnetv107x/clock.c index 3708b6f..47c23bb 100644 --- a/arch/arm/cpu/arm1176/tnetv107x/clock.c +++ b/arch/arm/cpu/arm1176/tnetv107x/clock.c @@ -362,7 +362,7 @@ static void init_pll(const struct pll_init_data *data) pllctl_reg_write(data->pll, ctl, tmp); mult = data->pll_freq / fpll; - for (mult = MAX(mult, 1); mult <= MAX_MULT; mult++) { + for (mult = max(mult, 1); mult <= MAX_MULT; mult++) { div = (fpll * mult) / data->pll_freq; if (div < 1 || div > MAX_DIV) continue; diff --git a/arch/arm/cpu/armv7/exynos/Kconfig b/arch/arm/cpu/armv7/exynos/Kconfig index d132f03..e7c93d8 100644 --- a/arch/arm/cpu/armv7/exynos/Kconfig +++ b/arch/arm/cpu/armv7/exynos/Kconfig @@ -23,18 +23,23 @@ config TARGET_ODROID config TARGET_ARNDALE bool "Exynos5250 Arndale board" + select OF_CONTROL if !SPL_BUILD config TARGET_SMDK5250 bool "SMDK5250 board" + select OF_CONTROL if !SPL_BUILD config TARGET_SNOW bool "Snow board" + select OF_CONTROL if !SPL_BUILD config TARGET_SMDK5420 bool "SMDK5420 board" + select OF_CONTROL if !SPL_BUILD config TARGET_PEACH_PIT bool "Peach Pi board" + select OF_CONTROL if !SPL_BUILD endchoice diff --git a/arch/arm/cpu/armv7/mx6/ddr.c b/arch/arm/cpu/armv7/mx6/ddr.c index 7b5c1e4..7a9b03a 100644 --- a/arch/arm/cpu/armv7/mx6/ddr.c +++ b/arch/arm/cpu/armv7/mx6/ddr.c @@ -247,47 +247,47 @@ void mx6_dram_cfg(const struct mx6_ddr_sysinfo *sysinfo, switch (ddr3_cfg->mem_speed) { case 800: - txp = DIV_ROUND_UP(MAX(3 * clkper, 7500), clkper) - 1; - tcke = DIV_ROUND_UP(MAX(3 * clkper, 7500), clkper) - 1; + txp = DIV_ROUND_UP(max(3 * clkper, 7500), clkper) - 1; + tcke = DIV_ROUND_UP(max(3 * clkper, 7500), clkper) - 1; if (ddr3_cfg->pagesz == 1) { tfaw = DIV_ROUND_UP(40000, clkper) - 1; - trrd = DIV_ROUND_UP(MAX(4 * clkper, 10000), clkper) - 1; + trrd = DIV_ROUND_UP(max(4 * clkper, 10000), clkper) - 1; } else { tfaw = DIV_ROUND_UP(50000, clkper) - 1; - trrd = DIV_ROUND_UP(MAX(4 * clkper, 10000), clkper) - 1; + trrd = DIV_ROUND_UP(max(4 * clkper, 10000), clkper) - 1; } break; case 1066: - txp = DIV_ROUND_UP(MAX(3 * clkper, 7500), clkper) - 1; - tcke = DIV_ROUND_UP(MAX(3 * clkper, 5625), clkper) - 1; + txp = DIV_ROUND_UP(max(3 * clkper, 7500), clkper) - 1; + tcke = DIV_ROUND_UP(max(3 * clkper, 5625), clkper) - 1; if (ddr3_cfg->pagesz == 1) { tfaw = DIV_ROUND_UP(37500, clkper) - 1; - trrd = DIV_ROUND_UP(MAX(4 * clkper, 7500), clkper) - 1; + trrd = DIV_ROUND_UP(max(4 * clkper, 7500), clkper) - 1; } else { tfaw = DIV_ROUND_UP(50000, clkper) - 1; - trrd = DIV_ROUND_UP(MAX(4 * clkper, 10000), clkper) - 1; + trrd = DIV_ROUND_UP(max(4 * clkper, 10000), clkper) - 1; } break; case 1333: - txp = DIV_ROUND_UP(MAX(3 * clkper, 6000), clkper) - 1; - tcke = DIV_ROUND_UP(MAX(3 * clkper, 5625), clkper) - 1; + txp = DIV_ROUND_UP(max(3 * clkper, 6000), clkper) - 1; + tcke = DIV_ROUND_UP(max(3 * clkper, 5625), clkper) - 1; if (ddr3_cfg->pagesz == 1) { tfaw = DIV_ROUND_UP(30000, clkper) - 1; - trrd = DIV_ROUND_UP(MAX(4 * clkper, 6000), clkper) - 1; + trrd = DIV_ROUND_UP(max(4 * clkper, 6000), clkper) - 1; } else { tfaw = DIV_ROUND_UP(45000, clkper) - 1; - trrd = DIV_ROUND_UP(MAX(4 * clkper, 7500), clkper) - 1; + trrd = DIV_ROUND_UP(max(4 * clkper, 7500), clkper) - 1; } break; case 1600: - txp = DIV_ROUND_UP(MAX(3 * clkper, 6000), clkper) - 1; - tcke = DIV_ROUND_UP(MAX(3 * clkper, 5000), clkper) - 1; + txp = DIV_ROUND_UP(max(3 * clkper, 6000), clkper) - 1; + tcke = DIV_ROUND_UP(max(3 * clkper, 5000), clkper) - 1; if (ddr3_cfg->pagesz == 1) { tfaw = DIV_ROUND_UP(30000, clkper) - 1; - trrd = DIV_ROUND_UP(MAX(4 * clkper, 6000), clkper) - 1; + trrd = DIV_ROUND_UP(max(4 * clkper, 6000), clkper) - 1; } else { tfaw = DIV_ROUND_UP(40000, clkper) - 1; - trrd = DIV_ROUND_UP(MAX(4 * clkper, 7500), clkper) - 1; + trrd = DIV_ROUND_UP(max(4 * clkper, 7500), clkper) - 1; } break; default: @@ -295,18 +295,18 @@ void mx6_dram_cfg(const struct mx6_ddr_sysinfo *sysinfo, hang(); break; } - txpdll = DIV_ROUND_UP(MAX(10 * clkper, 24000), clkper) - 1; - tcksre = DIV_ROUND_UP(MAX(5 * clkper, 10000), clkper); + txpdll = DIV_ROUND_UP(max(10 * clkper, 24000), clkper) - 1; + tcksre = DIV_ROUND_UP(max(5 * clkper, 10000), clkper); taonpd = DIV_ROUND_UP(2000, clkper) - 1; tcksrx = tcksre; taofpd = taonpd; twr = DIV_ROUND_UP(15000, clkper) - 1; - tmrd = DIV_ROUND_UP(MAX(12 * clkper, 15000), clkper) - 1; + tmrd = DIV_ROUND_UP(max(12 * clkper, 15000), clkper) - 1; trc = DIV_ROUND_UP(ddr3_cfg->trcmin, clkper / 10) - 1; tras = DIV_ROUND_UP(ddr3_cfg->trasmin, clkper / 10) - 1; tcl = DIV_ROUND_UP(ddr3_cfg->trcd, clkper / 10) - 3; trp = DIV_ROUND_UP(ddr3_cfg->trcd, clkper / 10) - 1; - twtr = ROUND(MAX(4 * clkper, 7500) / clkper, 1) - 1; + twtr = ROUND(max(4 * clkper, 7500) / clkper, 1) - 1; trcd = trp; trtp = twtr; cs0_end = 4 * sysinfo->cs_density - 1; diff --git a/arch/arm/include/asm/arch-kirkwood/spi.h b/arch/arm/include/asm/arch-kirkwood/spi.h index b1cf614..e512dce 100644 --- a/arch/arm/include/asm/arch-kirkwood/spi.h +++ b/arch/arm/include/asm/arch-kirkwood/spi.h @@ -43,10 +43,10 @@ struct kwspi_registers { #define KWSPI_XFERLEN_2BYTE (1 << 5) #define KWSPI_XFERLEN_MASK (1 << 5) #define KWSPI_ADRLEN_1BYTE 0 -#define KWSPI_ADRLEN_2BYTE 1 << 8 -#define KWSPI_ADRLEN_3BYTE 2 << 8 -#define KWSPI_ADRLEN_4BYTE 3 << 8 -#define KWSPI_ADRLEN_MASK 3 << 8 +#define KWSPI_ADRLEN_2BYTE (1 << 8) +#define KWSPI_ADRLEN_3BYTE (2 << 8) +#define KWSPI_ADRLEN_4BYTE (3 << 8) +#define KWSPI_ADRLEN_MASK (3 << 8) #define KWSPI_TIMEOUT 10000 #endif /* __KW_SPI_H__ */ diff --git a/board/ip860/u-boot.lds b/arch/powerpc/cpu/mpc8xx/u-boot.lds index 0eb2fba..0eb2fba 100644 --- a/board/ip860/u-boot.lds +++ b/arch/powerpc/cpu/mpc8xx/u-boot.lds diff --git a/arch/x86/lib/physmem.c b/arch/x86/lib/physmem.c index 59b3fe9..b57b2c3 100644 --- a/arch/x86/lib/physmem.c +++ b/arch/x86/lib/physmem.c @@ -189,7 +189,7 @@ phys_addr_t arch_phys_memset(phys_addr_t start, int c, phys_size_t size) /* Handle memory below 4GB. */ if (start <= max_addr) { - phys_size_t low_size = MIN(max_addr + 1 - start, size); + phys_size_t low_size = min(max_addr + 1 - start, size); void *start_ptr = (void *)(uintptr_t)start; assert(((phys_addr_t)(uintptr_t)start) == start); @@ -208,7 +208,7 @@ phys_addr_t arch_phys_memset(phys_addr_t start, int c, phys_size_t size) /* Handle the first partial page. */ if (offset) { phys_addr_t end = - MIN(map_addr + LARGE_PAGE_SIZE, start + size); + min(map_addr + LARGE_PAGE_SIZE, start + size); phys_size_t cur_size = end - start; x86_phys_memset_page(map_addr, offset, c, cur_size); size -= cur_size; diff --git a/board/LaCie/net2big_v2/MAINTAINERS b/board/LaCie/net2big_v2/MAINTAINERS index 1afaa5c..205c75e 100644 --- a/board/LaCie/net2big_v2/MAINTAINERS +++ b/board/LaCie/net2big_v2/MAINTAINERS @@ -1,5 +1,5 @@ NET2BIG_V2 BOARD -M: - +#M: - S: Maintained F: board/LaCie/net2big_v2/ F: include/configs/lacie_kw.h diff --git a/board/LaCie/netspace_v2/MAINTAINERS b/board/LaCie/netspace_v2/MAINTAINERS index ad3dfa1..55fd50d 100644 --- a/board/LaCie/netspace_v2/MAINTAINERS +++ b/board/LaCie/netspace_v2/MAINTAINERS @@ -8,7 +8,7 @@ F: configs/netspace_max_v2_defconfig F: configs/netspace_v2_defconfig NETSPACE_LITE_V2 BOARD -M: - +#M: - S: Maintained F: configs/netspace_lite_v2_defconfig F: configs/netspace_mini_v2_defconfig diff --git a/board/LaCie/wireless_space/MAINTAINERS b/board/LaCie/wireless_space/MAINTAINERS index 8b36bff..8a27b9a 100644 --- a/board/LaCie/wireless_space/MAINTAINERS +++ b/board/LaCie/wireless_space/MAINTAINERS @@ -1,5 +1,5 @@ WIRELESS_SPACE BOARD -M: - +#M: - S: Maintained F: board/LaCie/wireless_space/ F: include/configs/wireless_space.h diff --git a/board/Marvell/db64360/MAINTAINERS b/board/Marvell/db64360/MAINTAINERS index 7383207..af3eb24 100644 --- a/board/Marvell/db64360/MAINTAINERS +++ b/board/Marvell/db64360/MAINTAINERS @@ -1,5 +1,5 @@ DB64360 BOARD -M: - +#M: - S: Maintained F: board/Marvell/db64360/ F: include/configs/DB64360.h diff --git a/board/Marvell/db64460/MAINTAINERS b/board/Marvell/db64460/MAINTAINERS index 751aac2..a30c51c 100644 --- a/board/Marvell/db64460/MAINTAINERS +++ b/board/Marvell/db64460/MAINTAINERS @@ -1,5 +1,5 @@ DB64460 BOARD -M: - +#M: - S: Maintained F: board/Marvell/db64460/ F: include/configs/DB64460.h diff --git a/board/Marvell/openrd/MAINTAINERS b/board/Marvell/openrd/MAINTAINERS index 7a52a8e..7a189ab 100644 --- a/board/Marvell/openrd/MAINTAINERS +++ b/board/Marvell/openrd/MAINTAINERS @@ -6,7 +6,7 @@ F: include/configs/openrd.h F: configs/openrd_base_defconfig OPENRD_CLIENT BOARD -M: - +#M: - S: Maintained F: configs/openrd_client_defconfig F: configs/openrd_ultimate_defconfig diff --git a/board/a3000/MAINTAINERS b/board/a3000/MAINTAINERS index 2d8560f..303e5fd 100644 --- a/board/a3000/MAINTAINERS +++ b/board/a3000/MAINTAINERS @@ -1,5 +1,5 @@ A3000 BOARD -M: - +#M: - S: Maintained F: board/a3000/ F: include/configs/A3000.h diff --git a/board/amcc/bluestone/MAINTAINERS b/board/amcc/bluestone/MAINTAINERS index 4a329e9..9eb9bbd 100644 --- a/board/amcc/bluestone/MAINTAINERS +++ b/board/amcc/bluestone/MAINTAINERS @@ -1,5 +1,5 @@ BLUESTONE BOARD -M: Tirumala Marri <tmarri@apm.com> +#M: Tirumala Marri <tmarri@apm.com> S: Orphan (since 2014-03) F: board/amcc/bluestone/ F: include/configs/bluestone.h diff --git a/board/amcc/bubinga/MAINTAINERS b/board/amcc/bubinga/MAINTAINERS index 9d5ace2..3299cc3 100644 --- a/board/amcc/bubinga/MAINTAINERS +++ b/board/amcc/bubinga/MAINTAINERS @@ -1,5 +1,5 @@ BUBINGA BOARD -M: - +#M: - S: Maintained F: board/amcc/bubinga/ F: include/configs/bubinga.h diff --git a/board/amcc/yucca/MAINTAINERS b/board/amcc/yucca/MAINTAINERS index 0663003..1cbdb0e 100644 --- a/board/amcc/yucca/MAINTAINERS +++ b/board/amcc/yucca/MAINTAINERS @@ -1,5 +1,5 @@ YUCCA BOARD -M: - +#M: - S: Maintained F: board/amcc/yucca/ F: include/configs/yucca.h diff --git a/board/armltd/versatile/MAINTAINERS b/board/armltd/versatile/MAINTAINERS index f390e53..a56dd99 100644 --- a/board/armltd/versatile/MAINTAINERS +++ b/board/armltd/versatile/MAINTAINERS @@ -1,5 +1,5 @@ VERSATILE BOARD -M: - +#M: - S: Maintained F: board/armltd/versatile/ F: include/configs/versatile.h diff --git a/board/armltd/vexpress/MAINTAINERS b/board/armltd/vexpress/MAINTAINERS index e730f4f..a6943d7 100644 --- a/board/armltd/vexpress/MAINTAINERS +++ b/board/armltd/vexpress/MAINTAINERS @@ -1,12 +1,12 @@ VEXPRESS BOARD -M: - +#M: - S: Maintained F: board/armltd/vexpress/ F: include/configs/vexpress_ca15_tc2.h F: configs/vexpress_ca15_tc2_defconfig VEXPRESS_CA5X2 BOARD -M: Matt Waddel <matt.waddel@linaro.org> +#M: Matt Waddel <matt.waddel@linaro.org> S: Orphan (since 2014-08) F: include/configs/vexpress_ca5x2.h F: configs/vexpress_ca5x2_defconfig diff --git a/board/atmel/atngw100/MAINTAINERS b/board/atmel/atngw100/MAINTAINERS index dd698ea..1c319f6 100644 --- a/board/atmel/atngw100/MAINTAINERS +++ b/board/atmel/atngw100/MAINTAINERS @@ -1,5 +1,5 @@ ATNGW100 BOARD -M: Haavard Skinnemoen <haavard.skinnemoen@atmel.com> +#M: Haavard Skinnemoen <haavard.skinnemoen@atmel.com> S: Orphan (since 2014-06) F: board/atmel/atngw100/ F: include/configs/atngw100.h diff --git a/board/atmel/atstk1000/MAINTAINERS b/board/atmel/atstk1000/MAINTAINERS index 76365b0..378e1b3 100644 --- a/board/atmel/atstk1000/MAINTAINERS +++ b/board/atmel/atstk1000/MAINTAINERS @@ -1,5 +1,5 @@ ATSTK1000 BOARD -M: Haavard Skinnemoen <haavard.skinnemoen@atmel.com> +#M: Haavard Skinnemoen <haavard.skinnemoen@atmel.com> S: Orphan (since 2014-06) F: board/atmel/atstk1000/ F: include/configs/atstk1002.h diff --git a/board/bc3450/MAINTAINERS b/board/bc3450/MAINTAINERS index e2a8363..81a7076 100644 --- a/board/bc3450/MAINTAINERS +++ b/board/bc3450/MAINTAINERS @@ -1,5 +1,5 @@ BC3450 BOARD -M: - +#M: - S: Maintained F: board/bc3450/ F: include/configs/BC3450.h diff --git a/board/boundary/nitrogen6x/nitrogen6x.c b/board/boundary/nitrogen6x/nitrogen6x.c index 60a09f4..7edfe19 100644 --- a/board/boundary/nitrogen6x/nitrogen6x.c +++ b/board/boundary/nitrogen6x/nitrogen6x.c @@ -328,6 +328,11 @@ int board_mmc_init(bd_t *bis) #endif #ifdef CONFIG_MXC_SPI +int board_spi_cs_gpio(unsigned bus, unsigned cs) +{ + return (bus == 0 && cs == 0) ? (IMX_GPIO_NR(3, 19)) : -1; +} + iomux_v3_cfg_t const ecspi1_pads[] = { /* SS1 */ MX6_PAD_EIM_D19__GPIO3_IO19 | MUX_PAD_CTRL(NO_PAD_CTRL), diff --git a/board/calao/sbc35_a9g20/MAINTAINERS b/board/calao/sbc35_a9g20/MAINTAINERS index d275230..0ac8225 100644 --- a/board/calao/sbc35_a9g20/MAINTAINERS +++ b/board/calao/sbc35_a9g20/MAINTAINERS @@ -1,5 +1,5 @@ SBC35_A9G20 BOARD -M: Albin Tonnerre <albin.tonnerre@free-electrons.com> +#M: Albin Tonnerre <albin.tonnerre@free-electrons.com> S: Orphan (since 2014-06) F: board/calao/sbc35_a9g20/ F: include/configs/sbc35_a9g20.h diff --git a/board/calao/tny_a9260/MAINTAINERS b/board/calao/tny_a9260/MAINTAINERS index 5a71b8e..1f24e39 100644 --- a/board/calao/tny_a9260/MAINTAINERS +++ b/board/calao/tny_a9260/MAINTAINERS @@ -1,5 +1,5 @@ TNY_A9260 BOARD -M: Albin Tonnerre <albin.tonnerre@free-electrons.com> +#M: Albin Tonnerre <albin.tonnerre@free-electrons.com> S: Orphan (since 2014-06) F: board/calao/tny_a9260/ F: include/configs/tny_a9260.h diff --git a/board/canmb/MAINTAINERS b/board/canmb/MAINTAINERS index aa4eb30..71750ea 100644 --- a/board/canmb/MAINTAINERS +++ b/board/canmb/MAINTAINERS @@ -1,5 +1,5 @@ CANMB BOARD -M: - +#M: - S: Maintained F: board/canmb/ F: include/configs/canmb.h diff --git a/board/cm-bf527/MAINTAINERS b/board/cm-bf527/MAINTAINERS index 789f5c4..fefcfcf 100644 --- a/board/cm-bf527/MAINTAINERS +++ b/board/cm-bf527/MAINTAINERS @@ -1,5 +1,5 @@ CM-BF527 BOARD -M: Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> +#M: Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> S: Orphan (since 2014-03) F: board/cm-bf527/ F: include/configs/cm-bf527.h diff --git a/board/cm-bf533/MAINTAINERS b/board/cm-bf533/MAINTAINERS index f643043..0bf51fb 100644 --- a/board/cm-bf533/MAINTAINERS +++ b/board/cm-bf533/MAINTAINERS @@ -1,5 +1,5 @@ CM-BF533 BOARD -M: Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> +#M: Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> S: Orphan (since 2014-03) F: board/cm-bf533/ F: include/configs/cm-bf533.h diff --git a/board/cm-bf537e/MAINTAINERS b/board/cm-bf537e/MAINTAINERS index 44735fa..63d2428 100644 --- a/board/cm-bf537e/MAINTAINERS +++ b/board/cm-bf537e/MAINTAINERS @@ -1,5 +1,5 @@ CM-BF537E BOARD -M: Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> +#M: Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> S: Orphan (since 2014-03) F: board/cm-bf537e/ F: include/configs/cm-bf537e.h diff --git a/board/cm-bf537u/MAINTAINERS b/board/cm-bf537u/MAINTAINERS index da925f8..a89cfca 100644 --- a/board/cm-bf537u/MAINTAINERS +++ b/board/cm-bf537u/MAINTAINERS @@ -1,5 +1,5 @@ CM-BF537U BOARD -M: Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> +#M: Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> S: Orphan (since 2014-03) F: board/cm-bf537u/ F: include/configs/cm-bf537u.h diff --git a/board/cm-bf548/MAINTAINERS b/board/cm-bf548/MAINTAINERS index 4cd83df..b7f5779 100644 --- a/board/cm-bf548/MAINTAINERS +++ b/board/cm-bf548/MAINTAINERS @@ -1,5 +1,5 @@ CM-BF548 BOARD -M: Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> +#M: Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> S: Orphan (since 2014-03) F: board/cm-bf548/ F: include/configs/cm-bf548.h diff --git a/board/cm-bf561/MAINTAINERS b/board/cm-bf561/MAINTAINERS index a4606ff..9c86c8d 100644 --- a/board/cm-bf561/MAINTAINERS +++ b/board/cm-bf561/MAINTAINERS @@ -1,5 +1,5 @@ CM-BF561 BOARD -M: Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> +#M: Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> S: Orphan (since 2014-03) F: board/cm-bf561/ F: include/configs/cm-bf561.h diff --git a/board/cm41xx/MAINTAINERS b/board/cm41xx/MAINTAINERS index f308b0f..f10eeb5 100644 --- a/board/cm41xx/MAINTAINERS +++ b/board/cm41xx/MAINTAINERS @@ -1,5 +1,5 @@ CM41XX BOARD -M: - +#M: - S: Maintained F: board/cm41xx/ F: include/configs/cm41xx.h diff --git a/board/cm5200/MAINTAINERS b/board/cm5200/MAINTAINERS index 9fc5365..1e1df3f 100644 --- a/board/cm5200/MAINTAINERS +++ b/board/cm5200/MAINTAINERS @@ -1,5 +1,5 @@ CM5200 BOARD -M: - +#M: - S: Maintained F: board/cm5200/ F: include/configs/cm5200.h diff --git a/board/cmi/MAINTAINERS b/board/cmi/MAINTAINERS index ab33d5d..60701bf 100644 --- a/board/cmi/MAINTAINERS +++ b/board/cmi/MAINTAINERS @@ -1,5 +1,5 @@ CMI BOARD -M: - +#M: - S: Maintained F: board/cmi/ F: include/configs/cmi_mpc5xx.h diff --git a/board/cobra5272/MAINTAINERS b/board/cobra5272/MAINTAINERS index 00942fc..a064da2 100644 --- a/board/cobra5272/MAINTAINERS +++ b/board/cobra5272/MAINTAINERS @@ -1,5 +1,5 @@ COBRA5272 BOARD -M: - +#M: - S: Maintained F: board/cobra5272/ F: include/configs/cobra5272.h diff --git a/board/congatec/cgtqmx6eval/MAINTAINERS b/board/congatec/cgtqmx6eval/MAINTAINERS index 53ad759..35f4a2a 100644 --- a/board/congatec/cgtqmx6eval/MAINTAINERS +++ b/board/congatec/cgtqmx6eval/MAINTAINERS @@ -1,5 +1,5 @@ CGTQMX6EVAL BOARD -M: Leo Sartre <lsartre@adeneo-embedded.com> +#M: Leo Sartre <lsartre@adeneo-embedded.com> S: Orphan (since 2014-06) F: board/congatec/cgtqmx6eval/ F: include/configs/cgtqmx6eval.h diff --git a/board/cpu87/MAINTAINERS b/board/cpu87/MAINTAINERS index 6e84f60..32804ea 100644 --- a/board/cpu87/MAINTAINERS +++ b/board/cpu87/MAINTAINERS @@ -1,5 +1,5 @@ CPU87 BOARD -M: - +#M: - S: Maintained F: board/cpu87/ F: include/configs/CPU87.h diff --git a/board/cray/L1/MAINTAINERS b/board/cray/L1/MAINTAINERS index e93819e..e43e91f 100644 --- a/board/cray/L1/MAINTAINERS +++ b/board/cray/L1/MAINTAINERS @@ -1,5 +1,5 @@ L1 BOARD -M: David Updegraff <dave@cray.com> +#M: David Updegraff <dave@cray.com> S: Orphan (since 2014-03) F: board/cray/L1/ F: include/configs/CRAYL1.h diff --git a/board/dave/PPChameleonEVB/MAINTAINERS b/board/dave/PPChameleonEVB/MAINTAINERS index 3af5b57..d43c6d0 100644 --- a/board/dave/PPChameleonEVB/MAINTAINERS +++ b/board/dave/PPChameleonEVB/MAINTAINERS @@ -1,5 +1,5 @@ PPCHAMELEONEVB BOARD -M: - +#M: - S: Maintained F: board/dave/PPChameleonEVB/ F: include/configs/CATcenter.h diff --git a/board/davinci/dm355evm/MAINTAINERS b/board/davinci/dm355evm/MAINTAINERS index ef586b3..c017e09 100644 --- a/board/davinci/dm355evm/MAINTAINERS +++ b/board/davinci/dm355evm/MAINTAINERS @@ -1,5 +1,5 @@ DM355EVM BOARD -M: Sandeep Paulraj <s-paulraj@ti.com> +#M: Sandeep Paulraj <s-paulraj@ti.com> S: Orphan (since 2014-08) F: board/davinci/dm355evm/ F: include/configs/davinci_dm355evm.h diff --git a/board/davinci/dm355leopard/MAINTAINERS b/board/davinci/dm355leopard/MAINTAINERS index 2fc1e00..ed04d43 100644 --- a/board/davinci/dm355leopard/MAINTAINERS +++ b/board/davinci/dm355leopard/MAINTAINERS @@ -1,5 +1,5 @@ DM355LEOPARD BOARD -M: Sandeep Paulraj <s-paulraj@ti.com> +#M: Sandeep Paulraj <s-paulraj@ti.com> S: Orphan (since 2014-08) F: board/davinci/dm355leopard/ F: include/configs/davinci_dm355leopard.h diff --git a/board/davinci/dm365evm/MAINTAINERS b/board/davinci/dm365evm/MAINTAINERS index 0bfe02d..97c3ed3 100644 --- a/board/davinci/dm365evm/MAINTAINERS +++ b/board/davinci/dm365evm/MAINTAINERS @@ -1,5 +1,5 @@ DM365EVM BOARD -M: Sandeep Paulraj <s-paulraj@ti.com> +#M: Sandeep Paulraj <s-paulraj@ti.com> S: Orphan (since 2014-08) F: board/davinci/dm365evm/ F: include/configs/davinci_dm365evm.h diff --git a/board/davinci/dm6467evm/MAINTAINERS b/board/davinci/dm6467evm/MAINTAINERS index bb40536..8ca53c4 100644 --- a/board/davinci/dm6467evm/MAINTAINERS +++ b/board/davinci/dm6467evm/MAINTAINERS @@ -1,5 +1,5 @@ DM6467EVM BOARD -M: Sandeep Paulraj <s-paulraj@ti.com> +#M: Sandeep Paulraj <s-paulraj@ti.com> S: Orphan (since 2014-08) F: board/davinci/dm6467evm/ F: include/configs/davinci_dm6467evm.h diff --git a/board/davinci/dvevm/MAINTAINERS b/board/davinci/dvevm/MAINTAINERS index 4b3ce45..a718b90 100644 --- a/board/davinci/dvevm/MAINTAINERS +++ b/board/davinci/dvevm/MAINTAINERS @@ -1,5 +1,5 @@ DVEVM BOARD -M: - +#M: - S: Maintained F: board/davinci/dvevm/ F: include/configs/davinci_dvevm.h diff --git a/board/davinci/schmoogie/MAINTAINERS b/board/davinci/schmoogie/MAINTAINERS index b1fc29c..808e7fc 100644 --- a/board/davinci/schmoogie/MAINTAINERS +++ b/board/davinci/schmoogie/MAINTAINERS @@ -1,5 +1,5 @@ SCHMOOGIE BOARD -M: - +#M: - S: Maintained F: board/davinci/schmoogie/ F: include/configs/davinci_schmoogie.h diff --git a/board/davinci/sffsdr/MAINTAINERS b/board/davinci/sffsdr/MAINTAINERS index 428d003..5c7e132 100644 --- a/board/davinci/sffsdr/MAINTAINERS +++ b/board/davinci/sffsdr/MAINTAINERS @@ -1,5 +1,5 @@ SFFSDR BOARD -M: - +#M: - S: Maintained F: board/davinci/sffsdr/ F: include/configs/davinci_sffsdr.h diff --git a/board/davinci/sonata/MAINTAINERS b/board/davinci/sonata/MAINTAINERS index 625978c..40659e5 100644 --- a/board/davinci/sonata/MAINTAINERS +++ b/board/davinci/sonata/MAINTAINERS @@ -1,5 +1,5 @@ SONATA BOARD -M: - +#M: - S: Maintained F: board/davinci/sonata/ F: include/configs/davinci_sonata.h diff --git a/board/earthlcd/favr-32-ezkit/MAINTAINERS b/board/earthlcd/favr-32-ezkit/MAINTAINERS index 30453c6..89ba862 100644 --- a/board/earthlcd/favr-32-ezkit/MAINTAINERS +++ b/board/earthlcd/favr-32-ezkit/MAINTAINERS @@ -1,5 +1,5 @@ FAVR-32-EZKIT BOARD -M: Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com> +#M: Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com> S: Orphan (since 2014-06) F: board/earthlcd/favr-32-ezkit/ F: include/configs/favr-32-ezkit.h diff --git a/board/eltec/elppc/MAINTAINERS b/board/eltec/elppc/MAINTAINERS index 5258b3a..e3b35f1 100644 --- a/board/eltec/elppc/MAINTAINERS +++ b/board/eltec/elppc/MAINTAINERS @@ -1,5 +1,5 @@ ELPPC BOARD -M: - +#M: - S: Maintained F: board/eltec/elppc/ F: include/configs/ELPPC.h diff --git a/board/eltec/mhpc/u-boot.lds b/board/eltec/mhpc/u-boot.lds deleted file mode 100644 index 7ae91ff..0000000 --- a/board/eltec/mhpc/u-boot.lds +++ /dev/null @@ -1,82 +0,0 @@ -/* - * (C) Copyright 2001-2010 - * Wolfgang Denk, DENX Software Engineering, wd@denx.de. - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -OUTPUT_ARCH(powerpc) - -SECTIONS -{ - /* Read-only sections, merged into text segment: */ - . = + SIZEOF_HEADERS; - .text : - { - arch/powerpc/cpu/mpc8xx/start.o (.text*) - arch/powerpc/cpu/mpc8xx/traps.o (.text*) - - *(.text*) - } - _etext = .; - PROVIDE (etext = .); - .rodata : - { - *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) - } - - /* Read-write section, merged into data segment: */ - . = (. + 0x00FF) & 0xFFFFFF00; - _erotext = .; - PROVIDE (erotext = .); - .reloc : - { - _GOT2_TABLE_ = .; - KEEP(*(.got2)) - KEEP(*(.got)) - PROVIDE(_GLOBAL_OFFSET_TABLE_ = . + 4); - _FIXUP_TABLE_ = .; - KEEP(*(.fixup)) - } - __got2_entries = ((_GLOBAL_OFFSET_TABLE_ - _GOT2_TABLE_) >> 2) - 1; - __fixup_entries = (. - _FIXUP_TABLE_)>>2; - - .data : - { - *(.data*) - *(.sdata*) - } - _edata = .; - PROVIDE (edata = .); - - . = .; - - . = ALIGN(4); - .u_boot_list : { - KEEP(*(SORT(.u_boot_list*))); - } - - - . = .; - __start___ex_table = .; - __ex_table : { *(__ex_table) } - __stop___ex_table = .; - - . = ALIGN(256); - __init_begin = .; - .text.init : { *(.text.init) } - .data.init : { *(.data.init) } - . = ALIGN(256); - __init_end = .; - - __bss_start = .; - .bss (NOLOAD) : - { - *(.bss*) - *(.sbss*) - *(COMMON) - . = ALIGN(4); - } - __bss_end = . ; - PROVIDE (end = .); -} diff --git a/board/embest/mx6boards/mx6boards.c b/board/embest/mx6boards/mx6boards.c index 530ea4f..a725f15 100644 --- a/board/embest/mx6boards/mx6boards.c +++ b/board/embest/mx6boards/mx6boards.c @@ -285,6 +285,11 @@ iomux_v3_cfg_t const ecspi1_pads[] = { MX6_PAD_EIM_EB2__GPIO2_IO30 | MUX_PAD_CTRL(NO_PAD_CTRL), }; +int board_spi_cs_gpio(unsigned bus, unsigned cs) +{ + return (bus == 0 && cs == 0) ? (IMX_GPIO_NR(2, 30)) : -1; +} + static void setup_spi(void) { imx_iomux_v3_setup_multiple_pads(ecspi1_pads, ARRAY_SIZE(ecspi1_pads)); diff --git a/board/emk/top860/u-boot.lds b/board/emk/top860/u-boot.lds deleted file mode 100644 index 79fcbf4..0000000 --- a/board/emk/top860/u-boot.lds +++ /dev/null @@ -1,83 +0,0 @@ -/* - * (C) Copyright 2000-2010 - * Wolfgang Denk, DENX Software Engineering, wd@denx.de. - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -OUTPUT_ARCH(powerpc) - -SECTIONS -{ - /* Read-only sections, merged into text segment: */ - . = + SIZEOF_HEADERS; - .text : - { - arch/powerpc/cpu/mpc8xx/start.o (.text*) - arch/powerpc/cpu/mpc8xx/traps.o (.text*) - - *(.text*) - } - _etext = .; - PROVIDE (etext = .); - .rodata : - { - *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) - } - - /* Read-write section, merged into data segment: */ - . = (. + 0x00FF) & 0xFFFFFF00; - _erotext = .; - PROVIDE (erotext = .); - .reloc : - { - _GOT2_TABLE_ = .; - KEEP(*(.got2)) - KEEP(*(.got)) - PROVIDE(_GLOBAL_OFFSET_TABLE_ = . + 4); - _FIXUP_TABLE_ = .; - KEEP(*(.fixup)) - } - __got2_entries = ((_GLOBAL_OFFSET_TABLE_ - _GOT2_TABLE_) >> 2) - 1; - __fixup_entries = (. - _FIXUP_TABLE_)>>2; - - .data : - { - *(.data*) - *(.sdata*) - } - _edata = .; - PROVIDE (edata = .); - - - . = .; - - . = ALIGN(4); - .u_boot_list : { - KEEP(*(SORT(.u_boot_list*))); - } - - - . = .; - __start___ex_table = .; - __ex_table : { *(__ex_table) } - __stop___ex_table = .; - - . = ALIGN(256); - __init_begin = .; - .text.init : { *(.text.init) } - .data.init : { *(.data.init) } - . = ALIGN(256); - __init_end = .; - - __bss_start = .; - .bss (NOLOAD) : - { - *(.bss*) - *(.sbss*) - *(COMMON) - . = ALIGN(4); - } - __bss_end = . ; - PROVIDE (end = .); -} diff --git a/board/ep8260/MAINTAINERS b/board/ep8260/MAINTAINERS index bb273df..bfa923c 100644 --- a/board/ep8260/MAINTAINERS +++ b/board/ep8260/MAINTAINERS @@ -1,5 +1,5 @@ EP8260 BOARD -M: Frank Panno <fpanno@delphintech.com> +#M: Frank Panno <fpanno@delphintech.com> S: Orphan (since 2014-06) F: board/ep8260/ F: include/configs/ep8260.h diff --git a/board/ep82xxm/MAINTAINERS b/board/ep82xxm/MAINTAINERS index 822261b..c053df9 100644 --- a/board/ep82xxm/MAINTAINERS +++ b/board/ep82xxm/MAINTAINERS @@ -1,5 +1,5 @@ EP82XXM BOARD -M: - +#M: - S: Maintained F: board/ep82xxm/ F: include/configs/ep82xxm.h diff --git a/board/esg/ima3-mx53/MAINTAINERS b/board/esg/ima3-mx53/MAINTAINERS index c434eb9..96de081 100644 --- a/board/esg/ima3-mx53/MAINTAINERS +++ b/board/esg/ima3-mx53/MAINTAINERS @@ -1,5 +1,5 @@ IMA3-MX53 BOARD -M: - +#M: - S: Maintained F: board/esg/ima3-mx53/ F: include/configs/ima3-mx53.h diff --git a/board/espt/MAINTAINERS b/board/espt/MAINTAINERS index ff6e20c..fdbbc3e 100644 --- a/board/espt/MAINTAINERS +++ b/board/espt/MAINTAINERS @@ -1,5 +1,5 @@ ESPT BOARD -M: - +#M: - S: Maintained F: board/espt/ F: include/configs/espt.h diff --git a/board/evb64260/MAINTAINERS b/board/evb64260/MAINTAINERS index f8307cc..d50dda5 100644 --- a/board/evb64260/MAINTAINERS +++ b/board/evb64260/MAINTAINERS @@ -6,7 +6,7 @@ F: include/configs/P3G4.h F: configs/P3G4_defconfig ZUMA BOARD -M: Nye Liu <nyet@zumanetworks.com> +#M: Nye Liu <nyet@zumanetworks.com> S: Orphan (since 2014-04) F: include/configs/ZUMA.h F: configs/ZUMA_defconfig diff --git a/board/exmeritus/hww1u1a/MAINTAINERS b/board/exmeritus/hww1u1a/MAINTAINERS index e2fe2a6..b37f10b 100644 --- a/board/exmeritus/hww1u1a/MAINTAINERS +++ b/board/exmeritus/hww1u1a/MAINTAINERS @@ -1,5 +1,5 @@ HWW1U1A BOARD -M: Kyle Moffett <Kyle.D.Moffett@boeing.com> +#M: Kyle Moffett <Kyle.D.Moffett@boeing.com> S: Orphan (since 2014-06) F: board/exmeritus/hww1u1a/ F: include/configs/HWW1U1A.h diff --git a/board/freescale/b4860qds/MAINTAINERS b/board/freescale/b4860qds/MAINTAINERS index 9f9a612..ac02bb7 100644 --- a/board/freescale/b4860qds/MAINTAINERS +++ b/board/freescale/b4860qds/MAINTAINERS @@ -1,5 +1,5 @@ B4860QDS BOARD -M: - +#M: - S: Maintained F: board/freescale/b4860qds/ F: include/configs/B4860QDS.h diff --git a/board/freescale/common/ics307_clk.c b/board/freescale/common/ics307_clk.c index 6789efb..e683be3 100644 --- a/board/freescale/common/ics307_clk.c +++ b/board/freescale/common/ics307_clk.c @@ -67,7 +67,7 @@ unsigned long ics307_sysclk_calculator(unsigned long out_freq) continue; /* Calculate the temp out frequency */ tmp_out = input_freq * 2 * vdw / (rdw * od * 1000); - diff = MAX(out_freq, tmp_out) - MIN(out_freq, tmp_out); + diff = max(out_freq, tmp_out) - min(out_freq, tmp_out); /* * calculate the percent, the precision is 1/1000 * If greater than 1/1000, continue diff --git a/board/freescale/corenet_ds/MAINTAINERS b/board/freescale/corenet_ds/MAINTAINERS index 841d82f..c8ca674 100644 --- a/board/freescale/corenet_ds/MAINTAINERS +++ b/board/freescale/corenet_ds/MAINTAINERS @@ -1,5 +1,5 @@ CORENET_DS BOARD -M: - +#M: - S: Maintained F: board/freescale/corenet_ds/ F: include/configs/P3041DS.h diff --git a/board/freescale/m5208evbe/MAINTAINERS b/board/freescale/m5208evbe/MAINTAINERS index 65d04df..c9c3c88 100644 --- a/board/freescale/m5208evbe/MAINTAINERS +++ b/board/freescale/m5208evbe/MAINTAINERS @@ -1,5 +1,5 @@ M5208EVBE BOARD -M: - +#M: - S: Maintained F: board/freescale/m5208evbe/ F: include/configs/M5208EVBE.h diff --git a/board/freescale/m5249evb/MAINTAINERS b/board/freescale/m5249evb/MAINTAINERS index 22301b7..c2273c3 100644 --- a/board/freescale/m5249evb/MAINTAINERS +++ b/board/freescale/m5249evb/MAINTAINERS @@ -1,5 +1,5 @@ M5249EVB BOARD -M: - +#M: - S: Maintained F: board/freescale/m5249evb/ F: include/configs/M5249EVB.h diff --git a/board/freescale/m5253evbe/MAINTAINERS b/board/freescale/m5253evbe/MAINTAINERS index 1c21b03..74acd1e 100644 --- a/board/freescale/m5253evbe/MAINTAINERS +++ b/board/freescale/m5253evbe/MAINTAINERS @@ -1,5 +1,5 @@ M5253EVBE BOARD -M: Hayden Fraser <Hayden.Fraser@freescale.com> +#M: Hayden Fraser <Hayden.Fraser@freescale.com> S: Orphan (since 2014-06) F: board/freescale/m5253evbe/ F: include/configs/M5253EVBE.h diff --git a/board/freescale/m5272c3/MAINTAINERS b/board/freescale/m5272c3/MAINTAINERS index aa4739f..e586630 100644 --- a/board/freescale/m5272c3/MAINTAINERS +++ b/board/freescale/m5272c3/MAINTAINERS @@ -1,5 +1,5 @@ M5272C3 BOARD -M: - +#M: - S: Maintained F: board/freescale/m5272c3/ F: include/configs/M5272C3.h diff --git a/board/freescale/m5275evb/MAINTAINERS b/board/freescale/m5275evb/MAINTAINERS index b87d52c..4e6dbb1 100644 --- a/board/freescale/m5275evb/MAINTAINERS +++ b/board/freescale/m5275evb/MAINTAINERS @@ -1,5 +1,5 @@ M5275EVB BOARD -M: - +#M: - S: Maintained F: board/freescale/m5275evb/ F: include/configs/M5275EVB.h diff --git a/board/freescale/m5282evb/MAINTAINERS b/board/freescale/m5282evb/MAINTAINERS index f945ab4..305e748 100644 --- a/board/freescale/m5282evb/MAINTAINERS +++ b/board/freescale/m5282evb/MAINTAINERS @@ -1,5 +1,5 @@ M5282EVB BOARD -M: - +#M: - S: Maintained F: board/freescale/m5282evb/ F: include/configs/M5282EVB.h diff --git a/board/freescale/m54418twr/MAINTAINERS b/board/freescale/m54418twr/MAINTAINERS index 37b24c7..f88aed9 100644 --- a/board/freescale/m54418twr/MAINTAINERS +++ b/board/freescale/m54418twr/MAINTAINERS @@ -1,5 +1,5 @@ M54418TWR BOARD -M: - +#M: - S: Maintained F: board/freescale/m54418twr/ F: include/configs/M54418TWR.h diff --git a/board/freescale/m54451evb/MAINTAINERS b/board/freescale/m54451evb/MAINTAINERS index be14549..52a2681 100644 --- a/board/freescale/m54451evb/MAINTAINERS +++ b/board/freescale/m54451evb/MAINTAINERS @@ -1,5 +1,5 @@ M54451EVB BOARD -M: - +#M: - S: Maintained F: board/freescale/m54451evb/ F: include/configs/M54451EVB.h diff --git a/board/freescale/mpc5121ads/MAINTAINERS b/board/freescale/mpc5121ads/MAINTAINERS index 0c7f682..d4aab8f 100644 --- a/board/freescale/mpc5121ads/MAINTAINERS +++ b/board/freescale/mpc5121ads/MAINTAINERS @@ -1,5 +1,5 @@ MPC5121ADS BOARD -M: - +#M: - S: Maintained F: board/freescale/mpc5121ads/ F: include/configs/mpc5121ads.h diff --git a/board/freescale/mpc8313erdb/MAINTAINERS b/board/freescale/mpc8313erdb/MAINTAINERS index 923ba95..807fb0b 100644 --- a/board/freescale/mpc8313erdb/MAINTAINERS +++ b/board/freescale/mpc8313erdb/MAINTAINERS @@ -1,5 +1,5 @@ MPC8313ERDB BOARD -M: - +#M: - S: Maintained F: board/freescale/mpc8313erdb/ F: include/configs/MPC8313ERDB.h diff --git a/board/freescale/mpc8349itx/MAINTAINERS b/board/freescale/mpc8349itx/MAINTAINERS index ed6e4e5..d0388ad 100644 --- a/board/freescale/mpc8349itx/MAINTAINERS +++ b/board/freescale/mpc8349itx/MAINTAINERS @@ -1,5 +1,5 @@ MPC8349ITX BOARD -M: - +#M: - S: Maintained F: board/freescale/mpc8349itx/ F: include/configs/MPC8349ITX.h diff --git a/board/freescale/mpc8360erdk/MAINTAINERS b/board/freescale/mpc8360erdk/MAINTAINERS index cb075d6..e5b5995 100644 --- a/board/freescale/mpc8360erdk/MAINTAINERS +++ b/board/freescale/mpc8360erdk/MAINTAINERS @@ -1,5 +1,5 @@ MPC8360ERDK BOARD -M: Anton Vorontsov <avorontsov@ru.mvista.com> +#M: Anton Vorontsov <avorontsov@ru.mvista.com> S: Orphan (since 2014-03) F: board/freescale/mpc8360erdk/ F: include/configs/MPC8360ERDK.h diff --git a/board/freescale/mpc837xerdb/MAINTAINERS b/board/freescale/mpc837xerdb/MAINTAINERS index c216d8d..8592a2c 100644 --- a/board/freescale/mpc837xerdb/MAINTAINERS +++ b/board/freescale/mpc837xerdb/MAINTAINERS @@ -1,5 +1,5 @@ MPC837XERDB BOARD -M: Joe D'Abbraccio <ljd015@freescale.com> +#M: Joe D'Abbraccio <ljd015@freescale.com> S: Orphan (since 2014-06) F: board/freescale/mpc837xerdb/ F: include/configs/MPC837XERDB.h diff --git a/board/freescale/mpc8536ds/MAINTAINERS b/board/freescale/mpc8536ds/MAINTAINERS index 51d7cd7..953072c 100644 --- a/board/freescale/mpc8536ds/MAINTAINERS +++ b/board/freescale/mpc8536ds/MAINTAINERS @@ -1,5 +1,5 @@ MPC8536DS BOARD -M: - +#M: - S: Maintained F: board/freescale/mpc8536ds/ F: include/configs/MPC8536DS.h diff --git a/board/freescale/mpc8540ads/MAINTAINERS b/board/freescale/mpc8540ads/MAINTAINERS index 41a2191..acc4821 100644 --- a/board/freescale/mpc8540ads/MAINTAINERS +++ b/board/freescale/mpc8540ads/MAINTAINERS @@ -1,5 +1,5 @@ MPC8540ADS BOARD -M: Kumar Gala <kumar.gala@freescale.com> +#M: Kumar Gala <kumar.gala@freescale.com> S: Orphan (since 2014-06) F: board/freescale/mpc8540ads/ F: include/configs/MPC8540ADS.h diff --git a/board/freescale/mpc8541cds/MAINTAINERS b/board/freescale/mpc8541cds/MAINTAINERS index 073210d..d421b12 100644 --- a/board/freescale/mpc8541cds/MAINTAINERS +++ b/board/freescale/mpc8541cds/MAINTAINERS @@ -1,5 +1,5 @@ MPC8541CDS BOARD -M: Kumar Gala <kumar.gala@freescale.com> +#M: Kumar Gala <kumar.gala@freescale.com> S: Orphan (since 2014-06) F: board/freescale/mpc8541cds/ F: include/configs/MPC8541CDS.h diff --git a/board/freescale/mpc8544ds/MAINTAINERS b/board/freescale/mpc8544ds/MAINTAINERS index 81b664c..328be7f 100644 --- a/board/freescale/mpc8544ds/MAINTAINERS +++ b/board/freescale/mpc8544ds/MAINTAINERS @@ -1,5 +1,5 @@ MPC8544DS BOARD -M: - +#M: - S: Maintained F: board/freescale/mpc8544ds/ F: include/configs/MPC8544DS.h diff --git a/board/freescale/mpc8548cds/MAINTAINERS b/board/freescale/mpc8548cds/MAINTAINERS index 89b2425..6f22922 100644 --- a/board/freescale/mpc8548cds/MAINTAINERS +++ b/board/freescale/mpc8548cds/MAINTAINERS @@ -1,5 +1,5 @@ MPC8548CDS BOARD -M: - +#M: - S: Maintained F: board/freescale/mpc8548cds/ F: include/configs/MPC8548CDS.h diff --git a/board/freescale/mpc8555cds/MAINTAINERS b/board/freescale/mpc8555cds/MAINTAINERS index 14470d7..1ef6690 100644 --- a/board/freescale/mpc8555cds/MAINTAINERS +++ b/board/freescale/mpc8555cds/MAINTAINERS @@ -1,5 +1,5 @@ MPC8555CDS BOARD -M: Kumar Gala <kumar.gala@freescale.com> +#M: Kumar Gala <kumar.gala@freescale.com> S: Orphan (since 2014-06) F: board/freescale/mpc8555cds/ F: include/configs/MPC8555CDS.h diff --git a/board/freescale/mpc8560ads/MAINTAINERS b/board/freescale/mpc8560ads/MAINTAINERS index 836def2..96e6da2 100644 --- a/board/freescale/mpc8560ads/MAINTAINERS +++ b/board/freescale/mpc8560ads/MAINTAINERS @@ -1,5 +1,5 @@ MPC8560ADS BOARD -M: Kumar Gala <kumar.gala@freescale.com> +#M: Kumar Gala <kumar.gala@freescale.com> S: Orphan (since 2014-06) F: board/freescale/mpc8560ads/ F: include/configs/MPC8560ADS.h diff --git a/board/freescale/mpc8568mds/MAINTAINERS b/board/freescale/mpc8568mds/MAINTAINERS index 72c25f5..379d8cc 100644 --- a/board/freescale/mpc8568mds/MAINTAINERS +++ b/board/freescale/mpc8568mds/MAINTAINERS @@ -1,5 +1,5 @@ MPC8568MDS BOARD -M: - +#M: - S: Maintained F: board/freescale/mpc8568mds/ F: include/configs/MPC8568MDS.h diff --git a/board/freescale/mpc8569mds/MAINTAINERS b/board/freescale/mpc8569mds/MAINTAINERS index b5478db..c181407 100644 --- a/board/freescale/mpc8569mds/MAINTAINERS +++ b/board/freescale/mpc8569mds/MAINTAINERS @@ -1,5 +1,5 @@ MPC8569MDS BOARD -M: - +#M: - S: Maintained F: board/freescale/mpc8569mds/ F: include/configs/MPC8569MDS.h diff --git a/board/freescale/mpc8610hpcd/MAINTAINERS b/board/freescale/mpc8610hpcd/MAINTAINERS index 993c02a..de6ab89 100644 --- a/board/freescale/mpc8610hpcd/MAINTAINERS +++ b/board/freescale/mpc8610hpcd/MAINTAINERS @@ -1,5 +1,5 @@ MPC8610HPCD BOARD -M: - +#M: - S: Maintained F: board/freescale/mpc8610hpcd/ F: include/configs/MPC8610HPCD.h diff --git a/board/freescale/mpc8641hpcn/MAINTAINERS b/board/freescale/mpc8641hpcn/MAINTAINERS index 34bcc6c..9790247 100644 --- a/board/freescale/mpc8641hpcn/MAINTAINERS +++ b/board/freescale/mpc8641hpcn/MAINTAINERS @@ -1,5 +1,5 @@ MPC8641HPCN BOARD -M: Kumar Gala <kumar.gala@freescale.com> +#M: Kumar Gala <kumar.gala@freescale.com> S: Orphan (since 2014-06) F: board/freescale/mpc8641hpcn/ F: include/configs/MPC8641HPCN.h diff --git a/board/freescale/mx31ads/MAINTAINERS b/board/freescale/mx31ads/MAINTAINERS index e9c8fe7..5f6ec26 100644 --- a/board/freescale/mx31ads/MAINTAINERS +++ b/board/freescale/mx31ads/MAINTAINERS @@ -1,5 +1,5 @@ MX31ADS BOARD -M: (resigned) Guennadi Liakhovetski <g.liakhovetski@gmx.de> +#M: (resigned) Guennadi Liakhovetski <g.liakhovetski@gmx.de> S: Orphan (since 2013-09) F: board/freescale/mx31ads/ F: include/configs/mx31ads.h diff --git a/board/freescale/mx6qsabreauto/mx6qsabreauto.c b/board/freescale/mx6qsabreauto/mx6qsabreauto.c index 928dadf..836d722 100644 --- a/board/freescale/mx6qsabreauto/mx6qsabreauto.c +++ b/board/freescale/mx6qsabreauto/mx6qsabreauto.c @@ -259,6 +259,13 @@ int board_init(void) return 0; } +#ifdef CONFIG_MXC_SPI +int board_spi_cs_gpio(unsigned bus, unsigned cs) +{ + return (bus == 0 && cs == 0) ? (IMX_GPIO_NR(4, 9)) : -1; +} +#endif + #ifdef CONFIG_CMD_BMODE static const struct boot_mode board_boot_modes[] = { /* 4 bit bus width */ diff --git a/board/freescale/mx6sabresd/mx6sabresd.c b/board/freescale/mx6sabresd/mx6sabresd.c index 80c8ebd..81dcd6e 100644 --- a/board/freescale/mx6sabresd/mx6sabresd.c +++ b/board/freescale/mx6sabresd/mx6sabresd.c @@ -513,6 +513,13 @@ static int pfuze_init(void) return 0; } +#ifdef CONFIG_MXC_SPI +int board_spi_cs_gpio(unsigned bus, unsigned cs) +{ + return (bus == 0 && cs == 0) ? (IMX_GPIO_NR(4, 9)) : -1; +} +#endif + #ifdef CONFIG_CMD_BMODE static const struct boot_mode board_boot_modes[] = { /* 4 bit bus width */ diff --git a/board/freescale/mx6slevk/mx6slevk.c b/board/freescale/mx6slevk/mx6slevk.c index a990b4c..a0832f4 100644 --- a/board/freescale/mx6slevk/mx6slevk.c +++ b/board/freescale/mx6slevk/mx6slevk.c @@ -82,6 +82,11 @@ static iomux_v3_cfg_t ecspi1_pads[] = { MX6_PAD_ECSPI1_SS0__GPIO4_IO11 | MUX_PAD_CTRL(NO_PAD_CTRL), }; +int board_spi_cs_gpio(unsigned bus, unsigned cs) +{ + return (bus == 0 && cs == 0) ? (IMX_GPIO_NR(4, 11)) : -1; +} + static void setup_spi(void) { imx_iomux_v3_setup_multiple_pads(ecspi1_pads, ARRAY_SIZE(ecspi1_pads)); diff --git a/board/freescale/p1010rdb/MAINTAINERS b/board/freescale/p1010rdb/MAINTAINERS index 579e775..db00143 100644 --- a/board/freescale/p1010rdb/MAINTAINERS +++ b/board/freescale/p1010rdb/MAINTAINERS @@ -1,5 +1,5 @@ P1010RDB BOARD -M: - +#M: - S: Maintained F: board/freescale/p1010rdb/ F: include/configs/P1010RDB.h diff --git a/board/freescale/p1023rdb/MAINTAINERS b/board/freescale/p1023rdb/MAINTAINERS index 81501aa..c06bac6 100644 --- a/board/freescale/p1023rdb/MAINTAINERS +++ b/board/freescale/p1023rdb/MAINTAINERS @@ -1,5 +1,5 @@ P1023RDB BOARD -M: - +#M: - S: Maintained F: board/freescale/p1023rdb/ F: include/configs/P1023RDB.h diff --git a/board/freescale/p1_p2_rdb/MAINTAINERS b/board/freescale/p1_p2_rdb/MAINTAINERS index ad0a858..aabf587 100644 --- a/board/freescale/p1_p2_rdb/MAINTAINERS +++ b/board/freescale/p1_p2_rdb/MAINTAINERS @@ -1,5 +1,5 @@ P1_P2_RDB BOARD -M: - +#M: - S: Maintained F: board/freescale/p1_p2_rdb/ F: include/configs/P1_P2_RDB.h diff --git a/board/freescale/p1_p2_rdb_pc/MAINTAINERS b/board/freescale/p1_p2_rdb_pc/MAINTAINERS index 4d429fe..c2e9247 100644 --- a/board/freescale/p1_p2_rdb_pc/MAINTAINERS +++ b/board/freescale/p1_p2_rdb_pc/MAINTAINERS @@ -1,5 +1,5 @@ P1_P2_RDB_PC BOARD -M: - +#M: - S: Maintained F: board/freescale/p1_p2_rdb_pc/ F: include/configs/p1_p2_rdb_pc.h diff --git a/board/freescale/p1_twr/MAINTAINERS b/board/freescale/p1_twr/MAINTAINERS index 2d7d7e1..c19d436 100644 --- a/board/freescale/p1_twr/MAINTAINERS +++ b/board/freescale/p1_twr/MAINTAINERS @@ -1,5 +1,5 @@ P1_TWR BOARD -M: - +#M: - S: Maintained F: board/freescale/p1_twr/ F: include/configs/p1_twr.h diff --git a/board/freescale/p2020ds/MAINTAINERS b/board/freescale/p2020ds/MAINTAINERS index 42cb18d..cb61fc5 100644 --- a/board/freescale/p2020ds/MAINTAINERS +++ b/board/freescale/p2020ds/MAINTAINERS @@ -1,5 +1,5 @@ P2020DS BOARD -M: - +#M: - S: Maintained F: board/freescale/p2020ds/ F: include/configs/P2020DS.h diff --git a/board/freescale/p2041rdb/MAINTAINERS b/board/freescale/p2041rdb/MAINTAINERS index bb5bb83..d93cb0b 100644 --- a/board/freescale/p2041rdb/MAINTAINERS +++ b/board/freescale/p2041rdb/MAINTAINERS @@ -1,5 +1,5 @@ P2041RDB BOARD -M: - +#M: - S: Maintained F: board/freescale/p2041rdb/ F: include/configs/P2041RDB.h diff --git a/board/freescale/t104xrdb/MAINTAINERS b/board/freescale/t104xrdb/MAINTAINERS index 62aae2f..b61e1c0 100644 --- a/board/freescale/t104xrdb/MAINTAINERS +++ b/board/freescale/t104xrdb/MAINTAINERS @@ -12,7 +12,7 @@ F: configs/T1042RDB_PI_NAND_defconfig F: configs/T1042RDB_PI_SPIFLASH_defconfig T1040RDB_SDCARD BOARD -M: - +#M: - S: Maintained F: configs/T1040RDB_SDCARD_defconfig F: configs/T1042RDB_PI_SDCARD_defconfig diff --git a/board/freescale/t208xqds/MAINTAINERS b/board/freescale/t208xqds/MAINTAINERS index 643926f..deda092 100644 --- a/board/freescale/t208xqds/MAINTAINERS +++ b/board/freescale/t208xqds/MAINTAINERS @@ -1,5 +1,5 @@ T208XQDS BOARD -M: - +#M: - S: Maintained F: board/freescale/t208xqds/ F: include/configs/T208xQDS.h diff --git a/board/freescale/t208xrdb/MAINTAINERS b/board/freescale/t208xrdb/MAINTAINERS index 5987143..1642879 100644 --- a/board/freescale/t208xrdb/MAINTAINERS +++ b/board/freescale/t208xrdb/MAINTAINERS @@ -1,5 +1,5 @@ T208XRDB BOARD -M: - +#M: - S: Maintained F: board/freescale/t208xrdb/ F: include/configs/T208xRDB.h diff --git a/board/freescale/t4qds/MAINTAINERS b/board/freescale/t4qds/MAINTAINERS index da796bd..f88ee7d 100644 --- a/board/freescale/t4qds/MAINTAINERS +++ b/board/freescale/t4qds/MAINTAINERS @@ -1,5 +1,5 @@ T4QDS BOARD -M: - +#M: - S: Maintained F: board/freescale/t4qds/ F: include/configs/T4240QDS.h diff --git a/board/funkwerk/vovpn-gw/MAINTAINERS b/board/funkwerk/vovpn-gw/MAINTAINERS index 9af5f78..34d1cc1 100644 --- a/board/funkwerk/vovpn-gw/MAINTAINERS +++ b/board/funkwerk/vovpn-gw/MAINTAINERS @@ -1,5 +1,5 @@ VOVPN-GW BOARD -M: - +#M: - S: Maintained F: board/funkwerk/vovpn-gw/ F: include/configs/VoVPN-GW.h diff --git a/board/gaisler/gr_cpci_ax2000/MAINTAINERS b/board/gaisler/gr_cpci_ax2000/MAINTAINERS index 493c31e..df55a4c 100644 --- a/board/gaisler/gr_cpci_ax2000/MAINTAINERS +++ b/board/gaisler/gr_cpci_ax2000/MAINTAINERS @@ -1,5 +1,5 @@ GR_CPCI_AX2000 BOARD -M: - +#M: - S: Maintained F: board/gaisler/gr_cpci_ax2000/ F: include/configs/gr_cpci_ax2000.h diff --git a/board/gaisler/gr_ep2s60/MAINTAINERS b/board/gaisler/gr_ep2s60/MAINTAINERS index 151bef1..7acd5f4 100644 --- a/board/gaisler/gr_ep2s60/MAINTAINERS +++ b/board/gaisler/gr_ep2s60/MAINTAINERS @@ -1,5 +1,5 @@ GR_EP2S60 BOARD -M: - +#M: - S: Maintained F: board/gaisler/gr_ep2s60/ F: include/configs/gr_ep2s60.h diff --git a/board/gaisler/gr_xc3s_1500/MAINTAINERS b/board/gaisler/gr_xc3s_1500/MAINTAINERS index 187f323..c4179d2 100644 --- a/board/gaisler/gr_xc3s_1500/MAINTAINERS +++ b/board/gaisler/gr_xc3s_1500/MAINTAINERS @@ -1,5 +1,5 @@ GR_XC3S_1500 BOARD -M: - +#M: - S: Maintained F: board/gaisler/gr_xc3s_1500/ F: include/configs/gr_xc3s_1500.h diff --git a/board/gaisler/grsim/MAINTAINERS b/board/gaisler/grsim/MAINTAINERS index acb863c..4b3312e 100644 --- a/board/gaisler/grsim/MAINTAINERS +++ b/board/gaisler/grsim/MAINTAINERS @@ -1,5 +1,5 @@ GRSIM BOARD -M: - +#M: - S: Maintained F: board/gaisler/grsim/ F: include/configs/grsim.h diff --git a/board/gaisler/grsim_leon2/MAINTAINERS b/board/gaisler/grsim_leon2/MAINTAINERS index 6da9b78..bf4a950 100644 --- a/board/gaisler/grsim_leon2/MAINTAINERS +++ b/board/gaisler/grsim_leon2/MAINTAINERS @@ -1,5 +1,5 @@ GRSIM_LEON2 BOARD -M: - +#M: - S: Maintained F: board/gaisler/grsim_leon2/ F: include/configs/grsim_leon2.h diff --git a/board/galaxy5200/MAINTAINERS b/board/galaxy5200/MAINTAINERS index f070132..614625d 100644 --- a/board/galaxy5200/MAINTAINERS +++ b/board/galaxy5200/MAINTAINERS @@ -1,5 +1,5 @@ GALAXY5200 BOARD -M: Eric Millbrandt <emillbrandt@dekaresearch.com> +#M: Eric Millbrandt <emillbrandt@dekaresearch.com> S: Orphan (since 2014-06) F: board/galaxy5200/ F: include/configs/galaxy5200.h diff --git a/board/gateworks/gw_ventana/gw_ventana.c b/board/gateworks/gw_ventana/gw_ventana.c index 8d086f8..1038d9d 100644 --- a/board/gateworks/gw_ventana/gw_ventana.c +++ b/board/gateworks/gw_ventana/gw_ventana.c @@ -356,9 +356,14 @@ iomux_v3_cfg_t const ecspi1_pads[] = { IOMUX_PADS(PAD_EIM_D16__ECSPI1_SCLK | MUX_PAD_CTRL(SPI_PAD_CTRL)), }; +int board_spi_cs_gpio(unsigned bus, unsigned cs) +{ + return (bus == 0 && cs == 0) ? (IMX_GPIO_NR(3, 19)) : -1; +} + static void setup_spi(void) { - gpio_direction_output(CONFIG_SF_DEFAULT_CS, 1); + gpio_direction_output(IMX_GPIO_NR(3, 19), 1); SETUP_IOMUX_PADS(ecspi1_pads); } #endif diff --git a/board/genesi/mx51_efikamx/MAINTAINERS b/board/genesi/mx51_efikamx/MAINTAINERS index a85df77..f1398c4 100644 --- a/board/genesi/mx51_efikamx/MAINTAINERS +++ b/board/genesi/mx51_efikamx/MAINTAINERS @@ -1,5 +1,5 @@ MX51_EFIKAMX BOARD -M: - +#M: - S: Maintained F: board/genesi/mx51_efikamx/ F: include/configs/mx51_efikamx.h diff --git a/board/genesi/mx51_efikamx/efikamx.c b/board/genesi/mx51_efikamx/efikamx.c index 16769e5..137e4ed 100644 --- a/board/genesi/mx51_efikamx/efikamx.c +++ b/board/genesi/mx51_efikamx/efikamx.c @@ -152,6 +152,11 @@ static iomux_v3_cfg_t const efikamx_spi_pads[] = { * PMIC configuration */ #ifdef CONFIG_MXC_SPI +int board_spi_cs_gpio(unsigned bus, unsigned cs) +{ + return (bus == 0 && cs == 1) ? 121 : -1; +} + static void power_init(void) { unsigned int val; diff --git a/board/icecube/MAINTAINERS b/board/icecube/MAINTAINERS index 02e6c04..8a24eb4 100644 --- a/board/icecube/MAINTAINERS +++ b/board/icecube/MAINTAINERS @@ -6,7 +6,7 @@ F: include/configs/IceCube.h F: configs/icecube_5200_defconfig ICECUBE_5200_DDR BOARD -M: - +#M: - S: Maintained F: configs/icecube_5200_DDR_defconfig F: configs/icecube_5200_DDR_LOWBOOT_defconfig diff --git a/board/imx31_phycore/MAINTAINERS b/board/imx31_phycore/MAINTAINERS index efd5e77..41f6cae 100644 --- a/board/imx31_phycore/MAINTAINERS +++ b/board/imx31_phycore/MAINTAINERS @@ -1,11 +1,11 @@ IMX31_PHYCORE BOARD -M: - +#M: - S: Maintained F: board/imx31_phycore/ F: include/configs/imx31_phycore.h F: configs/imx31_phycore_defconfig IMX31_PHYCORE_EET BOARD -M: (resigned) Guennadi Liakhovetski <g.liakhovetski@gmx.de> +#M: (resigned) Guennadi Liakhovetski <g.liakhovetski@gmx.de> S: Orphan (since 2013-09) F: configs/imx31_phycore_eet_defconfig diff --git a/board/ip04/MAINTAINERS b/board/ip04/MAINTAINERS index 278072b..c37b011 100644 --- a/board/ip04/MAINTAINERS +++ b/board/ip04/MAINTAINERS @@ -1,5 +1,5 @@ IP04 BOARD -M: Brent Kandetzki <brentk@teleco.com> +#M: Brent Kandetzki <brentk@teleco.com> S: Orphan (since 2014-06) F: board/ip04/ F: include/configs/ip04.h diff --git a/board/isee/igep00x0/MAINTAINERS b/board/isee/igep00x0/MAINTAINERS index fe4a8cd..3fc2c6c 100644 --- a/board/isee/igep00x0/MAINTAINERS +++ b/board/isee/igep00x0/MAINTAINERS @@ -8,7 +8,7 @@ F: configs/igep0030_defconfig F: configs/igep0032_defconfig IGEP0020_NAND BOARD -M: - +#M: - S: Maintained F: configs/igep0020_nand_defconfig F: configs/igep0030_nand_defconfig diff --git a/board/ivm/u-boot.lds b/board/ivm/u-boot.lds deleted file mode 100644 index 3d4fc8a..0000000 --- a/board/ivm/u-boot.lds +++ /dev/null @@ -1,82 +0,0 @@ -/* - * (C) Copyright 2000-2010 - * Wolfgang Denk, DENX Software Engineering, wd@denx.de. - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -OUTPUT_ARCH(powerpc) - -SECTIONS -{ - /* Read-only sections, merged into text segment: */ - . = + SIZEOF_HEADERS; - .text : - { - arch/powerpc/cpu/mpc8xx/start.o (.text*) - arch/powerpc/cpu/mpc8xx/traps.o (.text*) - - *(.text*) - } - _etext = .; - PROVIDE (etext = .); - .rodata : - { - *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) - } - - /* Read-write section, merged into data segment: */ - . = (. + 0x0FF) & 0xFFFFFF00; - _erotext = .; - PROVIDE (erotext = .); - .reloc : - { - _GOT2_TABLE_ = .; - KEEP(*(.got2)) - KEEP(*(.got)) - PROVIDE(_GLOBAL_OFFSET_TABLE_ = . + 4); - _FIXUP_TABLE_ = .; - KEEP(*(.fixup)) - } - __got2_entries = ((_GLOBAL_OFFSET_TABLE_ - _GOT2_TABLE_) >> 2) - 1; - __fixup_entries = (. - _FIXUP_TABLE_)>>2; - - .data : - { - *(.data*) - *(.sdata*) - } - _edata = .; - PROVIDE (edata = .); - - . = .; - - . = ALIGN(4); - .u_boot_list : { - KEEP(*(SORT(.u_boot_list*))); - } - - - . = .; - __start___ex_table = .; - __ex_table : { *(__ex_table) } - __stop___ex_table = .; - - . = ALIGN(256); - __init_begin = .; - .text.init : { *(.text.init) } - .data.init : { *(.data.init) } - . = ALIGN(256); - __init_end = .; - - __bss_start = .; - .bss (NOLOAD) : - { - *(.bss*) - *(.sbss*) - *(COMMON) - . = ALIGN(4); - } - __bss_end = . ; - PROVIDE (end = .); -} diff --git a/board/karo/tk71/MAINTAINERS b/board/karo/tk71/MAINTAINERS index 39b2b1d..ac85d6b 100644 --- a/board/karo/tk71/MAINTAINERS +++ b/board/karo/tk71/MAINTAINERS @@ -1,5 +1,5 @@ TK71 BOARD -M: - +#M: - S: Maintained F: board/karo/tk71/ F: include/configs/tk71.h diff --git a/board/kup/kup4k/u-boot.lds b/board/kup/kup4k/u-boot.lds deleted file mode 100644 index 0eb2fba..0000000 --- a/board/kup/kup4k/u-boot.lds +++ /dev/null @@ -1,82 +0,0 @@ -/* - * (C) Copyright 2000-2010 - * Wolfgang Denk, DENX Software Engineering, wd@denx.de. - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -OUTPUT_ARCH(powerpc) - -SECTIONS -{ - /* Read-only sections, merged into text segment: */ - . = + SIZEOF_HEADERS; - .text : - { - arch/powerpc/cpu/mpc8xx/start.o (.text*) - arch/powerpc/cpu/mpc8xx/traps.o (.text*) - - *(.text*) - } - _etext = .; - PROVIDE (etext = .); - .rodata : - { - *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) - } - - /* Read-write section, merged into data segment: */ - . = (. + 0x00FF) & 0xFFFFFF00; - _erotext = .; - PROVIDE (erotext = .); - .reloc : - { - _GOT2_TABLE_ = .; - KEEP(*(.got2)) - KEEP(*(.got)) - PROVIDE(_GLOBAL_OFFSET_TABLE_ = . + 4); - _FIXUP_TABLE_ = .; - KEEP(*(.fixup)) - } - __got2_entries = ((_GLOBAL_OFFSET_TABLE_ - _GOT2_TABLE_) >> 2) - 1; - __fixup_entries = (. - _FIXUP_TABLE_)>>2; - - .data : - { - *(.data*) - *(.sdata*) - } - _edata = .; - PROVIDE (edata = .); - - . = .; - - . = ALIGN(4); - .u_boot_list : { - KEEP(*(SORT(.u_boot_list*))); - } - - - . = .; - __start___ex_table = .; - __ex_table : { *(__ex_table) } - __stop___ex_table = .; - - . = ALIGN(256); - __init_begin = .; - .text.init : { *(.text.init) } - .data.init : { *(.data.init) } - . = ALIGN(256); - __init_end = .; - - __bss_start = .; - .bss (NOLOAD) : - { - *(.bss*) - *(.sbss*) - *(COMMON) - . = ALIGN(4); - } - __bss_end = . ; - PROVIDE (end = .); -} diff --git a/board/logicpd/imx31_litekit/MAINTAINERS b/board/logicpd/imx31_litekit/MAINTAINERS index 98cc7bd..8e3608e 100644 --- a/board/logicpd/imx31_litekit/MAINTAINERS +++ b/board/logicpd/imx31_litekit/MAINTAINERS @@ -1,5 +1,5 @@ IMX31_LITEKIT BOARD -M: - +#M: - S: Maintained F: board/logicpd/imx31_litekit/ F: include/configs/imx31_litekit.h diff --git a/board/lwmon/u-boot.lds b/board/lwmon/u-boot.lds deleted file mode 100644 index 90e2e2e..0000000 --- a/board/lwmon/u-boot.lds +++ /dev/null @@ -1,82 +0,0 @@ -/* - * (C) Copyright 2001-2010 - * Wolfgang Denk, DENX Software Engineering, wd@denx.de. - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -OUTPUT_ARCH(powerpc) - -SECTIONS -{ - /* Read-only sections, merged into text segment: */ - . = + SIZEOF_HEADERS; - .text : - { - arch/powerpc/cpu/mpc8xx/start.o (.text*) - arch/powerpc/cpu/mpc8xx/traps.o (.text*) - - *(.text*) - } - _etext = .; - PROVIDE (etext = .); - .rodata : - { - *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) - } - - /* Read-write section, merged into data segment: */ - . = (. + 0x0FF) & 0xFFFFFF00; - _erotext = .; - PROVIDE (erotext = .); - .reloc : - { - _GOT2_TABLE_ = .; - KEEP(*(.got2)) - KEEP(*(.got)) - PROVIDE(_GLOBAL_OFFSET_TABLE_ = . + 4); - _FIXUP_TABLE_ = .; - KEEP(*(.fixup)) - } - __got2_entries = ((_GLOBAL_OFFSET_TABLE_ - _GOT2_TABLE_) >> 2) - 1; - __fixup_entries = (. - _FIXUP_TABLE_)>>2; - - .data : - { - *(.data*) - *(.sdata*) - } - _edata = .; - PROVIDE (edata = .); - - . = .; - - . = ALIGN(4); - .u_boot_list : { - KEEP(*(SORT(.u_boot_list*))); - } - - - . = .; - __start___ex_table = .; - __ex_table : { *(__ex_table) } - __stop___ex_table = .; - - . = ALIGN(256); - __init_begin = .; - .text.init : { *(.text.init) } - .data.init : { *(.data.init) } - . = ALIGN(256); - __init_end = .; - - __bss_start = .; - .bss (NOLOAD) : - { - *(.bss*) - *(.sbss*) - *(COMMON) - . = ALIGN(4); - } - __bss_end = . ; - PROVIDE (end = .); -} diff --git a/board/manroland/hmi1001/MAINTAINERS b/board/manroland/hmi1001/MAINTAINERS index bdfdc01..a66a981 100644 --- a/board/manroland/hmi1001/MAINTAINERS +++ b/board/manroland/hmi1001/MAINTAINERS @@ -1,5 +1,5 @@ HMI1001 BOARD -M: - +#M: - S: Maintained F: board/manroland/hmi1001/ F: include/configs/hmi1001.h diff --git a/board/manroland/uc100/u-boot.lds b/board/manroland/uc100/u-boot.lds deleted file mode 100644 index 47f2de8..0000000 --- a/board/manroland/uc100/u-boot.lds +++ /dev/null @@ -1,85 +0,0 @@ -/* - * (C) Copyright 2000 - * Wolfgang Denk, DENX Software Engineering, wd@denx.de. - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -OUTPUT_ARCH(powerpc) - -SECTIONS -{ - /* Read-only sections, merged into text segment: */ - . = + SIZEOF_HEADERS; - .text : - { - /* WARNING - the following is hand-optimized to fit within */ - /* the sector layout of our flash chips! XXX FIXME XXX */ - - arch/powerpc/cpu/mpc8xx/start.o (.text*) - arch/powerpc/cpu/mpc8xx/traps.o (.text*) - - *(.text*) - } - _etext = .; - PROVIDE (etext = .); - .rodata : - { - *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) - } - - /* Read-write section, merged into data segment: */ - . = (. + 0x00FF) & 0xFFFFFF00; - _erotext = .; - PROVIDE (erotext = .); - .reloc : - { - _GOT2_TABLE_ = .; - KEEP(*(.got2)) - KEEP(*(.got)) - PROVIDE(_GLOBAL_OFFSET_TABLE_ = . + 4); - _FIXUP_TABLE_ = .; - KEEP(*(.fixup)) - } - __got2_entries = ((_GLOBAL_OFFSET_TABLE_ - _GOT2_TABLE_) >> 2) - 1; - __fixup_entries = (. - _FIXUP_TABLE_)>>2; - - .data : - { - *(.data*) - *(.sdata*) - } - _edata = .; - PROVIDE (edata = .); - - . = .; - - . = ALIGN(4); - .u_boot_list : { - KEEP(*(SORT(.u_boot_list*))); - } - - - . = .; - __start___ex_table = .; - __ex_table : { *(__ex_table) } - __stop___ex_table = .; - - . = ALIGN(256); - __init_begin = .; - .text.init : { *(.text.init) } - .data.init : { *(.data.init) } - . = ALIGN(256); - __init_end = .; - - __bss_start = .; - .bss (NOLOAD) : - { - *(.bss*) - *(.sbss*) - *(COMMON) - . = ALIGN(4); - } - __bss_end = . ; - PROVIDE (end = .); -} diff --git a/board/matrix_vision/mergerbox/MAINTAINERS b/board/matrix_vision/mergerbox/MAINTAINERS index 22be981..20bd073 100644 --- a/board/matrix_vision/mergerbox/MAINTAINERS +++ b/board/matrix_vision/mergerbox/MAINTAINERS @@ -1,5 +1,5 @@ MERGERBOX BOARD -M: Andre Schwarz <andre.schwarz@matrix-vision.de> +#M: Andre Schwarz <andre.schwarz@matrix-vision.de> S: Orphan (since 2014-03) F: board/matrix_vision/mergerbox/ F: include/configs/MERGERBOX.h diff --git a/board/matrix_vision/mvbc_p/MAINTAINERS b/board/matrix_vision/mvbc_p/MAINTAINERS index 9e76b57..aad14ed 100644 --- a/board/matrix_vision/mvbc_p/MAINTAINERS +++ b/board/matrix_vision/mvbc_p/MAINTAINERS @@ -1,5 +1,5 @@ MVBC_P BOARD -M: Andre Schwarz <andre.schwarz@matrix-vision.de> +#M: Andre Schwarz <andre.schwarz@matrix-vision.de> S: Orphan (since 2014-03) F: board/matrix_vision/mvbc_p/ F: include/configs/MVBC_P.h diff --git a/board/matrix_vision/mvblm7/MAINTAINERS b/board/matrix_vision/mvblm7/MAINTAINERS index 4f7ca50..947a14e 100644 --- a/board/matrix_vision/mvblm7/MAINTAINERS +++ b/board/matrix_vision/mvblm7/MAINTAINERS @@ -1,5 +1,5 @@ MVBLM7 BOARD -M: Andre Schwarz <andre.schwarz@matrix-vision.de> +#M: Andre Schwarz <andre.schwarz@matrix-vision.de> S: Orphan (since 2014-03) F: board/matrix_vision/mvblm7/ F: include/configs/MVBLM7.h diff --git a/board/matrix_vision/mvsmr/MAINTAINERS b/board/matrix_vision/mvsmr/MAINTAINERS index 9659730..ae3cf9c 100644 --- a/board/matrix_vision/mvsmr/MAINTAINERS +++ b/board/matrix_vision/mvsmr/MAINTAINERS @@ -1,5 +1,5 @@ MVSMR BOARD -M: Andre Schwarz <andre.schwarz@matrix-vision.de> +#M: Andre Schwarz <andre.schwarz@matrix-vision.de> S: Orphan (since 2014-03) F: board/matrix_vision/mvsmr/ F: include/configs/MVSMR.h diff --git a/board/mcc200/MAINTAINERS b/board/mcc200/MAINTAINERS index 3d02bc6..a59a498 100644 --- a/board/mcc200/MAINTAINERS +++ b/board/mcc200/MAINTAINERS @@ -1,5 +1,5 @@ MCC200 BOARD -M: - +#M: - S: Maintained F: board/mcc200/ F: include/configs/mcc200.h diff --git a/board/micronas/vct/MAINTAINERS b/board/micronas/vct/MAINTAINERS index 4b825d3..cbaa585 100644 --- a/board/micronas/vct/MAINTAINERS +++ b/board/micronas/vct/MAINTAINERS @@ -1,5 +1,5 @@ VCT BOARD -M: - +#M: - S: Maintained F: board/micronas/vct/ F: include/configs/vct.h diff --git a/board/motionpro/MAINTAINERS b/board/motionpro/MAINTAINERS index 10a97cc..2f8b5cb 100644 --- a/board/motionpro/MAINTAINERS +++ b/board/motionpro/MAINTAINERS @@ -1,5 +1,5 @@ MOTIONPRO BOARD -M: - +#M: - S: Maintained F: board/motionpro/ F: include/configs/motionpro.h diff --git a/board/mpl/pati/MAINTAINERS b/board/mpl/pati/MAINTAINERS index f7c1bd8..19ad05d 100644 --- a/board/mpl/pati/MAINTAINERS +++ b/board/mpl/pati/MAINTAINERS @@ -1,5 +1,5 @@ PATI BOARD -M: - +#M: - S: Maintained F: board/mpl/pati/ F: include/configs/PATI.h diff --git a/board/munices/MAINTAINERS b/board/munices/MAINTAINERS index b8f5761..50d3e7e 100644 --- a/board/munices/MAINTAINERS +++ b/board/munices/MAINTAINERS @@ -1,5 +1,5 @@ MUNICES BOARD -M: - +#M: - S: Maintained F: board/munices/ F: include/configs/munices.h diff --git a/board/musenki/MAINTAINERS b/board/musenki/MAINTAINERS index 03a1fe7..4196c80 100644 --- a/board/musenki/MAINTAINERS +++ b/board/musenki/MAINTAINERS @@ -1,5 +1,5 @@ MUSENKI BOARD -M: Jim Thompson <jim@musenki.com> +#M: Jim Thompson <jim@musenki.com> S: Orphan (since 2014-04) F: board/musenki/ F: include/configs/MUSENKI.h diff --git a/board/mvblue/MAINTAINERS b/board/mvblue/MAINTAINERS index a809ba5..5955f1a 100644 --- a/board/mvblue/MAINTAINERS +++ b/board/mvblue/MAINTAINERS @@ -1,5 +1,5 @@ MVBLUE BOARD -M: - +#M: - S: Maintained F: board/mvblue/ F: include/configs/MVBLUE.h diff --git a/board/netvia/u-boot.lds b/board/netvia/u-boot.lds deleted file mode 100644 index 0dff5a4..0000000 --- a/board/netvia/u-boot.lds +++ /dev/null @@ -1,82 +0,0 @@ -/* - * (C) Copyright 2000-2010 - * Wolfgang Denk, DENX Software Engineering, wd@denx.de. - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -OUTPUT_ARCH(powerpc) - -SECTIONS -{ - /* Read-only sections, merged into text segment: */ - . = + SIZEOF_HEADERS; - .text : - { - arch/powerpc/cpu/mpc8xx/start.o (.text*) - arch/powerpc/cpu/mpc8xx/traps.o (.text*) - - *(.text*) - } - _etext = .; - PROVIDE (etext = .); - .rodata : - { - *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) - } - - /* Read-write section, merged into data segment: */ - . = (. + 0x00FF) & 0xFFFFFF00; - _erotext = .; - PROVIDE (erotext = .); - .reloc : - { - _GOT2_TABLE_ = .; - KEEP(*(.got2)) - KEEP(*(.got)) - PROVIDE(_GLOBAL_OFFSET_TABLE_ = . + 4); - _FIXUP_TABLE_ = .; - KEEP(*(.fixup)) - } - __got2_entries = ((_GLOBAL_OFFSET_TABLE_ - _GOT2_TABLE_) >> 2) - 1; - __fixup_entries = (. - _FIXUP_TABLE_)>>2; - - .data : - { - *(.data*) - *(.sdata*) - } - _edata = .; - PROVIDE (edata = .); - - . = .; - - . = ALIGN(4); - .u_boot_list : { - KEEP(*(SORT(.u_boot_list*))); - } - - - . = .; - __start___ex_table = .; - __ex_table : { *(__ex_table) } - __stop___ex_table = .; - - . = ALIGN(256); - __init_begin = .; - .text.init : { *(.text.init) } - .data.init : { *(.data.init) } - . = ALIGN(256); - __init_end = .; - - __bss_start = .; - .bss (NOLOAD) : - { - *(.bss*) - *(.sbss*) - *(COMMON) - . = ALIGN(4); - } - __bss_end = . ; - PROVIDE (end = .); -} diff --git a/board/palmtreo680/MAINTAINERS b/board/palmtreo680/MAINTAINERS index bdc034e..b0ff9d0 100644 --- a/board/palmtreo680/MAINTAINERS +++ b/board/palmtreo680/MAINTAINERS @@ -1,5 +1,5 @@ PALMTREO680 BOARD -M: Mike Dunn <mikedunn@newsguy.com> +#M: Mike Dunn <mikedunn@newsguy.com> S: Orphan (since 2014-06) F: board/palmtreo680/ F: include/configs/palmtreo680.h diff --git a/board/pb1x00/MAINTAINERS b/board/pb1x00/MAINTAINERS index 6c5c2bb..8326cc7 100644 --- a/board/pb1x00/MAINTAINERS +++ b/board/pb1x00/MAINTAINERS @@ -1,5 +1,5 @@ PB1X00 BOARD -M: - +#M: - S: Maintained F: board/pb1x00/ F: include/configs/pb1x00.h diff --git a/board/pm828/MAINTAINERS b/board/pm828/MAINTAINERS index 767a84d..97c1ccc 100644 --- a/board/pm828/MAINTAINERS +++ b/board/pm828/MAINTAINERS @@ -1,5 +1,5 @@ PM828 BOARD -M: - +#M: - S: Maintained F: board/pm828/ F: include/configs/PM828.h diff --git a/board/ppmc7xx/MAINTAINERS b/board/ppmc7xx/MAINTAINERS index 5b21aa7..a0c1f44 100644 --- a/board/ppmc7xx/MAINTAINERS +++ b/board/ppmc7xx/MAINTAINERS @@ -1,5 +1,5 @@ PPMC7XX BOARD -M: - +#M: - S: Maintained F: board/ppmc7xx/ F: include/configs/ppmc7xx.h diff --git a/board/ppmc8260/MAINTAINERS b/board/ppmc8260/MAINTAINERS index 768d092..8b896af 100644 --- a/board/ppmc8260/MAINTAINERS +++ b/board/ppmc8260/MAINTAINERS @@ -1,5 +1,5 @@ PPMC8260 BOARD -M: Brad Kemp <Brad.Kemp@seranoa.com> +#M: Brad Kemp <Brad.Kemp@seranoa.com> S: Orphan (since 2014-04) F: board/ppmc8260/ F: include/configs/ppmc8260.h diff --git a/board/qemu-mips/MAINTAINERS b/board/qemu-mips/MAINTAINERS index 079949a..334f9d8 100644 --- a/board/qemu-mips/MAINTAINERS +++ b/board/qemu-mips/MAINTAINERS @@ -6,7 +6,7 @@ F: include/configs/qemu-mips.h F: configs/qemu_mips_defconfig QEMU_MIPSEL BOARD -M: - +#M: - S: Maintained F: configs/qemu_mipsel_defconfig F: include/configs/qemu-mips64.h diff --git a/board/renesas/MigoR/MAINTAINERS b/board/renesas/MigoR/MAINTAINERS index 9368b05..21ee5e2 100644 --- a/board/renesas/MigoR/MAINTAINERS +++ b/board/renesas/MigoR/MAINTAINERS @@ -1,5 +1,5 @@ MIGOR BOARD -M: - +#M: - S: Maintained F: board/renesas/MigoR/ F: include/configs/MigoR.h diff --git a/board/renesas/rsk7269/MAINTAINERS b/board/renesas/rsk7269/MAINTAINERS index d3c77c3..698fbdb 100644 --- a/board/renesas/rsk7269/MAINTAINERS +++ b/board/renesas/rsk7269/MAINTAINERS @@ -1,5 +1,5 @@ RSK7269 BOARD -M: - +#M: - S: Maintained F: board/renesas/rsk7269/ F: include/configs/rsk7269.h diff --git a/board/renesas/sh7752evb/MAINTAINERS b/board/renesas/sh7752evb/MAINTAINERS index 8910669..9840477 100644 --- a/board/renesas/sh7752evb/MAINTAINERS +++ b/board/renesas/sh7752evb/MAINTAINERS @@ -1,5 +1,5 @@ SH7752EVB BOARD -M: - +#M: - S: Maintained F: board/renesas/sh7752evb/ F: include/configs/sh7752evb.h diff --git a/board/renesas/sh7753evb/MAINTAINERS b/board/renesas/sh7753evb/MAINTAINERS index 03e6c8c..b6c85ee 100644 --- a/board/renesas/sh7753evb/MAINTAINERS +++ b/board/renesas/sh7753evb/MAINTAINERS @@ -1,5 +1,5 @@ SH7753EVB BOARD -M: - +#M: - S: Maintained F: board/renesas/sh7753evb/ F: include/configs/sh7753evb.h diff --git a/board/renesas/sh7757lcr/MAINTAINERS b/board/renesas/sh7757lcr/MAINTAINERS index bbdd6d0..20aca67 100644 --- a/board/renesas/sh7757lcr/MAINTAINERS +++ b/board/renesas/sh7757lcr/MAINTAINERS @@ -1,5 +1,5 @@ SH7757LCR BOARD -M: - +#M: - S: Maintained F: board/renesas/sh7757lcr/ F: include/configs/sh7757lcr.h diff --git a/board/renesas/sh7785lcr/MAINTAINERS b/board/renesas/sh7785lcr/MAINTAINERS index 0d99de6..17578e0 100644 --- a/board/renesas/sh7785lcr/MAINTAINERS +++ b/board/renesas/sh7785lcr/MAINTAINERS @@ -1,5 +1,5 @@ SH7785LCR BOARD -M: - +#M: - S: Maintained F: board/renesas/sh7785lcr/ F: include/configs/sh7785lcr.h diff --git a/board/sacsng/MAINTAINERS b/board/sacsng/MAINTAINERS index c2c8ee3..b76e462 100644 --- a/board/sacsng/MAINTAINERS +++ b/board/sacsng/MAINTAINERS @@ -1,5 +1,5 @@ SACSNG BOARD -M: Jerry Van Baren <gerald.vanbaren@smiths-aerospace.com> +#M: Jerry Van Baren <gerald.vanbaren@smiths-aerospace.com> S: Orphan (since 2014-06) F: board/sacsng/ F: include/configs/sacsng.h diff --git a/board/sandburst/karef/MAINTAINERS b/board/sandburst/karef/MAINTAINERS index 4c29ae7..21510e8 100644 --- a/board/sandburst/karef/MAINTAINERS +++ b/board/sandburst/karef/MAINTAINERS @@ -1,5 +1,5 @@ KAREF BOARD -M: Travis Sawyer <travis.sawyer@sandburst.com> +#M: Travis Sawyer <travis.sawyer@sandburst.com> S: Orphan (since 2014-03) F: board/sandburst/karef/ F: include/configs/KAREF.h diff --git a/board/sandburst/metrobox/MAINTAINERS b/board/sandburst/metrobox/MAINTAINERS index f5734ba..71d18f9 100644 --- a/board/sandburst/metrobox/MAINTAINERS +++ b/board/sandburst/metrobox/MAINTAINERS @@ -1,5 +1,5 @@ METROBOX BOARD -M: Travis Sawyer <travis.sawyer@sandburst.com> +#M: Travis Sawyer <travis.sawyer@sandburst.com> S: Orphan (since 2014-03) F: board/sandburst/metrobox/ F: include/configs/METROBOX.h diff --git a/board/sandpoint/MAINTAINERS b/board/sandpoint/MAINTAINERS index f28c309..569cf42 100644 --- a/board/sandpoint/MAINTAINERS +++ b/board/sandpoint/MAINTAINERS @@ -6,7 +6,7 @@ F: include/configs/Sandpoint8240.h F: configs/Sandpoint8240_defconfig SANDPOINT8245 BOARD -M: Jim Thompson <jim@musenki.com> +#M: Jim Thompson <jim@musenki.com> S: Orphan (since 2014-04) F: include/configs/Sandpoint8245.h F: configs/Sandpoint8245_defconfig diff --git a/board/sbc405/MAINTAINERS b/board/sbc405/MAINTAINERS index dbb4451..2abad25 100644 --- a/board/sbc405/MAINTAINERS +++ b/board/sbc405/MAINTAINERS @@ -1,5 +1,5 @@ SBC405 BOARD -M: - +#M: - S: Maintained F: board/sbc405/ F: include/configs/sbc405.h diff --git a/board/socrates/MAINTAINERS b/board/socrates/MAINTAINERS index fc3e11d..293b8e6 100644 --- a/board/socrates/MAINTAINERS +++ b/board/socrates/MAINTAINERS @@ -1,5 +1,5 @@ SOCRATES BOARD -M: - +#M: - S: Maintained F: board/socrates/ F: include/configs/socrates.h diff --git a/board/spear/spear300/MAINTAINERS b/board/spear/spear300/MAINTAINERS index 15164fe..07152ae 100644 --- a/board/spear/spear300/MAINTAINERS +++ b/board/spear/spear300/MAINTAINERS @@ -6,7 +6,7 @@ F: include/configs/spear3xx_evb.h F: configs/spear300_defconfig SPEAR300_NAND BOARD -M: - +#M: - S: Maintained F: configs/spear300_nand_defconfig F: configs/spear300_usbtty_defconfig diff --git a/board/spear/spear310/MAINTAINERS b/board/spear/spear310/MAINTAINERS index 3a7e610..4f9aa15 100644 --- a/board/spear/spear310/MAINTAINERS +++ b/board/spear/spear310/MAINTAINERS @@ -6,7 +6,7 @@ F: include/configs/spear3xx_evb.h F: configs/spear310_defconfig SPEAR310_NAND BOARD -M: - +#M: - S: Maintained F: configs/spear310_nand_defconfig F: configs/spear310_pnor_defconfig diff --git a/board/spear/spear320/MAINTAINERS b/board/spear/spear320/MAINTAINERS index 414beca..bf78092 100644 --- a/board/spear/spear320/MAINTAINERS +++ b/board/spear/spear320/MAINTAINERS @@ -6,7 +6,7 @@ F: include/configs/spear3xx_evb.h F: configs/spear320_defconfig SPEAR320_NAND BOARD -M: - +#M: - S: Maintained F: configs/spear320_nand_defconfig F: configs/spear320_pnor_defconfig diff --git a/board/spear/spear600/MAINTAINERS b/board/spear/spear600/MAINTAINERS index a978fdd..ddcd11a 100644 --- a/board/spear/spear600/MAINTAINERS +++ b/board/spear/spear600/MAINTAINERS @@ -6,7 +6,7 @@ F: include/configs/spear6xx_evb.h F: configs/spear600_defconfig SPEAR600_NAND BOARD -M: - +#M: - S: Maintained F: configs/spear600_nand_defconfig F: configs/spear600_usbtty_defconfig diff --git a/board/st-ericsson/u8500/MAINTAINERS b/board/st-ericsson/u8500/MAINTAINERS index 54e7921..e2581eb 100644 --- a/board/st-ericsson/u8500/MAINTAINERS +++ b/board/st-ericsson/u8500/MAINTAINERS @@ -1,5 +1,5 @@ U8500 BOARD -M: - +#M: - S: Maintained F: board/st-ericsson/u8500/ F: include/configs/u8500_href.h diff --git a/board/stx/stxgp3/MAINTAINERS b/board/stx/stxgp3/MAINTAINERS index 6f485d4..bd5743c 100644 --- a/board/stx/stxgp3/MAINTAINERS +++ b/board/stx/stxgp3/MAINTAINERS @@ -1,5 +1,5 @@ STXGP3 BOARD -M: Dan Malek <dan@embeddedalley.com> +#M: Dan Malek <dan@embeddedalley.com> S: Orphan (since 2014-06) F: board/stx/stxgp3/ F: include/configs/stxgp3.h diff --git a/board/stx/stxssa/MAINTAINERS b/board/stx/stxssa/MAINTAINERS index f56adf0..b7cc89b 100644 --- a/board/stx/stxssa/MAINTAINERS +++ b/board/stx/stxssa/MAINTAINERS @@ -1,5 +1,5 @@ STXSSA BOARD -M: Dan Malek <dan@embeddedalley.com> +#M: Dan Malek <dan@embeddedalley.com> S: Orphan (since 2014-06) F: board/stx/stxssa/ F: include/configs/stxssa.h diff --git a/board/tcm-bf518/MAINTAINERS b/board/tcm-bf518/MAINTAINERS index f649b06..1690122 100644 --- a/board/tcm-bf518/MAINTAINERS +++ b/board/tcm-bf518/MAINTAINERS @@ -1,5 +1,5 @@ TCM-BF518 BOARD -M: Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> +#M: Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> S: Orphan (since 2014-03) F: board/tcm-bf518/ F: include/configs/tcm-bf518.h diff --git a/board/tcm-bf537/MAINTAINERS b/board/tcm-bf537/MAINTAINERS index 9ee557d..1cd4845 100644 --- a/board/tcm-bf537/MAINTAINERS +++ b/board/tcm-bf537/MAINTAINERS @@ -1,5 +1,5 @@ TCM-BF537 BOARD -M: Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> +#M: Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> S: Orphan (since 2014-03) F: board/tcm-bf537/ F: include/configs/tcm-bf537.h diff --git a/board/ti/evm/MAINTAINERS b/board/ti/evm/MAINTAINERS index b2ebadc..d0b2788 100644 --- a/board/ti/evm/MAINTAINERS +++ b/board/ti/evm/MAINTAINERS @@ -6,7 +6,7 @@ F: include/configs/omap3_evm.h F: configs/omap3_evm_defconfig OMAP3_EVM_QUICK_MMC BOARD -M: - +#M: - S: Maintained F: include/configs/omap3_evm_quick_mmc.h F: configs/omap3_evm_quick_mmc_defconfig diff --git a/board/ti/ti816x/MAINTAINERS b/board/ti/ti816x/MAINTAINERS index 8bf6122..d3de144 100644 --- a/board/ti/ti816x/MAINTAINERS +++ b/board/ti/ti816x/MAINTAINERS @@ -1,5 +1,5 @@ TI816X BOARD -M: - +#M: - S: Maintained F: board/ti/ti816x/ F: include/configs/ti816x_evm.h diff --git a/board/ti/tnetv107xevm/MAINTAINERS b/board/ti/tnetv107xevm/MAINTAINERS index 76ccfdc..8a92c6b 100644 --- a/board/ti/tnetv107xevm/MAINTAINERS +++ b/board/ti/tnetv107xevm/MAINTAINERS @@ -1,5 +1,5 @@ TNETV107XEVM BOARD -M: Chan-Taek Park <c-park@ti.com> +#M: Chan-Taek Park <c-park@ti.com> S: Orphan (since 2014-06) F: board/ti/tnetv107xevm/ F: include/configs/tnetv107x_evm.h diff --git a/board/total5200/MAINTAINERS b/board/total5200/MAINTAINERS index 983b96d..afb0058 100644 --- a/board/total5200/MAINTAINERS +++ b/board/total5200/MAINTAINERS @@ -1,5 +1,5 @@ TOTAL5200 BOARD -M: - +#M: - S: Maintained F: board/total5200/ F: include/configs/Total5200.h diff --git a/board/tqc/tqm5200/MAINTAINERS b/board/tqc/tqm5200/MAINTAINERS index 581ef95..d3eb543 100644 --- a/board/tqc/tqm5200/MAINTAINERS +++ b/board/tqc/tqm5200/MAINTAINERS @@ -1,5 +1,5 @@ TQM5200 BOARD -M: - +#M: - S: Maintained F: board/tqc/tqm5200/ F: include/configs/aev.h diff --git a/board/tqc/tqm8272/MAINTAINERS b/board/tqc/tqm8272/MAINTAINERS index a660de1..988d2b1 100644 --- a/board/tqc/tqm8272/MAINTAINERS +++ b/board/tqc/tqm8272/MAINTAINERS @@ -1,5 +1,5 @@ TQM8272 BOARD -M: - +#M: - S: Maintained F: board/tqc/tqm8272/ F: include/configs/TQM8272.h diff --git a/board/tqc/tqm834x/MAINTAINERS b/board/tqc/tqm834x/MAINTAINERS index 10c14f3..543ab1b 100644 --- a/board/tqc/tqm834x/MAINTAINERS +++ b/board/tqc/tqm834x/MAINTAINERS @@ -1,5 +1,5 @@ TQM834X BOARD -M: - +#M: - S: Maintained F: board/tqc/tqm834x/ F: include/configs/TQM834x.h diff --git a/board/tqc/tqm8xx/MAINTAINERS b/board/tqc/tqm8xx/MAINTAINERS index 161fa68..fe4a212 100644 --- a/board/tqc/tqm8xx/MAINTAINERS +++ b/board/tqc/tqm8xx/MAINTAINERS @@ -39,7 +39,7 @@ F: configs/virtlab2_defconfig F: configs/wtk_defconfig NSCU BOARD -M: - +#M: - S: Maintained F: include/configs/NSCU.h F: configs/NSCU_defconfig diff --git a/board/ttcontrol/vision2/vision2.c b/board/ttcontrol/vision2/vision2.c index b4d3994..b5249e7 100644 --- a/board/ttcontrol/vision2/vision2.c +++ b/board/ttcontrol/vision2/vision2.c @@ -144,6 +144,11 @@ static void setup_uart(void) } #ifdef CONFIG_MXC_SPI +int board_spi_cs_gpio(unsigned bus, unsigned cs) +{ + return (bus == 0 && cs == 1) ? 121 : -1; +} + void spi_io_init(void) { static const iomux_v3_cfg_t spi_pads[] = { diff --git a/board/v38b/MAINTAINERS b/board/v38b/MAINTAINERS index 1b12d0b..d1a6ae6 100644 --- a/board/v38b/MAINTAINERS +++ b/board/v38b/MAINTAINERS @@ -1,5 +1,5 @@ V38B BOARD -M: - +#M: - S: Maintained F: board/v38b/ F: include/configs/v38b.h diff --git a/board/woodburn/MAINTAINERS b/board/woodburn/MAINTAINERS index 715f2ca..4fbf6bb 100644 --- a/board/woodburn/MAINTAINERS +++ b/board/woodburn/MAINTAINERS @@ -6,7 +6,7 @@ F: include/configs/woodburn.h F: configs/woodburn_defconfig WOODBURN_SD BOARD -M: - +#M: - S: Maintained F: include/configs/woodburn_sd.h F: configs/woodburn_sd_defconfig diff --git a/board/xaeniax/MAINTAINERS b/board/xaeniax/MAINTAINERS index f2fa4bf..44bb588 100644 --- a/board/xaeniax/MAINTAINERS +++ b/board/xaeniax/MAINTAINERS @@ -1,5 +1,5 @@ XAENIAX BOARD -M: - +#M: - S: Maintained F: board/xaeniax/ F: include/configs/xaeniax.h diff --git a/board/xes/xpedite517x/MAINTAINERS b/board/xes/xpedite517x/MAINTAINERS index c74fdf4..035cb14 100644 --- a/board/xes/xpedite517x/MAINTAINERS +++ b/board/xes/xpedite517x/MAINTAINERS @@ -1,5 +1,5 @@ XPEDITE517X BOARD -M: - +#M: - S: Maintained F: board/xes/xpedite517x/ F: include/configs/xpedite517x.h diff --git a/board/xes/xpedite520x/MAINTAINERS b/board/xes/xpedite520x/MAINTAINERS index 7f9bf9a..2fd4ac0 100644 --- a/board/xes/xpedite520x/MAINTAINERS +++ b/board/xes/xpedite520x/MAINTAINERS @@ -1,5 +1,5 @@ XPEDITE520X BOARD -M: - +#M: - S: Maintained F: board/xes/xpedite520x/ F: include/configs/xpedite520x.h diff --git a/board/xes/xpedite537x/MAINTAINERS b/board/xes/xpedite537x/MAINTAINERS index a13dcf1..45a420d 100644 --- a/board/xes/xpedite537x/MAINTAINERS +++ b/board/xes/xpedite537x/MAINTAINERS @@ -1,5 +1,5 @@ XPEDITE537X BOARD -M: - +#M: - S: Maintained F: board/xes/xpedite537x/ F: include/configs/xpedite537x.h diff --git a/board/xes/xpedite550x/MAINTAINERS b/board/xes/xpedite550x/MAINTAINERS index 12d321e..b22f0e6 100644 --- a/board/xes/xpedite550x/MAINTAINERS +++ b/board/xes/xpedite550x/MAINTAINERS @@ -1,5 +1,5 @@ XPEDITE550X BOARD -M: - +#M: - S: Maintained F: board/xes/xpedite550x/ F: include/configs/xpedite550x.h diff --git a/common/Kconfig b/common/Kconfig new file mode 100644 index 0000000..216a8de --- /dev/null +++ b/common/Kconfig @@ -0,0 +1,34 @@ +menu "Command line interface" + depends on !SPL_BUILD + +config CMD_BOOTM + bool "Enable bootm command" + default y + help + Boot an application image from the memory. + +config CMD_CRC32 + bool "Enable crc32 command" + default y + help + Compute CRC32. + +config CMD_EXPORTENV + bool "Enable env export command" + default y + help + Export environments. + +config CMD_IMPORTENV + bool "Enable env import command" + default y + help + Import environments. + +config CMD_GO + bool "Enable go command" + default y + help + Start an application at a given address. + +endmenu diff --git a/common/Makefile b/common/Makefile index aca0f7f..b19d379 100644 --- a/common/Makefile +++ b/common/Makefile @@ -243,13 +243,8 @@ obj-y += cmd_nvedit.o #environment obj-y += env_common.o #others -ifdef CONFIG_DDR_SPD -SPD := y -endif -ifdef CONFIG_SPD_EEPROM -SPD := y -endif -obj-$(SPD) += ddr_spd.o +obj-$(CONFIG_DDR_SPD) += ddr_spd.o +obj-$(CONFIG_SPD_EEPROM) += ddr_spd.o obj-$(CONFIG_HWCONFIG) += hwconfig.o obj-$(CONFIG_BOUNCE_BUFFER) += bouncebuf.o obj-y += console.o @@ -264,4 +259,10 @@ obj-$(CONFIG_IO_TRACE) += iotrace.o obj-y += memsize.o obj-y += stdio.o +# This option is not just y/n - it can have a numeric value +ifdef CONFIG_FASTBOOT_FLASH_MMC_DEV +obj-y += aboot.o +obj-y += fb_mmc.o +endif + CFLAGS_env_embedded.o := -Wa,--no-warn -DENV_CRC=$(shell tools/envcrc 2>/dev/null) diff --git a/common/cmd_fastboot.c b/common/cmd_fastboot.c index 83fa7bd..909616d 100644 --- a/common/cmd_fastboot.c +++ b/common/cmd_fastboot.c @@ -30,7 +30,8 @@ static int do_fastboot(cmd_tbl_t *cmdtp, int flag, int argc, char *const argv[]) } U_BOOT_CMD( - fastboot, 1, 1, do_fastboot, - "fastboot - enter USB Fastboot protocol", - "" + fastboot, 1, 0, do_fastboot, + "use USB Fastboot protocol", + "\n" + " - run as a fastboot usb device" ); diff --git a/common/cmd_nand.c b/common/cmd_nand.c index f9ced9d..7f962dc 100644 --- a/common/cmd_nand.c +++ b/common/cmd_nand.c @@ -647,8 +647,6 @@ static int do_nand(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) read = strncmp(cmd, "read", 4) == 0; /* 1 = read, 0 = write */ printf("\nNAND %s: ", read ? "read" : "write"); - nand = &nand_info[dev]; - s = strchr(cmd, '.'); if (s && !strcmp(s, ".raw")) { @@ -657,6 +655,8 @@ static int do_nand(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) if (arg_off(argv[3], &dev, &off, &size, &maxsize)) return 1; + nand = &nand_info[dev]; + if (argc > 4 && !str2long(argv[4], &pagecount)) { printf("'%s' is not a number\n", argv[4]); return 1; @@ -679,6 +679,8 @@ static int do_nand(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) rwsize = size; } + nand = &nand_info[dev]; + if (!s || !strcmp(s, ".jffs2") || !strcmp(s, ".e") || !strcmp(s, ".i")) { if (read) diff --git a/common/cmd_sf.c b/common/cmd_sf.c index b4ceb71..c60e8d1 100644 --- a/common/cmd_sf.c +++ b/common/cmd_sf.c @@ -13,19 +13,6 @@ #include <asm/io.h> -#ifndef CONFIG_SF_DEFAULT_SPEED -# define CONFIG_SF_DEFAULT_SPEED 1000000 -#endif -#ifndef CONFIG_SF_DEFAULT_MODE -# define CONFIG_SF_DEFAULT_MODE SPI_MODE_3 -#endif -#ifndef CONFIG_SF_DEFAULT_CS -# define CONFIG_SF_DEFAULT_CS 0 -#endif -#ifndef CONFIG_SF_DEFAULT_BUS -# define CONFIG_SF_DEFAULT_BUS 0 -#endif - static struct spi_flash *flash; diff --git a/common/console.c b/common/console.c index 898da39..5a2f411 100644 --- a/common/console.c +++ b/common/console.c @@ -524,6 +524,7 @@ static int ctrlc_disabled = 0; /* see disable_ctrl() */ static int ctrlc_was_pressed = 0; int ctrlc(void) { +#ifndef CONFIG_SANDBOX if (!ctrlc_disabled && gd->have_console) { if (tstc()) { switch (getc()) { @@ -535,6 +536,8 @@ int ctrlc(void) } } } +#endif + return 0; } /* Reads user's confirmation. diff --git a/common/fb_mmc.c b/common/fb_mmc.c new file mode 100644 index 0000000..fb06d8a --- /dev/null +++ b/common/fb_mmc.c @@ -0,0 +1,92 @@ +/* + * Copyright 2014 Broadcom Corporation. + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include <common.h> +#include <fb_mmc.h> +#include <part.h> +#include <aboot.h> +#include <sparse_format.h> + +/* The 64 defined bytes plus the '\0' */ +#define RESPONSE_LEN (64 + 1) + +static char *response_str; + +void fastboot_fail(const char *s) +{ + strncpy(response_str, "FAIL", 4); + strncat(response_str, s, RESPONSE_LEN - 4 - 1); +} + +void fastboot_okay(const char *s) +{ + strncpy(response_str, "OKAY", 4); + strncat(response_str, s, RESPONSE_LEN - 4 - 1); +} + +static void write_raw_image(block_dev_desc_t *dev_desc, disk_partition_t *info, + const char *part_name, void *buffer, + unsigned int download_bytes) +{ + lbaint_t blkcnt; + lbaint_t blks; + + /* determine number of blocks to write */ + blkcnt = ((download_bytes + (info->blksz - 1)) & ~(info->blksz - 1)); + blkcnt = blkcnt / info->blksz; + + if (blkcnt > info->size) { + error("too large for partition: '%s'\n", part_name); + fastboot_fail("too large for partition"); + return; + } + + puts("Flashing Raw Image\n"); + + blks = dev_desc->block_write(dev_desc->dev, info->start, blkcnt, + buffer); + if (blks != blkcnt) { + error("failed writing to device %d\n", dev_desc->dev); + fastboot_fail("failed writing to device"); + return; + } + + printf("........ wrote " LBAFU " bytes to '%s'\n", blkcnt * info->blksz, + part_name); + fastboot_okay(""); +} + +void fb_mmc_flash_write(const char *cmd, void *download_buffer, + unsigned int download_bytes, char *response) +{ + int ret; + block_dev_desc_t *dev_desc; + disk_partition_t info; + + /* initialize the response buffer */ + response_str = response; + + dev_desc = get_dev("mmc", CONFIG_FASTBOOT_FLASH_MMC_DEV); + if (!dev_desc || dev_desc->type == DEV_TYPE_UNKNOWN) { + error("invalid mmc device\n"); + fastboot_fail("invalid mmc device"); + return; + } + + ret = get_partition_info_efi_by_name(dev_desc, cmd, &info); + if (ret) { + error("cannot find partition: '%s'\n", cmd); + fastboot_fail("cannot find partition"); + return; + } + + if (is_sparse_image(download_buffer)) + write_sparse_image(dev_desc, &info, cmd, download_buffer, + download_bytes); + else + write_raw_image(dev_desc, &info, cmd, download_buffer, + download_bytes); +} @@ -53,6 +53,10 @@ ifdef BOARD sinclude $(srctree)/board/$(BOARDDIR)/config.mk # include board specific rules endif +ifdef FTRACE +PLATFORM_CPPFLAGS += -finstrument-functions -DFTRACE +endif + ######################################################################### RELFLAGS := $(PLATFORM_RELFLAGS) diff --git a/configs/am335x_boneblack_vboot_defconfig b/configs/am335x_boneblack_vboot_defconfig index 00317c4..e257143 100644 --- a/configs/am335x_boneblack_vboot_defconfig +++ b/configs/am335x_boneblack_vboot_defconfig @@ -2,3 +2,5 @@ CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,EMMC_BOOT,ENABLE_VBOOT" +S:CONFIG_ARM=y +S:CONFIG_TARGET_AM335X_EVM=y +CONFIG_OF_CONTROL=y +CONFIG_DEFAULT_DEVICE_TREE="am335x-boneblack" diff --git a/configs/arndale_defconfig b/configs/arndale_defconfig index 7ea5c0d..fc30508 100644 --- a/configs/arndale_defconfig +++ b/configs/arndale_defconfig @@ -2,3 +2,4 @@ CONFIG_SPL=y +S:CONFIG_ARM=y +S:CONFIG_ARCH_EXYNOS=y +S:CONFIG_TARGET_ARNDALE=y +CONFIG_DEFAULT_DEVICE_TREE="exynos5250-arndale" diff --git a/configs/bct-brettl2_defconfig b/configs/bct-brettl2_defconfig index 3676306..26b145d 100644 --- a/configs/bct-brettl2_defconfig +++ b/configs/bct-brettl2_defconfig @@ -1,2 +1,3 @@ CONFIG_BLACKFIN=y CONFIG_TARGET_BCT_BRETTL2=y +CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED=y diff --git a/configs/beaver_defconfig b/configs/beaver_defconfig index 7c9d94b..ab615a8 100644 --- a/configs/beaver_defconfig +++ b/configs/beaver_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA30=y +S:CONFIG_TARGET_BEAVER=y +CONFIG_DEFAULT_DEVICE_TREE="tegra30-beaver" diff --git a/configs/bf506f-ezkit_defconfig b/configs/bf506f-ezkit_defconfig index f81f412..f164e06 100644 --- a/configs/bf506f-ezkit_defconfig +++ b/configs/bf506f-ezkit_defconfig @@ -1,2 +1,5 @@ CONFIG_BLACKFIN=y CONFIG_TARGET_BF506F_EZKIT=y +# CONFIG_CMD_BOOTM is not set +# CONFIG_CMD_EXPORTENV is not set +# CONFIG_CMD_IMPORTENV is not set diff --git a/configs/bf518f-ezbrd_defconfig b/configs/bf518f-ezbrd_defconfig index a93eed0..fb35ad0 100644 --- a/configs/bf518f-ezbrd_defconfig +++ b/configs/bf518f-ezbrd_defconfig @@ -1,2 +1,3 @@ CONFIG_BLACKFIN=y CONFIG_TARGET_BF518F_EZBRD=y +CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED=y diff --git a/configs/bf526-ezbrd_defconfig b/configs/bf526-ezbrd_defconfig index 4a45223..da06d3a 100644 --- a/configs/bf526-ezbrd_defconfig +++ b/configs/bf526-ezbrd_defconfig @@ -1,2 +1,3 @@ CONFIG_BLACKFIN=y CONFIG_TARGET_BF526_EZBRD=y +CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED=y diff --git a/configs/bf527-ad7160-eval_defconfig b/configs/bf527-ad7160-eval_defconfig index d9db715..47f53c9 100644 --- a/configs/bf527-ad7160-eval_defconfig +++ b/configs/bf527-ad7160-eval_defconfig @@ -1,2 +1,3 @@ CONFIG_BLACKFIN=y CONFIG_TARGET_BF527_AD7160_EVAL=y +CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED=y diff --git a/configs/bf527-ezkit-v2_defconfig b/configs/bf527-ezkit-v2_defconfig index aedbb96..e250e10 100644 --- a/configs/bf527-ezkit-v2_defconfig +++ b/configs/bf527-ezkit-v2_defconfig @@ -1,3 +1,4 @@ CONFIG_SYS_EXTRA_OPTIONS="BF527_EZKIT_REV_2_1" CONFIG_BLACKFIN=y CONFIG_TARGET_BF527_EZKIT=y +CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED=y diff --git a/configs/bf527-ezkit_defconfig b/configs/bf527-ezkit_defconfig index 3ed77a6..69f6ef7 100644 --- a/configs/bf527-ezkit_defconfig +++ b/configs/bf527-ezkit_defconfig @@ -1,2 +1,3 @@ CONFIG_BLACKFIN=y CONFIG_TARGET_BF527_EZKIT=y +CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED=y diff --git a/configs/bf527-sdp_defconfig b/configs/bf527-sdp_defconfig index 0f8c28c..57f47e9 100644 --- a/configs/bf527-sdp_defconfig +++ b/configs/bf527-sdp_defconfig @@ -1,2 +1,3 @@ CONFIG_BLACKFIN=y CONFIG_TARGET_BF527_SDP=y +CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED=y diff --git a/configs/bf533-ezkit_defconfig b/configs/bf533-ezkit_defconfig index 217d4c3..57f8da1 100644 --- a/configs/bf533-ezkit_defconfig +++ b/configs/bf533-ezkit_defconfig @@ -1,2 +1,3 @@ CONFIG_BLACKFIN=y CONFIG_TARGET_BF533_EZKIT=y +CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED=y diff --git a/configs/bf533-stamp_defconfig b/configs/bf533-stamp_defconfig index a99b3c7..1bcf3d3 100644 --- a/configs/bf533-stamp_defconfig +++ b/configs/bf533-stamp_defconfig @@ -1,2 +1,3 @@ CONFIG_BLACKFIN=y CONFIG_TARGET_BF533_STAMP=y +CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED=y diff --git a/configs/bf537-stamp_defconfig b/configs/bf537-stamp_defconfig index d9daf7e..9b9a92f 100644 --- a/configs/bf537-stamp_defconfig +++ b/configs/bf537-stamp_defconfig @@ -1,2 +1,3 @@ CONFIG_BLACKFIN=y CONFIG_TARGET_BF537_STAMP=y +CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED=y diff --git a/configs/bf538f-ezkit_defconfig b/configs/bf538f-ezkit_defconfig index 0507cb2..1892151 100644 --- a/configs/bf538f-ezkit_defconfig +++ b/configs/bf538f-ezkit_defconfig @@ -1,2 +1,3 @@ CONFIG_BLACKFIN=y CONFIG_TARGET_BF538F_EZKIT=y +CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED=y diff --git a/configs/bf548-ezkit_defconfig b/configs/bf548-ezkit_defconfig index 7bb4064..5236984 100644 --- a/configs/bf548-ezkit_defconfig +++ b/configs/bf548-ezkit_defconfig @@ -1,2 +1,3 @@ CONFIG_BLACKFIN=y CONFIG_TARGET_BF548_EZKIT=y +CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED=y diff --git a/configs/bf561-acvilon_defconfig b/configs/bf561-acvilon_defconfig index ba8a418..098f31f 100644 --- a/configs/bf561-acvilon_defconfig +++ b/configs/bf561-acvilon_defconfig @@ -1,2 +1,3 @@ CONFIG_BLACKFIN=y CONFIG_TARGET_BF561_ACVILON=y +CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED=y diff --git a/configs/bf561-ezkit_defconfig b/configs/bf561-ezkit_defconfig index 7ceb1d9..5665288 100644 --- a/configs/bf561-ezkit_defconfig +++ b/configs/bf561-ezkit_defconfig @@ -1,2 +1,3 @@ CONFIG_BLACKFIN=y CONFIG_TARGET_BF561_EZKIT=y +CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED=y diff --git a/configs/br4_defconfig b/configs/br4_defconfig index 9d91933..5655d54 100644 --- a/configs/br4_defconfig +++ b/configs/br4_defconfig @@ -1,2 +1,3 @@ CONFIG_BLACKFIN=y CONFIG_TARGET_BR4=y +CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED=y diff --git a/configs/cardhu_defconfig b/configs/cardhu_defconfig index bb042b4..4466e98 100644 --- a/configs/cardhu_defconfig +++ b/configs/cardhu_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA30=y +S:CONFIG_TARGET_CARDHU=y +CONFIG_DEFAULT_DEVICE_TREE="tegra30-cardhu" diff --git a/configs/cm-bf527_defconfig b/configs/cm-bf527_defconfig index cb5110c..a6830b5 100644 --- a/configs/cm-bf527_defconfig +++ b/configs/cm-bf527_defconfig @@ -1,2 +1,3 @@ CONFIG_BLACKFIN=y CONFIG_TARGET_CM_BF527=y +CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED=y diff --git a/configs/cm-bf533_defconfig b/configs/cm-bf533_defconfig index aa38d0e..b9508ae 100644 --- a/configs/cm-bf533_defconfig +++ b/configs/cm-bf533_defconfig @@ -1,2 +1,3 @@ CONFIG_BLACKFIN=y CONFIG_TARGET_CM_BF533=y +CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED=y diff --git a/configs/cm-bf537e_defconfig b/configs/cm-bf537e_defconfig index b9deaae..a44eab7 100644 --- a/configs/cm-bf537e_defconfig +++ b/configs/cm-bf537e_defconfig @@ -1,2 +1,3 @@ CONFIG_BLACKFIN=y CONFIG_TARGET_CM_BF537E=y +CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED=y diff --git a/configs/cm-bf537u_defconfig b/configs/cm-bf537u_defconfig index 16f7ae1..29c33b9 100644 --- a/configs/cm-bf537u_defconfig +++ b/configs/cm-bf537u_defconfig @@ -1,2 +1,3 @@ CONFIG_BLACKFIN=y CONFIG_TARGET_CM_BF537U=y +CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED=y diff --git a/configs/cm-bf548_defconfig b/configs/cm-bf548_defconfig index e60306a..525f2e7 100644 --- a/configs/cm-bf548_defconfig +++ b/configs/cm-bf548_defconfig @@ -1,2 +1,3 @@ CONFIG_BLACKFIN=y CONFIG_TARGET_CM_BF548=y +CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED=y diff --git a/configs/cm-bf561_defconfig b/configs/cm-bf561_defconfig index 1b9301c..062bfeb 100644 --- a/configs/cm-bf561_defconfig +++ b/configs/cm-bf561_defconfig @@ -1,2 +1,3 @@ CONFIG_BLACKFIN=y CONFIG_TARGET_CM_BF561=y +CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED=y diff --git a/configs/colibri_t20_iris_defconfig b/configs/colibri_t20_iris_defconfig index b2a21e1..b76f78b 100644 --- a/configs/colibri_t20_iris_defconfig +++ b/configs/colibri_t20_iris_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA20=y +S:CONFIG_TARGET_COLIBRI_T20_IRIS=y +CONFIG_DEFAULT_DEVICE_TREE="tegra20-colibri_t20_iris" diff --git a/configs/colibri_t30_defconfig b/configs/colibri_t30_defconfig index abb41f3..b955303 100644 --- a/configs/colibri_t30_defconfig +++ b/configs/colibri_t30_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA30=y +S:CONFIG_TARGET_COLIBRI_T30=y +CONFIG_DEFAULT_DEVICE_TREE="tegra30-colibri" diff --git a/configs/controlcenterd_TRAILBLAZER_DEVELOP_defconfig b/configs/controlcenterd_TRAILBLAZER_DEVELOP_defconfig index be1a371..c8695ab 100644 --- a/configs/controlcenterd_TRAILBLAZER_DEVELOP_defconfig +++ b/configs/controlcenterd_TRAILBLAZER_DEVELOP_defconfig @@ -2,3 +2,4 @@ CONFIG_SYS_EXTRA_OPTIONS="TRAILBLAZER,SPIFLASH,DEVELOP" CONFIG_PPC=y CONFIG_MPC85xx=y CONFIG_TARGET_CONTROLCENTERD=y +# CONFIG_CMD_BOOTM is not set diff --git a/configs/controlcenterd_TRAILBLAZER_defconfig b/configs/controlcenterd_TRAILBLAZER_defconfig index ab548a6..730b96e 100644 --- a/configs/controlcenterd_TRAILBLAZER_defconfig +++ b/configs/controlcenterd_TRAILBLAZER_defconfig @@ -2,3 +2,4 @@ CONFIG_SYS_EXTRA_OPTIONS="TRAILBLAZER,SPIFLASH" CONFIG_PPC=y CONFIG_MPC85xx=y CONFIG_TARGET_CONTROLCENTERD=y +# CONFIG_CMD_BOOTM is not set diff --git a/configs/coreboot-x86_defconfig b/configs/coreboot-x86_defconfig index a06c527..6249db7 100644 --- a/configs/coreboot-x86_defconfig +++ b/configs/coreboot-x86_defconfig @@ -1,3 +1,5 @@ CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0x01110000" CONFIG_X86=y CONFIG_TARGET_COREBOOT=y +CONFIG_OF_CONTROL=y +CONFIG_DEFAULT_DEVICE_TREE="link" diff --git a/configs/dalmore_defconfig b/configs/dalmore_defconfig index 70677aa..f704c75 100644 --- a/configs/dalmore_defconfig +++ b/configs/dalmore_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA114=y +S:CONFIG_TARGET_DALMORE=y +CONFIG_DEFAULT_DEVICE_TREE="tegra114-dalmore" diff --git a/configs/harmony_defconfig b/configs/harmony_defconfig index a52231b..d99b429 100644 --- a/configs/harmony_defconfig +++ b/configs/harmony_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA20=y +S:CONFIG_TARGET_HARMONY=y +CONFIG_DEFAULT_DEVICE_TREE="tegra20-harmony" diff --git a/configs/ip04_defconfig b/configs/ip04_defconfig index 4f9895a..ba737ae 100644 --- a/configs/ip04_defconfig +++ b/configs/ip04_defconfig @@ -1,2 +1,3 @@ CONFIG_BLACKFIN=y CONFIG_TARGET_IP04=y +CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED=y diff --git a/configs/jetson-tk1_defconfig b/configs/jetson-tk1_defconfig index 00eac92..ef1d41c 100644 --- a/configs/jetson-tk1_defconfig +++ b/configs/jetson-tk1_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA124=y +S:CONFIG_TARGET_JETSON_TK1=y +CONFIG_DEFAULT_DEVICE_TREE="tegra124-jetson-tk1" diff --git a/configs/kwb_defconfig b/configs/kwb_defconfig index 5082ff7..106a24f 100644 --- a/configs/kwb_defconfig +++ b/configs/kwb_defconfig @@ -2,3 +2,4 @@ CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1" +S:CONFIG_ARM=y +S:CONFIG_TARGET_KWB=y +# CONFIG_CMD_CRC32 is not set diff --git a/configs/medcom-wide_defconfig b/configs/medcom-wide_defconfig index e9a3930..35963e9 100644 --- a/configs/medcom-wide_defconfig +++ b/configs/medcom-wide_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA20=y +S:CONFIG_TARGET_MEDCOM_WIDE=y +CONFIG_DEFAULT_DEVICE_TREE="tegra20-medcom-wide" diff --git a/configs/microblaze-generic_defconfig b/configs/microblaze-generic_defconfig index 7f23786..5cfd596 100644 --- a/configs/microblaze-generic_defconfig +++ b/configs/microblaze-generic_defconfig @@ -1,3 +1,6 @@ CONFIG_SPL=y +S:CONFIG_MICROBLAZE=y +S:CONFIG_TARGET_MICROBLAZE_GENERIC=y +CONFIG_OF_CONTROL=y +CONFIG_OF_EMBED=y +CONFIG_DEFAULT_DEVICE_TREE="microblaze-generic" diff --git a/configs/odroid_defconfig b/configs/odroid_defconfig index a1c7ac5..a842837 100644 --- a/configs/odroid_defconfig +++ b/configs/odroid_defconfig @@ -1,3 +1,5 @@ CONFIG_ARM=y CONFIG_ARCH_EXYNOS=y CONFIG_TARGET_ODROID=y +CONFIG_OF_CONTROL=y +CONFIG_DEFAULT_DEVICE_TREE="exynos4412-odroid" diff --git a/configs/origen_defconfig b/configs/origen_defconfig index aa92381..2a7f83b 100644 --- a/configs/origen_defconfig +++ b/configs/origen_defconfig @@ -2,3 +2,5 @@ CONFIG_SPL=y +S:CONFIG_ARM=y +S:CONFIG_ARCH_EXYNOS=y +S:CONFIG_TARGET_ORIGEN=y +CONFIG_OF_CONTROL=y +CONFIG_DEFAULT_DEVICE_TREE="exynos4210-origen" diff --git a/configs/paz00_defconfig b/configs/paz00_defconfig index 05974eb..d2d36a5 100644 --- a/configs/paz00_defconfig +++ b/configs/paz00_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA20=y +S:CONFIG_TARGET_PAZ00=y +CONFIG_DEFAULT_DEVICE_TREE="tegra20-paz00" diff --git a/configs/peach-pit_defconfig b/configs/peach-pit_defconfig index 797d5e0..b944b3b 100644 --- a/configs/peach-pit_defconfig +++ b/configs/peach-pit_defconfig @@ -2,3 +2,4 @@ CONFIG_SPL=y +S:CONFIG_ARM=y +S:CONFIG_ARCH_EXYNOS=y +S:CONFIG_TARGET_PEACH_PIT=y +CONFIG_DEFAULT_DEVICE_TREE="exynos5420-peach-pit" diff --git a/configs/plutux_defconfig b/configs/plutux_defconfig index 60e80ff..d2743b8 100644 --- a/configs/plutux_defconfig +++ b/configs/plutux_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA20=y +S:CONFIG_TARGET_PLUTUX=y +CONFIG_DEFAULT_DEVICE_TREE="tegra20-plutux" diff --git a/configs/pr1_defconfig b/configs/pr1_defconfig index a8784c1..793a4e8 100644 --- a/configs/pr1_defconfig +++ b/configs/pr1_defconfig @@ -1,2 +1,3 @@ CONFIG_BLACKFIN=y CONFIG_TARGET_PR1=y +CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED=y diff --git a/configs/s5pc210_universal_defconfig b/configs/s5pc210_universal_defconfig index a9a3446..cdce39f 100644 --- a/configs/s5pc210_universal_defconfig +++ b/configs/s5pc210_universal_defconfig @@ -1,3 +1,5 @@ CONFIG_ARM=y CONFIG_ARCH_EXYNOS=y CONFIG_TARGET_S5PC210_UNIVERSAL=y +CONFIG_OF_CONTROL=y +CONFIG_DEFAULT_DEVICE_TREE="exynos4210-universal_c210" diff --git a/configs/sandbox_defconfig b/configs/sandbox_defconfig index e69de29..47d8400 100644 --- a/configs/sandbox_defconfig +++ b/configs/sandbox_defconfig @@ -0,0 +1,3 @@ +CONFIG_OF_CONTROL=y +CONFIG_OF_HOSTFILE=y +CONFIG_DEFAULT_DEVICE_TREE="sandbox" diff --git a/configs/seaboard_defconfig b/configs/seaboard_defconfig index 516e760..ddf2cd6 100644 --- a/configs/seaboard_defconfig +++ b/configs/seaboard_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA20=y +S:CONFIG_TARGET_SEABOARD=y +CONFIG_DEFAULT_DEVICE_TREE="tegra20-seaboard" diff --git a/configs/smdk5250_defconfig b/configs/smdk5250_defconfig index 465a75a..9b76d0d 100644 --- a/configs/smdk5250_defconfig +++ b/configs/smdk5250_defconfig @@ -2,3 +2,4 @@ CONFIG_SPL=y +S:CONFIG_ARM=y +S:CONFIG_ARCH_EXYNOS=y +S:CONFIG_TARGET_SMDK5250=y +CONFIG_DEFAULT_DEVICE_TREE="exynos5250-smdk5250" diff --git a/configs/smdk5420_defconfig b/configs/smdk5420_defconfig index 9dc43f2..8cf673d 100644 --- a/configs/smdk5420_defconfig +++ b/configs/smdk5420_defconfig @@ -2,3 +2,4 @@ CONFIG_SPL=y +S:CONFIG_ARM=y +S:CONFIG_ARCH_EXYNOS=y +S:CONFIG_TARGET_SMDK5420=y +CONFIG_DEFAULT_DEVICE_TREE="exynos5420-smdk5420" diff --git a/configs/snow_defconfig b/configs/snow_defconfig index 2d59046..14ed793 100644 --- a/configs/snow_defconfig +++ b/configs/snow_defconfig @@ -2,3 +2,4 @@ CONFIG_SPL=y +S:CONFIG_ARM=y +S:CONFIG_ARCH_EXYNOS=y +S:CONFIG_TARGET_SNOW=y +CONFIG_DEFAULT_DEVICE_TREE="exynos5250-snow" diff --git a/configs/tcm-bf518_defconfig b/configs/tcm-bf518_defconfig index a9d5da0..0c9ae4d 100644 --- a/configs/tcm-bf518_defconfig +++ b/configs/tcm-bf518_defconfig @@ -1,2 +1,3 @@ CONFIG_BLACKFIN=y CONFIG_TARGET_TCM_BF518=y +CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED=y diff --git a/configs/tcm-bf537_defconfig b/configs/tcm-bf537_defconfig index fe9de13..6d604b6 100644 --- a/configs/tcm-bf537_defconfig +++ b/configs/tcm-bf537_defconfig @@ -1,2 +1,3 @@ CONFIG_BLACKFIN=y CONFIG_TARGET_TCM_BF537=y +CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED=y diff --git a/configs/tec-ng_defconfig b/configs/tec-ng_defconfig index e4a31cc..fabd34a 100644 --- a/configs/tec-ng_defconfig +++ b/configs/tec-ng_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA30=y +S:CONFIG_TARGET_TEC_NG=y +CONFIG_DEFAULT_DEVICE_TREE="tegra30-tec-ng" diff --git a/configs/tec_defconfig b/configs/tec_defconfig index 62a9542..d3cafa7 100644 --- a/configs/tec_defconfig +++ b/configs/tec_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA20=y +S:CONFIG_TARGET_TEC=y +CONFIG_DEFAULT_DEVICE_TREE="tegra20-tec" diff --git a/configs/trats2_defconfig b/configs/trats2_defconfig index fa82724..1b98b73 100644 --- a/configs/trats2_defconfig +++ b/configs/trats2_defconfig @@ -1,3 +1,5 @@ CONFIG_ARM=y CONFIG_ARCH_EXYNOS=y CONFIG_TARGET_TRATS2=y +CONFIG_OF_CONTROL=y +CONFIG_DEFAULT_DEVICE_TREE="exynos4412-trats2" diff --git a/configs/trats_defconfig b/configs/trats_defconfig index f888a51..901a014 100644 --- a/configs/trats_defconfig +++ b/configs/trats_defconfig @@ -1,3 +1,5 @@ CONFIG_ARM=y CONFIG_ARCH_EXYNOS=y CONFIG_TARGET_TRATS=y +CONFIG_OF_CONTROL=y +CONFIG_DEFAULT_DEVICE_TREE="exynos4210-trats" diff --git a/configs/trimslice_defconfig b/configs/trimslice_defconfig index 94f23e3..0b2a6d0 100644 --- a/configs/trimslice_defconfig +++ b/configs/trimslice_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA20=y +S:CONFIG_TARGET_TRIMSLICE=y +CONFIG_DEFAULT_DEVICE_TREE="tegra20-trimslice" diff --git a/configs/tseries_mmc_defconfig b/configs/tseries_mmc_defconfig index ea70705..6eda869 100644 --- a/configs/tseries_mmc_defconfig +++ b/configs/tseries_mmc_defconfig @@ -2,3 +2,4 @@ CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,EMMC_BOOT" +S:CONFIG_ARM=y +S:CONFIG_TARGET_TSERIES=y +# CONFIG_CMD_CRC32 is not set diff --git a/configs/tseries_nand_defconfig b/configs/tseries_nand_defconfig index 599d52c..bd06d83 100644 --- a/configs/tseries_nand_defconfig +++ b/configs/tseries_nand_defconfig @@ -2,3 +2,4 @@ CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,NAND" +S:CONFIG_ARM=y +S:CONFIG_TARGET_TSERIES=y +# CONFIG_CMD_CRC32 is not set diff --git a/configs/tseries_spi_defconfig b/configs/tseries_spi_defconfig index 7e57020..32ccc4e 100644 --- a/configs/tseries_spi_defconfig +++ b/configs/tseries_spi_defconfig @@ -2,3 +2,4 @@ CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,SPI_BOOT,EMMC_BOOT" +S:CONFIG_ARM=y +S:CONFIG_TARGET_TSERIES=y +# CONFIG_CMD_CRC32 is not set diff --git a/configs/vct_platinum_onenand_small_defconfig b/configs/vct_platinum_onenand_small_defconfig index f7b3a91..58c7995 100644 --- a/configs/vct_platinum_onenand_small_defconfig +++ b/configs/vct_platinum_onenand_small_defconfig @@ -1,3 +1,4 @@ CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUM,VCT_ONENAND,VCT_SMALL_IMAGE" CONFIG_MIPS=y CONFIG_TARGET_VCT=y +# CONFIG_CMD_CRC32 is not set diff --git a/configs/vct_platinum_small_defconfig b/configs/vct_platinum_small_defconfig index 15eef48..f4f56c4 100644 --- a/configs/vct_platinum_small_defconfig +++ b/configs/vct_platinum_small_defconfig @@ -1,3 +1,4 @@ CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUM,VCT_SMALL_IMAGE" CONFIG_MIPS=y CONFIG_TARGET_VCT=y +# CONFIG_CMD_CRC32 is not set diff --git a/configs/vct_platinumavc_onenand_small_defconfig b/configs/vct_platinumavc_onenand_small_defconfig index e0e8e44..31b4c9a 100644 --- a/configs/vct_platinumavc_onenand_small_defconfig +++ b/configs/vct_platinumavc_onenand_small_defconfig @@ -1,3 +1,4 @@ CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUMAVC,VCT_ONENAND,VCT_SMALL_IMAGE" CONFIG_MIPS=y CONFIG_TARGET_VCT=y +# CONFIG_CMD_CRC32 is not set diff --git a/configs/vct_platinumavc_small_defconfig b/configs/vct_platinumavc_small_defconfig index d8209d1..23f6561 100644 --- a/configs/vct_platinumavc_small_defconfig +++ b/configs/vct_platinumavc_small_defconfig @@ -1,3 +1,4 @@ CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUMAVC,VCT_SMALL_IMAGE" CONFIG_MIPS=y CONFIG_TARGET_VCT=y +# CONFIG_CMD_CRC32 is not set diff --git a/configs/vct_premium_onenand_small_defconfig b/configs/vct_premium_onenand_small_defconfig index 220f875..354793e 100644 --- a/configs/vct_premium_onenand_small_defconfig +++ b/configs/vct_premium_onenand_small_defconfig @@ -1,3 +1,4 @@ CONFIG_SYS_EXTRA_OPTIONS="VCT_PREMIUM,VCT_ONENAND,VCT_SMALL_IMAGE" CONFIG_MIPS=y CONFIG_TARGET_VCT=y +# CONFIG_CMD_CRC32 is not set diff --git a/configs/vct_premium_small_defconfig b/configs/vct_premium_small_defconfig index 5335472..a23ddb7 100644 --- a/configs/vct_premium_small_defconfig +++ b/configs/vct_premium_small_defconfig @@ -1,3 +1,4 @@ CONFIG_SYS_EXTRA_OPTIONS="VCT_PREMIUM,VCT_SMALL_IMAGE" CONFIG_MIPS=y CONFIG_TARGET_VCT=y +# CONFIG_CMD_CRC32 is not set diff --git a/configs/venice2_defconfig b/configs/venice2_defconfig index dfc5407..c12dae9 100644 --- a/configs/venice2_defconfig +++ b/configs/venice2_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA124=y +S:CONFIG_TARGET_VENICE2=y +CONFIG_DEFAULT_DEVICE_TREE="tegra124-venice2" diff --git a/configs/ventana_defconfig b/configs/ventana_defconfig index 845e241..f62ab6b 100644 --- a/configs/ventana_defconfig +++ b/configs/ventana_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA20=y +S:CONFIG_TARGET_VENTANA=y +CONFIG_DEFAULT_DEVICE_TREE="tegra20-ventana" diff --git a/configs/vexpress_aemv8a_defconfig b/configs/vexpress_aemv8a_defconfig index 9e0a175..b463a33 100644 --- a/configs/vexpress_aemv8a_defconfig +++ b/configs/vexpress_aemv8a_defconfig @@ -1,2 +1,3 @@ CONFIG_ARM=y CONFIG_TARGET_VEXPRESS_AEMV8A=y +CONFIG_DEFAULT_DEVICE_TREE="vexpress64" diff --git a/configs/vexpress_aemv8a_semi_defconfig b/configs/vexpress_aemv8a_semi_defconfig index 8fdf4e0..0035ccd 100644 --- a/configs/vexpress_aemv8a_semi_defconfig +++ b/configs/vexpress_aemv8a_semi_defconfig @@ -1,3 +1,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SEMIHOSTING,BASE_FVP" CONFIG_ARM=y CONFIG_TARGET_VEXPRESS_AEMV8A=y +CONFIG_DEFAULT_DEVICE_TREE="vexpress64" diff --git a/configs/whistler_defconfig b/configs/whistler_defconfig index 8c07c18..9553eb8 100644 --- a/configs/whistler_defconfig +++ b/configs/whistler_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA20=y +S:CONFIG_TARGET_WHISTLER=y +CONFIG_DEFAULT_DEVICE_TREE="tegra20-whistler" diff --git a/configs/zynq_microzed_defconfig b/configs/zynq_microzed_defconfig index 3aedb35..9588849 100644 --- a/configs/zynq_microzed_defconfig +++ b/configs/zynq_microzed_defconfig @@ -2,3 +2,5 @@ CONFIG_SPL=y +S:CONFIG_ARM=y +S:CONFIG_ZYNQ=y +S:CONFIG_TARGET_ZYNQ_MICROZED=y +CONFIG_OF_CONTROL=y +CONFIG_DEFAULT_DEVICE_TREE="zynq-microzed" diff --git a/configs/zynq_zc70x_defconfig b/configs/zynq_zc70x_defconfig index 04c8def..cf50730 100644 --- a/configs/zynq_zc70x_defconfig +++ b/configs/zynq_zc70x_defconfig @@ -2,3 +2,5 @@ CONFIG_SPL=y +S:CONFIG_ARM=y +S:CONFIG_ZYNQ=y +S:CONFIG_TARGET_ZYNQ_ZC70X=y +CONFIG_OF_CONTROL=y +CONFIG_DEFAULT_DEVICE_TREE="zynq-zc702" diff --git a/configs/zynq_zc770_xm010_defconfig b/configs/zynq_zc770_xm010_defconfig index 1178b40..8bb405d 100644 --- a/configs/zynq_zc770_xm010_defconfig +++ b/configs/zynq_zc770_xm010_defconfig @@ -3,3 +3,5 @@ CONFIG_SYS_EXTRA_OPTIONS="ZC770_XM010" +S:CONFIG_ARM=y +S:CONFIG_ZYNQ=y +S:CONFIG_TARGET_ZYNQ_ZC770=y +CONFIG_OF_CONTROL=y +CONFIG_DEFAULT_DEVICE_TREE="zynq-zc770-xm010" diff --git a/configs/zynq_zc770_xm012_defconfig b/configs/zynq_zc770_xm012_defconfig index 52c2121..0ba5da5 100644 --- a/configs/zynq_zc770_xm012_defconfig +++ b/configs/zynq_zc770_xm012_defconfig @@ -3,3 +3,5 @@ CONFIG_SYS_EXTRA_OPTIONS="ZC770_XM012" +S:CONFIG_ARM=y +S:CONFIG_ZYNQ=y +S:CONFIG_TARGET_ZYNQ_ZC770=y +CONFIG_OF_CONTROL=y +CONFIG_DEFAULT_DEVICE_TREE="zynq-zc770-xm012" diff --git a/configs/zynq_zc770_xm013_defconfig b/configs/zynq_zc770_xm013_defconfig index 836809a..13f8112 100644 --- a/configs/zynq_zc770_xm013_defconfig +++ b/configs/zynq_zc770_xm013_defconfig @@ -3,3 +3,5 @@ CONFIG_SYS_EXTRA_OPTIONS="ZC770_XM013" +S:CONFIG_ARM=y +S:CONFIG_ZYNQ=y +S:CONFIG_TARGET_ZYNQ_ZC770=y +CONFIG_OF_CONTROL=y +CONFIG_DEFAULT_DEVICE_TREE="zynq-zc770-xm013" diff --git a/configs/zynq_zed_defconfig b/configs/zynq_zed_defconfig index 2337906..eb057fa 100644 --- a/configs/zynq_zed_defconfig +++ b/configs/zynq_zed_defconfig @@ -2,3 +2,5 @@ CONFIG_SPL=y +S:CONFIG_ARM=y +S:CONFIG_ZYNQ=y +S:CONFIG_TARGET_ZYNQ_ZED=y +CONFIG_OF_CONTROL=y +CONFIG_DEFAULT_DEVICE_TREE="zynq-zed" diff --git a/disk/part.c b/disk/part.c index ecc5e7e..cfd77b0 100644 --- a/disk/part.c +++ b/disk/part.c @@ -133,7 +133,7 @@ typedef lbaint_t lba512_t; * Overflowless variant of (block_count * mul_by / div_by) * when div_by > mul_by */ -static lba512_t lba512_muldiv (lba512_t block_count, lba512_t mul_by, lba512_t div_by) +static lba512_t lba512_muldiv(lba512_t block_count, lba512_t mul_by, lba512_t div_by) { lba512_t bc_quot, bc_rem; @@ -215,7 +215,8 @@ void dev_print (block_dev_desc_t *dev_desc) lba512 = (lba * (dev_desc->blksz/512)); /* round to 1 digit */ - mb = lba512_muldiv(lba512, 10, 2048); /* 2048 = (1024 * 1024) / 512 MB */ + /* 2048 = (1024 * 1024) / 512 MB */ + mb = lba512_muldiv(lba512, 10, 2048); mb_quot = mb / 10; mb_rem = mb - (10 * mb_quot); @@ -248,7 +249,7 @@ void dev_print (block_dev_desc_t *dev_desc) #ifdef HAVE_BLOCK_DEVICE -void init_part (block_dev_desc_t * dev_desc) +void init_part(block_dev_desc_t *dev_desc) { #ifdef CONFIG_ISO_PARTITION if (test_part_iso(dev_desc) == 0) { @@ -295,7 +296,7 @@ void init_part (block_dev_desc_t * dev_desc) defined(CONFIG_AMIGA_PARTITION) || \ defined(CONFIG_EFI_PARTITION) -static void print_part_header (const char *type, block_dev_desc_t * dev_desc) +static void print_part_header(const char *type, block_dev_desc_t *dev_desc) { puts ("\nPartition Map for "); switch (dev_desc->if_type) { diff --git a/doc/README.android-fastboot b/doc/README.android-fastboot index 4045727..1677609 100644 --- a/doc/README.android-fastboot +++ b/doc/README.android-fastboot @@ -6,8 +6,9 @@ Overview The protocol that is used over USB is described in README.android-fastboot-protocol in same directory. -The current implementation does not yet support the flash and erase -commands. +The current implementation does not yet support the erase command or the +"oem format" command, and there is minimal support for the flash command; +it only supports eMMC devices. Client installation =================== diff --git a/doc/README.clang b/doc/README.clang index 9ad689f..52495d3 100644 --- a/doc/README.clang +++ b/doc/README.clang @@ -34,21 +34,21 @@ make HOSTCC=clang CC="clang -target $TRIPLET -mllvm -arm-use-movt=0 -no-integrat FreeBSD 11 (Current): -------------------- Since llvm 3.4 is currently in the base system, the integrated as is -incapable of building U-Boot. Therefore gas from devel/arm-eabi-binutils +incapable of building U-Boot. Therefore gas from devel/arm-gnueabi-binutils is used instead. It needs a symlinks to be picked up correctly though: -ln -s /usr/local/bin/arm-eabi-as /usr/bin/arm-freebsd-eabi-as +ln -s /usr/local/bin/arm-gnueabi-freebsd-as /usr/bin/arm-freebsd-eabi-as # The following commands compile U-Boot using the clang xdev toolchain. # NOTE: CROSS_COMPILE and target differ on purpose! -export CROSS_COMPILE=arm-eabi- +export CROSS_COMPILE=arm-gnueabi-freebsd- gmake CC="clang -target arm-freebsd-eabi --sysroot /usr/arm-freebsd -no-integrated-as -mllvm -arm-use-movt=0" rpi_b_defconfig gmake CC="clang -target arm-freebsd-eabi --sysroot /usr/arm-freebsd -no-integrated-as -mllvm -arm-use-movt=0" -j8 Given that u-boot will default to gcc, above commands can be simplified with a simple wrapper script, listed below. -/usr/local/bin/arm-eabi-gcc +/usr/local/bin/arm-gnueabi-freebsd-gcc --- #!/bin/sh diff --git a/doc/README.nand b/doc/README.nand index e29188f..320d752 100644 --- a/doc/README.nand +++ b/doc/README.nand @@ -215,6 +215,12 @@ Configuration Options: Platform specific options ========================= + CONFIG_NAND_DENALI + Enables the denali.c driver. + + CONFIG_SYS_NAND_DENALI_64BIT + Indicates that the Denali NAND controller is the 64-bit variant. + CONFIG_NAND_OMAP_GPMC Enables omap_gpmc.c driver for OMAPx and AMxxxx platforms. GPMC controller is used for parallel NAND flash devices, and can diff --git a/drivers/Kconfig b/drivers/Kconfig new file mode 100644 index 0000000..128736d --- /dev/null +++ b/drivers/Kconfig @@ -0,0 +1,51 @@ +menu "Device Drivers" + +source "drivers/core/Kconfig" + +source "drivers/pci/Kconfig" + +source "drivers/pcmcia/Kconfig" + +source "drivers/mtd/Kconfig" + +source "drivers/block/Kconfig" + +source "drivers/misc/Kconfig" + +source "drivers/net/Kconfig" + +source "drivers/input/Kconfig" + +source "drivers/serial/Kconfig" + +source "drivers/tpm/Kconfig" + +source "drivers/i2c/Kconfig" + +source "drivers/spi/Kconfig" + +source "drivers/gpio/Kconfig" + +source "drivers/power/Kconfig" + +source "drivers/hwmon/Kconfig" + +source "drivers/watchdog/Kconfig" + +source "drivers/video/Kconfig" + +source "drivers/sound/Kconfig" + +source "drivers/usb/Kconfig" + +source "drivers/dfu/Kconfig" + +source "drivers/mmc/Kconfig" + +source "drivers/rtc/Kconfig" + +source "drivers/dma/Kconfig" + +source "drivers/crypto/Kconfig" + +endmenu diff --git a/drivers/Makefile b/drivers/Makefile index b22b109..d8361d9 100644 --- a/drivers/Makefile +++ b/drivers/Makefile @@ -1,3 +1,5 @@ +obj-$(CONFIG_DM) += core/ +obj-$(CONFIG_DM_DEMO) += demo/ obj-$(CONFIG_BIOSEMU) += bios_emulator/ obj-y += block/ obj-$(CONFIG_BOOTCOUNT_LIMIT) += bootcount/ @@ -16,3 +18,4 @@ obj-y += watchdog/ obj-$(CONFIG_QE) += qe/ obj-y += memory/ obj-y += pwm/ +obj-y += input/ diff --git a/drivers/block/Kconfig b/drivers/block/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/drivers/block/Kconfig diff --git a/drivers/core/Kconfig b/drivers/core/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/drivers/core/Kconfig diff --git a/drivers/core/Makefile b/drivers/core/Makefile index 90b2a7f..c7905b1 100644 --- a/drivers/core/Makefile +++ b/drivers/core/Makefile @@ -4,4 +4,4 @@ # SPDX-License-Identifier: GPL-2.0+ # -obj-$(CONFIG_DM) := device.o lists.o root.o uclass.o util.o +obj-y := device.o lists.o root.o uclass.o util.o diff --git a/drivers/crypto/Kconfig b/drivers/crypto/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/drivers/crypto/Kconfig diff --git a/drivers/demo/Makefile b/drivers/demo/Makefile index baaa2ba..171ddf3 100644 --- a/drivers/demo/Makefile +++ b/drivers/demo/Makefile @@ -4,6 +4,6 @@ # SPDX-License-Identifier: GPL-2.0+ # -obj-$(CONFIG_DM_DEMO) += demo-uclass.o demo-pdata.o +obj-y += demo-uclass.o demo-pdata.o obj-$(CONFIG_DM_DEMO_SIMPLE) += demo-simple.o obj-$(CONFIG_DM_DEMO_SHAPE) += demo-shape.o diff --git a/drivers/dfu/Kconfig b/drivers/dfu/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/drivers/dfu/Kconfig diff --git a/drivers/dma/Kconfig b/drivers/dma/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/drivers/dma/Kconfig diff --git a/drivers/dma/fsl_dma.c b/drivers/dma/fsl_dma.c index 45e49c7..7ef7f12 100644 --- a/drivers/dma/fsl_dma.c +++ b/drivers/dma/fsl_dma.c @@ -96,7 +96,7 @@ int dmacpy(phys_addr_t dest, phys_addr_t src, phys_size_t count) { uint xfer_size; while (count) { - xfer_size = MIN(FSL_DMA_MAX_SIZE, count); + xfer_size = min(FSL_DMA_MAX_SIZE, count); out_dma32(&dma->dar, (u32) (dest & 0xFFFFFFFF)); out_dma32(&dma->sar, (u32) (src & 0xFFFFFFFF)); diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/drivers/gpio/Kconfig diff --git a/drivers/hwmon/Kconfig b/drivers/hwmon/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/drivers/hwmon/Kconfig diff --git a/drivers/i2c/Kconfig b/drivers/i2c/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/drivers/i2c/Kconfig diff --git a/drivers/i2c/ihs_i2c.c b/drivers/i2c/ihs_i2c.c index fe66ce2..19fbe59 100644 --- a/drivers/i2c/ihs_i2c.c +++ b/drivers/i2c/ihs_i2c.c @@ -84,7 +84,7 @@ static int ihs_i2c_address(uchar chip, uint addr, int alen, bool hold_bus) int shift = (alen-1) * 8; while (alen) { - int transfer = MIN(alen, 2); + int transfer = min(alen, 2); uchar buf[2]; bool is_last = alen <= transfer; @@ -113,7 +113,7 @@ static int ihs_i2c_access(struct i2c_adapter *adap, uchar chip, uint addr, return 1; while (len) { - int transfer = MIN(len, 2); + int transfer = min(len, 2); if (ihs_i2c_transfer(chip, buffer, transfer, read, len <= transfer)) diff --git a/drivers/input/Kconfig b/drivers/input/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/drivers/input/Kconfig diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/drivers/misc/Kconfig diff --git a/drivers/mmc/Kconfig b/drivers/mmc/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/drivers/mmc/Kconfig diff --git a/drivers/mmc/fsl_esdhc.c b/drivers/mmc/fsl_esdhc.c index 97d0389..2640607 100644 --- a/drivers/mmc/fsl_esdhc.c +++ b/drivers/mmc/fsl_esdhc.c @@ -610,7 +610,7 @@ int fsl_esdhc_initialize(bd_t *bis, struct fsl_esdhc_cfg *cfg) #endif cfg->cfg.f_min = 400000; - cfg->cfg.f_max = MIN(gd->arch.sdhc_clk, 52000000); + cfg->cfg.f_max = min(gd->arch.sdhc_clk, 52000000); cfg->cfg.b_max = CONFIG_SYS_MMC_MAX_BLK_COUNT; diff --git a/drivers/mtd/Kconfig b/drivers/mtd/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/drivers/mtd/Kconfig diff --git a/drivers/mtd/nand/Makefile b/drivers/mtd/nand/Makefile index bf1312a..f298f84 100644 --- a/drivers/mtd/nand/Makefile +++ b/drivers/mtd/nand/Makefile @@ -42,6 +42,7 @@ obj-$(CONFIG_NAND_ECC_BCH) += nand_bch.o obj-$(CONFIG_NAND_ATMEL) += atmel_nand.o obj-$(CONFIG_DRIVER_NAND_BFIN) += bfin_nand.o obj-$(CONFIG_NAND_DAVINCI) += davinci_nand.o +obj-$(CONFIG_NAND_DENALI) += denali.o obj-$(CONFIG_NAND_FSL_ELBC) += fsl_elbc_nand.o obj-$(CONFIG_NAND_FSL_IFC) += fsl_ifc_nand.o obj-$(CONFIG_NAND_FSL_UPM) += fsl_upm.o diff --git a/drivers/mtd/nand/am335x_spl_bch.c b/drivers/mtd/nand/am335x_spl_bch.c index ce65d8e..bf8b2ee 100644 --- a/drivers/mtd/nand/am335x_spl_bch.c +++ b/drivers/mtd/nand/am335x_spl_bch.c @@ -64,14 +64,18 @@ static int nand_command(int block, int page, uint32_t offs, NAND_CTRL_ALE | NAND_CTRL_CHANGE); /* A[7:0] */ hwctrl(&nand_info[0], (offs >> 8) & 0xff, NAND_CTRL_ALE); /* A[11:9] */ /* Row address */ - hwctrl(&nand_info[0], (page_addr & 0xff), NAND_CTRL_ALE); /* A[19:12] */ - hwctrl(&nand_info[0], ((page_addr >> 8) & 0xff), + if (cmd != NAND_CMD_RNDOUT) { + hwctrl(&nand_info[0], (page_addr & 0xff), + NAND_CTRL_ALE); /* A[19:12] */ + hwctrl(&nand_info[0], ((page_addr >> 8) & 0xff), NAND_CTRL_ALE); /* A[27:20] */ #ifdef CONFIG_SYS_NAND_5_ADDR_CYCLE - /* One more address cycle for devices > 128MiB */ - hwctrl(&nand_info[0], (page_addr >> 16) & 0x0f, + /* One more address cycle for devices > 128MiB */ + hwctrl(&nand_info[0], (page_addr >> 16) & 0x0f, NAND_CTRL_ALE); /* A[31:28] */ #endif + } + hwctrl(&nand_info[0], NAND_CMD_NONE, NAND_NCE | NAND_CTRL_CHANGE); if (cmd == NAND_CMD_READ0) { diff --git a/drivers/mtd/nand/denali.c b/drivers/mtd/nand/denali.c new file mode 100644 index 0000000..ba3de1a --- /dev/null +++ b/drivers/mtd/nand/denali.c @@ -0,0 +1,1205 @@ +/* + * Copyright (C) 2014 Panasonic Corporation + * Copyright (C) 2013-2014, Altera Corporation <www.altera.com> + * Copyright (C) 2009-2010, Intel Corporation and its suppliers. + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include <common.h> +#include <malloc.h> +#include <nand.h> +#include <asm/errno.h> +#include <asm/io.h> + +#include "denali.h" + +#define NAND_DEFAULT_TIMINGS -1 + +static int onfi_timing_mode = NAND_DEFAULT_TIMINGS; + +/* We define a macro here that combines all interrupts this driver uses into + * a single constant value, for convenience. */ +#define DENALI_IRQ_ALL (INTR_STATUS__DMA_CMD_COMP | \ + INTR_STATUS__ECC_TRANSACTION_DONE | \ + INTR_STATUS__ECC_ERR | \ + INTR_STATUS__PROGRAM_FAIL | \ + INTR_STATUS__LOAD_COMP | \ + INTR_STATUS__PROGRAM_COMP | \ + INTR_STATUS__TIME_OUT | \ + INTR_STATUS__ERASE_FAIL | \ + INTR_STATUS__RST_COMP | \ + INTR_STATUS__ERASE_COMP | \ + INTR_STATUS__ECC_UNCOR_ERR | \ + INTR_STATUS__INT_ACT | \ + INTR_STATUS__LOCKED_BLK) + +/* indicates whether or not the internal value for the flash bank is + * valid or not */ +#define CHIP_SELECT_INVALID -1 + +#define SUPPORT_8BITECC 1 + +/* + * this macro allows us to convert from an MTD structure to our own + * device context (denali) structure. + */ +#define mtd_to_denali(m) (((struct nand_chip *)mtd->priv)->priv) + +/* These constants are defined by the driver to enable common driver + * configuration options. */ +#define SPARE_ACCESS 0x41 +#define MAIN_ACCESS 0x42 +#define MAIN_SPARE_ACCESS 0x43 + +#define DENALI_UNLOCK_START 0x10 +#define DENALI_UNLOCK_END 0x11 +#define DENALI_LOCK 0x21 +#define DENALI_LOCK_TIGHT 0x31 +#define DENALI_BUFFER_LOAD 0x60 +#define DENALI_BUFFER_WRITE 0x62 + +#define DENALI_READ 0 +#define DENALI_WRITE 0x100 + +/* types of device accesses. We can issue commands and get status */ +#define COMMAND_CYCLE 0 +#define ADDR_CYCLE 1 +#define STATUS_CYCLE 2 + +/* this is a helper macro that allows us to + * format the bank into the proper bits for the controller */ +#define BANK(x) ((x) << 24) + +/* Interrupts are cleared by writing a 1 to the appropriate status bit */ +static inline void clear_interrupt(struct denali_nand_info *denali, + uint32_t irq_mask) +{ + uint32_t intr_status_reg; + + intr_status_reg = INTR_STATUS(denali->flash_bank); + + writel(irq_mask, denali->flash_reg + intr_status_reg); +} + +static uint32_t read_interrupt_status(struct denali_nand_info *denali) +{ + uint32_t intr_status_reg; + + intr_status_reg = INTR_STATUS(denali->flash_bank); + + return readl(denali->flash_reg + intr_status_reg); +} + +static void clear_interrupts(struct denali_nand_info *denali) +{ + uint32_t status; + + status = read_interrupt_status(denali); + clear_interrupt(denali, status); + + denali->irq_status = 0; +} + +static void denali_irq_enable(struct denali_nand_info *denali, + uint32_t int_mask) +{ + int i; + + for (i = 0; i < denali->max_banks; ++i) + writel(int_mask, denali->flash_reg + INTR_EN(i)); +} + +static uint32_t wait_for_irq(struct denali_nand_info *denali, uint32_t irq_mask) +{ + unsigned long timeout = 1000000; + uint32_t intr_status; + + do { + intr_status = read_interrupt_status(denali) & DENALI_IRQ_ALL; + if (intr_status & irq_mask) { + denali->irq_status &= ~irq_mask; + /* our interrupt was detected */ + break; + } + udelay(1); + timeout--; + } while (timeout != 0); + + if (timeout == 0) { + /* timeout */ + printf("Denali timeout with interrupt status %08x\n", + read_interrupt_status(denali)); + intr_status = 0; + } + return intr_status; +} + +/* + * Certain operations for the denali NAND controller use an indexed mode to + * read/write data. The operation is performed by writing the address value + * of the command to the device memory followed by the data. This function + * abstracts this common operation. +*/ +static void index_addr(struct denali_nand_info *denali, + uint32_t address, uint32_t data) +{ + writel(address, denali->flash_mem + INDEX_CTRL_REG); + writel(data, denali->flash_mem + INDEX_DATA_REG); +} + +/* Perform an indexed read of the device */ +static void index_addr_read_data(struct denali_nand_info *denali, + uint32_t address, uint32_t *pdata) +{ + writel(address, denali->flash_mem + INDEX_CTRL_REG); + *pdata = readl(denali->flash_mem + INDEX_DATA_REG); +} + +/* We need to buffer some data for some of the NAND core routines. + * The operations manage buffering that data. */ +static void reset_buf(struct denali_nand_info *denali) +{ + denali->buf.head = 0; + denali->buf.tail = 0; +} + +static void write_byte_to_buf(struct denali_nand_info *denali, uint8_t byte) +{ + denali->buf.buf[denali->buf.tail++] = byte; +} + +/* resets a specific device connected to the core */ +static void reset_bank(struct denali_nand_info *denali) +{ + uint32_t irq_status; + uint32_t irq_mask = INTR_STATUS__RST_COMP | + INTR_STATUS__TIME_OUT; + + clear_interrupts(denali); + + writel(1 << denali->flash_bank, denali->flash_reg + DEVICE_RESET); + + irq_status = wait_for_irq(denali, irq_mask); + if (irq_status & INTR_STATUS__TIME_OUT) + debug("reset bank failed.\n"); +} + +/* Reset the flash controller */ +static uint32_t denali_nand_reset(struct denali_nand_info *denali) +{ + uint32_t i; + + for (i = 0; i < denali->max_banks; i++) + writel(INTR_STATUS__RST_COMP | INTR_STATUS__TIME_OUT, + denali->flash_reg + INTR_STATUS(i)); + + for (i = 0; i < denali->max_banks; i++) { + writel(1 << i, denali->flash_reg + DEVICE_RESET); + while (!(readl(denali->flash_reg + INTR_STATUS(i)) & + (INTR_STATUS__RST_COMP | INTR_STATUS__TIME_OUT))) + if (readl(denali->flash_reg + INTR_STATUS(i)) & + INTR_STATUS__TIME_OUT) + debug("NAND Reset operation timed out on bank" + " %d\n", i); + } + + for (i = 0; i < denali->max_banks; i++) + writel(INTR_STATUS__RST_COMP | INTR_STATUS__TIME_OUT, + denali->flash_reg + INTR_STATUS(i)); + + return 0; +} + +/* + * this routine calculates the ONFI timing values for a given mode and + * programs the clocking register accordingly. The mode is determined by + * the get_onfi_nand_para routine. + */ +static void nand_onfi_timing_set(struct denali_nand_info *denali, + uint16_t mode) +{ + uint32_t trea[6] = {40, 30, 25, 20, 20, 16}; + uint32_t trp[6] = {50, 25, 17, 15, 12, 10}; + uint32_t treh[6] = {30, 15, 15, 10, 10, 7}; + uint32_t trc[6] = {100, 50, 35, 30, 25, 20}; + uint32_t trhoh[6] = {0, 15, 15, 15, 15, 15}; + uint32_t trloh[6] = {0, 0, 0, 0, 5, 5}; + uint32_t tcea[6] = {100, 45, 30, 25, 25, 25}; + uint32_t tadl[6] = {200, 100, 100, 100, 70, 70}; + uint32_t trhw[6] = {200, 100, 100, 100, 100, 100}; + uint32_t trhz[6] = {200, 100, 100, 100, 100, 100}; + uint32_t twhr[6] = {120, 80, 80, 60, 60, 60}; + uint32_t tcs[6] = {70, 35, 25, 25, 20, 15}; + + uint32_t tclsrising = 1; + uint32_t data_invalid_rhoh, data_invalid_rloh, data_invalid; + uint32_t dv_window = 0; + uint32_t en_lo, en_hi; + uint32_t acc_clks; + uint32_t addr_2_data, re_2_we, re_2_re, we_2_re, cs_cnt; + + en_lo = DIV_ROUND_UP(trp[mode], CLK_X); + en_hi = DIV_ROUND_UP(treh[mode], CLK_X); + if ((en_hi * CLK_X) < (treh[mode] + 2)) + en_hi++; + + if ((en_lo + en_hi) * CLK_X < trc[mode]) + en_lo += DIV_ROUND_UP((trc[mode] - (en_lo + en_hi) * CLK_X), + CLK_X); + + if ((en_lo + en_hi) < CLK_MULTI) + en_lo += CLK_MULTI - en_lo - en_hi; + + while (dv_window < 8) { + data_invalid_rhoh = en_lo * CLK_X + trhoh[mode]; + + data_invalid_rloh = (en_lo + en_hi) * CLK_X + trloh[mode]; + + data_invalid = + data_invalid_rhoh < + data_invalid_rloh ? data_invalid_rhoh : data_invalid_rloh; + + dv_window = data_invalid - trea[mode]; + + if (dv_window < 8) + en_lo++; + } + + acc_clks = DIV_ROUND_UP(trea[mode], CLK_X); + + while (((acc_clks * CLK_X) - trea[mode]) < 3) + acc_clks++; + + if ((data_invalid - acc_clks * CLK_X) < 2) + debug("%s, Line %d: Warning!\n", __FILE__, __LINE__); + + addr_2_data = DIV_ROUND_UP(tadl[mode], CLK_X); + re_2_we = DIV_ROUND_UP(trhw[mode], CLK_X); + re_2_re = DIV_ROUND_UP(trhz[mode], CLK_X); + we_2_re = DIV_ROUND_UP(twhr[mode], CLK_X); + cs_cnt = DIV_ROUND_UP((tcs[mode] - trp[mode]), CLK_X); + if (!tclsrising) + cs_cnt = DIV_ROUND_UP(tcs[mode], CLK_X); + if (cs_cnt == 0) + cs_cnt = 1; + + if (tcea[mode]) { + while (((cs_cnt * CLK_X) + trea[mode]) < tcea[mode]) + cs_cnt++; + } + + /* Sighting 3462430: Temporary hack for MT29F128G08CJABAWP:B */ + if ((readl(denali->flash_reg + MANUFACTURER_ID) == 0) && + (readl(denali->flash_reg + DEVICE_ID) == 0x88)) + acc_clks = 6; + + writel(acc_clks, denali->flash_reg + ACC_CLKS); + writel(re_2_we, denali->flash_reg + RE_2_WE); + writel(re_2_re, denali->flash_reg + RE_2_RE); + writel(we_2_re, denali->flash_reg + WE_2_RE); + writel(addr_2_data, denali->flash_reg + ADDR_2_DATA); + writel(en_lo, denali->flash_reg + RDWR_EN_LO_CNT); + writel(en_hi, denali->flash_reg + RDWR_EN_HI_CNT); + writel(cs_cnt, denali->flash_reg + CS_SETUP_CNT); +} + +/* queries the NAND device to see what ONFI modes it supports. */ +static uint32_t get_onfi_nand_para(struct denali_nand_info *denali) +{ + int i; + /* + * we needn't to do a reset here because driver has already + * reset all the banks before + */ + if (!(readl(denali->flash_reg + ONFI_TIMING_MODE) & + ONFI_TIMING_MODE__VALUE)) + return -EIO; + + for (i = 5; i > 0; i--) { + if (readl(denali->flash_reg + ONFI_TIMING_MODE) & + (0x01 << i)) + break; + } + + nand_onfi_timing_set(denali, i); + + /* By now, all the ONFI devices we know support the page cache */ + /* rw feature. So here we enable the pipeline_rw_ahead feature */ + return 0; +} + +static void get_samsung_nand_para(struct denali_nand_info *denali, + uint8_t device_id) +{ + if (device_id == 0xd3) { /* Samsung K9WAG08U1A */ + /* Set timing register values according to datasheet */ + writel(5, denali->flash_reg + ACC_CLKS); + writel(20, denali->flash_reg + RE_2_WE); + writel(12, denali->flash_reg + WE_2_RE); + writel(14, denali->flash_reg + ADDR_2_DATA); + writel(3, denali->flash_reg + RDWR_EN_LO_CNT); + writel(2, denali->flash_reg + RDWR_EN_HI_CNT); + writel(2, denali->flash_reg + CS_SETUP_CNT); + } +} + +static void get_toshiba_nand_para(struct denali_nand_info *denali) +{ + uint32_t tmp; + + /* Workaround to fix a controller bug which reports a wrong */ + /* spare area size for some kind of Toshiba NAND device */ + if ((readl(denali->flash_reg + DEVICE_MAIN_AREA_SIZE) == 4096) && + (readl(denali->flash_reg + DEVICE_SPARE_AREA_SIZE) == 64)) { + writel(216, denali->flash_reg + DEVICE_SPARE_AREA_SIZE); + tmp = readl(denali->flash_reg + DEVICES_CONNECTED) * + readl(denali->flash_reg + DEVICE_SPARE_AREA_SIZE); + writel(tmp, denali->flash_reg + LOGICAL_PAGE_SPARE_SIZE); + } +} + +static void get_hynix_nand_para(struct denali_nand_info *denali, + uint8_t device_id) +{ + uint32_t main_size, spare_size; + + switch (device_id) { + case 0xD5: /* Hynix H27UAG8T2A, H27UBG8U5A or H27UCG8VFA */ + case 0xD7: /* Hynix H27UDG8VEM, H27UCG8UDM or H27UCG8V5A */ + writel(128, denali->flash_reg + PAGES_PER_BLOCK); + writel(4096, denali->flash_reg + DEVICE_MAIN_AREA_SIZE); + writel(224, denali->flash_reg + DEVICE_SPARE_AREA_SIZE); + main_size = 4096 * + readl(denali->flash_reg + DEVICES_CONNECTED); + spare_size = 224 * + readl(denali->flash_reg + DEVICES_CONNECTED); + writel(main_size, denali->flash_reg + LOGICAL_PAGE_DATA_SIZE); + writel(spare_size, denali->flash_reg + LOGICAL_PAGE_SPARE_SIZE); + writel(0, denali->flash_reg + DEVICE_WIDTH); + break; + default: + debug("Spectra: Unknown Hynix NAND (Device ID: 0x%x)." + "Will use default parameter values instead.\n", + device_id); + } +} + +/* + * determines how many NAND chips are connected to the controller. Note for + * Intel CE4100 devices we don't support more than one device. + */ +static void find_valid_banks(struct denali_nand_info *denali) +{ + uint32_t id[denali->max_banks]; + int i; + + denali->total_used_banks = 1; + for (i = 0; i < denali->max_banks; i++) { + index_addr(denali, (uint32_t)(MODE_11 | (i << 24) | 0), 0x90); + index_addr(denali, (uint32_t)(MODE_11 | (i << 24) | 1), 0); + index_addr_read_data(denali, + (uint32_t)(MODE_11 | (i << 24) | 2), + &id[i]); + + if (i == 0) { + if (!(id[i] & 0x0ff)) + break; + } else { + if ((id[i] & 0x0ff) == (id[0] & 0x0ff)) + denali->total_used_banks++; + else + break; + } + } +} + +/* + * Use the configuration feature register to determine the maximum number of + * banks that the hardware supports. + */ +static void detect_max_banks(struct denali_nand_info *denali) +{ + uint32_t features = readl(denali->flash_reg + FEATURES); + denali->max_banks = 2 << (features & FEATURES__N_BANKS); +} + +static void detect_partition_feature(struct denali_nand_info *denali) +{ + /* + * For MRST platform, denali->fwblks represent the + * number of blocks firmware is taken, + * FW is in protect partition and MTD driver has no + * permission to access it. So let driver know how many + * blocks it can't touch. + */ + if (readl(denali->flash_reg + FEATURES) & FEATURES__PARTITION) { + if ((readl(denali->flash_reg + PERM_SRC_ID(1)) & + PERM_SRC_ID__SRCID) == SPECTRA_PARTITION_ID) { + denali->fwblks = + ((readl(denali->flash_reg + MIN_MAX_BANK(1)) & + MIN_MAX_BANK__MIN_VALUE) * + denali->blksperchip) + + + (readl(denali->flash_reg + MIN_BLK_ADDR(1)) & + MIN_BLK_ADDR__VALUE); + } else { + denali->fwblks = SPECTRA_START_BLOCK; + } + } else { + denali->fwblks = SPECTRA_START_BLOCK; + } +} + +static uint32_t denali_nand_timing_set(struct denali_nand_info *denali) +{ + uint32_t id_bytes[5], addr; + uint8_t i, maf_id, device_id; + + /* Use read id method to get device ID and other + * params. For some NAND chips, controller can't + * report the correct device ID by reading from + * DEVICE_ID register + * */ + addr = (uint32_t)MODE_11 | BANK(denali->flash_bank); + index_addr(denali, (uint32_t)addr | 0, 0x90); + index_addr(denali, (uint32_t)addr | 1, 0); + for (i = 0; i < 5; i++) + index_addr_read_data(denali, addr | 2, &id_bytes[i]); + maf_id = id_bytes[0]; + device_id = id_bytes[1]; + + if (readl(denali->flash_reg + ONFI_DEVICE_NO_OF_LUNS) & + ONFI_DEVICE_NO_OF_LUNS__ONFI_DEVICE) { /* ONFI 1.0 NAND */ + if (get_onfi_nand_para(denali)) + return -EIO; + } else if (maf_id == 0xEC) { /* Samsung NAND */ + get_samsung_nand_para(denali, device_id); + } else if (maf_id == 0x98) { /* Toshiba NAND */ + get_toshiba_nand_para(denali); + } else if (maf_id == 0xAD) { /* Hynix NAND */ + get_hynix_nand_para(denali, device_id); + } + + find_valid_banks(denali); + + detect_partition_feature(denali); + + /* If the user specified to override the default timings + * with a specific ONFI mode, we apply those changes here. + */ + if (onfi_timing_mode != NAND_DEFAULT_TIMINGS) + nand_onfi_timing_set(denali, onfi_timing_mode); + + return 0; +} + +/* validation function to verify that the controlling software is making + * a valid request + */ +static inline bool is_flash_bank_valid(int flash_bank) +{ + return flash_bank >= 0 && flash_bank < 4; +} + +static void denali_irq_init(struct denali_nand_info *denali) +{ + uint32_t int_mask = 0; + int i; + + /* Disable global interrupts */ + writel(0, denali->flash_reg + GLOBAL_INT_ENABLE); + + int_mask = DENALI_IRQ_ALL; + + /* Clear all status bits */ + for (i = 0; i < denali->max_banks; ++i) + writel(0xFFFF, denali->flash_reg + INTR_STATUS(i)); + + denali_irq_enable(denali, int_mask); +} + +/* This helper function setups the registers for ECC and whether or not + * the spare area will be transferred. */ +static void setup_ecc_for_xfer(struct denali_nand_info *denali, bool ecc_en, + bool transfer_spare) +{ + int ecc_en_flag = 0, transfer_spare_flag = 0; + + /* set ECC, transfer spare bits if needed */ + ecc_en_flag = ecc_en ? ECC_ENABLE__FLAG : 0; + transfer_spare_flag = transfer_spare ? TRANSFER_SPARE_REG__FLAG : 0; + + /* Enable spare area/ECC per user's request. */ + writel(ecc_en_flag, denali->flash_reg + ECC_ENABLE); + /* applicable for MAP01 only */ + writel(transfer_spare_flag, denali->flash_reg + TRANSFER_SPARE_REG); +} + +/* sends a pipeline command operation to the controller. See the Denali NAND + * controller's user guide for more information (section 4.2.3.6). + */ +static int denali_send_pipeline_cmd(struct denali_nand_info *denali, + bool ecc_en, bool transfer_spare, + int access_type, int op) +{ + uint32_t addr, cmd, irq_status; + static uint32_t page_count = 1; + + setup_ecc_for_xfer(denali, ecc_en, transfer_spare); + + /* clear interrupts */ + clear_interrupts(denali); + + addr = BANK(denali->flash_bank) | denali->page; + + /* setup the acccess type */ + cmd = MODE_10 | addr; + index_addr(denali, cmd, access_type); + + /* setup the pipeline command */ + index_addr(denali, cmd, 0x2000 | op | page_count); + + cmd = MODE_01 | addr; + writel(cmd, denali->flash_mem + INDEX_CTRL_REG); + + if (op == DENALI_READ) { + /* wait for command to be accepted */ + irq_status = wait_for_irq(denali, INTR_STATUS__LOAD_COMP); + + if (irq_status == 0) + return -EIO; + } + + return 0; +} + +/* helper function that simply writes a buffer to the flash */ +static int write_data_to_flash_mem(struct denali_nand_info *denali, + const uint8_t *buf, int len) +{ + uint32_t i = 0, *buf32; + + /* verify that the len is a multiple of 4. see comment in + * read_data_from_flash_mem() */ + BUG_ON((len % 4) != 0); + + /* write the data to the flash memory */ + buf32 = (uint32_t *)buf; + for (i = 0; i < len / 4; i++) + writel(*buf32++, denali->flash_mem + INDEX_DATA_REG); + return i * 4; /* intent is to return the number of bytes read */ +} + +/* helper function that simply reads a buffer from the flash */ +static int read_data_from_flash_mem(struct denali_nand_info *denali, + uint8_t *buf, int len) +{ + uint32_t i, *buf32; + + /* + * we assume that len will be a multiple of 4, if not + * it would be nice to know about it ASAP rather than + * have random failures... + * This assumption is based on the fact that this + * function is designed to be used to read flash pages, + * which are typically multiples of 4... + */ + + BUG_ON((len % 4) != 0); + + /* transfer the data from the flash */ + buf32 = (uint32_t *)buf; + for (i = 0; i < len / 4; i++) + *buf32++ = readl(denali->flash_mem + INDEX_DATA_REG); + + return i * 4; /* intent is to return the number of bytes read */ +} + +static void denali_mode_main_access(struct denali_nand_info *denali) +{ + uint32_t addr, cmd; + + addr = BANK(denali->flash_bank) | denali->page; + cmd = MODE_10 | addr; + index_addr(denali, cmd, MAIN_ACCESS); +} + +static void denali_mode_main_spare_access(struct denali_nand_info *denali) +{ + uint32_t addr, cmd; + + addr = BANK(denali->flash_bank) | denali->page; + cmd = MODE_10 | addr; + index_addr(denali, cmd, MAIN_SPARE_ACCESS); +} + +/* writes OOB data to the device */ +static int write_oob_data(struct mtd_info *mtd, uint8_t *buf, int page) +{ + struct denali_nand_info *denali = mtd_to_denali(mtd); + uint32_t irq_status; + uint32_t irq_mask = INTR_STATUS__PROGRAM_COMP | + INTR_STATUS__PROGRAM_FAIL; + int status = 0; + + denali->page = page; + + if (denali_send_pipeline_cmd(denali, false, true, SPARE_ACCESS, + DENALI_WRITE) == 0) { + write_data_to_flash_mem(denali, buf, mtd->oobsize); + + /* wait for operation to complete */ + irq_status = wait_for_irq(denali, irq_mask); + + if (irq_status == 0) { + dev_err(denali->dev, "OOB write failed\n"); + status = -EIO; + } + } else { + printf("unable to send pipeline command\n"); + status = -EIO; + } + return status; +} + +/* reads OOB data from the device */ +static void read_oob_data(struct mtd_info *mtd, uint8_t *buf, int page) +{ + struct denali_nand_info *denali = mtd_to_denali(mtd); + uint32_t irq_mask = INTR_STATUS__LOAD_COMP, + irq_status = 0, addr = 0x0, cmd = 0x0; + + denali->page = page; + + if (denali_send_pipeline_cmd(denali, false, true, SPARE_ACCESS, + DENALI_READ) == 0) { + read_data_from_flash_mem(denali, buf, mtd->oobsize); + + /* wait for command to be accepted + * can always use status0 bit as the mask is identical for each + * bank. */ + irq_status = wait_for_irq(denali, irq_mask); + + if (irq_status == 0) + printf("page on OOB timeout %d\n", denali->page); + + /* We set the device back to MAIN_ACCESS here as I observed + * instability with the controller if you do a block erase + * and the last transaction was a SPARE_ACCESS. Block erase + * is reliable (according to the MTD test infrastructure) + * if you are in MAIN_ACCESS. + */ + addr = BANK(denali->flash_bank) | denali->page; + cmd = MODE_10 | addr; + index_addr(denali, cmd, MAIN_ACCESS); + } +} + +/* this function examines buffers to see if they contain data that + * indicate that the buffer is part of an erased region of flash. + */ +static bool is_erased(uint8_t *buf, int len) +{ + int i = 0; + for (i = 0; i < len; i++) + if (buf[i] != 0xFF) + return false; + return true; +} + +/* programs the controller to either enable/disable DMA transfers */ +static void denali_enable_dma(struct denali_nand_info *denali, bool en) +{ + uint32_t reg_val = 0x0; + + if (en) + reg_val = DMA_ENABLE__FLAG; + + writel(reg_val, denali->flash_reg + DMA_ENABLE); + readl(denali->flash_reg + DMA_ENABLE); +} + +/* setups the HW to perform the data DMA */ +static void denali_setup_dma(struct denali_nand_info *denali, int op) +{ + uint32_t mode; + const int page_count = 1; + uint32_t addr = (uint32_t)denali->buf.dma_buf; + + flush_dcache_range(addr, addr + sizeof(denali->buf.dma_buf)); + +/* For Denali controller that is 64 bit bus IP core */ +#ifdef CONFIG_SYS_NAND_DENALI_64BIT + mode = MODE_10 | BANK(denali->flash_bank) | denali->page; + + /* DMA is a three step process */ + + /* 1. setup transfer type, interrupt when complete, + burst len = 64 bytes, the number of pages */ + index_addr(denali, mode, 0x01002000 | (64 << 16) | op | page_count); + + /* 2. set memory low address bits 31:0 */ + index_addr(denali, mode, addr); + + /* 3. set memory high address bits 64:32 */ + index_addr(denali, mode, 0); +#else + mode = MODE_10 | BANK(denali->flash_bank); + + /* DMA is a four step process */ + + /* 1. setup transfer type and # of pages */ + index_addr(denali, mode | denali->page, 0x2000 | op | page_count); + + /* 2. set memory high address bits 23:8 */ + index_addr(denali, mode | ((uint32_t)(addr >> 16) << 8), 0x2200); + + /* 3. set memory low address bits 23:8 */ + index_addr(denali, mode | ((uint32_t)addr << 8), 0x2300); + + /* 4. interrupt when complete, burst len = 64 bytes*/ + index_addr(denali, mode | 0x14000, 0x2400); +#endif +} + +/* Common DMA function */ +static uint32_t denali_dma_configuration(struct denali_nand_info *denali, + uint32_t ops, bool raw_xfer, + uint32_t irq_mask, int oob_required) +{ + uint32_t irq_status = 0; + /* setup_ecc_for_xfer(bool ecc_en, bool transfer_spare) */ + setup_ecc_for_xfer(denali, !raw_xfer, oob_required); + + /* clear any previous interrupt flags */ + clear_interrupts(denali); + + /* enable the DMA */ + denali_enable_dma(denali, true); + + /* setup the DMA */ + denali_setup_dma(denali, ops); + + /* wait for operation to complete */ + irq_status = wait_for_irq(denali, irq_mask); + + /* if ECC fault happen, seems we need delay before turning off DMA. + * If not, the controller will go into non responsive condition */ + if (irq_status & INTR_STATUS__ECC_UNCOR_ERR) + udelay(100); + + /* disable the DMA */ + denali_enable_dma(denali, false); + + return irq_status; +} + +static int write_page(struct mtd_info *mtd, struct nand_chip *chip, + const uint8_t *buf, bool raw_xfer, int oob_required) +{ + struct denali_nand_info *denali = mtd_to_denali(mtd); + + uint32_t irq_status = 0; + uint32_t irq_mask = INTR_STATUS__DMA_CMD_COMP; + + denali->status = 0; + + /* copy buffer into DMA buffer */ + memcpy(denali->buf.dma_buf, buf, mtd->writesize); + + /* need extra memcpy for raw transfer */ + if (raw_xfer) + memcpy(denali->buf.dma_buf + mtd->writesize, + chip->oob_poi, mtd->oobsize); + + /* setting up DMA */ + irq_status = denali_dma_configuration(denali, DENALI_WRITE, raw_xfer, + irq_mask, oob_required); + + /* if timeout happen, error out */ + if (!(irq_status & INTR_STATUS__DMA_CMD_COMP)) { + debug("DMA timeout for denali write_page\n"); + denali->status = NAND_STATUS_FAIL; + return -EIO; + } + + if (irq_status & INTR_STATUS__LOCKED_BLK) { + debug("Failed as write to locked block\n"); + denali->status = NAND_STATUS_FAIL; + return -EIO; + } + return 0; +} + +/* NAND core entry points */ + +/* + * this is the callback that the NAND core calls to write a page. Since + * writing a page with ECC or without is similar, all the work is done + * by write_page above. + */ +static int denali_write_page(struct mtd_info *mtd, struct nand_chip *chip, + const uint8_t *buf, int oob_required) +{ + struct denali_nand_info *denali = mtd_to_denali(mtd); + + /* + * for regular page writes, we let HW handle all the ECC + * data written to the device. + */ + if (oob_required) + /* switch to main + spare access */ + denali_mode_main_spare_access(denali); + else + /* switch to main access only */ + denali_mode_main_access(denali); + + return write_page(mtd, chip, buf, false, oob_required); +} + +/* + * This is the callback that the NAND core calls to write a page without ECC. + * raw access is similar to ECC page writes, so all the work is done in the + * write_page() function above. + */ +static int denali_write_page_raw(struct mtd_info *mtd, struct nand_chip *chip, + const uint8_t *buf, int oob_required) +{ + struct denali_nand_info *denali = mtd_to_denali(mtd); + + /* + * for raw page writes, we want to disable ECC and simply write + * whatever data is in the buffer. + */ + + if (oob_required) + /* switch to main + spare access */ + denali_mode_main_spare_access(denali); + else + /* switch to main access only */ + denali_mode_main_access(denali); + + return write_page(mtd, chip, buf, true, oob_required); +} + +static int denali_write_oob(struct mtd_info *mtd, struct nand_chip *chip, + int page) +{ + return write_oob_data(mtd, chip->oob_poi, page); +} + +/* raw include ECC value and all the spare area */ +static int denali_read_page_raw(struct mtd_info *mtd, struct nand_chip *chip, + uint8_t *buf, int oob_required, int page) +{ + struct denali_nand_info *denali = mtd_to_denali(mtd); + + uint32_t irq_status, irq_mask = INTR_STATUS__DMA_CMD_COMP; + + if (denali->page != page) { + debug("Missing NAND_CMD_READ0 command\n"); + return -EIO; + } + + if (oob_required) + /* switch to main + spare access */ + denali_mode_main_spare_access(denali); + else + /* switch to main access only */ + denali_mode_main_access(denali); + + /* setting up the DMA where ecc_enable is false */ + irq_status = denali_dma_configuration(denali, DENALI_READ, true, + irq_mask, oob_required); + + /* if timeout happen, error out */ + if (!(irq_status & INTR_STATUS__DMA_CMD_COMP)) { + debug("DMA timeout for denali_read_page_raw\n"); + return -EIO; + } + + /* splitting the content to destination buffer holder */ + memcpy(chip->oob_poi, (denali->buf.dma_buf + mtd->writesize), + mtd->oobsize); + memcpy(buf, denali->buf.dma_buf, mtd->writesize); + + return 0; +} + +static int denali_read_page(struct mtd_info *mtd, struct nand_chip *chip, + uint8_t *buf, int oob_required, int page) +{ + struct denali_nand_info *denali = mtd_to_denali(mtd); + uint32_t irq_status, irq_mask = INTR_STATUS__DMA_CMD_COMP; + + if (denali->page != page) { + debug("Missing NAND_CMD_READ0 command\n"); + return -EIO; + } + + if (oob_required) + /* switch to main + spare access */ + denali_mode_main_spare_access(denali); + else + /* switch to main access only */ + denali_mode_main_access(denali); + + /* setting up the DMA where ecc_enable is true */ + irq_status = denali_dma_configuration(denali, DENALI_READ, false, + irq_mask, oob_required); + + memcpy(buf, denali->buf.dma_buf, mtd->writesize); + + /* check whether any ECC error */ + if (irq_status & INTR_STATUS__ECC_UNCOR_ERR) { + /* is the ECC cause by erase page, check using read_page_raw */ + debug(" Uncorrected ECC detected\n"); + denali_read_page_raw(mtd, chip, buf, oob_required, + denali->page); + + if (is_erased(buf, mtd->writesize) == true && + is_erased(chip->oob_poi, mtd->oobsize) == true) { + debug(" ECC error cause by erased block\n"); + /* false alarm, return the 0xFF */ + } else { + return -EIO; + } + } + memcpy(buf, denali->buf.dma_buf, mtd->writesize); + return 0; +} + +static int denali_read_oob(struct mtd_info *mtd, struct nand_chip *chip, + int page) +{ + read_oob_data(mtd, chip->oob_poi, page); + + return 0; +} + +static uint8_t denali_read_byte(struct mtd_info *mtd) +{ + struct denali_nand_info *denali = mtd_to_denali(mtd); + uint32_t addr, result; + + addr = (uint32_t)MODE_11 | BANK(denali->flash_bank); + index_addr_read_data(denali, addr | 2, &result); + return (uint8_t)result & 0xFF; +} + +static void denali_read_buf(struct mtd_info *mtd, uint8_t *buf, int len) +{ + struct denali_nand_info *denali = mtd_to_denali(mtd); + uint32_t i, addr, result; + + /* delay for tR (data transfer from Flash array to data register) */ + udelay(25); + + /* ensure device completed else additional delay and polling */ + wait_for_irq(denali, INTR_STATUS__INT_ACT); + + addr = (uint32_t)MODE_11 | BANK(denali->flash_bank); + for (i = 0; i < len; i++) { + index_addr_read_data(denali, (uint32_t)addr | 2, &result); + write_byte_to_buf(denali, result); + } + memcpy(buf, denali->buf.buf, len); +} + +static void denali_select_chip(struct mtd_info *mtd, int chip) +{ + struct denali_nand_info *denali = mtd_to_denali(mtd); + + denali->flash_bank = chip; +} + +static int denali_waitfunc(struct mtd_info *mtd, struct nand_chip *chip) +{ + struct denali_nand_info *denali = mtd_to_denali(mtd); + int status = denali->status; + denali->status = 0; + + return status; +} + +static void denali_erase(struct mtd_info *mtd, int page) +{ + struct denali_nand_info *denali = mtd_to_denali(mtd); + uint32_t cmd, irq_status; + + /* clear interrupts */ + clear_interrupts(denali); + + /* setup page read request for access type */ + cmd = MODE_10 | BANK(denali->flash_bank) | page; + index_addr(denali, cmd, 0x1); + + /* wait for erase to complete or failure to occur */ + irq_status = wait_for_irq(denali, INTR_STATUS__ERASE_COMP | + INTR_STATUS__ERASE_FAIL); + + if (irq_status & INTR_STATUS__ERASE_FAIL || + irq_status & INTR_STATUS__LOCKED_BLK) + denali->status = NAND_STATUS_FAIL; + else + denali->status = 0; +} + +static void denali_cmdfunc(struct mtd_info *mtd, unsigned int cmd, int col, + int page) +{ + struct denali_nand_info *denali = mtd_to_denali(mtd); + uint32_t addr; + + switch (cmd) { + case NAND_CMD_PAGEPROG: + break; + case NAND_CMD_STATUS: + addr = MODE_11 | BANK(denali->flash_bank); + index_addr(denali, addr | 0, cmd); + break; + case NAND_CMD_PARAM: + clear_interrupts(denali); + case NAND_CMD_READID: + reset_buf(denali); + /* sometimes ManufactureId read from register is not right + * e.g. some of Micron MT29F32G08QAA MLC NAND chips + * So here we send READID cmd to NAND insteand + * */ + addr = MODE_11 | BANK(denali->flash_bank); + index_addr(denali, addr | 0, cmd); + index_addr(denali, addr | 1, col & 0xFF); + break; + case NAND_CMD_READ0: + case NAND_CMD_SEQIN: + denali->page = page; + break; + case NAND_CMD_RESET: + reset_bank(denali); + break; + case NAND_CMD_READOOB: + /* TODO: Read OOB data */ + break; + case NAND_CMD_ERASE1: + /* + * supporting block erase only, not multiblock erase as + * it will cross plane and software need complex calculation + * to identify the block count for the cross plane + */ + denali_erase(mtd, page); + break; + case NAND_CMD_ERASE2: + /* nothing to do here as it was done during NAND_CMD_ERASE1 */ + break; + case NAND_CMD_UNLOCK1: + addr = MODE_10 | BANK(denali->flash_bank) | page; + index_addr(denali, addr | 0, DENALI_UNLOCK_START); + break; + case NAND_CMD_UNLOCK2: + addr = MODE_10 | BANK(denali->flash_bank) | page; + index_addr(denali, addr | 0, DENALI_UNLOCK_END); + break; + case NAND_CMD_LOCK: + addr = MODE_10 | BANK(denali->flash_bank); + index_addr(denali, addr | 0, DENALI_LOCK); + break; + default: + printf(": unsupported command received 0x%x\n", cmd); + break; + } +} +/* end NAND core entry points */ + +/* Initialization code to bring the device up to a known good state */ +static void denali_hw_init(struct denali_nand_info *denali) +{ + /* + * tell driver how many bit controller will skip before writing + * ECC code in OOB. This is normally used for bad block marker + */ + writel(CONFIG_NAND_DENALI_SPARE_AREA_SKIP_BYTES, + denali->flash_reg + SPARE_AREA_SKIP_BYTES); + detect_max_banks(denali); + denali_nand_reset(denali); + writel(0x0F, denali->flash_reg + RB_PIN_ENABLED); + writel(CHIP_EN_DONT_CARE__FLAG, + denali->flash_reg + CHIP_ENABLE_DONT_CARE); + writel(0xffff, denali->flash_reg + SPARE_AREA_MARKER); + + /* Should set value for these registers when init */ + writel(0, denali->flash_reg + TWO_ROW_ADDR_CYCLES); + writel(1, denali->flash_reg + ECC_ENABLE); + denali_nand_timing_set(denali); + denali_irq_init(denali); +} + +static struct nand_ecclayout nand_oob; + +static int denali_nand_init(struct nand_chip *nand) +{ + struct denali_nand_info *denali; + + denali = malloc(sizeof(*denali)); + if (!denali) + return -ENOMEM; + + nand->priv = denali; + + denali->flash_reg = (void __iomem *)CONFIG_SYS_NAND_REGS_BASE; + denali->flash_mem = (void __iomem *)CONFIG_SYS_NAND_DATA_BASE; + +#ifdef CONFIG_SYS_NAND_USE_FLASH_BBT + /* check whether flash got BBT table (located at end of flash). As we + * use NAND_BBT_NO_OOB, the BBT page will start with + * bbt_pattern. We will have mirror pattern too */ + nand->bbt_options |= NAND_BBT_USE_FLASH; + /* + * We are using main + spare with ECC support. As BBT need ECC support, + * we need to ensure BBT code don't write to OOB for the BBT pattern. + * All BBT info will be stored into data area with ECC support. + */ + nand->bbt_options |= NAND_BBT_NO_OOB; +#endif + + nand->ecc.mode = NAND_ECC_HW; + nand->ecc.size = CONFIG_NAND_DENALI_ECC_SIZE; + nand->ecc.read_oob = denali_read_oob; + nand->ecc.write_oob = denali_write_oob; + nand->ecc.read_page = denali_read_page; + nand->ecc.read_page_raw = denali_read_page_raw; + nand->ecc.write_page = denali_write_page; + nand->ecc.write_page_raw = denali_write_page_raw; + /* + * Tell driver the ecc strength. This register may be already set + * correctly. So we read this value out. + */ + nand->ecc.strength = readl(denali->flash_reg + ECC_CORRECTION); + switch (nand->ecc.size) { + case 512: + nand->ecc.bytes = (nand->ecc.strength * 13 + 15) / 16 * 2; + break; + case 1024: + nand->ecc.bytes = (nand->ecc.strength * 14 + 15) / 16 * 2; + break; + default: + pr_err("Unsupported ECC size\n"); + return -EINVAL; + } + nand_oob.eccbytes = nand->ecc.bytes; + nand->ecc.layout = &nand_oob; + + /* Set address of hardware control function */ + nand->cmdfunc = denali_cmdfunc; + nand->read_byte = denali_read_byte; + nand->read_buf = denali_read_buf; + nand->select_chip = denali_select_chip; + nand->waitfunc = denali_waitfunc; + denali_hw_init(denali); + return 0; +} + +int board_nand_init(struct nand_chip *chip) +{ + return denali_nand_init(chip); +} diff --git a/drivers/mtd/nand/denali.h b/drivers/mtd/nand/denali.h new file mode 100644 index 0000000..3277da7 --- /dev/null +++ b/drivers/mtd/nand/denali.h @@ -0,0 +1,467 @@ +/* + * Copyright (C) 2013-2014 Altera Corporation <www.altera.com> + * Copyright (C) 2009-2010, Intel Corporation and its suppliers. + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include <linux/mtd/nand.h> + +#define DEVICE_RESET 0x0 +#define DEVICE_RESET__BANK0 0x0001 +#define DEVICE_RESET__BANK1 0x0002 +#define DEVICE_RESET__BANK2 0x0004 +#define DEVICE_RESET__BANK3 0x0008 + +#define TRANSFER_SPARE_REG 0x10 +#define TRANSFER_SPARE_REG__FLAG 0x0001 + +#define LOAD_WAIT_CNT 0x20 +#define LOAD_WAIT_CNT__VALUE 0xffff + +#define PROGRAM_WAIT_CNT 0x30 +#define PROGRAM_WAIT_CNT__VALUE 0xffff + +#define ERASE_WAIT_CNT 0x40 +#define ERASE_WAIT_CNT__VALUE 0xffff + +#define INT_MON_CYCCNT 0x50 +#define INT_MON_CYCCNT__VALUE 0xffff + +#define RB_PIN_ENABLED 0x60 +#define RB_PIN_ENABLED__BANK0 0x0001 +#define RB_PIN_ENABLED__BANK1 0x0002 +#define RB_PIN_ENABLED__BANK2 0x0004 +#define RB_PIN_ENABLED__BANK3 0x0008 + +#define MULTIPLANE_OPERATION 0x70 +#define MULTIPLANE_OPERATION__FLAG 0x0001 + +#define MULTIPLANE_READ_ENABLE 0x80 +#define MULTIPLANE_READ_ENABLE__FLAG 0x0001 + +#define COPYBACK_DISABLE 0x90 +#define COPYBACK_DISABLE__FLAG 0x0001 + +#define CACHE_WRITE_ENABLE 0xa0 +#define CACHE_WRITE_ENABLE__FLAG 0x0001 + +#define CACHE_READ_ENABLE 0xb0 +#define CACHE_READ_ENABLE__FLAG 0x0001 + +#define PREFETCH_MODE 0xc0 +#define PREFETCH_MODE__PREFETCH_EN 0x0001 +#define PREFETCH_MODE__PREFETCH_BURST_LENGTH 0xfff0 + +#define CHIP_ENABLE_DONT_CARE 0xd0 +#define CHIP_EN_DONT_CARE__FLAG 0x01 + +#define ECC_ENABLE 0xe0 +#define ECC_ENABLE__FLAG 0x0001 + +#define GLOBAL_INT_ENABLE 0xf0 +#define GLOBAL_INT_EN_FLAG 0x01 + +#define WE_2_RE 0x100 +#define WE_2_RE__VALUE 0x003f + +#define ADDR_2_DATA 0x110 +#define ADDR_2_DATA__VALUE 0x003f + +#define RE_2_WE 0x120 +#define RE_2_WE__VALUE 0x003f + +#define ACC_CLKS 0x130 +#define ACC_CLKS__VALUE 0x000f + +#define NUMBER_OF_PLANES 0x140 +#define NUMBER_OF_PLANES__VALUE 0x0007 + +#define PAGES_PER_BLOCK 0x150 +#define PAGES_PER_BLOCK__VALUE 0xffff + +#define DEVICE_WIDTH 0x160 +#define DEVICE_WIDTH__VALUE 0x0003 + +#define DEVICE_MAIN_AREA_SIZE 0x170 +#define DEVICE_MAIN_AREA_SIZE__VALUE 0xffff + +#define DEVICE_SPARE_AREA_SIZE 0x180 +#define DEVICE_SPARE_AREA_SIZE__VALUE 0xffff + +#define TWO_ROW_ADDR_CYCLES 0x190 +#define TWO_ROW_ADDR_CYCLES__FLAG 0x0001 + +#define MULTIPLANE_ADDR_RESTRICT 0x1a0 +#define MULTIPLANE_ADDR_RESTRICT__FLAG 0x0001 + +#define ECC_CORRECTION 0x1b0 +#define ECC_CORRECTION__VALUE 0x001f + +#define READ_MODE 0x1c0 +#define READ_MODE__VALUE 0x000f + +#define WRITE_MODE 0x1d0 +#define WRITE_MODE__VALUE 0x000f + +#define COPYBACK_MODE 0x1e0 +#define COPYBACK_MODE__VALUE 0x000f + +#define RDWR_EN_LO_CNT 0x1f0 +#define RDWR_EN_LO_CNT__VALUE 0x001f + +#define RDWR_EN_HI_CNT 0x200 +#define RDWR_EN_HI_CNT__VALUE 0x001f + +#define MAX_RD_DELAY 0x210 +#define MAX_RD_DELAY__VALUE 0x000f + +#define CS_SETUP_CNT 0x220 +#define CS_SETUP_CNT__VALUE 0x001f + +#define SPARE_AREA_SKIP_BYTES 0x230 +#define SPARE_AREA_SKIP_BYTES__VALUE 0x003f + +#define SPARE_AREA_MARKER 0x240 +#define SPARE_AREA_MARKER__VALUE 0xffff + +#define DEVICES_CONNECTED 0x250 +#define DEVICES_CONNECTED__VALUE 0x0007 + +#define DIE_MASK 0x260 +#define DIE_MASK__VALUE 0x00ff + +#define FIRST_BLOCK_OF_NEXT_PLANE 0x270 +#define FIRST_BLOCK_OF_NEXT_PLANE__VALUE 0xffff + +#define WRITE_PROTECT 0x280 +#define WRITE_PROTECT__FLAG 0x0001 + +#define RE_2_RE 0x290 +#define RE_2_RE__VALUE 0x003f + +#define MANUFACTURER_ID 0x300 +#define MANUFACTURER_ID__VALUE 0x00ff + +#define DEVICE_ID 0x310 +#define DEVICE_ID__VALUE 0x00ff + +#define DEVICE_PARAM_0 0x320 +#define DEVICE_PARAM_0__VALUE 0x00ff + +#define DEVICE_PARAM_1 0x330 +#define DEVICE_PARAM_1__VALUE 0x00ff + +#define DEVICE_PARAM_2 0x340 +#define DEVICE_PARAM_2__VALUE 0x00ff + +#define LOGICAL_PAGE_DATA_SIZE 0x350 +#define LOGICAL_PAGE_DATA_SIZE__VALUE 0xffff + +#define LOGICAL_PAGE_SPARE_SIZE 0x360 +#define LOGICAL_PAGE_SPARE_SIZE__VALUE 0xffff + +#define REVISION 0x370 +#define REVISION__VALUE 0xffff + +#define ONFI_DEVICE_FEATURES 0x380 +#define ONFI_DEVICE_FEATURES__VALUE 0x003f + +#define ONFI_OPTIONAL_COMMANDS 0x390 +#define ONFI_OPTIONAL_COMMANDS__VALUE 0x003f + +#define ONFI_TIMING_MODE 0x3a0 +#define ONFI_TIMING_MODE__VALUE 0x003f + +#define ONFI_PGM_CACHE_TIMING_MODE 0x3b0 +#define ONFI_PGM_CACHE_TIMING_MODE__VALUE 0x003f + +#define ONFI_DEVICE_NO_OF_LUNS 0x3c0 +#define ONFI_DEVICE_NO_OF_LUNS__NO_OF_LUNS 0x00ff +#define ONFI_DEVICE_NO_OF_LUNS__ONFI_DEVICE 0x0100 + +#define ONFI_DEVICE_NO_OF_BLOCKS_PER_LUN_L 0x3d0 +#define ONFI_DEVICE_NO_OF_BLOCKS_PER_LUN_L__VALUE 0xffff + +#define ONFI_DEVICE_NO_OF_BLOCKS_PER_LUN_U 0x3e0 +#define ONFI_DEVICE_NO_OF_BLOCKS_PER_LUN_U__VALUE 0xffff + +#define FEATURES 0x3f0 +#define FEATURES__N_BANKS 0x0003 +#define FEATURES__ECC_MAX_ERR 0x003c +#define FEATURES__DMA 0x0040 +#define FEATURES__CMD_DMA 0x0080 +#define FEATURES__PARTITION 0x0100 +#define FEATURES__XDMA_SIDEBAND 0x0200 +#define FEATURES__GPREG 0x0400 +#define FEATURES__INDEX_ADDR 0x0800 + +#define TRANSFER_MODE 0x400 +#define TRANSFER_MODE__VALUE 0x0003 + +#define INTR_STATUS(__bank) (0x410 + ((__bank) * 0x50)) +#define INTR_EN(__bank) (0x420 + ((__bank) * 0x50)) + +/* + * Some versions of the IP have the ECC fixup handled in hardware. In this + * configuration we only get interrupted when the error is uncorrectable. + * Unfortunately this bit replaces INTR_STATUS__ECC_TRANSACTION_DONE from the + * old IP. + */ +#define INTR_STATUS__ECC_UNCOR_ERR 0x0001 +#define INTR_STATUS__ECC_TRANSACTION_DONE 0x0001 +#define INTR_STATUS__ECC_ERR 0x0002 +#define INTR_STATUS__DMA_CMD_COMP 0x0004 +#define INTR_STATUS__TIME_OUT 0x0008 +#define INTR_STATUS__PROGRAM_FAIL 0x0010 +#define INTR_STATUS__ERASE_FAIL 0x0020 +#define INTR_STATUS__LOAD_COMP 0x0040 +#define INTR_STATUS__PROGRAM_COMP 0x0080 +#define INTR_STATUS__ERASE_COMP 0x0100 +#define INTR_STATUS__PIPE_CPYBCK_CMD_COMP 0x0200 +#define INTR_STATUS__LOCKED_BLK 0x0400 +#define INTR_STATUS__UNSUP_CMD 0x0800 +#define INTR_STATUS__INT_ACT 0x1000 +#define INTR_STATUS__RST_COMP 0x2000 +#define INTR_STATUS__PIPE_CMD_ERR 0x4000 +#define INTR_STATUS__PAGE_XFER_INC 0x8000 + +#define INTR_EN__ECC_TRANSACTION_DONE 0x0001 +#define INTR_EN__ECC_ERR 0x0002 +#define INTR_EN__DMA_CMD_COMP 0x0004 +#define INTR_EN__TIME_OUT 0x0008 +#define INTR_EN__PROGRAM_FAIL 0x0010 +#define INTR_EN__ERASE_FAIL 0x0020 +#define INTR_EN__LOAD_COMP 0x0040 +#define INTR_EN__PROGRAM_COMP 0x0080 +#define INTR_EN__ERASE_COMP 0x0100 +#define INTR_EN__PIPE_CPYBCK_CMD_COMP 0x0200 +#define INTR_EN__LOCKED_BLK 0x0400 +#define INTR_EN__UNSUP_CMD 0x0800 +#define INTR_EN__INT_ACT 0x1000 +#define INTR_EN__RST_COMP 0x2000 +#define INTR_EN__PIPE_CMD_ERR 0x4000 +#define INTR_EN__PAGE_XFER_INC 0x8000 + +#define PAGE_CNT(__bank) (0x430 + ((__bank) * 0x50)) +#define ERR_PAGE_ADDR(__bank) (0x440 + ((__bank) * 0x50)) +#define ERR_BLOCK_ADDR(__bank) (0x450 + ((__bank) * 0x50)) + +#define DATA_INTR 0x550 +#define DATA_INTR__WRITE_SPACE_AV 0x0001 +#define DATA_INTR__READ_DATA_AV 0x0002 + +#define DATA_INTR_EN 0x560 +#define DATA_INTR_EN__WRITE_SPACE_AV 0x0001 +#define DATA_INTR_EN__READ_DATA_AV 0x0002 + +#define GPREG_0 0x570 +#define GPREG_0__VALUE 0xffff + +#define GPREG_1 0x580 +#define GPREG_1__VALUE 0xffff + +#define GPREG_2 0x590 +#define GPREG_2__VALUE 0xffff + +#define GPREG_3 0x5a0 +#define GPREG_3__VALUE 0xffff + +#define ECC_THRESHOLD 0x600 +#define ECC_THRESHOLD__VALUE 0x03ff + +#define ECC_ERROR_BLOCK_ADDRESS 0x610 +#define ECC_ERROR_BLOCK_ADDRESS__VALUE 0xffff + +#define ECC_ERROR_PAGE_ADDRESS 0x620 +#define ECC_ERROR_PAGE_ADDRESS__VALUE 0x0fff +#define ECC_ERROR_PAGE_ADDRESS__BANK 0xf000 + +#define ECC_ERROR_ADDRESS 0x630 +#define ECC_ERROR_ADDRESS__OFFSET 0x0fff +#define ECC_ERROR_ADDRESS__SECTOR_NR 0xf000 + +#define ERR_CORRECTION_INFO 0x640 +#define ERR_CORRECTION_INFO__BYTEMASK 0x00ff +#define ERR_CORRECTION_INFO__DEVICE_NR 0x0f00 +#define ERR_CORRECTION_INFO__ERROR_TYPE 0x4000 +#define ERR_CORRECTION_INFO__LAST_ERR_INFO 0x8000 + +#define DMA_ENABLE 0x700 +#define DMA_ENABLE__FLAG 0x0001 + +#define IGNORE_ECC_DONE 0x710 +#define IGNORE_ECC_DONE__FLAG 0x0001 + +#define DMA_INTR 0x720 +#define DMA_INTR__TARGET_ERROR 0x0001 +#define DMA_INTR__DESC_COMP_CHANNEL0 0x0002 +#define DMA_INTR__DESC_COMP_CHANNEL1 0x0004 +#define DMA_INTR__DESC_COMP_CHANNEL2 0x0008 +#define DMA_INTR__DESC_COMP_CHANNEL3 0x0010 +#define DMA_INTR__MEMCOPY_DESC_COMP 0x0020 + +#define DMA_INTR_EN 0x730 +#define DMA_INTR_EN__TARGET_ERROR 0x0001 +#define DMA_INTR_EN__DESC_COMP_CHANNEL0 0x0002 +#define DMA_INTR_EN__DESC_COMP_CHANNEL1 0x0004 +#define DMA_INTR_EN__DESC_COMP_CHANNEL2 0x0008 +#define DMA_INTR_EN__DESC_COMP_CHANNEL3 0x0010 +#define DMA_INTR_EN__MEMCOPY_DESC_COMP 0x0020 + +#define TARGET_ERR_ADDR_LO 0x740 +#define TARGET_ERR_ADDR_LO__VALUE 0xffff + +#define TARGET_ERR_ADDR_HI 0x750 +#define TARGET_ERR_ADDR_HI__VALUE 0xffff + +#define CHNL_ACTIVE 0x760 +#define CHNL_ACTIVE__CHANNEL0 0x0001 +#define CHNL_ACTIVE__CHANNEL1 0x0002 +#define CHNL_ACTIVE__CHANNEL2 0x0004 +#define CHNL_ACTIVE__CHANNEL3 0x0008 + +#define ACTIVE_SRC_ID 0x800 +#define ACTIVE_SRC_ID__VALUE 0x00ff + +#define PTN_INTR 0x810 +#define PTN_INTR__CONFIG_ERROR 0x0001 +#define PTN_INTR__ACCESS_ERROR_BANK0 0x0002 +#define PTN_INTR__ACCESS_ERROR_BANK1 0x0004 +#define PTN_INTR__ACCESS_ERROR_BANK2 0x0008 +#define PTN_INTR__ACCESS_ERROR_BANK3 0x0010 +#define PTN_INTR__REG_ACCESS_ERROR 0x0020 + +#define PTN_INTR_EN 0x820 +#define PTN_INTR_EN__CONFIG_ERROR 0x0001 +#define PTN_INTR_EN__ACCESS_ERROR_BANK0 0x0002 +#define PTN_INTR_EN__ACCESS_ERROR_BANK1 0x0004 +#define PTN_INTR_EN__ACCESS_ERROR_BANK2 0x0008 +#define PTN_INTR_EN__ACCESS_ERROR_BANK3 0x0010 +#define PTN_INTR_EN__REG_ACCESS_ERROR 0x0020 + +#define PERM_SRC_ID(__bank) (0x830 + ((__bank) * 0x40)) +#define PERM_SRC_ID__SRCID 0x00ff +#define PERM_SRC_ID__DIRECT_ACCESS_ACTIVE 0x0800 +#define PERM_SRC_ID__WRITE_ACTIVE 0x2000 +#define PERM_SRC_ID__READ_ACTIVE 0x4000 +#define PERM_SRC_ID__PARTITION_VALID 0x8000 + +#define MIN_BLK_ADDR(__bank) (0x840 + ((__bank) * 0x40)) +#define MIN_BLK_ADDR__VALUE 0xffff + +#define MAX_BLK_ADDR(__bank) (0x850 + ((__bank) * 0x40)) +#define MAX_BLK_ADDR__VALUE 0xffff + +#define MIN_MAX_BANK(__bank) (0x860 + ((__bank) * 0x40)) +#define MIN_MAX_BANK__MIN_VALUE 0x0003 +#define MIN_MAX_BANK__MAX_VALUE 0x000c + +/* lld.h */ +#define GOOD_BLOCK 0 +#define DEFECTIVE_BLOCK 1 +#define READ_ERROR 2 + +#define CLK_X 5 +#define CLK_MULTI 4 + +/* spectraswconfig.h */ +#define CMD_DMA 0 + +#define SPECTRA_PARTITION_ID 0 +/**** Block Table and Reserved Block Parameters *****/ +#define SPECTRA_START_BLOCK 3 +#define NUM_FREE_BLOCKS_GATE 30 + +/* KBV - Updated to LNW scratch register address */ +#define SCRATCH_REG_ADDR CONFIG_MTD_NAND_DENALI_SCRATCH_REG_ADDR +#define SCRATCH_REG_SIZE 64 + +#define GLOB_HWCTL_DEFAULT_BLKS 2048 + +#define CUSTOM_CONF_PARAMS 0 + +#ifndef _LLD_NAND_ +#define _LLD_NAND_ + +#define INDEX_CTRL_REG 0x0 +#define INDEX_DATA_REG 0x10 + +#define MODE_00 0x00000000 +#define MODE_01 0x04000000 +#define MODE_10 0x08000000 +#define MODE_11 0x0C000000 + + +#define DATA_TRANSFER_MODE 0 +#define PROTECTION_PER_BLOCK 1 +#define LOAD_WAIT_COUNT 2 +#define PROGRAM_WAIT_COUNT 3 +#define ERASE_WAIT_COUNT 4 +#define INT_MONITOR_CYCLE_COUNT 5 +#define READ_BUSY_PIN_ENABLED 6 +#define MULTIPLANE_OPERATION_SUPPORT 7 +#define PRE_FETCH_MODE 8 +#define CE_DONT_CARE_SUPPORT 9 +#define COPYBACK_SUPPORT 10 +#define CACHE_WRITE_SUPPORT 11 +#define CACHE_READ_SUPPORT 12 +#define NUM_PAGES_IN_BLOCK 13 +#define ECC_ENABLE_SELECT 14 +#define WRITE_ENABLE_2_READ_ENABLE 15 +#define ADDRESS_2_DATA 16 +#define READ_ENABLE_2_WRITE_ENABLE 17 +#define TWO_ROW_ADDRESS_CYCLES 18 +#define MULTIPLANE_ADDRESS_RESTRICT 19 +#define ACC_CLOCKS 20 +#define READ_WRITE_ENABLE_LOW_COUNT 21 +#define READ_WRITE_ENABLE_HIGH_COUNT 22 + +#define ECC_SECTOR_SIZE 512 + +#define DENALI_BUF_SIZE (NAND_MAX_PAGESIZE + NAND_MAX_OOBSIZE) + +struct nand_buf { + int head; + int tail; + /* seprating dma_buf as buf can be used for status read purpose */ + uint8_t dma_buf[DENALI_BUF_SIZE] __aligned(64); + uint8_t buf[DENALI_BUF_SIZE]; +}; + +#define INTEL_CE4100 1 +#define INTEL_MRST 2 +#define DT 3 + +struct denali_nand_info { + struct mtd_info mtd; + struct nand_chip *nand; + + int flash_bank; /* currently selected chip */ + int status; + int platform; + struct nand_buf buf; + struct device *dev; + int total_used_banks; + uint32_t block; /* stored for future use */ + uint32_t page; + void __iomem *flash_reg; /* Mapped io reg base address */ + void __iomem *flash_mem; /* Mapped io reg base address */ + + /* elements used by ISR */ + /*struct completion complete;*/ + + uint32_t irq_status; + int irq_debug_array[32]; + int idx; + int irq; + + uint32_t devnum; /* represent how many nands connected */ + uint32_t fwblks; /* represent how many blocks FW used */ + uint32_t totalblks; + uint32_t blksperchip; + uint32_t bbtskipbytes; + uint32_t max_banks; +}; + +#endif /*_LLD_NAND_*/ diff --git a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c index 7153e3c..0b6e7ee 100644 --- a/drivers/mtd/nand/nand_base.c +++ b/drivers/mtd/nand/nand_base.c @@ -308,8 +308,7 @@ static void ioread16_rep(void *addr, void *buf, int len) { int i; u16 *p = (u16 *) buf; - len >>= 1; - + for (i = 0; i < len; i++) p[i] = readw(addr); } @@ -318,7 +317,6 @@ static void iowrite16_rep(void *addr, void *buf, int len) { int i; u16 *p = (u16 *) buf; - len >>= 1; for (i = 0; i < len; i++) writew(p[i], addr); diff --git a/drivers/mtd/spi/sf_params.c b/drivers/mtd/spi/sf_params.c index 856eb4c..453edf0 100644 --- a/drivers/mtd/spi/sf_params.c +++ b/drivers/mtd/spi/sf_params.c @@ -68,9 +68,12 @@ const struct spi_flash_params spi_flash_params_table[] = { {"M25P40", 0x202013, 0x0, 64 * 1024, 8, 0, 0}, {"M25P80", 0x202014, 0x0, 64 * 1024, 16, 0, 0}, {"M25P16", 0x202015, 0x0, 64 * 1024, 32, 0, 0}, + {"M25PE16", 0x208015, 0x1000, 64 * 1024, 32, 0, 0}, + {"M25PX16", 0x207115, 0x1000, 64 * 1024, 32, RD_EXTN, 0}, {"M25P32", 0x202016, 0x0, 64 * 1024, 64, 0, 0}, {"M25P64", 0x202017, 0x0, 64 * 1024, 128, 0, 0}, {"M25P128", 0x202018, 0x0, 256 * 1024, 64, 0, 0}, + {"M25PX64", 0x207117, 0x0, 64 * 1024, 128, 0, 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}, diff --git a/drivers/mtd/spi/spi_spl_load.c b/drivers/mtd/spi/spi_spl_load.c index 1954b7e..59cca0f 100644 --- a/drivers/mtd/spi/spi_spl_load.c +++ b/drivers/mtd/spi/spi_spl_load.c @@ -56,8 +56,10 @@ void spl_spi_load_image(void) * Load U-Boot image from SPI flash into RAM */ - flash = spi_flash_probe(CONFIG_SPL_SPI_BUS, CONFIG_SPL_SPI_CS, - CONFIG_SF_DEFAULT_SPEED, SPI_MODE_3); + flash = spi_flash_probe(CONFIG_SF_DEFAULT_BUS, + CONFIG_SF_DEFAULT_CS, + CONFIG_SF_DEFAULT_SPEED, + CONFIG_SF_DEFAULT_MODE); if (!flash) { puts("SPI probe failed.\n"); hang(); diff --git a/drivers/net/Kconfig b/drivers/net/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/drivers/net/Kconfig diff --git a/drivers/net/e1000.c b/drivers/net/e1000.c index 0eba57c..6e8765c 100644 --- a/drivers/net/e1000.c +++ b/drivers/net/e1000.c @@ -5362,7 +5362,9 @@ e1000_initialize(bd_t * bis) hw->autoneg_failed = 0; hw->autoneg = 1; hw->get_link_status = true; +#ifndef CONFIG_E1000_NO_NVM hw->eeprom_semaphore_present = true; +#endif hw->hw_addr = pci_map_bar(devno, PCI_BASE_ADDRESS_0, PCI_REGION_MEM); hw->mac_type = e1000_undefined; diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/drivers/pci/Kconfig diff --git a/drivers/pcmcia/Kconfig b/drivers/pcmcia/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/drivers/pcmcia/Kconfig diff --git a/drivers/power/Kconfig b/drivers/power/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/drivers/power/Kconfig diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/drivers/rtc/Kconfig diff --git a/drivers/serial/Kconfig b/drivers/serial/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/drivers/serial/Kconfig diff --git a/drivers/serial/usbtty.c b/drivers/serial/usbtty.c index b030526..7fb0b92 100644 --- a/drivers/serial/usbtty.c +++ b/drivers/serial/usbtty.c @@ -475,7 +475,7 @@ static void __usbtty_puts (const char *str, int len) if (space) { write_buffer (&usbtty_output); - n = MIN (space, MIN (len, maxlen)); + n = min(space, min(len, maxlen)); buf_push (&usbtty_output, str, n); str += n; @@ -882,7 +882,7 @@ static int write_buffer (circbuf_t * buf) space_avail = current_urb->buffer_length - current_urb->actual_length; - popnum = MIN (space_avail, buf->size); + popnum = min(space_avail, buf->size); if (popnum == 0) break; diff --git a/drivers/sound/Kconfig b/drivers/sound/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/drivers/sound/Kconfig diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/drivers/spi/Kconfig diff --git a/drivers/spi/kirkwood_spi.c b/drivers/spi/kirkwood_spi.c index 942a208..3d58bcc 100644 --- a/drivers/spi/kirkwood_spi.c +++ b/drivers/spi/kirkwood_spi.c @@ -18,7 +18,7 @@ static struct kwspi_registers *spireg = (struct kwspi_registers *)KW_SPI_BASE; -u32 cs_spi_mpp_back[2]; +static u32 cs_spi_mpp_back[2]; struct spi_slave *spi_setup_slave(unsigned int bus, unsigned int cs, unsigned int max_hz, unsigned int mode) @@ -37,7 +37,7 @@ struct spi_slave *spi_setup_slave(unsigned int bus, unsigned int cs, if (!slave) return NULL; - writel(~KWSPI_CSN_ACT | KWSPI_SMEMRDY, &spireg->ctrl); + writel(KWSPI_SMEMRDY, &spireg->ctrl); /* calculate spi clock prescaller using max_hz */ data = ((CONFIG_SYS_TCLK / 2) / max_hz) + 0x10; @@ -46,7 +46,7 @@ struct spi_slave *spi_setup_slave(unsigned int bus, unsigned int cs, /* program spi clock prescaller using max_hz */ writel(KWSPI_ADRLEN_3BYTE | data, &spireg->cfg); - debug("data = 0x%08x \n", data); + debug("data = 0x%08x\n", data); writel(KWSPI_SMEMRDIRQ, &spireg->irq_cause); writel(KWSPI_IRQMASK, &spireg->irq_mask); @@ -100,7 +100,6 @@ int spi_claim_bus(struct spi_slave *slave) /* set new spi mpp and save current mpp config */ kirkwood_mpp_conf(spi_mpp_config, spi_mpp_backup); - #endif return board_spi_claim_bus(slave); @@ -127,7 +126,7 @@ void spi_release_bus(struct spi_slave *slave) */ int spi_cs_is_valid(unsigned int bus, unsigned int cs) { - return (bus == 0 && (cs == 0 || cs == 1)); + return bus == 0 && (cs == 0 || cs == 1); } #endif @@ -137,12 +136,12 @@ void spi_init(void) void spi_cs_activate(struct spi_slave *slave) { - writel(readl(&spireg->ctrl) | KWSPI_IRQUNMASK, &spireg->ctrl); + setbits_le32(&spireg->ctrl, KWSPI_CSN_ACT); } void spi_cs_deactivate(struct spi_slave *slave) { - writel(readl(&spireg->ctrl) & KWSPI_IRQMASK, &spireg->ctrl); + clrbits_le32(&spireg->ctrl, KWSPI_CSN_ACT); } int spi_xfer(struct spi_slave *slave, unsigned int bitlen, const void *dout, @@ -161,8 +160,7 @@ int spi_xfer(struct spi_slave *slave, unsigned int bitlen, const void *dout, * handle data in 8-bit chunks * TBD: 2byte xfer mode to be enabled */ - writel(((readl(&spireg->cfg) & ~KWSPI_XFERLEN_MASK) | - KWSPI_XFERLEN_1BYTE), &spireg->cfg); + clrsetbits_le32(&spireg->cfg, KWSPI_XFERLEN_MASK, KWSPI_XFERLEN_1BYTE); while (bitlen > 4) { debug("loopstart bitlen %d\n", bitlen); @@ -170,9 +168,9 @@ int spi_xfer(struct spi_slave *slave, unsigned int bitlen, const void *dout, /* Shift data so it's msb-justified */ if (dout) - tmpdout = *(u32 *) dout & 0x0ff; + tmpdout = *(u32 *)dout & 0xff; - writel(~KWSPI_SMEMRDIRQ, &spireg->irq_cause); + clrbits_le32(&spireg->irq_cause, KWSPI_SMEMRDIRQ); writel(tmpdout, &spireg->dout); /* Write the data out */ debug("*** spi_xfer: ... %08x written, bitlen %d\n", tmpdout, bitlen); @@ -186,12 +184,11 @@ int spi_xfer(struct spi_slave *slave, unsigned int bitlen, const void *dout, if (readl(&spireg->irq_cause) & KWSPI_SMEMRDIRQ) { isread = 1; tmpdin = readl(&spireg->din); - debug - ("spi_xfer: din %p..%08x read\n", - din, tmpdin); + debug("spi_xfer: din %p..%08x read\n", + din, tmpdin); if (din) { - *((u8 *) din) = (u8) tmpdin; + *((u8 *)din) = (u8)tmpdin; din += 1; } if (dout) diff --git a/drivers/spi/mxc_spi.c b/drivers/spi/mxc_spi.c index 2d5f385..026f680 100644 --- a/drivers/spi/mxc_spi.c +++ b/drivers/spi/mxc_spi.c @@ -25,6 +25,11 @@ static unsigned long spi_bases[] = { MXC_SPI_BASE_ADDRESSES }; +__weak int board_spi_cs_gpio(unsigned bus, unsigned cs) +{ + return -1; +} + #define OUT MXC_GPIO_DIRECTION_OUT #define reg_read readl @@ -371,31 +376,30 @@ void spi_init(void) { } -static int decode_cs(struct mxc_spi_slave *mxcs, unsigned int cs) +/* + * Some SPI devices require active chip-select over multiple + * transactions, we achieve this using a GPIO. Still, the SPI + * controller has to be configured to use one of its own chipselects. + * To use this feature you have to implement board_spi_cs_gpio() to assign + * a gpio value for each cs (-1 if cs doesn't need to use gpio). + * You must use some unused on this SPI controller cs between 0 and 3. + */ +static int setup_cs_gpio(struct mxc_spi_slave *mxcs, + unsigned int bus, unsigned int cs) { int ret; - /* - * Some SPI devices require active chip-select over multiple - * transactions, we achieve this using a GPIO. Still, the SPI - * controller has to be configured to use one of its own chipselects. - * To use this feature you have to call spi_setup_slave() with - * cs = internal_cs | (gpio << 8), and you have to use some unused - * on this SPI controller cs between 0 and 3. - */ - if (cs > 3) { - mxcs->gpio = cs >> 8; - cs &= 3; - ret = gpio_direction_output(mxcs->gpio, !(mxcs->ss_pol)); - if (ret) { - printf("mxc_spi: cannot setup gpio %d\n", mxcs->gpio); - return -EINVAL; - } - } else { - mxcs->gpio = -1; + mxcs->gpio = board_spi_cs_gpio(bus, cs); + if (mxcs->gpio == -1) + return 0; + + ret = gpio_direction_output(mxcs->gpio, !(mxcs->ss_pol)); + if (ret) { + printf("mxc_spi: cannot setup gpio %d\n", mxcs->gpio); + return -EINVAL; } - return cs; + return 0; } struct spi_slave *spi_setup_slave(unsigned int bus, unsigned int cs, @@ -415,14 +419,12 @@ struct spi_slave *spi_setup_slave(unsigned int bus, unsigned int cs, mxcs->ss_pol = (mode & SPI_CS_HIGH) ? 1 : 0; - ret = decode_cs(mxcs, cs); + ret = setup_cs_gpio(mxcs, bus, cs); if (ret < 0) { free(mxcs); return NULL; } - cs = ret; - mxcs->base = spi_bases[bus]; ret = spi_cfg_mxc(mxcs, cs, max_hz, mode); diff --git a/drivers/tpm/Kconfig b/drivers/tpm/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/drivers/tpm/Kconfig diff --git a/drivers/usb/Kconfig b/drivers/usb/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/drivers/usb/Kconfig diff --git a/drivers/usb/gadget/designware_udc.c b/drivers/usb/gadget/designware_udc.c index b7c1038..3559400 100644 --- a/drivers/usb/gadget/designware_udc.c +++ b/drivers/usb/gadget/designware_udc.c @@ -269,7 +269,7 @@ static void dw_write_noniso_tx_fifo(struct usb_endpoint_instance UDCDBGA("urb->buffer %p, buffer_length %d, actual_length %d", urb->buffer, urb->buffer_length, urb->actual_length); - last = MIN(urb->actual_length - endpoint->sent, + last = min(urb->actual_length - endpoint->sent, endpoint->tx_packetSize); if (last) { @@ -285,7 +285,7 @@ static void dw_write_noniso_tx_fifo(struct usb_endpoint_instance align = ((ulong)cp % sizeof(int)); if (align) - last = MIN(last, sizeof(int) - align); + last = min(last, sizeof(int) - align); UDCDBGA("endpoint->sent %d, tx_packetSize %d, last %d", endpoint->sent, endpoint->tx_packetSize, last); diff --git a/drivers/usb/gadget/ep0.c b/drivers/usb/gadget/ep0.c index b321488..4ba2f3d 100644 --- a/drivers/usb/gadget/ep0.c +++ b/drivers/usb/gadget/ep0.c @@ -315,7 +315,7 @@ static int ep0_get_descriptor (struct usb_device_instance *device, /*copy_config(urb, &report_descriptor->bData[0], report_descriptor->wLength, max); */ if (max - urb->actual_length > 0) { int length = - MIN (report_descriptor->wLength, + min(report_descriptor->wLength, max - urb->actual_length); memcpy (urb->buffer + urb->actual_length, &report_descriptor->bData[0], length); diff --git a/drivers/usb/gadget/f_fastboot.c b/drivers/usb/gadget/f_fastboot.c index 7a1acb9..38c0965 100644 --- a/drivers/usb/gadget/f_fastboot.c +++ b/drivers/usb/gadget/f_fastboot.c @@ -10,6 +10,7 @@ * * SPDX-License-Identifier: GPL-2.0+ */ +#include <config.h> #include <common.h> #include <errno.h> #include <malloc.h> @@ -19,6 +20,9 @@ #include <linux/compiler.h> #include <version.h> #include <g_dnl.h> +#ifdef CONFIG_FASTBOOT_FLASH_MMC_DEV +#include <fb_mmc.h> +#endif #define FASTBOOT_VERSION "0.4" @@ -38,7 +42,7 @@ struct f_fastboot { struct usb_function usb_function; - /* IN/OUT EP's and correspoinding requests */ + /* IN/OUT EP's and corresponding requests */ struct usb_ep *in_ep, *out_ep; struct usb_request *in_req, *out_req; }; @@ -290,7 +294,7 @@ static int fastboot_add(struct usb_configuration *c) } DECLARE_GADGET_BIND_CALLBACK(usb_dnl_fastboot, fastboot_add); -int fastboot_tx_write(const char *buffer, unsigned int buffer_size) +static int fastboot_tx_write(const char *buffer, unsigned int buffer_size) { struct usb_request *in_req = fastboot_func->in_req; int ret; @@ -338,6 +342,7 @@ static void cb_getvar(struct usb_ep *ep, struct usb_request *req) strsep(&cmd, ":"); if (!cmd) { + error("missing variable\n"); fastboot_tx_write_str("FAILmissing var"); return; } @@ -358,6 +363,7 @@ static void cb_getvar(struct usb_ep *ep, struct usb_request *req) else strcpy(response, "FAILValue not set"); } else { + error("unknown variable: %s\n", cmd); strcpy(response, "FAILVariable not implemented"); } fastboot_tx_write_str(response); @@ -469,6 +475,28 @@ static void cb_boot(struct usb_ep *ep, struct usb_request *req) fastboot_tx_write_str("OKAY"); } +#ifdef CONFIG_FASTBOOT_FLASH +static void cb_flash(struct usb_ep *ep, struct usb_request *req) +{ + char *cmd = req->buf; + char response[RESPONSE_LEN]; + + strsep(&cmd, ":"); + if (!cmd) { + error("missing partition name\n"); + fastboot_tx_write_str("FAILmissing partition name"); + return; + } + + strcpy(response, "FAILno flash device defined"); +#ifdef CONFIG_FASTBOOT_FLASH_MMC_DEV + fb_mmc_flash_write(cmd, (void *)CONFIG_USB_FASTBOOT_BUF_ADDR, + download_bytes, response); +#endif + fastboot_tx_write_str(response); +} +#endif + struct cmd_dispatch_info { char *cmd; void (*cb)(struct usb_ep *ep, struct usb_request *req); @@ -488,6 +516,12 @@ static const struct cmd_dispatch_info cmd_dispatch_info[] = { .cmd = "boot", .cb = cb_boot, }, +#ifdef CONFIG_FASTBOOT_FLASH + { + .cmd = "flash", + .cb = cb_flash, + }, +#endif }; static void rx_handler_command(struct usb_ep *ep, struct usb_request *req) @@ -503,10 +537,12 @@ static void rx_handler_command(struct usb_ep *ep, struct usb_request *req) } } - if (!func_cb) + if (!func_cb) { + error("unknown command: %s\n", cmdbuf); fastboot_tx_write_str("FAILunknown command"); - else + } else { func_cb(ep, req); + } if (req->status == 0) { *cmdbuf = '\0'; diff --git a/drivers/usb/gadget/mpc8xx_udc.c b/drivers/usb/gadget/mpc8xx_udc.c index 7f72972..b3e178a 100644 --- a/drivers/usb/gadget/mpc8xx_udc.c +++ b/drivers/usb/gadget/mpc8xx_udc.c @@ -897,7 +897,7 @@ static int mpc8xx_udc_ep_tx (struct usb_endpoint_instance *epi) pkt_len = urb->actual_length - epi->sent; if (pkt_len > epi->tx_packetSize || pkt_len > EP_MAX_PKT) { - pkt_len = MIN (epi->tx_packetSize, EP_MAX_PKT); + pkt_len = min(epi->tx_packetSize, EP_MAX_PKT); } for (x = 0; x < pkt_len; x++) { @@ -942,7 +942,7 @@ static int mpc8xx_udc_ep_tx (struct usb_endpoint_instance *epi) /* TX ACK : USB 2.0 8.7.2, Toggle PID, Advance TX */ epi->sent += pkt_len; - epi->last = MIN (urb->actual_length - epi->sent, epi->tx_packetSize); + epi->last = min(urb->actual_length - epi->sent, epi->tx_packetSize); TOGGLE_TX_PID (ep_ref[ep].pid); if (epi->sent >= epi->tx_urb->actual_length) { diff --git a/drivers/usb/gadget/pxa27x_udc.c b/drivers/usb/gadget/pxa27x_udc.c index 733558d..efd5c7f 100644 --- a/drivers/usb/gadget/pxa27x_udc.c +++ b/drivers/usb/gadget/pxa27x_udc.c @@ -65,7 +65,7 @@ static int udc_write_urb(struct usb_endpoint_instance *endpoint) if (!urb || !urb->actual_length) return -1; - n = MIN(urb->actual_length - endpoint->sent, endpoint->tx_packetSize); + n = min(urb->actual_length - endpoint->sent, endpoint->tx_packetSize); if (n <= 0) return -1; diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/drivers/video/Kconfig diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/drivers/watchdog/Kconfig diff --git a/dts/Kconfig b/dts/Kconfig new file mode 100644 index 0000000..83ba7a6 --- /dev/null +++ b/dts/Kconfig @@ -0,0 +1,55 @@ +# +# Device Tree Control +# +# TODO: +# This feature is not currently supported for SPL, +# but this restriction should be removed in the future. + +config SUPPORT_OF_CONTROL + bool + +menu "Device Tree Control" + depends on !SPL_BUILD + depends on SUPPORT_OF_CONTROL + +config OF_CONTROL + bool "Run-time configuration via Device Tree" + help + This feature provides for run-time configuration of U-Boot + via a flattened device tree. + +choice + prompt "Provider of DTB for DT control" + depends on OF_CONTROL + +config OF_SEPARATE + bool "Separate DTB for DT control" + depends on !SANDBOX + help + If this option is enabled, the device tree will be built and + placed as a separate u-boot.dtb file alongside the U-Boot image. + +config OF_EMBED + bool "Embedded DTB for DT control" + help + If this option is enabled, the device tree will be picked up and + built into the U-Boot image. + +config OF_HOSTFILE + bool "Host filed DTB for DT control" + depends on SANDBOX + help + If this option is enabled, DTB will be read from a file on startup. + This is only useful for Sandbox. Use the -d flag to U-Boot to + specify the file to read. + +endchoice + +config DEFAULT_DEVICE_TREE + string "Default Device Tree for DT control" + help + This option specifies the default Device Tree used for DT control. + It can be overrided from the command line: + $ make DEVICE_TREE=<device-tree-name> + +endmenu diff --git a/fs/Kconfig b/fs/Kconfig new file mode 100644 index 0000000..41bb0b9 --- /dev/null +++ b/fs/Kconfig @@ -0,0 +1,19 @@ +# +# File system configuration +# + +menu "File systems" + +source "fs/ext4/Kconfig" + +source "fs/reiserfs/Kconfig" + +source "fs/fat/Kconfig" + +source "fs/jffs2/Kconfig" + +source "fs/ubifs/Kconfig" + +source "fs/cramfs/Kconfig" + +endmenu diff --git a/fs/cramfs/Kconfig b/fs/cramfs/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/fs/cramfs/Kconfig diff --git a/fs/ext4/Kconfig b/fs/ext4/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/fs/ext4/Kconfig diff --git a/fs/fat/Kconfig b/fs/fat/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/fs/fat/Kconfig diff --git a/fs/jffs2/Kconfig b/fs/jffs2/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/fs/jffs2/Kconfig diff --git a/fs/reiserfs/Kconfig b/fs/reiserfs/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/fs/reiserfs/Kconfig diff --git a/fs/ubifs/Kconfig b/fs/ubifs/Kconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/fs/ubifs/Kconfig diff --git a/fs/zfs/zfs.c b/fs/zfs/zfs.c index 099d517..818d3d9 100644 --- a/fs/zfs/zfs.c +++ b/fs/zfs/zfs.c @@ -772,7 +772,7 @@ zap_leaf_array_equal(zap_leaf_phys_t *l, zfs_endian_t endian, while (bseen < array_len) { struct zap_leaf_array *la = &ZAP_LEAF_CHUNK(l, blksft, chunk).l_array; - int toread = MIN(array_len - bseen, ZAP_LEAF_ARRAY_BYTES); + int toread = min(array_len - bseen, ZAP_LEAF_ARRAY_BYTES); if (chunk >= ZAP_LEAF_NUMCHUNKS(blksft)) return 0; @@ -794,7 +794,7 @@ zap_leaf_array_get(zap_leaf_phys_t *l, zfs_endian_t endian, int blksft, while (bseen < array_len) { struct zap_leaf_array *la = &ZAP_LEAF_CHUNK(l, blksft, chunk).l_array; - int toread = MIN(array_len - bseen, ZAP_LEAF_ARRAY_BYTES); + int toread = min(array_len - bseen, ZAP_LEAF_ARRAY_BYTES); if (chunk >= ZAP_LEAF_NUMCHUNKS(blksft)) /* Don't use errno because this error is to be ignored. */ @@ -2118,7 +2118,7 @@ zfs_read(zfs_file_t file, char *buf, uint64_t len) data->file_start = blkid * blksz; data->file_end = data->file_start + blksz; - movesize = MIN(length, data->file_end - (int) file->offset - red); + movesize = min(length, data->file_end - (int)file->offset - red); memmove(buf, data->file_buf + file->offset + red - data->file_start, movesize); diff --git a/include/common.h b/include/common.h index 97c04df..d5020c8 100644 --- a/include/common.h +++ b/include/common.h @@ -181,9 +181,6 @@ typedef void (interrupt_handler_t)(void *); typeof(Y) __y = (Y); \ (__x > __y) ? __x : __y; }) -#define MIN(x, y) min(x, y) -#define MAX(x, y) max(x, y) - #define min3(X, Y, Z) \ ({ typeof(X) __x = (X); \ typeof(Y) __y = (Y); \ @@ -198,9 +195,6 @@ typedef void (interrupt_handler_t)(void *); __x > __y ? (__x > __z ? __x : __z) : \ (__y > __z ? __y : __z); }) -#define MIN3(x, y, z) min3(x, y, z) -#define MAX3(x, y, z) max3(x, y, z) - /* * Return the absolute value of a number. * diff --git a/include/compiler.h b/include/compiler.h index 9afc11b..1451916 100644 --- a/include/compiler.h +++ b/include/compiler.h @@ -129,9 +129,6 @@ typedef unsigned long int uintptr_t; #endif /* USE_HOSTCC */ -/* compiler options */ -#define uninitialized_var(x) x = x - #define likely(x) __builtin_expect(!!(x), 1) #define unlikely(x) __builtin_expect(!!(x), 0) diff --git a/include/config_cmd_defaults.h b/include/config_cmd_defaults.h deleted file mode 100644 index a55b268..0000000 --- a/include/config_cmd_defaults.h +++ /dev/null @@ -1,18 +0,0 @@ -/* - * config_cmd_defaults.h - sane defaults for everyone - * - * Copyright (c) 2010-2011 Analog Devices Inc. - * - * Licensed under the GPL-2 or later. - */ - -#ifndef _CONFIG_CMD_DEFAULTS_H_ -#define _CONFIG_CMD_DEFAULTS_H_ - -#define CONFIG_CMD_BOOTM 1 -#define CONFIG_CMD_CRC32 1 -#define CONFIG_CMD_EXPORTENV 1 -#define CONFIG_CMD_GO 1 -#define CONFIG_CMD_IMPORTENV 1 - -#endif diff --git a/include/config_distro_bootcmd.h b/include/config_distro_bootcmd.h index 90d9901..be616e8 100644 --- a/include/config_distro_bootcmd.h +++ b/include/config_distro_bootcmd.h @@ -53,10 +53,23 @@ #endif #ifdef CONFIG_CMD_SCSI -#define BOOTENV_SHARED_SCSI BOOTENV_SHARED_BLKDEV(scsi) +#define BOOTENV_RUN_SCSI_INIT "run scsi_init; " +#define BOOTENV_SET_SCSI_NEED_INIT "setenv scsi_need_init; " +#define BOOTENV_SHARED_SCSI \ + "scsi_init=" \ + "if ${scsi_need_init}; then " \ + "setenv scsi_need_init false; " \ + "scsi scan; " \ + "fi\0" \ + \ + "scsi_boot=" \ + BOOTENV_RUN_SCSI_INIT \ + BOOTENV_SHARED_BLKDEV_BODY(scsi) #define BOOTENV_DEV_SCSI BOOTENV_DEV_BLKDEV #define BOOTENV_DEV_NAME_SCSI BOOTENV_DEV_NAME_BLKDEV #else +#define BOOTENV_RUN_SCSI_INIT +#define BOOTENV_SET_SCSI_NEED_INIT #define BOOTENV_SHARED_SCSI #define BOOTENV_DEV_SCSI \ BOOT_TARGET_DEVICES_references_SCSI_without_CONFIG_CMD_SCSI @@ -189,7 +202,7 @@ \ BOOT_TARGET_DEVICES(BOOTENV_DEV) \ \ - "bootcmd=" BOOTENV_SET_USB_NEED_INIT \ + "bootcmd=" BOOTENV_SET_USB_NEED_INIT BOOTENV_SET_SCSI_NEED_INIT \ "for target in ${boot_targets}; do " \ "run bootcmd_${target}; " \ "done\0" diff --git a/include/configs/T104xRDB.h b/include/configs/T104xRDB.h index 9001fcbc9..5e2c100 100644 --- a/include/configs/T104xRDB.h +++ b/include/configs/T104xRDB.h @@ -506,6 +506,7 @@ #define CONFIG_FSL_ESPI #define CONFIG_SPI_FLASH #define CONFIG_SPI_FLASH_STMICRO +#define CONFIG_SPI_FLASH_BAR #define CONFIG_CMD_SF #define CONFIG_SF_DEFAULT_SPEED 10000000 #define CONFIG_SF_DEFAULT_MODE 0 diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h index aef0ad3..e2f7ead 100644 --- a/include/configs/am335x_evm.h +++ b/include/configs/am335x_evm.h @@ -23,9 +23,6 @@ # define CONFIG_TIMESTAMP # define CONFIG_LZO # ifdef CONFIG_ENABLE_VBOOT -# define CONFIG_OF_CONTROL -# define CONFIG_OF_SEPARATE -# define CONFIG_DEFAULT_DEVICE_TREE am335x-boneblack # define CONFIG_FIT_SIGNATURE # define CONFIG_RSA # endif @@ -405,8 +402,6 @@ #define CONFIG_SPL_SPI_SUPPORT #define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD -#define CONFIG_SPL_SPI_BUS 0 -#define CONFIG_SPL_SPI_CS 0 #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x20000 #define CONFIG_ENV_IS_IN_SPI_FLASH diff --git a/include/configs/arndale.h b/include/configs/arndale.h index 75f9933..43077cf 100644 --- a/include/configs/arndale.h +++ b/include/configs/arndale.h @@ -22,8 +22,6 @@ #define CONFIG_DISPLAY_CPUINFO #define CONFIG_DISPLAY_BOARDINFO -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE /* Allow tracing to be enabled */ #define CONFIG_TRACE @@ -226,7 +224,6 @@ #define CONFIG_POWER_I2C #define CONFIG_POWER_MAX77686 -#define CONFIG_DEFAULT_DEVICE_TREE exynos5250-arndale #define CONFIG_PREBOOT diff --git a/include/configs/bct-brettl2.h b/include/configs/bct-brettl2.h index c1eda96..d0828d5 100644 --- a/include/configs/bct-brettl2.h +++ b/include/configs/bct-brettl2.h @@ -137,7 +137,6 @@ #define CONFIG_MTD_DEVICE #define CONFIG_MTD_PARTITIONS #define CONFIG_SYS_HUSH_PARSER -#define CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED /* * Pull in common ADI header for remaining command/environment setup diff --git a/include/configs/beaver.h b/include/configs/beaver.h index d8ed717..164b2dd 100644 --- a/include/configs/beaver.h +++ b/include/configs/beaver.h @@ -24,11 +24,6 @@ /* VDD core PMIC */ #define CONFIG_TEGRA_VDD_CORE_TPS62366A_SET1 -/* Enable fdt support for Beaver. Flash the image in u-boot-dtb.bin */ -#define CONFIG_DEFAULT_DEVICE_TREE tegra30-beaver -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE - /* High-level configuration options */ #define V_PROMPT "Tegra30 (Beaver) # " #define CONFIG_TEGRA_BOARD_STRING "NVIDIA Beaver" diff --git a/include/configs/bf506f-ezkit.h b/include/configs/bf506f-ezkit.h index 5db1819..0b66cdb 100644 --- a/include/configs/bf506f-ezkit.h +++ b/include/configs/bf506f-ezkit.h @@ -85,8 +85,6 @@ */ #define CONFIG_ENV_IS_NOWHERE #define CONFIG_ENV_SIZE 0x400 -#undef CONFIG_CMD_EXPORTENV -#undef CONFIG_CMD_IMPORTENV /* @@ -102,7 +100,6 @@ #define CONFIG_CMD_MEMORY #undef CONFIG_GZIP #undef CONFIG_ZLIB -#undef CONFIG_CMD_BOOTM #undef CONFIG_BOOTM_RTEMS #undef CONFIG_BOOTM_LINUX diff --git a/include/configs/bf518f-ezbrd.h b/include/configs/bf518f-ezbrd.h index 9e374c4..20f6ed1 100644 --- a/include/configs/bf518f-ezbrd.h +++ b/include/configs/bf518f-ezbrd.h @@ -155,7 +155,6 @@ #define CONFIG_MISC_INIT_R #define CONFIG_RTC_BFIN #define CONFIG_UART_CONSOLE 0 -#define CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED /* * Pull in common ADI header for remaining command/environment setup diff --git a/include/configs/bf526-ezbrd.h b/include/configs/bf526-ezbrd.h index 972eca9..c33d035 100644 --- a/include/configs/bf526-ezbrd.h +++ b/include/configs/bf526-ezbrd.h @@ -153,7 +153,6 @@ #define CONFIG_MISC_INIT_R #define CONFIG_RTC_BFIN #define CONFIG_UART_CONSOLE 1 -#define CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED /* define to enable run status via led */ /* #define CONFIG_STATUS_LED */ diff --git a/include/configs/bf527-ad7160-eval.h b/include/configs/bf527-ad7160-eval.h index c0dfe26..b497f26 100644 --- a/include/configs/bf527-ad7160-eval.h +++ b/include/configs/bf527-ad7160-eval.h @@ -136,7 +136,6 @@ */ #define CONFIG_MISC_INIT_R #define CONFIG_UART_CONSOLE 0 -#define CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED /* * Pull in common ADI header for remaining command/environment setup diff --git a/include/configs/bf527-ezkit.h b/include/configs/bf527-ezkit.h index 92c183e..0bca53f 100644 --- a/include/configs/bf527-ezkit.h +++ b/include/configs/bf527-ezkit.h @@ -179,7 +179,6 @@ #define CONFIG_MISC_INIT_R #define CONFIG_RTC_BFIN #define CONFIG_UART_CONSOLE 1 -#define CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED /* * Pull in common ADI header for remaining command/environment setup diff --git a/include/configs/bf527-sdp.h b/include/configs/bf527-sdp.h index 458868a..9d43b81 100644 --- a/include/configs/bf527-sdp.h +++ b/include/configs/bf527-sdp.h @@ -112,7 +112,6 @@ */ #define CONFIG_MISC_INIT_R #define CONFIG_UART_CONSOLE 0 -#define CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED /* * Pull in common ADI header for remaining command/environment setup diff --git a/include/configs/bf533-ezkit.h b/include/configs/bf533-ezkit.h index b503528..0fda967 100644 --- a/include/configs/bf533-ezkit.h +++ b/include/configs/bf533-ezkit.h @@ -110,7 +110,6 @@ #define CONFIG_MISC_INIT_R #define CONFIG_RTC_BFIN #define CONFIG_UART_CONSOLE 0 -#define CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED /* * Pull in common ADI header for remaining command/environment setup diff --git a/include/configs/bf533-stamp.h b/include/configs/bf533-stamp.h index 3d36d84..ae4d83a 100644 --- a/include/configs/bf533-stamp.h +++ b/include/configs/bf533-stamp.h @@ -186,7 +186,6 @@ */ #define CONFIG_RTC_BFIN #define CONFIG_UART_CONSOLE 0 -#define CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED /* FLASH/ETHERNET uses the same async bank */ #define SHARED_RESOURCES 1 diff --git a/include/configs/bf537-stamp.h b/include/configs/bf537-stamp.h index a302f83..29f9316 100644 --- a/include/configs/bf537-stamp.h +++ b/include/configs/bf537-stamp.h @@ -254,7 +254,6 @@ #define CONFIG_MISC_INIT_R #define CONFIG_RTC_BFIN #define CONFIG_UART_CONSOLE 0 -#define CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED /* Define if want to do post memory test */ #undef CONFIG_POST diff --git a/include/configs/bf538f-ezkit.h b/include/configs/bf538f-ezkit.h index 32df5ec..a655282 100644 --- a/include/configs/bf538f-ezkit.h +++ b/include/configs/bf538f-ezkit.h @@ -135,7 +135,6 @@ */ #define CONFIG_RTC_BFIN #define CONFIG_UART_CONSOLE 0 -#define CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED /* * Pull in common ADI header for remaining command/environment setup diff --git a/include/configs/bf548-ezkit.h b/include/configs/bf548-ezkit.h index 1a245a2..da5f029 100644 --- a/include/configs/bf548-ezkit.h +++ b/include/configs/bf548-ezkit.h @@ -181,7 +181,6 @@ #define CONFIG_RTC_BFIN #define CONFIG_UART_CONSOLE 1 #define CONFIG_BFIN_SPI_IMG_SIZE 0x50000 -#define CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED #define CONFIG_ADI_GPIO2 diff --git a/include/configs/bf561-acvilon.h b/include/configs/bf561-acvilon.h index 3db917e..6871d8c 100644 --- a/include/configs/bf561-acvilon.h +++ b/include/configs/bf561-acvilon.h @@ -160,7 +160,6 @@ #define CONFIG_UART_CONSOLE 0 #define CONFIG_BAUDRATE 57600 #define CONFIG_SYS_PROMPT "Acvilon> " -#define CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED /* * Pull in common ADI header for remaining command/environment setup diff --git a/include/configs/bf561-ezkit.h b/include/configs/bf561-ezkit.h index 0a309d9..fb6f948 100644 --- a/include/configs/bf561-ezkit.h +++ b/include/configs/bf561-ezkit.h @@ -102,7 +102,6 @@ * Misc Settings */ #define CONFIG_UART_CONSOLE 0 -#define CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED /* * Run core 1 from L1 SRAM start address when init uboot on core 0 diff --git a/include/configs/br4.h b/include/configs/br4.h index f8d3158..3f24008 100644 --- a/include/configs/br4.h +++ b/include/configs/br4.h @@ -135,7 +135,6 @@ #define CONFIG_BOOTCOMMAND "run nandboot" #define CONFIG_BOOTDELAY 2 #define CONFIG_LOADADDR 0x2000000 -#define CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED /* * Pull in common ADI header for remaining command/environment setup diff --git a/include/configs/bur_am335x_common.h b/include/configs/bur_am335x_common.h index 3f889f8..e9d5d01 100644 --- a/include/configs/bur_am335x_common.h +++ b/include/configs/bur_am335x_common.h @@ -151,7 +151,6 @@ #undef CONFIG_CMD_NFS #undef CONFIG_CMD_SETGETDCR #undef CONFIG_CMD_XIMG -#undef CONFIG_CMD_CRC32 /* define command we need always */ #define CONFIG_CMD_ECHO #define CONFIG_CMD_SOURCE diff --git a/include/configs/cardhu.h b/include/configs/cardhu.h index 59f429c..09129c7 100644 --- a/include/configs/cardhu.h +++ b/include/configs/cardhu.h @@ -24,11 +24,6 @@ /* VDD core PMIC */ #define CONFIG_TEGRA_VDD_CORE_TPS62361B_SET3 -/* Enable fdt support for Cardhu. Flash the image in u-boot-dtb.bin */ -#define CONFIG_DEFAULT_DEVICE_TREE tegra30-cardhu -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE - /* High-level configuration options */ #define V_PROMPT "Tegra30 (Cardhu) # " #define CONFIG_TEGRA_BOARD_STRING "NVIDIA Cardhu" diff --git a/include/configs/cm-bf527.h b/include/configs/cm-bf527.h index 8d3ae49..f5351ad 100644 --- a/include/configs/cm-bf527.h +++ b/include/configs/cm-bf527.h @@ -128,7 +128,6 @@ #define FLASHBOOT_ENV_SETTINGS \ "flashboot=flread 20040000 1000000 300000;" \ "bootm 0x1000000\0" -#define CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED /* * Pull in common ADI header for remaining command/environment setup diff --git a/include/configs/cm-bf533.h b/include/configs/cm-bf533.h index 8bd499a..485f01a 100644 --- a/include/configs/cm-bf533.h +++ b/include/configs/cm-bf533.h @@ -97,7 +97,6 @@ #define CONFIG_UART_CONSOLE 0 #define CONFIG_BOOTCOMMAND "run flashboot" #define FLASHBOOT_ENV_SETTINGS "flashboot=bootm 0x20040000\0" -#define CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED /* * Pull in common ADI header for remaining command/environment setup diff --git a/include/configs/cm-bf537e.h b/include/configs/cm-bf537e.h index 47967d7..1729b44 100644 --- a/include/configs/cm-bf537e.h +++ b/include/configs/cm-bf537e.h @@ -146,7 +146,6 @@ "flashboot=flread 20040000 1000000 3c0000;" \ "bootm 0x1000000\0" #define CONFIG_BOARD_SIZE_LIMIT $$((384 * 1024)) -#define CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED /* * Pull in common ADI header for remaining command/environment setup diff --git a/include/configs/cm-bf537u.h b/include/configs/cm-bf537u.h index 88c9982..272aa74 100644 --- a/include/configs/cm-bf537u.h +++ b/include/configs/cm-bf537u.h @@ -143,7 +143,6 @@ "flashboot=flread 20040000 1000000 300000;" \ "bootm 0x1000000\0" #define CONFIG_BOARD_SIZE_LIMIT $$((384 * 1024)) -#define CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED /* * Pull in common ADI header for remaining command/environment setup diff --git a/include/configs/cm-bf548.h b/include/configs/cm-bf548.h index 346e27f..7f27eda 100644 --- a/include/configs/cm-bf548.h +++ b/include/configs/cm-bf548.h @@ -117,7 +117,6 @@ #define CONFIG_UART_CONSOLE 1 #define CONFIG_BOOTCOMMAND "run flashboot" #define FLASHBOOT_ENV_SETTINGS "flashboot=bootm 0x20040000\0" -#define CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED #define CONFIG_ADI_GPIO2 diff --git a/include/configs/cm-bf561.h b/include/configs/cm-bf561.h index 5265e5f..96910a7 100644 --- a/include/configs/cm-bf561.h +++ b/include/configs/cm-bf561.h @@ -99,7 +99,6 @@ #define CONFIG_UART_CONSOLE 0 #define CONFIG_BOOTCOMMAND "run flashboot" #define FLASHBOOT_ENV_SETTINGS "flashboot=bootm 0x20040000\0" -#define CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED /* * Pull in common ADI header for remaining command/environment setup diff --git a/include/configs/colibri_t20_iris.h b/include/configs/colibri_t20_iris.h index 6f9e08c..2b876fe 100644 --- a/include/configs/colibri_t20_iris.h +++ b/include/configs/colibri_t20_iris.h @@ -9,11 +9,6 @@ #include "tegra20-common.h" -/* Enable FDT support */ -#define CONFIG_DEFAULT_DEVICE_TREE tegra20-colibri_t20_iris -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE - /* High-level configuration options */ #define V_PROMPT "Tegra20 (Colibri) # " #define CONFIG_TEGRA_BOARD_STRING "Toradex Colibri T20 on Iris" diff --git a/include/configs/colibri_t30.h b/include/configs/colibri_t30.h index eacff5b..782b9d1 100644 --- a/include/configs/colibri_t30.h +++ b/include/configs/colibri_t30.h @@ -11,9 +11,6 @@ #include "tegra30-common.h" -#define CONFIG_DEFAULT_DEVICE_TREE tegra30-colibri -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE #define V_PROMPT "Colibri T30 # " #define CONFIG_TEGRA_BOARD_STRING "Toradex Colibri T30" diff --git a/include/configs/controlcenterd.h b/include/configs/controlcenterd.h index 7eaaf69..bfcfa0c 100644 --- a/include/configs/controlcenterd.h +++ b/include/configs/controlcenterd.h @@ -434,7 +434,6 @@ #define CONFIG_BOARD_EARLY_INIT_F #define CONFIG_BOARD_EARLY_INIT_R #define CONFIG_LAST_STAGE_INIT -#undef CONFIG_CMD_BOOTM #endif /* CONFIG_TRAILBLAZER */ diff --git a/include/configs/coreboot.h b/include/configs/coreboot.h index a1a63a0..936be14 100644 --- a/include/configs/coreboot.h +++ b/include/configs/coreboot.h @@ -28,9 +28,6 @@ #define CONFIG_LMB #define CONFIG_OF_LIBFDT -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE -#define CONFIG_DEFAULT_DEVICE_TREE link #define CONFIG_BOOTSTAGE #define CONFIG_BOOTSTAGE_REPORT diff --git a/include/configs/da850evm.h b/include/configs/da850evm.h index 1252d7a..5f85755 100644 --- a/include/configs/da850evm.h +++ b/include/configs/da850evm.h @@ -157,8 +157,6 @@ #define CONFIG_SPL_SPI_SUPPORT #define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD -#define CONFIG_SPL_SPI_BUS 0 -#define CONFIG_SPL_SPI_CS 0 #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x8000 #define CONFIG_SYS_SPI_U_BOOT_SIZE 0x30000 #endif @@ -376,8 +374,6 @@ #define CONFIG_SPL_SPI_SUPPORT #define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD -#define CONFIG_SPL_SPI_BUS 0 -#define CONFIG_SPL_SPI_CS 0 #define CONFIG_SPL_SERIAL_SUPPORT #define CONFIG_SPL_LIBCOMMON_SUPPORT #define CONFIG_SPL_LIBGENERIC_SUPPORT diff --git a/include/configs/dalmore.h b/include/configs/dalmore.h index fd774a3..ff7ec4a 100644 --- a/include/configs/dalmore.h +++ b/include/configs/dalmore.h @@ -21,11 +21,6 @@ #include "tegra114-common.h" -/* Enable fdt support for Dalmore. Flash the image in u-boot-dtb.bin */ -#define CONFIG_DEFAULT_DEVICE_TREE tegra114-dalmore -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE - /* High-level configuration options */ #define V_PROMPT "Tegra114 (Dalmore) # " #define CONFIG_TEGRA_BOARD_STRING "NVIDIA Dalmore" diff --git a/include/configs/dra7xx_evm.h b/include/configs/dra7xx_evm.h index 4143a4d..2eaabde 100644 --- a/include/configs/dra7xx_evm.h +++ b/include/configs/dra7xx_evm.h @@ -116,8 +116,6 @@ #define CONFIG_SPL_SPI_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SPL_SPI_FLASH_SUPPORT -#define CONFIG_SPL_SPI_BUS 0 -#define CONFIG_SPL_SPI_CS 0 #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x40000 #define CONFIG_SUPPORT_EMMC_BOOT diff --git a/include/configs/embestmx6boards.h b/include/configs/embestmx6boards.h index a7fd43b..185edbe 100644 --- a/include/configs/embestmx6boards.h +++ b/include/configs/embestmx6boards.h @@ -102,7 +102,7 @@ #define CONFIG_SPI_FLASH_SST #define CONFIG_MXC_SPI #define CONFIG_SF_DEFAULT_BUS 0 -#define CONFIG_SF_DEFAULT_CS (0 | (IMX_GPIO_NR(2, 30) << 8)) +#define CONFIG_SF_DEFAULT_CS 0 #define CONFIG_SF_DEFAULT_SPEED 20000000 #define CONFIG_SF_DEFAULT_MODE SPI_MODE_0 #endif diff --git a/include/configs/exynos4-dt.h b/include/configs/exynos4-dt.h index 7dac1a3..99472ac 100644 --- a/include/configs/exynos4-dt.h +++ b/include/configs/exynos4-dt.h @@ -22,10 +22,6 @@ #define CONFIG_BOARD_COMMON #define CONFIG_SYS_GENERIC_BOARD -/* Enable fdt support */ -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE - #define CONFIG_SYS_CACHELINE_SIZE 32 /* input clock of PLL: EXYNOS4 boards have 24MHz input clock */ diff --git a/include/configs/exynos5-dt.h b/include/configs/exynos5-dt.h index a7c6292..1dc3002 100644 --- a/include/configs/exynos5-dt.h +++ b/include/configs/exynos5-dt.h @@ -24,10 +24,6 @@ #define CONFIG_ARCH_EARLY_INIT_R #define CONFIG_EXYNOS_SPL -/* Enable fdt support for Exynos5250 */ -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE - /* Allow tracing to be enabled */ #define CONFIG_TRACE #define CONFIG_CMD_TRACE diff --git a/include/configs/gw_ventana.h b/include/configs/gw_ventana.h index 0e5c200..620f950 100644 --- a/include/configs/gw_ventana.h +++ b/include/configs/gw_ventana.h @@ -61,7 +61,7 @@ #define CONFIG_SPI_FLASH_BAR #define CONFIG_SPI_FLASH_WINBOND #define CONFIG_SF_DEFAULT_BUS 0 - #define CONFIG_SF_DEFAULT_CS (0|(IMX_GPIO_NR(3, 19)<<8)) + #define CONFIG_SF_DEFAULT_CS 0 /* GPIO 3-19 (21248) */ #define CONFIG_SF_DEFAULT_SPEED 30000000 #define CONFIG_SF_DEFAULT_MODE (SPI_MODE_0) diff --git a/include/configs/h2200.h b/include/configs/h2200.h index 9470ad6..109cee9 100644 --- a/include/configs/h2200.h +++ b/include/configs/h2200.h @@ -116,7 +116,6 @@ #define CONFIG_BAUDRATE 115200 #define CONFIG_SYS_BAUDRATE_TABLE { 9600, 38400, 115200 } -#define CONFIG_CMD_IMPORTENV 1 #define CONFIG_CMD_LOADB #define CONFIG_CMD_SOURCE #define CONFIG_CMD_RUN diff --git a/include/configs/harmony.h b/include/configs/harmony.h index 3ec0e41..ff9fbc9 100644 --- a/include/configs/harmony.h +++ b/include/configs/harmony.h @@ -11,11 +11,6 @@ #include <linux/sizes.h> #include "tegra20-common.h" -/* Enable fdt support for Harmony. Flash the image in u-boot-dtb.bin */ -#define CONFIG_DEFAULT_DEVICE_TREE tegra20-harmony -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE - /* High-level configuration options */ #define V_PROMPT "Tegra20 (Harmony) # " #define CONFIG_TEGRA_BOARD_STRING "NVIDIA Harmony" diff --git a/include/configs/ip04.h b/include/configs/ip04.h index 3767502..ec510bd 100644 --- a/include/configs/ip04.h +++ b/include/configs/ip04.h @@ -133,7 +133,6 @@ #define CONFIG_BAUDRATE 115200 #define CONFIG_MISC_INIT_R /* needed for MAC address */ #define CONFIG_UART_CONSOLE 0 -#define CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED #undef CONFIG_SHOW_BOOT_PROGRESS /* Enable this if bootretry required; currently it's disabled */ diff --git a/include/configs/jetson-tk1.h b/include/configs/jetson-tk1.h index d03a66c..d67c025 100644 --- a/include/configs/jetson-tk1.h +++ b/include/configs/jetson-tk1.h @@ -12,11 +12,6 @@ #include "tegra124-common.h" -/* Enable fdt support for Jetson TK1. Flash the image in u-boot-dtb.bin */ -#define CONFIG_DEFAULT_DEVICE_TREE tegra124-jetson-tk1 -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE - /* High-level configuration options */ #define V_PROMPT "Tegra124 (Jetson TK1) # " #define CONFIG_TEGRA_BOARD_STRING "NVIDIA Jetson TK1" diff --git a/include/configs/ks2_evm.h b/include/configs/ks2_evm.h index 43db581..51926f7 100644 --- a/include/configs/ks2_evm.h +++ b/include/configs/ks2_evm.h @@ -58,8 +58,6 @@ #define CONFIG_SPL_SPI_SUPPORT #define CONFIG_SPL_BOARD_INIT #define CONFIG_SPL_SPI_LOAD -#define CONFIG_SPL_SPI_BUS 0 -#define CONFIG_SPL_SPI_CS 0 #define CONFIG_SYS_SPI_U_BOOT_OFFS CONFIG_SPL_PAD_TO #define CONFIG_SPL_FRAMEWORK diff --git a/include/configs/kwb.h b/include/configs/kwb.h index 0860434..29b263f 100644 --- a/include/configs/kwb.h +++ b/include/configs/kwb.h @@ -89,7 +89,6 @@ #undef CONFIG_BOOTM_RTEMS #undef CONFIG_GZIP #undef CONFIG_ZLIB -#undef CONFIG_CMD_CRC32 /* USB configuration */ #define CONFIG_USB_MUSB_DSPS diff --git a/include/configs/medcom-wide.h b/include/configs/medcom-wide.h index 40155c3..ac5208f 100644 --- a/include/configs/medcom-wide.h +++ b/include/configs/medcom-wide.h @@ -12,11 +12,6 @@ #include "tegra20-common.h" -/* Enable fdt support for Medcom-Wide. Flash the image in u-boot-dtb.bin */ -#define CONFIG_DEFAULT_DEVICE_TREE tegra20-medcom-wide -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE - /* High-level configuration options */ #define V_PROMPT "Tegra20 (Medcom-Wide) # " #define CONFIG_TEGRA_BOARD_STRING "Avionic Design Medcom-Wide" diff --git a/include/configs/microblaze-generic.h b/include/configs/microblaze-generic.h index 1a82a57..bb07060 100644 --- a/include/configs/microblaze-generic.h +++ b/include/configs/microblaze-generic.h @@ -14,11 +14,6 @@ /* MicroBlaze CPU */ #define MICROBLAZE_V5 1 -/* Open Firmware DTS */ -#define CONFIG_OF_CONTROL 1 -#define CONFIG_OF_EMBED 1 -#define CONFIG_DEFAULT_DEVICE_TREE microblaze-generic - /* linear and spi flash memory */ #ifdef XILINX_FLASH_START #define FLASH diff --git a/include/configs/mx51_efikamx.h b/include/configs/mx51_efikamx.h index 0f2a4ef..fce7ead 100644 --- a/include/configs/mx51_efikamx.h +++ b/include/configs/mx51_efikamx.h @@ -96,11 +96,11 @@ #define CONFIG_SPI_FLASH #define CONFIG_SPI_FLASH_SST -#define CONFIG_SF_DEFAULT_CS (1 | 121 << 8) +#define CONFIG_SF_DEFAULT_CS 1 #define CONFIG_SF_DEFAULT_MODE (SPI_MODE_0) #define CONFIG_SF_DEFAULT_SPEED 25000000 -#define CONFIG_ENV_SPI_CS (1 | 121 << 8) +#define CONFIG_ENV_SPI_CS CONFIG_SF_DEFAULT_CS #define CONFIG_ENV_SPI_BUS 0 #define CONFIG_ENV_SPI_MAX_HZ 25000000 #define CONFIG_ENV_SPI_MODE (SPI_MODE_0) diff --git a/include/configs/mx6sabre_common.h b/include/configs/mx6sabre_common.h index e59a3b4..2d93d6c 100644 --- a/include/configs/mx6sabre_common.h +++ b/include/configs/mx6sabre_common.h @@ -74,7 +74,7 @@ #define CONFIG_SPI_FLASH_STMICRO #define CONFIG_MXC_SPI #define CONFIG_SF_DEFAULT_BUS 0 -#define CONFIG_SF_DEFAULT_CS (0 | (IMX_GPIO_NR(4, 9) << 8)) +#define CONFIG_SF_DEFAULT_CS 0 #define CONFIG_SF_DEFAULT_SPEED 20000000 #define CONFIG_SF_DEFAULT_MODE SPI_MODE_0 #endif diff --git a/include/configs/mx6slevk.h b/include/configs/mx6slevk.h index 194d7bd..4208ba1 100644 --- a/include/configs/mx6slevk.h +++ b/include/configs/mx6slevk.h @@ -205,7 +205,7 @@ #define CONFIG_SPI_FLASH_STMICRO #define CONFIG_MXC_SPI #define CONFIG_SF_DEFAULT_BUS 0 -#define CONFIG_SF_DEFAULT_CS (0 | (IMX_GPIO_NR(4, 11) << 8)) +#define CONFIG_SF_DEFAULT_CS 0 #define CONFIG_SF_DEFAULT_SPEED 20000000 #define CONFIG_SF_DEFAULT_MODE SPI_MODE_0 #endif diff --git a/include/configs/nitrogen6x.h b/include/configs/nitrogen6x.h index d4b0ac9..39d5bb3 100644 --- a/include/configs/nitrogen6x.h +++ b/include/configs/nitrogen6x.h @@ -53,7 +53,7 @@ #define CONFIG_SPI_FLASH_SST #define CONFIG_MXC_SPI #define CONFIG_SF_DEFAULT_BUS 0 -#define CONFIG_SF_DEFAULT_CS (0|(IMX_GPIO_NR(3, 19)<<8)) +#define CONFIG_SF_DEFAULT_CS 0 #define CONFIG_SF_DEFAULT_SPEED 25000000 #define CONFIG_SF_DEFAULT_MODE (SPI_MODE_0) #endif diff --git a/include/configs/odroid.h b/include/configs/odroid.h index 29dcc4a..b616ac2 100644 --- a/include/configs/odroid.h +++ b/include/configs/odroid.h @@ -16,8 +16,6 @@ #define CONFIG_SYS_PROMPT "Odroid # " /* Monitor Command Prompt */ -#undef CONFIG_DEFAULT_DEVICE_TREE -#define CONFIG_DEFAULT_DEVICE_TREE exynos4412-odroid #define CONFIG_SYS_L2CACHE_OFF #ifndef CONFIG_SYS_L2CACHE_OFF diff --git a/include/configs/origen.h b/include/configs/origen.h index 5d24916..fb1536c 100644 --- a/include/configs/origen.h +++ b/include/configs/origen.h @@ -13,8 +13,6 @@ #define CONFIG_SYS_PROMPT "ORIGEN # " -#undef CONFIG_DEFAULT_DEVICE_TREE -#define CONFIG_DEFAULT_DEVICE_TREE exynos4210-origen /* High Level Configuration Options */ #define CONFIG_EXYNOS4210 1 /* which is a EXYNOS4210 SoC */ diff --git a/include/configs/paz00.h b/include/configs/paz00.h index dd0abf8..45bb470 100644 --- a/include/configs/paz00.h +++ b/include/configs/paz00.h @@ -20,11 +20,6 @@ #include <linux/sizes.h> #include "tegra20-common.h" -/* Enable fdt support for Paz00. Flash the image in u-boot-dtb.bin */ -#define CONFIG_DEFAULT_DEVICE_TREE tegra20-paz00 -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE - /* High-level configuration options */ #define V_PROMPT "Tegra20 (Paz00) MOD # " #define CONFIG_TEGRA_BOARD_STRING "Compal Paz00" diff --git a/include/configs/pcm051.h b/include/configs/pcm051.h index 5efcd76..7d102a4 100644 --- a/include/configs/pcm051.h +++ b/include/configs/pcm051.h @@ -128,8 +128,6 @@ #define CONFIG_SPL_SPI_SUPPORT #define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD -#define CONFIG_SPL_SPI_BUS 0 -#define CONFIG_SPL_SPI_CS 0 #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x20000 #define CONFIG_SYS_SPI_U_BOOT_SIZE 0x40000 #endif diff --git a/include/configs/peach-pit.h b/include/configs/peach-pit.h index 88c093f..987cef5 100644 --- a/include/configs/peach-pit.h +++ b/include/configs/peach-pit.h @@ -13,8 +13,6 @@ #include <configs/exynos5420.h> -#undef CONFIG_DEFAULT_DEVICE_TREE -#define CONFIG_DEFAULT_DEVICE_TREE exynos5420-peach-pit /* select serial console configuration */ #define CONFIG_SERIAL3 /* use SERIAL 3 */ diff --git a/include/configs/plutux.h b/include/configs/plutux.h index a473f23..b663b89 100644 --- a/include/configs/plutux.h +++ b/include/configs/plutux.h @@ -12,11 +12,6 @@ #include "tegra20-common.h" -/* Enable fdt support for Plutux. Flash the image in u-boot-dtb.bin */ -#define CONFIG_DEFAULT_DEVICE_TREE tegra20-plutux -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE - /* High-level configuration options */ #define V_PROMPT "Tegra20 (Plutux) # " #define CONFIG_TEGRA_BOARD_STRING "Avionic Design Plutux" diff --git a/include/configs/pr1.h b/include/configs/pr1.h index e96ed4b..0f57e86 100644 --- a/include/configs/pr1.h +++ b/include/configs/pr1.h @@ -135,7 +135,6 @@ #define CONFIG_BOOTCOMMAND "run nandboot" #define CONFIG_BOOTDELAY 2 #define CONFIG_LOADADDR 0x2000000 -#define CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED /* * Pull in common ADI header for remaining command/environment setup diff --git a/include/configs/s5pc210_universal.h b/include/configs/s5pc210_universal.h index 20985da..082d51c 100644 --- a/include/configs/s5pc210_universal.h +++ b/include/configs/s5pc210_universal.h @@ -14,8 +14,6 @@ #define CONFIG_SYS_PROMPT "Universal # " /* Monitor Command Prompt */ -#undef CONFIG_DEFAULT_DEVICE_TREE -#define CONFIG_DEFAULT_DEVICE_TREE exynos4210-universal_c210 #define CONFIG_TIZEN /* TIZEN lib */ diff --git a/include/configs/sama5d3xek.h b/include/configs/sama5d3xek.h index 0104d5f..c46baf2 100644 --- a/include/configs/sama5d3xek.h +++ b/include/configs/sama5d3xek.h @@ -298,8 +298,6 @@ #define CONFIG_SPL_SPI_SUPPORT #define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD -#define CONFIG_SPL_SPI_BUS 0 -#define CONFIG_SPL_SPI_CS 0 #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x8400 #endif diff --git a/include/configs/sandbox.h b/include/configs/sandbox.h index f5fa4b3..5d36416 100644 --- a/include/configs/sandbox.h +++ b/include/configs/sandbox.h @@ -38,15 +38,12 @@ /* Number of bits in a C 'long' on this architecture */ #define CONFIG_SANDBOX_BITS_PER_LONG 64 -#define CONFIG_OF_CONTROL -#define CONFIG_OF_HOSTFILE #define CONFIG_OF_LIBFDT #define CONFIG_LMB #define CONFIG_FIT #define CONFIG_FIT_SIGNATURE #define CONFIG_RSA #define CONFIG_CMD_FDT -#define CONFIG_DEFAULT_DEVICE_TREE sandbox #define CONFIG_ANDROID_BOOT_IMAGE #define CONFIG_FS_FAT diff --git a/include/configs/seaboard.h b/include/configs/seaboard.h index fc4f976..04e4f82 100644 --- a/include/configs/seaboard.h +++ b/include/configs/seaboard.h @@ -19,11 +19,6 @@ #include "tegra20-common.h" -/* Enable fdt support for Seaboard. Flash the image in u-boot-dtb.bin */ -#define CONFIG_DEFAULT_DEVICE_TREE tegra20-seaboard -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE - /* High-level configuration options */ #define V_PROMPT "Tegra20 (SeaBoard) # " #define CONFIG_TEGRA_BOARD_STRING "NVIDIA Seaboard" diff --git a/include/configs/siemens-am33x-common.h b/include/configs/siemens-am33x-common.h index b8fb77e..bf9752f 100644 --- a/include/configs/siemens-am33x-common.h +++ b/include/configs/siemens-am33x-common.h @@ -167,8 +167,6 @@ #define CONFIG_SPL_SPI_SUPPORT #define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD -#define CONFIG_SPL_SPI_BUS 0 -#define CONFIG_SPL_SPI_CS 0 #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x20000 #define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/am33xx/u-boot-spl.lds" diff --git a/include/configs/smdk5250.h b/include/configs/smdk5250.h index 66fa179..6117094 100644 --- a/include/configs/smdk5250.h +++ b/include/configs/smdk5250.h @@ -11,8 +11,6 @@ #include <configs/exynos5250-dt.h> -#undef CONFIG_DEFAULT_DEVICE_TREE -#define CONFIG_DEFAULT_DEVICE_TREE exynos5250-smdk5250 /* Enable FIT support and comparison */ #define CONFIG_FIT diff --git a/include/configs/smdk5420.h b/include/configs/smdk5420.h index 606739b..36a156f 100644 --- a/include/configs/smdk5420.h +++ b/include/configs/smdk5420.h @@ -15,8 +15,6 @@ #define CONFIG_SMDK5420 /* which is in a SMDK5420 */ -#undef CONFIG_DEFAULT_DEVICE_TREE -#define CONFIG_DEFAULT_DEVICE_TREE exynos5420-smdk5420 /* select serial console configuration */ #define CONFIG_SERIAL3 /* use SERIAL 3 */ diff --git a/include/configs/snow.h b/include/configs/snow.h index 673fa14..fbaaa59 100644 --- a/include/configs/snow.h +++ b/include/configs/snow.h @@ -11,8 +11,6 @@ #include <configs/exynos5250-dt.h> -#undef CONFIG_DEFAULT_DEVICE_TREE -#define CONFIG_DEFAULT_DEVICE_TREE exynos5250-snow /* Enable FIT support and comparison */ #define CONFIG_FIT diff --git a/include/configs/tcm-bf518.h b/include/configs/tcm-bf518.h index a77ba69..6673026 100644 --- a/include/configs/tcm-bf518.h +++ b/include/configs/tcm-bf518.h @@ -116,7 +116,6 @@ #define CONFIG_UART_CONSOLE 0 #define CONFIG_BOOTCOMMAND "run flashboot" #define FLASHBOOT_ENV_SETTINGS "flashboot=bootm 0x20040000\0" -#define CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED /* * Pull in common ADI header for remaining command/environment setup diff --git a/include/configs/tcm-bf537.h b/include/configs/tcm-bf537.h index c4c1c57..9998343 100644 --- a/include/configs/tcm-bf537.h +++ b/include/configs/tcm-bf537.h @@ -145,7 +145,6 @@ "flashboot=flread 20040000 1000000 300000;" \ "bootm 0x1000000\0" #define CONFIG_BOARD_SIZE_LIMIT $$((384 * 1024)) -#define CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED /* * Pull in common ADI header for remaining command/environment setup diff --git a/include/configs/tec-ng.h b/include/configs/tec-ng.h index 13baa76..51f87da 100644 --- a/include/configs/tec-ng.h +++ b/include/configs/tec-ng.h @@ -10,11 +10,6 @@ #include "tegra30-common.h" -/* Enable fdt support for tec-ng. Flash the image in u-boot-dtb.bin */ -#define CONFIG_DEFAULT_DEVICE_TREE tegra30-tec-ng -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE - /* High-level configuration options */ #define V_PROMPT "Tegra30 (TEC-NG) # " #define CONFIG_TEGRA_BOARD_STRING "Avionic Design Tamonten™ NG Evaluation Carrier" diff --git a/include/configs/tec.h b/include/configs/tec.h index 90e7b7a..9ea4ff4 100644 --- a/include/configs/tec.h +++ b/include/configs/tec.h @@ -12,11 +12,6 @@ #include "tegra20-common.h" -/* Enable fdt support for TEC. Flash the image in u-boot-dtb.bin */ -#define CONFIG_DEFAULT_DEVICE_TREE tegra20-tec -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE - /* High-level configuration options */ #define V_PROMPT "Tegra20 (TEC) # " #define CONFIG_TEGRA_BOARD_STRING "Avionic Design Tamonten Evaluation Carrier" diff --git a/include/configs/tegra-common-post.h b/include/configs/tegra-common-post.h index c337e30..23e3c8a 100644 --- a/include/configs/tegra-common-post.h +++ b/include/configs/tegra-common-post.h @@ -69,7 +69,6 @@ /* remove devicetree support */ #ifdef CONFIG_OF_CONTROL -#undef CONFIG_OF_CONTROL #endif /* remove I2C support */ diff --git a/include/configs/trats.h b/include/configs/trats.h index 6fa646b..43751e7 100644 --- a/include/configs/trats.h +++ b/include/configs/trats.h @@ -16,8 +16,6 @@ #define CONFIG_TRATS -#undef CONFIG_DEFAULT_DEVICE_TREE -#define CONFIG_DEFAULT_DEVICE_TREE exynos4210-trats #define CONFIG_TIZEN /* TIZEN lib */ diff --git a/include/configs/trats2.h b/include/configs/trats2.h index 1450865..e9a04f7 100644 --- a/include/configs/trats2.h +++ b/include/configs/trats2.h @@ -15,8 +15,6 @@ #define CONFIG_SYS_PROMPT "Trats2 # " /* Monitor Command Prompt */ -#undef CONFIG_DEFAULT_DEVICE_TREE -#define CONFIG_DEFAULT_DEVICE_TREE exynos4412-trats2 #define CONFIG_TIZEN /* TIZEN lib */ diff --git a/include/configs/trimslice.h b/include/configs/trimslice.h index f81cfa2..7c00642 100644 --- a/include/configs/trimslice.h +++ b/include/configs/trimslice.h @@ -11,11 +11,6 @@ #include <linux/sizes.h> #include "tegra20-common.h" -/* Enable fdt support for TrimSlice. Flash the image in u-boot-dtb.bin */ -#define CONFIG_DEFAULT_DEVICE_TREE tegra20-trimslice -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE - /* High-level configuration options */ #define V_PROMPT "Tegra20 (TrimSlice) # " #define CONFIG_TEGRA_BOARD_STRING "Compulab Trimslice" diff --git a/include/configs/tseries.h b/include/configs/tseries.h index 1dd13fd..9a62070 100644 --- a/include/configs/tseries.h +++ b/include/configs/tseries.h @@ -222,8 +222,6 @@ #define CONFIG_SPL_SPI_SUPPORT #define CONFIG_SPL_SPI_FLASH_SUPPORT #define CONFIG_SPL_SPI_LOAD -#define CONFIG_SPL_SPI_BUS 0 -#define CONFIG_SPL_SPI_CS 0 #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x20000 #undef CONFIG_ENV_IS_NOWHERE #define CONFIG_ENV_IS_IN_SPI_FLASH diff --git a/include/configs/vct.h b/include/configs/vct.h index 5ab4de3..217ba2f 100644 --- a/include/configs/vct.h +++ b/include/configs/vct.h @@ -296,7 +296,6 @@ int vct_gpio_get(int pin); #undef CONFIG_CMD_BEDBUG #undef CONFIG_CMD_CACHE #undef CONFIG_CMD_CONSOLE -#undef CONFIG_CMD_CRC32 #undef CONFIG_CMD_DHCP #undef CONFIG_CMD_EEPROM #undef CONFIG_CMD_EEPROM diff --git a/include/configs/venice2.h b/include/configs/venice2.h index 6d4e999..6897aa8 100644 --- a/include/configs/venice2.h +++ b/include/configs/venice2.h @@ -12,11 +12,6 @@ #include "tegra124-common.h" -/* Enable fdt support for Venice2. Flash the image in u-boot-dtb.bin */ -#define CONFIG_DEFAULT_DEVICE_TREE tegra124-venice2 -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE - /* High-level configuration options */ #define V_PROMPT "Tegra124 (Venice2) # " #define CONFIG_TEGRA_BOARD_STRING "NVIDIA Venice2" diff --git a/include/configs/ventana.h b/include/configs/ventana.h index edf3720..f195f8a 100644 --- a/include/configs/ventana.h +++ b/include/configs/ventana.h @@ -11,11 +11,6 @@ #include <linux/sizes.h> #include "tegra20-common.h" -/* Enable fdt support for Ventana. Flash the image in u-boot-dtb.bin */ -#define CONFIG_DEFAULT_DEVICE_TREE tegra20-ventana -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE - /* High-level configuration options */ #define V_PROMPT "Tegra20 (Ventana) # " #define CONFIG_TEGRA_BOARD_STRING "NVIDIA Ventana" diff --git a/include/configs/vexpress_aemv8a.h b/include/configs/vexpress_aemv8a.h index 0897932..f3af971 100644 --- a/include/configs/vexpress_aemv8a.h +++ b/include/configs/vexpress_aemv8a.h @@ -51,7 +51,6 @@ /* Flat Device Tree Definitions */ #define CONFIG_OF_LIBFDT -#define CONFIG_DEFAULT_DEVICE_TREE vexpress64 /* SMP Spin Table Definitions */ #ifdef CONFIG_BASE_FVP diff --git a/include/configs/vision2.h b/include/configs/vision2.h index 6891bf8..3f35076 100644 --- a/include/configs/vision2.h +++ b/include/configs/vision2.h @@ -57,11 +57,11 @@ * Use gpio 4 pin 25 as chip select for SPI flash * This corresponds to gpio 121 */ -#define CONFIG_SF_DEFAULT_CS (1 | (121 << 8)) +#define CONFIG_SF_DEFAULT_CS 1 #define CONFIG_SF_DEFAULT_MODE SPI_MODE_0 #define CONFIG_SF_DEFAULT_SPEED 25000000 -#define CONFIG_ENV_SPI_CS (1 | (121 << 8)) +#define CONFIG_ENV_SPI_CS CONFIG_SF_DEFAULT_CS #define CONFIG_ENV_SPI_BUS 0 #define CONFIG_ENV_SPI_MAX_HZ 25000000 #define CONFIG_ENV_SPI_MODE SPI_MODE_0 diff --git a/include/configs/whistler.h b/include/configs/whistler.h index 9e09f03..10e70d2 100644 --- a/include/configs/whistler.h +++ b/include/configs/whistler.h @@ -11,11 +11,6 @@ #include <linux/sizes.h> #include "tegra20-common.h" -/* Enable fdt support for Whistler. Flash the image in u-boot-dtb.bin */ -#define CONFIG_DEFAULT_DEVICE_TREE tegra20-whistler -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE - /* High-level configuration options */ #define V_PROMPT "Tegra20 (Whistler) # " #define CONFIG_TEGRA_BOARD_STRING "NVIDIA Whistler" diff --git a/include/configs/zynq-common.h b/include/configs/zynq-common.h index 875cb43..0b4dd66 100644 --- a/include/configs/zynq-common.h +++ b/include/configs/zynq-common.h @@ -227,8 +227,6 @@ #define CONFIG_IMAGE_FORMAT_LEGACY /* enable also legacy image format */ /* FDT support */ -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE #define CONFIG_DISPLAY_BOARDINFO_LATE /* RSA support */ @@ -273,18 +271,13 @@ #define CONFIG_SYS_MMC_SD_FAT_BOOT_PARTITION 1 #define CONFIG_SPL_LIBDISK_SUPPORT #define CONFIG_SPL_FAT_SUPPORT -#if defined(CONFIG_OF_CONTROL) && defined(CONFIG_OF_SEPARATE) -# define CONFIG_SPL_FAT_LOAD_PAYLOAD_NAME "u-boot-dtb.img" -#else -# define CONFIG_SPL_FAT_LOAD_PAYLOAD_NAME "u-boot.img" -#endif +#define CONFIG_SPL_FAT_LOAD_PAYLOAD_NAME "u-boot-dtb.img" #endif /* Disable dcache for SPL just for sure */ #ifdef CONFIG_SPL_BUILD #define CONFIG_SYS_DCACHE_OFF #undef CONFIG_FPGA -#undef CONFIG_OF_CONTROL #endif /* Address in RAM where the parameters must be copied by SPL. */ @@ -303,9 +296,7 @@ #define CONFIG_SPL_SPI_SUPPORT #define CONFIG_SPL_SPI_LOAD #define CONFIG_SPL_SPI_FLASH_SUPPORT -#define CONFIG_SPL_SPI_BUS 0 #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x100000 -#define CONFIG_SPL_SPI_CS 0 #endif /* for booting directly linux */ diff --git a/include/configs/zynq_microzed.h b/include/configs/zynq_microzed.h index b0328a2..549a664 100644 --- a/include/configs/zynq_microzed.h +++ b/include/configs/zynq_microzed.h @@ -19,7 +19,6 @@ #define CONFIG_SYS_NO_FLASH #define CONFIG_ZYNQ_SDHCI0 -#define CONFIG_DEFAULT_DEVICE_TREE zynq-microzed #include <configs/zynq-common.h> diff --git a/include/configs/zynq_zc70x.h b/include/configs/zynq_zc70x.h index 291a5fe..b659054 100644 --- a/include/configs/zynq_zc70x.h +++ b/include/configs/zynq_zc70x.h @@ -23,7 +23,6 @@ #define CONFIG_ZYNQ_I2C0 #define CONFIG_ZYNQ_EEPROM #define CONFIG_ZYNQ_BOOT_FREEBSD -#define CONFIG_DEFAULT_DEVICE_TREE zynq-zc702 #include <configs/zynq-common.h> diff --git a/include/configs/zynq_zc770.h b/include/configs/zynq_zc770.h index 8aa96e7..16b9047 100644 --- a/include/configs/zynq_zc770.h +++ b/include/configs/zynq_zc770.h @@ -20,18 +20,15 @@ # define CONFIG_ZYNQ_GEM_PHY_ADDR0 7 # define CONFIG_ZYNQ_SDHCI0 # define CONFIG_ZYNQ_SPI -# define CONFIG_DEFAULT_DEVICE_TREE zynq-zc770-xm010 #elif defined(CONFIG_ZC770_XM012) # define CONFIG_ZYNQ_SERIAL_UART1 # undef CONFIG_SYS_NO_FLASH -# define CONFIG_DEFAULT_DEVICE_TREE zynq-zc770-xm012 #elif defined(CONFIG_ZC770_XM013) # define CONFIG_ZYNQ_SERIAL_UART0 # define CONFIG_ZYNQ_GEM1 # define CONFIG_ZYNQ_GEM_PHY_ADDR1 7 -# define CONFIG_DEFAULT_DEVICE_TREE zynq-zc770-xm013 #else # define CONFIG_ZYNQ_SERIAL_UART0 diff --git a/include/configs/zynq_zed.h b/include/configs/zynq_zed.h index ce17d40..946de95 100644 --- a/include/configs/zynq_zed.h +++ b/include/configs/zynq_zed.h @@ -21,7 +21,6 @@ #define CONFIG_ZYNQ_USB #define CONFIG_ZYNQ_SDHCI0 #define CONFIG_ZYNQ_BOOT_FREEBSD -#define CONFIG_DEFAULT_DEVICE_TREE zynq-zed #include <configs/zynq-common.h> diff --git a/include/fb_mmc.h b/include/fb_mmc.h new file mode 100644 index 0000000..1ad1d13 --- /dev/null +++ b/include/fb_mmc.h @@ -0,0 +1,8 @@ +/* + * Copyright 2014 Broadcom Corporation. + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +void fb_mmc_flash_write(const char *cmd, void *download_buffer, + unsigned int download_bytes, char *response); diff --git a/include/linker_lists.h b/include/linker_lists.h index 557e627..507d61b 100644 --- a/include/linker_lists.h +++ b/include/linker_lists.h @@ -28,11 +28,11 @@ * together. Assuming _list and _entry are the list and entry names, * then the corresponding input section name is * - * _u_boot_list + _2_ + @_list + _2_ + @_entry + * .u_boot_list_ + 2_ + @_list + _2_ + @_entry * * and the C variable name is * - * .u_boot_list_ + 2_ + @_list + _2_ + @_entry + * _u_boot_list + _2_ + @_list + _2_ + @_entry * * This ensures uniqueness for both input section and C variable name. * diff --git a/include/linux/compiler-gcc.h b/include/linux/compiler-gcc.h index 02ae99e..e057bd2 100644 --- a/include/linux/compiler-gcc.h +++ b/include/linux/compiler-gcc.h @@ -64,8 +64,12 @@ #endif #define __deprecated __attribute__((deprecated)) +#ifndef __packed #define __packed __attribute__((packed)) +#endif +#ifndef __weak #define __weak __attribute__((weak)) +#endif /* * it doesn't make sense on ARM (currently the only user of __naked) to trace @@ -91,8 +95,12 @@ * would be. * [...] */ +#ifndef __pure #define __pure __attribute__((pure)) +#endif +#ifndef __aligned #define __aligned(x) __attribute__((aligned(x))) +#endif #define __printf(a, b) __attribute__((format(printf, a, b))) #define __scanf(a, b) __attribute__((format(scanf, a, b))) #define noinline __attribute__((noinline)) @@ -115,4 +123,6 @@ */ #define uninitialized_var(x) x = x +#ifndef __always_inline #define __always_inline inline __attribute__((always_inline)) +#endif diff --git a/include/spi_flash.h b/include/spi_flash.h index 2db53c7..408a5b4 100644 --- a/include/spi_flash.h +++ b/include/spi_flash.h @@ -19,6 +19,19 @@ #include <linux/types.h> #include <linux/compiler.h> +#ifndef CONFIG_SF_DEFAULT_SPEED +# define CONFIG_SF_DEFAULT_SPEED 1000000 +#endif +#ifndef CONFIG_SF_DEFAULT_MODE +# define CONFIG_SF_DEFAULT_MODE SPI_MODE_3 +#endif +#ifndef CONFIG_SF_DEFAULT_CS +# define CONFIG_SF_DEFAULT_CS 0 +#endif +#ifndef CONFIG_SF_DEFAULT_BUS +# define CONFIG_SF_DEFAULT_BUS 0 +#endif + /* sf param flags */ #define SECT_4K 1 << 1 #define SECT_32K 1 << 2 diff --git a/lib/Kconfig b/lib/Kconfig new file mode 100644 index 0000000..88e5da7 --- /dev/null +++ b/lib/Kconfig @@ -0,0 +1,11 @@ +menu "Library routines" + +config CC_OPTIMIZE_LIBS_FOR_SPEED + bool "Optimize libraries for speed" + help + Enabling this option will pass "-O2" to gcc when compiling + under "lib" directory. + + If unsure, say N. + +endmenu diff --git a/net/Kconfig b/net/Kconfig new file mode 100644 index 0000000..22b9eaa --- /dev/null +++ b/net/Kconfig @@ -0,0 +1,10 @@ +# +# Network configuration +# + +menuconfig NET + bool "Networking support" + +if NET + +endif # if NET diff --git a/scripts/Makefile.autoconf b/scripts/Makefile.autoconf index 44c3997..ced2b9a 100644 --- a/scripts/Makefile.autoconf +++ b/scripts/Makefile.autoconf @@ -74,7 +74,6 @@ define filechk_config_h | sed '/=/ {s/=/ /;q; } ; { s/$$/ 1/; }'; \ done; \ echo \#define CONFIG_BOARDDIR board/$(if $(VENDOR),$(VENDOR)/)$(BOARD);\ - echo \#include \<config_cmd_defaults.h\>; \ echo \#include \<config_defaults.h\>; \ echo \#include \<configs/$(CONFIG_SYS_CONFIG_NAME).h\>; \ echo \#include \<asm/config.h\>; \ diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl index 3fed5e4..74db2e2 100755 --- a/scripts/checkpatch.pl +++ b/scripts/checkpatch.pl @@ -2148,7 +2148,7 @@ sub process { "please, no space before tabs\n" . $herevet) && $fix) { while ($fixed[$linenr - 1] =~ - s/(^\+.*) {8,8}+\t/$1\t\t/) {} + s/(^\+.*) {8,8}\t/$1\t\t/) {} while ($fixed[$linenr - 1] =~ s/(^\+.*) +\t/$1\t/) {} } diff --git a/test/cmd_repeat.sh b/test/cmd_repeat.sh new file mode 100755 index 0000000..990e799 --- /dev/null +++ b/test/cmd_repeat.sh @@ -0,0 +1,29 @@ +#!/bin/sh + +# Test for U-Boot cli including command repeat + +BASE="$(dirname $0)" +. $BASE/common.sh + +run_test() { + ./${OUTPUT_DIR}/u-boot <<END +setenv ctrlc_ignore y +md 0 + +reset +END +} +check_results() { + echo "Check results" + + grep -q 00000100 ${tmp} || fail "Command did not repeat" +} + +echo "Test CLI repeat" +echo +tmp="$(tempfile)" +build_uboot +run_test >${tmp} +check_results ${tmp} +rm ${tmp} +echo "Test passed" diff --git a/test/common.sh b/test/common.sh new file mode 100644 index 0000000..702d1ed --- /dev/null +++ b/test/common.sh @@ -0,0 +1,20 @@ +#!/bin/sh + +OUTPUT_DIR=sandbox + +fail() { + echo "Test failed: $1" + if [ -n ${tmp} ]; then + rm ${tmp} + fi + exit 1 +} + +build_uboot() { + echo "Build sandbox" + OPTS="O=${OUTPUT_DIR} $1" + NUM_CPUS=$(grep -c processor /proc/cpuinfo) + echo ${OPTS} + make ${OPTS} sandbox_config + make ${OPTS} -s -j${NUM_CPUS} +} diff --git a/test/trace/test-trace.sh b/test/trace/test-trace.sh index aa02f09..3e8651e 100755 --- a/test/trace/test-trace.sh +++ b/test/trace/test-trace.sh @@ -5,39 +5,25 @@ # Simple test script for tracing with sandbox -OUTPUT_DIR=sandbox TRACE_OPT="FTRACE=1" -fail() { - echo "Test failed: $1" - if [ -n ${tmp} ]; then - rm ${tmp} - fi - exit 1 -} - -build_uboot() { - echo "Build sandbox" - OPTS="O=${OUTPUT_DIR} ${TRACE_OPT}" - NUM_CPUS=$(grep -c processor /proc/cpuinfo) - make ${OPTS} sandbox_config - make ${OPTS} -s -j${NUM_CPUS} -} +BASE="$(dirname $0)/.." +. $BASE/common.sh run_trace() { echo "Run trace" ./${OUTPUT_DIR}/u-boot <<END - trace stats - hash sha256 0 10000 - trace pause - trace stats - hash sha256 0 10000 - trace stats - trace resume - hash sha256 0 10000 - trace pause - trace stats - reset +trace stats +hash sha256 0 10000 +trace pause +trace stats +hash sha256 0 10000 +trace stats +trace resume +hash sha256 0 10000 +trace pause +trace stats +reset END } @@ -69,7 +55,7 @@ check_results() { echo "Simple trace test / sanity check using sandbox" echo tmp="$(tempfile)" -build_uboot +build_uboot "${TRACE_OPT}" run_trace >${tmp} check_results ${tmp} rm ${tmp} diff --git a/tools/env/Makefile b/tools/env/Makefile index 4927489..40164f7 100644 --- a/tools/env/Makefile +++ b/tools/env/Makefile @@ -21,14 +21,16 @@ HOST_EXTRACFLAGS += -DMTD_OLD endif always := fw_printenv -hostprogs-y := fw_printenv_unstripped +hostprogs-y := fw_printenv -fw_printenv_unstripped-objs := fw_env.o fw_env_main.o \ +fw_printenv-objs := fw_env.o fw_env_main.o \ crc32.o ctype.o linux_string.o \ env_attr.o env_flags.o aes.o -quiet_cmd_strip = STRIP $@ - cmd_strip = $(STRIP) -o $@ $< +quiet_cmd_crosstools_strip = STRIP $^ + cmd_crosstools_strip = $(STRIP) $^; touch $@ -$(obj)/fw_printenv: $(obj)/fw_printenv_unstripped FORCE - $(call if_changed,strip) +$(obj)/.strip: $(obj)/fw_printenv + $(call cmd,crosstools_strip) + +always += .strip diff --git a/tools/genboardscfg.py b/tools/genboardscfg.py index 654100b..23c956b 100755 --- a/tools/genboardscfg.py +++ b/tools/genboardscfg.py @@ -328,6 +328,9 @@ class MaintainersDatabase: maintainers = [] status = '-' for line in open(file): + # Check also commented maintainers + if line[:3] == '#M:': + line = line[1:] tag, rest = line[:2], line[2:].strip() if tag == 'M:': maintainers.append(rest) diff --git a/tools/reformat.py b/tools/reformat.py deleted file mode 100755 index 61306d0..0000000 --- a/tools/reformat.py +++ /dev/null @@ -1,132 +0,0 @@ -#! /usr/bin/python -######################################################################## -# -# reorder and reformat a file in columns -# -# this utility takes lines from its standard input and reproduces them, -# partially reordered and reformatted, on its standard output. -# -# It has the same effect as a 'sort | column -t', with the exception -# that empty lines, as well as lines which start with a '#' sign, are -# not affected, i.e. they keep their position and formatting, and act -# as separators, i.e. the parts before and after them are each sorted -# separately (but overall field widths are computed across the whole -# input). -# -# Options: -# -i: -# --ignore-case: -# Do not consider case when sorting. -# -d: -# --default: -# What to chage empty fields to. -# -s <N>: -# --split=<N>: -# Treat only the first N whitespace sequences as separators. -# line content after the Nth separator will count as only one -# field even if it contains whitespace. -# Example : '-s 2' causes input 'a b c d e' to be split into -# three fields, 'a', 'b', and 'c d e'. -# -# boards.cfg requires -ids 6. -# -######################################################################## - -import sys, getopt, locale - -# ensure we sort using the C locale. - -locale.setlocale(locale.LC_ALL, 'C') - -# check options - -maxsplit = 0 -ignore_case = 0 -default_field ='' - -try: - opts, args = getopt.getopt(sys.argv[1:], "id:s:", - ["ignore-case","default","split="]) -except getopt.GetoptError as err: - print str(err) # will print something like "option -a not recognized" - sys.exit(2) - -for o, a in opts: - if o in ("-s", "--split"): - maxsplit = eval(a) - elif o in ("-i", "--ignore-case"): - ignore_case = 1 - elif o in ("-d", "--default"): - default_field = a - else: - assert False, "unhandled option" - -# collect all lines from standard input and, for the ones which must be -# reformatted and sorted, count their fields and compute each field's -# maximum size - -input_lines = [] -field_width = [] - -for line in sys.stdin: - # remove final end of line - input_line = line.strip('\n') - if (len(input_line)>0) and (input_line[0] != '#'): - # sortable line: split into fields - fields = input_line.split(None,maxsplit) - # if there are new fields, top up field_widths - for f in range(len(field_width), len(fields)): - field_width.append(0) - # compute the maximum witdh of each field - for f in range(len(fields)): - field_width[f] = max(field_width[f],len(fields[f])) - # collect the line for next stage - input_lines.append(input_line) - -# run through collected input lines, collect the ones which must be -# reformatted and sorted, and whenever a non-reformattable, non-sortable -# line is met, sort the collected lines before it and append them to the -# output lines, then add the non-sortable line too. - -output_lines = [] -sortable_lines = [] -for input_line in input_lines: - if (len(input_line)>0) and (input_line[0] != '#'): - # this line should be reformatted and sorted - input_fields = input_line.split(None,maxsplit) - output_fields = []; - # reformat each field to this field's column width - for f in range(len(input_fields)): - output_field = input_fields[f]; - output_fields.append(output_field.ljust(field_width[f])) - # any missing field is set to default if it exists - if default_field != '': - for f in range(len(input_fields),len(field_width)): - output_fields.append(default_field.ljust(field_width[f])) - # join fields using two spaces, like column -t would - output_line = ' '.join(output_fields); - # collect line for later - sortable_lines.append(output_line) - else: - # this line is non-sortable - # sort collected sortable lines - if ignore_case!=0: - sortable_lines.sort(key=lambda x: str.lower(locale.strxfrm(x))) - else: - sortable_lines.sort(key=lambda x: locale.strxfrm(x)) - # append sortable lines to the final output - output_lines.extend(sortable_lines) - sortable_lines = [] - # append non-sortable line to the final output - output_lines.append(input_line) -# maybe we had sortable lines pending, so append them to the final output -if ignore_case!=0: - sortable_lines.sort(key=lambda x: str.lower(locale.strxfrm(x))) -else: - sortable_lines.sort(key=lambda x: locale.strxfrm(x)) -output_lines.extend(sortable_lines) - -# run through output lines and print them, except rightmost whitespace - -for output_line in output_lines: - print output_line.rstrip() |