android_kernel_xiaomi_sm8350/drivers/spi
Biju Das c7835f93db spi: spi-rspi: Fix PIO fallback on RZ platforms
[ Upstream commit b620aa3a7be346f04ae7789b165937615c6ee8d3 ]

RSPI IP on RZ/{A, G2L} SoC's has the same signal for both interrupt
and DMA transfer request. Setting DMARS register for DMA transfer
makes the signal to work as a DMA transfer request signal and
subsequent interrupt requests to the interrupt controller
are masked.

PIO fallback does not work as interrupt signal is disabled.

This patch fixes this issue by re-enabling the interrupts by
calling dmaengine_synchronize().

Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/20220721143449.879257-1-biju.das.jz@bp.renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-08-25 11:17:32 +02:00
..
atmel-quadspi.c spi: atmel-quadspi: Fix the buswidth adjustment between spi-mem and controller 2022-04-27 13:50:50 +02:00
internals.h
Kconfig
Makefile
spi-altera.c
spi-armada-3700.c spi: change clk_disable_unprepare to clk_unprepare 2021-12-29 12:23:34 +01:00
spi-at91-usart.c
spi-ath79.c
spi-atmel.c
spi-au1550.c
spi-axi-spi-engine.c
spi-bcm63xx-hsspi.c
spi-bcm63xx.c
spi-bcm2835.c spi: bcm2835: bcm2835_spi_handle_err(): fix NULL pointer deref for non DMA transfers 2022-07-29 17:14:16 +02:00
spi-bcm2835aux.c
spi-bcm-qspi.c spi: bcm-qspi: fix MSPI only access with bcm_qspi_exec_mem_op() 2022-04-15 14:18:38 +02:00
spi-bcm-qspi.h
spi-bitbang-txrx.h
spi-bitbang.c spi: Cleanup on failure of initial setup 2021-06-16 11:59:38 +02:00
spi-brcmstb-qspi.c
spi-butterfly.c
spi-cadence.c spi: cadence: Correct initialisation of runtime PM again 2021-07-28 13:30:56 +02:00
spi-cavium-octeon.c
spi-cavium-thunderx.c
spi-cavium.c
spi-cavium.h
spi-clps711x.c
spi-coldfire-qspi.c
spi-davinci.c
spi-dln2.c
spi-dw-mid.c
spi-dw-mmio.c
spi-dw-pci.c
spi-dw.c
spi-dw.h
spi-efm32.c
spi-ep93xx.c
spi-falcon.c
spi-fsl-cpm.c
spi-fsl-cpm.h
spi-fsl-dspi.c spi: spi-fsl-dspi: Fix issue with uninitialized dma_slave_config 2021-09-15 09:47:29 +02:00
spi-fsl-espi.c
spi-fsl-lib.c
spi-fsl-lib.h
spi-fsl-lpspi.c spi: fsl-lpspi: Fix PM reference leak in lpspi_prepare_xfer_hardware() 2021-05-14 09:44:21 +02:00
spi-fsl-qspi.c
spi-fsl-spi.c spi: Cleanup on failure of initial setup 2021-06-16 11:59:38 +02:00
spi-fsl-spi.h
spi-geni-qcom.c spi: spi-geni-qcom: Fix use-after-free on unbind 2021-06-03 08:59:06 +02:00
spi-gpio.c
spi-img-spfi.c spi: img-spfi: Fix pm_runtime_get_sync() error checking 2022-06-14 18:11:33 +02:00
spi-imx.c spi: imx: mx51-ecspi: Fix low-speed CONFIGREG delay calculation 2021-08-12 13:20:56 +02:00
spi-iproc-qspi.c
spi-jcore.c
spi-lantiq-ssc.c
spi-lm70llp.c
spi-loopback-test.c spi: spi-loopback-test: Fix 'tx_buf' might be 'rx_buf' 2021-07-14 16:53:10 +02:00
spi-lp8841-rtc.c
spi-mem.c
spi-meson-spicc.c spi: meson-spicc: add IRQ check in meson_spicc_probe 2022-02-08 18:24:30 +01:00
spi-meson-spifc.c spi: spi-meson-spifc: Add missing pm_runtime_disable() in meson_spifc_probe 2022-01-27 09:19:37 +01:00
spi-mpc52xx-psc.c
spi-mpc52xx.c
spi-mpc512x-psc.c
spi-mt65xx.c spi: mediatek: Avoid NULL pointer crash in interrupt 2022-02-08 18:24:30 +01:00
spi-mt7621.c
spi-mxic.c spi: mxic: Fix the transmit path 2022-04-15 14:17:59 +02:00
spi-mxs.c
spi-npcm-fiu.c
spi-npcm-pspi.c
spi-nxp-fspi.c spi: spi-nxp-fspi: move the register operation after the clock enable 2021-06-30 08:47:44 -04:00
spi-oc-tiny.c
spi-omap2-mcspi.c spi: Cleanup on failure of initial setup 2021-06-16 11:59:38 +02:00
spi-omap-100k.c spi: omap-100k: Fix the length judgment problem 2021-07-14 16:53:10 +02:00
spi-omap-uwire.c spi: Cleanup on failure of initial setup 2021-06-16 11:59:38 +02:00
spi-orion.c
spi-pic32-sqi.c
spi-pic32.c spi: spi-pic32: Fix issue with uninitialized dma_slave_config 2021-09-15 09:47:29 +02:00
spi-pl022.c spi: spl022: fix Microwire full duplex mode 2021-11-17 09:48:21 +01:00
spi-ppc4xx.c
spi-pxa2xx-dma.c
spi-pxa2xx-pci.c spi: pxa2xx-pci: Balance reference count for PCI DMA device 2022-04-15 14:18:04 +02:00
spi-pxa2xx.c spi: Cleanup on failure of initial setup 2021-06-16 11:59:38 +02:00
spi-pxa2xx.h
spi-qcom-qspi.c
spi-qup.c spi: qup: fix PM reference leak in spi_qup_remove() 2021-05-11 14:04:06 +02:00
spi-rb4xx.c
spi-rockchip.c
spi-rspi.c spi: spi-rspi: Fix PIO fallback on RZ platforms 2022-08-25 11:17:32 +02:00
spi-s3c24xx-fiq.h
spi-s3c24xx-fiq.S
spi-s3c24xx.c
spi-s3c64xx.c
spi-sc18is602.c
spi-sh-hspi.c
spi-sh-msiof.c
spi-sh-sci.c
spi-sh.c
spi-sifive.c
spi-sirf.c
spi-slave-mt27xx.c
spi-slave-system-control.c
spi-slave-time.c
spi-sprd-adi.c spi: sprd: Fix the wrong WDG_LOAD_VAL 2021-09-15 09:47:30 +02:00
spi-sprd.c spi: sprd: Add missing MODULE_DEVICE_TABLE 2021-06-16 11:59:34 +02:00
spi-st-ssc4.c
spi-stm32-qspi.c spi: stm32-qspi: Fix wait_cmd timeout in APM mode 2022-06-14 18:11:27 +02:00
spi-stm32.c spi: stm32h7: fix full duplex irq handler handling 2021-08-08 09:04:07 +02:00
spi-sun4i.c
spi-sun6i.c spi: spi-sun6i: Fix chipselect/clock bug 2021-07-14 16:53:24 +02:00
spi-synquacer.c spi: synquacer: Add missing clk_disable_unprepare() 2022-08-25 11:17:30 +02:00
spi-tegra20-sflash.c
spi-tegra20-slink.c spi: tegra20: Use of_device_get_match_data() 2022-04-15 14:18:23 +02:00
spi-tegra114.c spi: tegra114: Add missing IRQ check in tegra_spi_probe 2022-04-15 14:18:04 +02:00
spi-test.h
spi-ti-qspi.c spi: spi-ti-qspi: Fix return value handling of wait_for_completion_timeout 2022-06-14 18:11:32 +02:00
spi-tle62x0.c
spi-topcliff-pch.c spi: spi-topcliff-pch: Fix potential double free in pch_spi_process_messages() 2021-07-14 16:53:10 +02:00
spi-txx9.c
spi-uniphier.c
spi-xcomm.c
spi-xilinx.c
spi-xlp.c
spi-xtensa-xtfpga.c
spi-zynq-qspi.c spi: spi-zynq-qspi: Fix a NULL pointer dereference in zynq_qspi_exec_mem_op() 2022-03-02 11:41:10 +01:00
spi-zynqmp-gqspi.c
spi.c spi: Fix erroneous sgs value with min_t() 2022-04-15 14:17:56 +02:00
spidev.c