mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-06-09 23:36:03 +09:00
56c4046038
This change allows more fine tuning of driver model based SPI support in SPL and TPL. It is now possible to explicitly enable/disable the DM_SPI support in SPL and TPL via Kconfig option. Before this change it was necessary to use: /* SPI Flash Configs */ #if defined(CONFIG_SPL_BUILD) #undef CONFIG_DM_SPI #undef CONFIG_DM_SPI_FLASH #undef CONFIG_SPI_FLASH_MTD #endif in the ./include/configs/<board>.h, which is error prone and shall be avoided when we strive to switch to Kconfig. The goal of this patch: Provide distinction for DM_SPI support in both U-Boot proper and SPL (TPL). Valid use case is when U-Boot proper wants to use DM_SPI, but SPL must still support non DM driver. Another use case is the conversion of non DM/DTS SPI driver to support DM/DTS. When such driver needs to work in both SPL and U-Boot proper, the distinction is needed in Kconfig (also if SPL version of the driver supports OF_PLATDATA). In the end of the day one would have to support following use cases (in single driver file - e.g. mxs_spi.c): - U-Boot proper driver supporting DT/DTS - U-Boot proper driver without DT/DTS support (deprecated) - SPL driver without DT/DTS support - SPL (and TPL) driver with DT/DTS (when the SoC has enough resources to run full blown DT/DTS) - SPL driver with DT/DTS and SPL_OF_PLATDATA (when one have constrained environment with no fitImage and OF_LIBFDT support). Some boards do require SPI support (with DM) in SPL (TPL) and some only have DM_SPI{_FLASH} defined to allow compiling SPL. This patch converts #ifdef CONFIG_DM_SPI* to #if CONFIG_IS_ENABLED(DM_SPI) and provides corresponding defines in Kconfig. Signed-off-by: Lukasz Majewski <lukma@denx.de> Tested-by: Adam Ford <aford173@gmail.com> #da850-evm Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> [trini: Fixup a few platforms] Signed-off-by: Tom Rini <trini@konsulko.com> |
||
---|---|---|
.. | ||
altera_spi.c | ||
atcspi200_spi.c | ||
ath79_spi.c | ||
atmel_spi.c | ||
atmel_spi.h | ||
atmel-quadspi.c | ||
bcm63xx_hsspi.c | ||
bcm63xx_spi.c | ||
bcmstb_spi.c | ||
cadence_qspi_apb.c | ||
cadence_qspi.c | ||
cadence_qspi.h | ||
cf_spi.c | ||
davinci_spi.c | ||
designware_spi.c | ||
exynos_spi.c | ||
fsl_dspi.c | ||
fsl_espi.c | ||
fsl_qspi.c | ||
ich.c | ||
ich.h | ||
Kconfig | ||
kirkwood_spi.c | ||
Makefile | ||
meson_spifc.c | ||
mpc8xx_spi.c | ||
mpc8xxx_spi.c | ||
mscc_bb_spi.c | ||
mt7621_spi.c | ||
mtk_snfi_spi.c | ||
mvebu_a3700_spi.c | ||
mxc_spi.c | ||
mxs_spi.c | ||
nxp_fspi.c | ||
omap3_spi.c | ||
pic32_spi.c | ||
pl022_spi.c | ||
renesas_rpc_spi.c | ||
rk_spi.c | ||
rk_spi.h | ||
sandbox_spi.c | ||
sh_qspi.c | ||
soft_spi.c | ||
spi-emul-uclass.c | ||
spi-mem-nodm.c | ||
spi-mem.c | ||
spi-sifive.c | ||
spi-sunxi.c | ||
spi-uclass.c | ||
spi.c | ||
stm32_qspi.c | ||
stm32_spi.c | ||
tegra_spi.h | ||
tegra20_sflash.c | ||
tegra20_slink.c | ||
tegra114_spi.c | ||
tegra210_qspi.c | ||
ti_qspi.c | ||
uniphier_spi.c | ||
xilinx_spi.c | ||
zynq_qspi.c | ||
zynq_spi.c | ||
zynqmp_gqspi.c |