u-boot/drivers/spi
Marcin Wojtas f7dd537098 spi: prevent overriding established bus settings
The SPI stack relies on a proper bus speed/mode configuration
by calling dm_spi_claim_bus(). However the hitherto code
allowed to accidentally override those settings in
the spi_get_bus_and_cs() routine.

The initially established speed could be discarded by using
the slave platdata, which turned out to be an issue on
the platforms whose slave maximum supported frequency
is not on par with the maximum frequency of the bus controller.

This patch fixes above issue by configuring the bus from
spi_get_bus_and_cs() only in case it was not done before.

Signed-off-by: Marcin Wojtas <mw@semihalf.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Acked-by: Jagan Teki <jagan@amarulasolutions.com>
2020-01-27 22:27:22 +05:30
..
altera_spi.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
atcspi200_spi.c spi: atcspi200: Change include order 2019-05-09 00:42:55 +05:30
ath79_spi.c common: Move clock functions into a new file 2020-01-17 13:27:29 -05:00
atmel-quadspi.c spi: Add Atmel QuadSPI driver 2019-07-09 09:26:43 +03:00
atmel_spi.c dm: gpio: Allow control of GPIO uclass in SPL 2019-12-15 08:52:29 +08:00
atmel_spi.h Revert "spi: atmel: Drop non-dm code" 2018-04-07 09:19:00 -04:00
bcm63xx_hsspi.c dm: spi: Change cs_info op to return -EINVAL for invalid cs num 2019-10-25 00:48:31 +05:30
bcm63xx_spi.c dm: spi: Change cs_info op to return -EINVAL for invalid cs num 2019-10-25 00:48:31 +05:30
bcmstb_spi.c board: arm: Add support for Broadcom BCM7445 2018-07-10 16:55:57 -04:00
cadence_qspi.c spi: cadence_qspi: support DM_CLK 2019-11-20 23:46:11 +01:00
cadence_qspi.h spi: cadence_qspi: support DM_CLK 2019-11-20 23:46:11 +01:00
cadence_qspi_apb.c spi: cadence_qspi: Add quad write support 2019-04-12 10:54:03 +05:30
cf_spi.c drivers: spi: cf_spi: convert to driver model 2019-05-24 08:11:57 -04:00
davinci_spi.c spi: Remove unused spi_init 2018-11-27 21:06:53 +05:30
designware_spi.c dm: gpio: Allow control of GPIO uclass in SPL 2019-12-15 08:52:29 +08:00
exynos_spi.c common: Move get_ticks() function out of common.h 2019-12-02 18:23:13 -05:00
fsl_dspi.c spi: fsl_dspi fix to stop extra transmissions 2019-04-12 11:24:24 +05:30
fsl_espi.c spi: Remove unused spi_init 2018-11-27 21:06:53 +05:30
fsl_qspi.c spi: fsl_qspi: Add support for QSPI on iMX7ULP 2019-10-08 16:36:37 +02:00
fsl_qspi.h SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
ich.c spi: ich: Add Apollo Lake support 2019-12-15 11:44:24 +08:00
ich.h spi: ich: Add Apollo Lake support 2019-12-15 11:44:24 +08:00
Kconfig spi: nxp_fspi: new driver for the FlexSPI controller 2020-01-27 22:27:21 +05:30
kirkwood_spi.c km/spi: remove deprecated SPI flash driver code for KM Kirkwood boards 2019-07-11 10:58:03 +02:00
lpc32xx_ssp.c spi: Remove unused spi_init 2018-11-27 21:06:53 +05:30
Makefile spi: nxp_fspi: new driver for the FlexSPI controller 2020-01-27 22:27:21 +05:30
meson_spifc.c spi: Add Amlogic Meson SPI Flash Controller driver 2018-11-24 14:41:12 +05:30
mpc8xx_spi.c spi, mpc8xx: migrate to DM_SPI 2018-12-03 10:44:10 -05:00
mpc8xxx_spi.c spi: mpc8xxx: Convert to DM 2019-06-10 17:59:49 +05:30
mscc_bb_spi.c mips: spi: mscc: Add fast bitbang SPI driver 2019-01-16 13:56:43 +01:00
mt7621_spi.c spi: mt7621-spi: restore default register value after each xfer 2019-10-25 17:20:44 +02:00
mtk_snfi_spi.c spi: add spi-mem driver for MediaTek MT7629 SoC 2019-07-25 18:52:12 +05:30
mvebu_a3700_spi.c spi: mvebu_a3700_spi: Fix clock prescale computation 2019-09-16 08:09:22 +05:30
mxc_spi.c spi: imx: work with cs greater 0 2019-06-11 10:42:48 +02:00
mxs_spi.c common: Move ARM cache operations out of common.h 2019-12-02 18:24:58 -05:00
nxp_fspi.c spi: nxp_fspi: new driver for the FlexSPI controller 2020-01-27 22:27:21 +05:30
omap3_spi.c spi: omap3: fix set_wordlen() reading from incorrect address for CHCONF 2019-02-28 14:21:46 -05:00
pic32_spi.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
pl022_spi.c dm: platform_data: spi: s/pl022_spi.h/spi_pl022.h 2018-11-27 21:06:46 +05:30
renesas_rpc_spi.c spi: rpc: Add support for operation without clock framework 2019-05-07 05:41:32 +02:00
rk_spi.c spi: rk: Limit transfers to (64K - 1) bytes 2019-12-27 17:47:26 +05:30
rk_spi.h SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
sandbox_spi.c spi: Add support for memory-mapped flash 2019-11-03 07:20:26 +08:00
sh_qspi.c spi: Remove unused spi_init 2018-11-27 21:06:53 +05:30
sh_spi.c spi: Remove unused spi_init 2018-11-27 21:06:53 +05:30
sh_spi.h SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
soft_spi.c spi: soft_spi: Fix data abort if slave is not probed 2019-09-16 08:09:22 +05:30
soft_spi_legacy.c spi: Remove unused spi_init 2018-11-27 21:06:53 +05:30
spi-emul-uclass.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
spi-mem-nodm.c spi: Add non DM version of SPI_MEM 2019-02-07 15:33:21 +05:30
spi-mem.c spi: spi-mem: Fix read data size issue 2019-07-18 17:11:16 +05:30
spi-sifive.c spi: Add SiFive SPI driver 2019-07-18 17:11:16 +05:30
spi-sunxi.c spi: Rename sun4i_spi.c into spi-sunxi.c 2019-03-04 18:08:56 +05:30
spi-uclass.c spi: prevent overriding established bus settings 2020-01-27 22:27:22 +05:30
spi.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
stm32_qspi.c spi: stm32_qspi: Remove "st, stm32-qspi" compatible string 2019-07-22 11:04:52 +02:00
stm32_spi.c spi: stm32: Fix warnings when compiling with W=1 2019-07-12 11:50:57 +02:00
tegra20_sflash.c common: Move get_ticks() function out of common.h 2019-12-02 18:23:13 -05:00
tegra20_slink.c common: Move get_ticks() function out of common.h 2019-12-02 18:23:13 -05:00
tegra114_spi.c common: Move get_ticks() function out of common.h 2019-12-02 18:23:13 -05:00
tegra210_qspi.c common: Move get_ticks() function out of common.h 2019-12-02 18:23:13 -05:00
tegra_spi.h SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
ti_qspi.c common: Move ARM cache operations out of common.h 2019-12-02 18:24:58 -05:00
uniphier_spi.c common: Move get_ticks() function out of common.h 2019-12-02 18:23:13 -05:00
xilinx_spi.c spi: xilinx_spi: convert to livetree 2018-07-16 14:01:20 +05:30
zynq_qspi.c spi: zynq_qspi: Fixed incorrect return value error 2018-06-25 14:13:57 +05:30
zynq_spi.c common: Move get_ticks() function out of common.h 2019-12-02 18:23:13 -05:00
zynqmp_gqspi.c common: Move ARM cache operations out of common.h 2019-12-02 18:24:58 -05:00