Watch
1
Fork
You've already forked kernel_a52xq
0
mirror of https://github.com/a52xq-dev/kernel.git synced 2026-10-19 06:08:12 +07:00
kernel_a52xq/drivers/spi
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Mans Rullgard f6e10f70c2 spi: atmel: fix handling of cs_change set on non-last xfer
commit fed8d8c7a6dc2a76d7764842853d81c770b0788e upstream.

The driver does the wrong thing when cs_change is set on a non-last
xfer in a message.  When cs_change is set, the driver deactivates the
CS and leaves it off until a later xfer again has cs_change set whereas
it should be briefly toggling CS off and on again.

This patch brings the behaviour of the driver back in line with the
documentation and common sense.  The delay of 10 us is the same as is
used by the default spi_transfer_one_message() function in spi.c.
[gregory: rebased on for-5.5 from spi tree]
Fixes: 8090d6d1a4 ("spi: atmel: Refactor spi-atmel to use SPI framework queue")
Signed-off-by: Mans Rullgard <mans@mansr.com>
Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>
Link: https://lore.kernel.org/r/20191018153504.4249-1-gregory.clement@bootlin.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-01-17 19:47:12 +01:00
..
internals.h spi: Add an helper to flush the message queue 2018-04-23 15:48:18 +01:00
Kconfig spi: add SPI controller driver for UniPhier SoC 2018-08-01 11:22:37 +01:00
Makefile spi: add SPI controller driver for UniPhier SoC 2018-08-01 11:22:37 +01:00
spi-altera.c spi: altera: Consolidate TX/RX data register access 2017-08-16 11:53:31 +01:00
spi-armada-3700.c Merge remote-tracking branches 'spi/topic/a3700', 'spi/topic/atmel', 'spi/topic/bcm53xx', 'spi/topic/davinci' and 'spi/topic/dw' into spi-next 2018-01-26 17:57:24 +00:00
spi-ath79.c spi: add flags parameter to txrx_word function pointers 2018-08-01 14:50:24 +01:00
spi-atmel.c spi: atmel: fix handling of cs_change set on non-last xfer 2020-01-17 19:47:12 +01:00
spi-au1550.c
spi-axi-spi-engine.c spi: spi-axi: fix potential use-after-free after deregistration 2017-10-31 11:15:10 +00:00
spi-bcm-qspi.c spi: bcm-qspi: fix calculation of address length 2018-11-13 11:08:15 -08:00
spi-bcm-qspi.h
spi-bcm63xx-hsspi.c spi/bcm63xx-hsspi: keep pll clk enabled 2019-11-20 18:46:54 +01:00
spi-bcm63xx.c spi/bcm63xx: fix error return code in bcm63xx_spi_probe() 2017-08-08 11:36:35 +01:00
spi-bcm2835.c spi: bcm2835: Fix 3-wire mode if DMA is enabled 2019-08-09 17:52:35 +02:00
spi-bcm2835aux.c spi: bcm2835aux: fix corruptions for longer spi transfers 2019-09-10 10:33:41 +01:00
spi-bitbang-txrx.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
spi-bitbang.c spi: bitbang: Fix NULL pointer dereference in spi_unregister_master 2019-07-10 09:53:32 +02:00
spi-brcmstb-qspi.c
spi-butterfly.c spi: add flags parameter to txrx_word function pointers 2018-08-01 14:50:24 +01:00
spi-cadence.c spi: cadence: Fix missing clk_disable_unprepare() on error in cnds_runtime_resume() 2018-07-11 15:34:53 +01:00
spi-cavium-octeon.c
spi-cavium-thunderx.c spi: spi-cavium-thunderx: Add missing pci_release_regions() 2020-01-12 12:17:11 +01:00
spi-cavium.c
spi-cavium.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
spi-clps711x.c
spi-coldfire-qspi.c
spi-davinci.c Merge branch 'spi-4.18' into spi-linus 2018-08-10 17:51:50 +01:00
spi-dln2.c
spi-dw-mid.c spi: dw: Convert to generalized SPI controller API 2018-02-12 12:04:16 +00:00
spi-dw-mmio.c spi: dw-mmio: add MSCC Ocelot support 2018-07-30 12:02:08 +01:00
spi-dw-pci.c
spi-dw.c Merge branch 'spi-4.19' into spi-next 2018-08-10 17:51:52 +01:00
spi-dw.h spi: dw: export dw_spi_set_cs 2018-07-30 12:02:07 +01:00
spi-efm32.c
spi-ep93xx.c spi: spi-ep93xx: Use dma_data_direction for ep93xx_spi_dma_{finish,prepare} 2018-11-13 11:08:22 -08:00
spi-falcon.c spi: spi-falcon: drop check of boot select 2017-09-01 11:33:22 +01:00
spi-fsl-cpm.c
spi-fsl-cpm.h
spi-fsl-dspi.c spi: spi-fsl-dspi: fix broken DSPI_EOQ_MODE 2018-08-28 20:55:23 +01:00
spi-fsl-espi.c spi: spi-fsl-espi: Log fifo counters on error 2018-07-26 15:43:09 +01:00
spi-fsl-lib.c
spi-fsl-lib.h
spi-fsl-lpspi.c spi: fsl-lpspi: Prevent FIFO under/overrun by default 2019-11-24 08:20:55 +01:00
spi-fsl-spi.c spi: fsl: use platform_get_irq() instead of of_irq_to_resource() 2020-01-04 19:13:45 +01:00
spi-fsl-spi.h
spi-gpio.c spi: spi-gpio: fix SPI_CS_HIGH capability 2019-09-16 08:22:07 +02:00
spi-img-spfi.c spi: img-spfi: fix potential double release 2019-12-31 16:35:39 +01:00
spi-imx.c spi: imx: stop buffer overflow in RX FIFO flush 2019-05-31 06:46:34 -07:00
spi-iproc-qspi.c
spi-jcore.c spi: jcore: disable ref_clk after getting its rate 2018-03-18 17:57:42 -07:00
spi-lantiq-ssc.c
spi-lm70llp.c spi: add flags parameter to txrx_word function pointers 2018-08-01 14:50:24 +01:00
spi-loopback-test.c spi: loopback-test: implement testing with no CS 2017-07-26 13:08:56 +01:00
spi-lp8841-rtc.c
spi-mem.c spi: spi-mem: Adjust op len based on message/transfer size limitations 2018-11-13 11:08:15 -08:00
spi-meson-spicc.c spi: meson-spicc: Fix error handling in meson_spicc_probe() 2018-05-02 05:59:21 +09:00
spi-meson-spifc.c
spi-mpc52xx-psc.c
spi-mpc52xx.c spi: mpc52xx: Use gpio_is_valid() 2018-04-27 12:05:39 +01:00
spi-mpc512x-psc.c
spi-mt65xx.c spi: mediatek: use correct mata->xfer_len when in fifo transfer 2019-11-24 08:19:06 +01:00
spi-mxs.c spi: mxs: Switch to SPDX identifier 2018-05-03 10:27:43 +09:00
spi-nuc900.c
spi-oc-tiny.c treewide: devm_kzalloc() -> devm_kcalloc() 2018-06-12 16:19:22 -07:00
spi-omap-100k.c
spi-omap-uwire.c
spi-omap2-mcspi.c spi: omap2-mcspi: Fix DMA and FIFO event trigger size mismatch 2019-12-01 09:17:33 +01:00
spi-orion.c spi: orion: fix CS GPIO handling again 2018-06-19 13:06:51 +01:00
spi-pic32-sqi.c
spi-pic32.c spi: pic32: Use proper enum in dmaengine_prep_slave_rg 2019-11-20 18:47:11 +01:00
spi-pl022.c treewide: devm_kzalloc() -> devm_kcalloc() 2018-06-12 16:19:22 -07:00
spi-ppc4xx.c
spi-pxa2xx-dma.c spi: pxa2xx: Use core message processing loop 2018-04-17 17:11:30 +01:00
spi-pxa2xx-pci.c
spi-pxa2xx.c spi: pxa2xx: Add missed security checks 2019-12-31 16:35:59 +01:00
spi-pxa2xx.h spi: pxa2xx: Allow 64-bit DMA 2018-04-24 16:10:12 +01:00
spi-qup.c spi: qup: fix 64-bit build warning 2017-08-10 15:50:23 +01:00
spi-rb4xx.c
spi-rockchip.c spi: rockchip: initialize dma_slave_config properly 2019-11-24 08:21:05 +01:00
spi-rspi.c spi: rspi: Fix sequencer reset during initialization 2019-05-31 06:46:34 -07:00
spi-s3c24xx-fiq.h
spi-s3c24xx-fiq.S
spi-s3c24xx.c
spi-s3c64xx.c spi: spi-s3c64xx: Fix system resume support 2018-05-17 13:27:08 +09:00
spi-sc18is602.c
spi-sh-hspi.c
spi-sh-msiof.c spi: sh-msiof: fix deferred probing 2019-12-01 09:16:20 +01:00
spi-sh-sci.c spi: add flags parameter to txrx_word function pointers 2018-08-01 14:50:24 +01:00
spi-sh.c spi: spi-sh: fix error return code in spi_sh_probe() 2017-08-09 17:18:06 +01:00
spi-sirf.c spi: sirf: account for const type of of_device_id.data 2018-01-03 11:38:46 +00:00
spi-slave-system-control.c
spi-slave-time.c
spi-sprd-adi.c spi: sprd: adi: Add missing lock protection when rebooting 2019-12-31 16:35:28 +01:00
spi-st-ssc4.c spi: st-ssc4: add missed pm_runtime_disable 2019-12-31 16:36:06 +01:00
spi-stm32.c spi: stm32: Fix error handling in stm32_spi_probe() 2018-04-17 11:46:23 +01:00
spi-sun4i.c spi: sun4i: disable clocks in the remove function 2017-12-07 11:59:15 +00:00
spi-sun6i.c spi: sun6i: disable/unprepare clocks on remove 2017-12-07 17:45:17 +00:00
spi-tegra20-sflash.c spi: tegra20-sflash: explicitly request exclusive reset control 2017-07-19 17:06:31 +01:00
spi-tegra20-slink.c spi: tegra20-slink: add missed clk_unprepare 2019-12-31 16:36:03 +01:00
spi-tegra114.c spi: tegra114: reset controller on probe 2019-05-31 06:46:28 -07:00
spi-test.h
spi-ti-qspi.c spi: spi-ti-qspi: Fix a bug when accessing non default CS 2020-01-12 12:17:12 +01:00
spi-tle62x0.c
spi-topcliff-pch.c spi : spi-topcliff-pch: Fix to handle empty DMA buffers 2019-05-31 06:46:33 -07:00
spi-txx9.c
spi-uniphier.c spi: uniphier: remove unnecessary include headers 2018-08-02 11:08:06 +01:00
spi-xcomm.c
spi-xilinx.c spi: xilinx: Add support for xlnx,axi-quad-spi-1.00.a 2017-11-27 16:31:20 +00:00
spi-xlp.c spi: xlp: fix error return code in xlp_spi_probe() 2017-08-08 11:36:07 +01:00
spi-xtensa-xtfpga.c spi: add flags parameter to txrx_word function pointers 2018-08-01 14:50:24 +01:00
spi-zynqmp-gqspi.c spi: simplify getting .drvdata 2018-04-20 17:53:20 +01:00
spi.c spi: Fix zero length xfer bug 2019-05-31 06:46:34 -07:00
spidev.c spi: Add call to spi_slave_abort() function when spidev driver is released 2019-12-31 16:34:48 +01:00