remarkable-linux/include/linux/mmc
Adrian Hunter dfa13ebbe3 mmc: host: Add facility to support re-tuning
Currently, there is core support for tuning during
initialization. There can also be a need to re-tune
periodically (e.g. sdhci) or to re-tune after the
host controller is powered off (e.g. after PM
runtime suspend / resume) or to re-tune in response
to CRC errors.

The main requirements for re-tuning are:
  - ability to enable / disable re-tuning
  - ability to flag that re-tuning is needed
  - ability to re-tune before any request
  - ability to hold off re-tuning if the card is busy
  - ability to hold off re-tuning if re-tuning is in
  progress
  - ability to run a re-tuning timer

To support those requirements 7 members are added to struct
mmc_host:

  unsigned int		can_retune:1;	/* re-tuning can be used */
  unsigned int		doing_retune:1;	/* re-tuning in progress */
  unsigned int		retune_now:1;   /* do re-tuning at next req */
  int			need_retune;	/* re-tuning is needed */
  int			hold_retune;	/* hold off re-tuning */
  unsigned int		retune_period;  /* re-tuning period in secs */
  struct timer_list	retune_timer;	/* for periodic re-tuning */

need_retune is an integer so it can be set without needing
synchronization. hold_retune is a integer to allow nesting.

Various simple functions are provided to set / clear those
variables.

Subsequent patches take those functions into use.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
2015-06-01 09:06:53 +02:00
..
boot.h
card.h Revert "mmc: core: Convert mmc_driver to device_driver" 2015-04-17 11:48:01 +02:00
core.h mmc: core: Convert the error field in struct mmc_command|data into an int 2015-04-08 12:10:20 +02:00
dw_mmc.h mmc: dw_mmc: fix fifo ordering in big endian 2015-04-09 09:08:15 +02:00
host.h mmc: host: Add facility to support re-tuning 2015-06-01 09:06:53 +02:00
mmc.h mmc: Resolve BKOPS compatability issue 2015-01-29 11:15:12 +01:00
pm.h
sd.h
sdhci-pci-data.h
sdio.h
sdio_func.h mmc: core: Don't export the to_sdio_driver macro 2014-11-10 12:40:32 +01:00
sdio_ids.h brcmfmac: add support for BCM43430 SDIO chipset 2015-03-20 09:03:46 +02:00
sh_mmcif.h
sh_mobile_sdhi.h mmc: sh_mobile_sdhi: remove sh_mobile_sdhi_info 2015-03-05 21:54:26 +05:30
slot-gpio.h mmc: slot-gpio: Allow host driver to provide isr for card-detect interrupts 2015-01-19 09:56:29 +01:00
tmio.h