mirror of
https://git.proxmox.com/git/mirror_ubuntu-kernels.git
synced 2026-08-09 04:30:02 +00:00
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> |
||
|---|---|---|
| .. | ||
| boot.h | ||
| card.h | ||
| core.h | ||
| dw_mmc.h | ||
| host.h | ||
| mmc.h | ||
| pm.h | ||
| sd.h | ||
| sdhci-pci-data.h | ||
| sdio_func.h | ||
| sdio_ids.h | ||
| sdio.h | ||
| sh_mmcif.h | ||
| sh_mobile_sdhi.h | ||
| slot-gpio.h | ||
| tmio.h | ||