linux/drivers/spi
Hauke Mehrtens 833bfade96 spi: double time out tolerance
The generic SPI code calculates how long the issued transfer would take
and adds 100ms in addition to the timeout as tolerance. On my 500 MHz
Lantiq Mips SoC I am getting timeouts from the SPI like this when the
system boots up:

m25p80 spi32766.4: SPI transfer timed out
blk_update_request: I/O error, dev mtdblock3, sector 2
SQUASHFS error: squashfs_read_data failed to read block 0x6e

After increasing the tolerance for the timeout to 200ms I haven't seen
these SPI transfer time outs any more.
The Lantiq SPI driver in use here has an extra work queue in between,
which gets triggered when the controller send the last word and the
hardware FIFOs used for reading and writing are only 8 words long.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Mark Brown <broonie@kernel.org>
2017-04-18 18:57:51 +01:00
..
Kconfig Merge remote-tracking branches 'spi/topic/orion', 'spi/topic/pxa2xx', 'spi/topic/rspi' and 'spi/topic/s3c64xx' into spi-next 2016-12-12 15:54:17 +00:00
Makefile Merge remote-tracking branches 'spi/topic/fsl-lpspi', 'spi/topic/imx', 'spi/topic/jcore' and 'spi/topic/omap' into spi-next 2016-12-12 15:54:14 +00:00
spi-adi-v3.c
spi-altera.c
spi-armada-3700.c spi: Add support for Armada 3700 SPI Controller 2016-12-08 16:05:34 +00:00
spi-ath79.c spi: ath79: Fix module autoload for OF registration 2016-11-23 16:42:46 +00:00
spi-atmel.c Merge remote-tracking branches 'spi/topic/armada', 'spi/topic/ath79', 'spi/topic/atmel' and 'spi/topic/axi' into spi-next 2016-12-12 15:54:05 +00:00
spi-au1550.c
spi-axi-spi-engine.c spi: spi-axi: Fix module autoload 2016-11-23 16:42:08 +00:00
spi-bcm53xx.c spi: bcm53xx: add spi_flash_read callback for MMIO-based reads 2016-04-18 13:53:46 +01:00
spi-bcm53xx.h
spi-bcm63xx-hsspi.c
spi-bcm63xx.c Merge remote-tracking branches 'spi/topic/bcm63xx', 'spi/topic/butterfly', 'spi/topic/cadence' and 'spi/topic/davinci' into spi-next 2016-01-11 16:48:30 +00:00
spi-bcm2835.c spi: bcm2835: Remove unnecessary workaround to call gpio_set_value 2016-02-15 20:43:39 +00:00
spi-bcm2835aux.c Merge remote-tracking branches 'spi/topic/acpi', 'spi/topic/axi-engine', 'spi/topic/bcm2835' and 'spi/topic/bcm2835aux' into spi-next 2016-03-11 14:28:25 +07:00
spi-bcm-qspi.c spi: iproc-qspi: Add Broadcom iProc SoCs support 2016-09-24 20:03:25 +01:00
spi-bcm-qspi.h spi: iproc-qspi: Add Broadcom iProc SoCs support 2016-09-24 20:03:25 +01:00
spi-bfin5xx.c spi: spi-bfin5xx: Remove deprecated create_singlethread_workqueue 2016-07-03 14:14:31 +02:00
spi-bfin-sport.c spi: spi-bfin-sport: Remove deprecated create_singlethread_workqueue 2016-07-03 14:24:31 +02:00
spi-bitbang-txrx.h
spi-bitbang.c spi: bitbang: switch to the generic implementation of transfer_one_message 2015-10-05 14:55:56 +01:00
spi-brcmstb-qspi.c spi: brcmstb-qspi: Broadcom settop platform driver 2016-09-14 18:03:32 +01:00
spi-butterfly.c spi: butterfly: use new parport device model 2015-12-02 19:38:16 +00:00
spi-cadence.c spi: cadence: mark pm functions __maybe_unused 2016-04-18 10:58:49 +01:00
spi-cavium-octeon.c spi: octeon: Split driver into Octeon specific and common parts 2016-07-24 21:54:29 +01:00
spi-cavium-thunderx.c spi: spi-cavium-thunderx: Add missing clk_disable_unprepare() 2016-08-24 12:37:43 +01:00
spi-cavium.c spi: octeon: Split driver into Octeon specific and common parts 2016-07-24 21:54:29 +01:00
spi-cavium.h spi: octeon: Add ThunderX driver 2016-08-19 16:24:39 +01:00
spi-clps711x.c spi: clps711x: Driver refactor 2016-07-07 11:44:43 +02:00
spi-coldfire-qspi.c spi: spi-coldfire-qspi: enable RuntimePM before registering to the core 2015-10-12 17:02:08 +01:00
spi-davinci.c spi: davinci: Use dma_request_chan() for requesting DMA channel 2016-04-29 18:15:15 +01:00
spi-dln2.c spi: Drop duplicate code to set master->dev.parent 2016-04-26 11:56:09 +01:00
spi-dw-mid.c spi: dw-mid: switch to new dmaengine_terminate_* API 2016-02-05 17:41:49 +00:00
spi-dw-mmio.c spi: dw-mmio: remove message which is handled by core 2016-02-05 17:41:49 +00:00
spi-dw-pci.c spi: dw-pci: Spelling s/paltforms/platforms/g 2016-05-11 18:26:19 +01:00
spi-dw.c spi: dw: Set GPIO_SS flag to toggle Slave Select on GPIO CS 2016-10-11 12:29:04 +02:00
spi-dw.h spi: dw: fix multiple slaves with different baudrates 2016-09-06 11:53:50 +01:00
spi-efm32.c
spi-ep93xx.c spi: spi-ep93xx: Fix the PTR_ERR() argument 2016-05-24 16:54:50 +01:00
spi-falcon.c
spi-fsl-cpm.c QE: Move QE from arch/powerpc to drivers/soc 2015-12-22 17:12:56 -06:00
spi-fsl-cpm.h
spi-fsl-dspi.c Merge remote-tracking branches 'spi/topic/delay', 'spi/topic/dw', 'spi/topic/fsl-dspi' and 'spi/topic/fsl-espi' into spi-next 2016-12-12 15:54:09 +00:00
spi-fsl-espi.c spi: fsl-espi: fix ioread16/iowrite16 endianness 2016-12-01 18:50:59 +00:00
spi-fsl-lib.c
spi-fsl-lib.h spi: fsl-espi: separate fsl-espi from fsl-lib completely 2016-11-14 11:21:48 +00:00
spi-fsl-lpspi.c spi: fsl-lpspi: quit reading rx fifo under error condition 2016-12-05 11:45:03 +00:00
spi-fsl-spi.c
spi-fsl-spi.h
spi-gpio.c
spi-img-spfi.c spi: img-spfi: Remove spi_master_put in img_spfi_remove() 2016-07-27 19:00:16 +01:00
spi-imx.c spi: imx: set spi_bus_clk for mx21 and mx27 2016-11-02 09:30:43 -06:00
spi-iproc-qspi.c spi: iproc-qspi: Add Broadcom iProc SoCs support 2016-09-24 20:03:25 +01:00
spi-jcore.c spi: jcore: Fix module autoload for OF registration 2016-11-23 16:42:20 +00:00
spi-lm70llp.c spi: lm70llp: remove printk 2015-12-07 20:09:09 +00:00
spi-loopback-test.c spi: loopback-test: mark rx_ranges_cmp() static 2016-09-01 20:54:54 +01:00
spi-lp8841-rtc.c spi: lp-8841: return correct error code from probe 2016-02-26 11:06:38 +09:00
spi-meson-spifc.c spi: meson: Add GXBB compatible 2016-09-12 20:11:39 +01:00
spi-mpc52xx-psc.c spi: spi-mpc52xx-psc: Remove deprecated create_singlethread_workqueue 2016-07-03 14:23:25 +02:00
spi-mpc52xx.c
spi-mpc512x-psc.c
spi-mt65xx.c spi: mediatek: remove spi_master_put in mtk_spi_remove() 2016-07-27 19:00:16 +01:00
spi-mxs.c
spi-nuc900.c
spi-oc-tiny.c
spi-omap2-mcspi.c spi: omap2-mcspi: Remove redundant return value check of platform_get_resource() 2016-10-24 16:08:30 +01:00
spi-omap-100k.c
spi-omap-uwire.c
spi-orion.c spi: mvebu: fix baudrate calculation for armada variant 2016-12-08 17:54:51 +00:00
spi-pic32-sqi.c spi: pic32-sqi: use list_move_tail and list_move 2016-08-08 11:56:40 +01:00
spi-pic32.c spi: pic32: fixup wait_for_completion_timeout return handling 2016-07-24 21:49:16 +01:00
spi-pl022.c spi: pl022: Remove obsolete struct pl022 members from kerneldoc 2016-02-17 12:08:55 +00:00
spi-ppc4xx.c
spi-pxa2xx-dma.c spi: pxa2xx: Remove pointer to chip data from driver data 2016-09-12 20:01:27 +01:00
spi-pxa2xx-pci.c spi: pxa2xx-pci: fix ACPI-based enumeration of SPI devices 2016-08-24 12:20:03 +01:00
spi-pxa2xx.c spi: pxa2xx: Fix build error because of missing header 2016-09-29 11:00:41 -07:00
spi-pxa2xx.h spi: spi-pxa2xx: Remove unused macro 2016-11-14 13:52:04 +00:00
spi-qup.c Merge remote-tracking branches 'spi/topic/octeon', 'spi/topic/pic32-sqi', 'spi/topic/pxa2xx' and 'spi/topic/qup' into spi-next 2016-09-30 09:14:14 -07:00
spi-rb4xx.c
spi-rockchip.c Merge remote-tracking branches 'spi/topic/pxa2xx', 'spi/topic/rockchip', 'spi/topic/s3c64xx', 'spi/topic/sh' and 'spi/topic/sh-msiof' into spi-next 2016-07-24 22:08:25 +01:00
spi-rspi.c spi: rspi: avoid uninitialized variable access 2016-11-09 13:05:19 +00:00
spi-s3c24xx-fiq.h
spi-s3c24xx-fiq.S
spi-s3c24xx.c
spi-s3c64xx.c spi: s3c64xx: restore removed comments 2016-07-14 17:28:32 +01:00
spi-sc18is602.c spi: sc18is602: Change gpiod_set_value to gpiod_set_value_cansleep 2016-09-29 11:01:36 -07:00
spi-sh-hspi.c
spi-sh-msiof.c spi: sh-msiof: Add support for R-Car M3-W 2016-11-21 18:30:36 +00:00
spi-sh-sci.c
spi-sh.c spi: spi-sh: Remove deprecated create_singlethread_workqueue 2016-07-11 19:32:38 +01:00
spi-sirf.c
spi-st-ssc4.c spi: st-ssc4: Fix misuse of devm_gpio_request/devm_gpio_free APIs 2016-09-14 16:05:35 +01:00
spi-sun4i.c spi: sun4i: Allow transfers larger than FIFO size 2016-10-29 12:11:30 -06:00
spi-sun6i.c spi: sun6i: Support Allwinner H3 SPI controller 2016-11-02 14:59:09 -06:00
spi-tegra20-sflash.c
spi-tegra20-slink.c
spi-tegra114.c
spi-test.h spi: loopback: added additional non-power of 2 transfer lengthes 2015-12-13 20:10:15 +00:00
spi-ti-qspi.c spi: spi-ti-qspi: reinit of completion variable 2016-11-15 18:37:01 +00:00
spi-tle62x0.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
spi-topcliff-pch.c spi: spi-topcliff-pch: Remove some dead code 2016-11-21 19:24:49 +00:00
spi-txx9.c spi: spi-txx9: Add missing clock (un)prepare calls for CCF 2016-08-18 19:10:39 +01:00
spi-xcomm.c
spi-xilinx.c spi: xilinx: Return IRQ_NONE if no interrupts were detected 2016-07-15 11:45:00 +01:00
spi-xlp.c spi: xlp: Fix module autoload for OF registration 2016-11-23 16:42:32 +00:00
spi-xtensa-xtfpga.c
spi-zynqmp-gqspi.c spi: zynqmp: disable clocks in error paths 2016-05-04 14:21:03 +01:00
spi.c spi: double time out tolerance 2017-04-18 18:57:51 +01:00
spidev.c spi: spidev: Add device to spidev device tree compatibility list 2016-10-21 12:09:57 +01:00