1
linux/drivers/spi
Gregory CLEMENT 42ce7fd631 spi/omap2_mcspi.c: Force CS to be in inactive state after off-mode transition
When SPI wake up from OFF mode, CS is in the wrong state: force it to the
inactive state.

During the system life, I monitored the CS behavior using a oscilloscope.
I also activated debug in omap2_mcspi, so I saw when driver disable the clocks
and restore context when device is not used.Each time the CS was in the correct
state.  It was only when system was put suspend to ram with off-mode activated
that on resume the CS was in wrong state( ie activated).

Changelog:
* Change from v1 to v2:
  - Rebase on linus/master (after 2.6.37-rc1)
  - Do some clean-up and fix indentation on both patches
  - Add more explanations for patch 2

* Change from v2 to v3:
  - Use directly resume function of spi_master instead of using function
  - from spi_device as Grant Likely pointed it out.
  - Force this transition explicitly for each CS used by a device.

* Change from v3 to v4:
  - Patch clean-up according to Kevin Hilman and checkpatch.
  - Now force CS to be in inactive state only if it was inactive when it was
    suspended.

* Change from v4 to v5:
  - Rebase on linus/master (after 2.6.37-rc3)
  - Collapse some lines as pointed by Grant Likely
  - Fix a spelling

* Change from v5 to v6:
  - Rebase on linus/master (after 2.6.37-rc7)
  - Use CONFIG_SUSPEND instead of CONFIG_PM
  - Didn't use legacy PM methods anymore. Instead, add a struct dev_pm_ops and
    add the resume method there.
  - Fix multi-line comment style

* Change from v6 to v7:
  - Rebase on linus/master (after 2.6.37-rc8)
  - Drop an extra line

Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Acked-by: David Brownell <dbrownell@users.sourceforge.net>
Reviewed-by: Kevin Hilman <khilman@deeprootsystems.com>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
2010-12-29 15:13:05 -07:00
..
amba-pl022.c spi/pl022: fix dubious allocation staticize platform data 2010-10-12 21:37:37 -06:00
atmel_spi.c atmel_spi: fix warning In function 'atmel_spi_dma_map_xfer' 2010-11-30 17:23:24 +01:00
atmel_spi.h
au1550_spi.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
coldfire_qspi.c m68knommu: include sched.h in ColdFire/SPI driver 2010-08-18 12:44:31 +10:00
davinci_spi.c spi/davinci: Fix clock prescale factor computation 2010-05-25 00:23:54 -06:00
dw_spi_mmio.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
dw_spi_pci.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
dw_spi.c dw_spi: Fix missing final read in some polling situations 2010-12-14 18:48:59 -08:00
ep93xx_spi.c spi/ep93xx: implemented driver for Cirrus EP93xx SPI controller 2010-05-25 00:23:16 -06:00
Kconfig spi: add spi_tegra driver 2010-10-21 18:15:05 -07:00
Makefile spi: add spi_tegra driver 2010-10-21 18:15:05 -07:00
mpc52xx_psc_spi.c of/device: Replace struct of_device with struct platform_device 2010-08-06 09:25:50 -06:00
mpc52xx_spi.c spi/mpc52xx-spi: fix annotation for remove()-pointer 2010-12-24 01:57:17 -07:00
mpc512x_psc_spi.c Merge branch 'next-spi' of git://git.secretlab.ca/git/linux-2.6 2010-08-14 11:54:09 -07:00
omap2_mcspi.c spi/omap2_mcspi.c: Force CS to be in inactive state after off-mode transition 2010-12-29 15:13:05 -07:00
omap_spi_100k.c SPI100k: Fix 8-bit and RX-only transfers 2010-07-03 22:45:44 -06:00
omap_uwire.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
orion_spi.c spi/orion: Drop unnecessary null test 2010-09-29 17:31:29 +09:00
pxa2xx_spi.c [ARM] pxa: add namespace on ssp 2010-05-11 17:25:06 +02:00
spi_bfin5xx.c spi/bfin_spi: only request GPIO on first load 2010-10-22 01:26:46 -06:00
spi_bitbang_txrx.h spi/bitbang: add support for SPI_MASTER_NO_{TX, RX} modes 2010-07-03 22:45:44 -06:00
spi_bitbang.c spi/bitbang: reinitialize transfer parameters for every message 2010-07-03 22:59:18 -06:00
spi_butterfly.c spi/bitbang: add support for SPI_MASTER_NO_{TX, RX} modes 2010-07-03 22:45:44 -06:00
spi_fsl_espi.c spi/fsl_espi: fix wrong setting of the address in the command buffer 2010-12-24 01:53:57 -07:00
spi_fsl_lib.c spi/mpc8xxx: refactor the common code for SPI/eSPI controller 2010-10-12 21:38:12 -06:00
spi_fsl_lib.h spi/fsl_spi: Fix compile errors when building on ppc64 2010-10-14 08:30:12 -06:00
spi_fsl_spi.c spi/mpc8xxx: refactor the common code for SPI/eSPI controller 2010-10-12 21:38:12 -06:00
spi_gpio.c spi: spi-gpio.c tests SPI_MASTER_NO_RX bit twice, but not SPI_MASTER_NO_TX 2010-10-02 21:09:08 -06:00
spi_imx.c spi/imx: Support different fifo sizes 2010-10-11 16:12:22 +02:00
spi_lm70llp.c spi/bitbang: add support for SPI_MASTER_NO_{TX, RX} modes 2010-07-03 22:45:44 -06:00
spi_nuc900.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
spi_ppc4xx.c of/device: Replace struct of_device with struct platform_device 2010-08-06 09:25:50 -06:00
spi_s3c24xx_fiq.h spi_s3c24xx: add FIQ pseudo-DMA support 2009-12-17 08:57:01 -07:00
spi_s3c24xx_fiq.S spi_s3c24xx: add FIQ pseudo-DMA support 2009-12-17 08:57:01 -07:00
spi_s3c24xx_gpio.c spi/bitbang: add support for SPI_MASTER_NO_{TX, RX} modes 2010-07-03 22:45:44 -06:00
spi_s3c24xx.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
spi_s3c64xx.c spi/s3c64xx: Correction for 16,32 bits bus width 2010-09-29 17:31:33 +09:00
spi_sh_msiof.c Merge branch 'next-spi' of git://git.secretlab.ca/git/linux-2.6 2010-02-25 15:38:03 -08:00
spi_sh_sci.c spi/bitbang: add support for SPI_MASTER_NO_{TX, RX} modes 2010-07-03 22:45:44 -06:00
spi_stmp.c spi: Fix reversed args to time_before() in Freescale stmp driver. 2010-01-20 13:49:44 -07:00
spi_tegra.c spi: tegra: fix error setting on timeout 2010-10-25 16:57:46 -07:00
spi_topcliff_pch.c spi/topcliff: Fix uninitialized variable defect 2010-10-13 23:03:15 -06:00
spi_txx9.c Merge branch 'next-spi' of git://git.secretlab.ca/git/linux-2.6 2009-12-17 15:59:05 -08:00
spi.c drivers/spi/spi.c: don't release the spi device twice 2010-12-22 19:43:34 -08:00
spidev.c llseek: automatically add .llseek fop 2010-10-15 15:53:27 +02:00
tle62x0.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
xilinx_spi_of.c of/device: Replace struct of_device with struct platform_device 2010-08-06 09:25:50 -06:00
xilinx_spi_pltfm.c
xilinx_spi.c of/spi: call of_register_spi_devices() from spi core code 2010-07-30 00:03:59 -06:00
xilinx_spi.h