linux_dsm_epyc7002/drivers/mmc/host
Faiz Abbas 961de0a856 mmc: sdhci-omap: Workaround errata regarding SDR104/HS200 tuning failures (i929)
Errata i929 in certain OMAP5/DRA7XX/AM57XX silicon revisions
(SPRZ426D - November 2014 - Revised February 2018 [1]) mentions
unexpected tuning pattern errors. A small failure band may be present
in the tuning range which may be missed by the current algorithm.
Furthermore, the failure bands vary with temperature leading to
different optimum tuning values for different temperatures.

As suggested in the related Application Report (SPRACA9B - October 2017
- Revised July 2018 [2]), tuning should be done in two stages.
In stage 1, assign the optimum ratio in the maximum pass window for the
current temperature. In stage 2, if the chosen value is close to the
small failure band, move away from it in the appropriate direction.

References:
[1] http://www.ti.com/lit/pdf/sprz426
[2] http://www.ti.com/lit/pdf/SPRACA9

Signed-off-by: Faiz Abbas <faiz_abbas@ti.com>
Acked-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
2018-12-17 08:26:24 +01:00
..
alcor.c mmc: alcor: remove set but not used variables 'len, clock_out' 2018-12-17 08:26:24 +01:00
android-goldfish.c mmc: android-goldfish: fix bad logic of sg_copy_{from,to}_buffer conversion 2018-08-21 16:06:17 +02:00
atmel-mci.c mmc: convert to DEFINE_SHOW_ATTRIBUTE 2018-12-17 08:26:24 +01:00
au1xmmc.c mmc: au1xmmc: handle highmem pages 2018-05-29 12:24:26 +02:00
bcm2835.c mmc: bcm2835: Properly handle dmaengine_prep_slave_sg 2018-12-17 08:26:24 +01:00
cavium-octeon.c
cavium-thunderx.c
cavium.c
cavium.h
cb710-mmc.c
cb710-mmc.h
cqhci.c
cqhci.h
davinci_mmc.c mmc: host: simplify getting .drvdata 2018-05-02 15:08:48 +02:00
dw_mmc-bluefield.c mmc: dw_mmc-bluefield: simplify the probe() function 2018-12-17 08:26:24 +01:00
dw_mmc-exynos.c mmc: dw_mmc-exynos: Add tuning for sdr and ddr timing for USH-I mode 2018-10-08 12:02:22 +02:00
dw_mmc-exynos.h
dw_mmc-hi3798cv200.c mmc: dw_mmc: hi3798cv200: add MMC_CAP_CMD23 cap 2018-10-08 11:40:43 +02:00
dw_mmc-k3.c
dw_mmc-pci.c
dw_mmc-pltfm.c
dw_mmc-pltfm.h
dw_mmc-rockchip.c mmc: dw_mmc: fix misleading comment in dw_mci_rk3288_set_ios 2018-05-02 15:08:38 +02:00
dw_mmc-zx.c
dw_mmc-zx.h
dw_mmc.c mmc: dw_mmc: fix card threshold control configuration 2018-07-03 10:57:16 +02:00
dw_mmc.h
jz4740_mmc.c mmc: jz4740: Use PTR_ERR_OR_ZERO in jz4740_mmc_request_gpios() 2018-12-17 08:26:24 +01:00
Kconfig mmc: sdhci-omap: Workaround errata regarding SDR104/HS200 tuning failures (i929) 2018-12-17 08:26:24 +01:00
Makefile mmc: sdhci_am654: Add Initial Support for AM654 SDHCI driver 2018-12-17 08:26:24 +01:00
meson-gx-mmc.c mmc: meson-gx: add signal resampling 2018-12-17 08:26:24 +01:00
meson-mx-sdio.c mmc: meson-mx-sdio: check devm_kasprintf for failure 2018-12-17 08:26:24 +01:00
mmc_spi.c mmc: spi: Convert to use GPIO descriptors 2018-12-17 08:26:24 +01:00
mmci_qcom_dml.c mmc: mmci: add dma_error callback 2018-10-09 09:13:03 +02:00
mmci_qcom_dml.h mmc: mmci: Add and implement a ->dma_setup() callback for qcom dml 2018-08-01 12:01:13 +02:00
mmci_stm32_sdmmc.c mmc: mmci: add stm32 sdmmc variant 2018-10-09 09:16:53 +02:00
mmci.c mmc: mmci: add variant property to set command stop bit 2018-12-17 08:26:24 +01:00
mmci.h mmc: mmci: add variant property to set command stop bit 2018-12-17 08:26:24 +01:00
moxart-mmc.c
mtk-sd.c mmc: mediatek: drop too much code of tuning method 2018-10-15 15:00:29 +02:00
mvsdio.c mmc: mvsdio: Enable MMC_CAP_ERASE 2018-05-31 15:02:16 +02:00
mvsdio.h
mxcmmc.c mmc: mxcmmc: replace spin_lock_irqsave with spin_lock in ISR 2018-10-08 11:40:43 +02:00
mxs-mmc.c
of_mmc_spi.c mmc: spi: Convert to use GPIO descriptors 2018-12-17 08:26:24 +01:00
omap_hsmmc.c mmc: convert to DEFINE_SHOW_ATTRIBUTE 2018-12-17 08:26:24 +01:00
omap.c MMC: OMAP: fix broken MMC on OMAP15XX/OMAP5910/OMAP310 2018-12-04 14:34:51 +01:00
pxamci.c mmc: pxa: Use GPIO descriptor for power 2018-12-17 08:26:24 +01:00
pxamci.h
renesas_sdhi_core.c mmc: tmio: introduce mask for 'always 1' bits 2018-12-17 08:26:24 +01:00
renesas_sdhi_internal_dmac.c mmc: renesas_sdhi: align compatibility properties for H3 and M3-W 2018-12-17 08:26:24 +01:00
renesas_sdhi_sys_dmac.c mmc: renesas_sdhi: align compatibility properties for H3 and M3-W 2018-12-17 08:26:24 +01:00
renesas_sdhi.h mmc: use SPDX identifier for Renesas drivers 2018-10-08 11:40:43 +02:00
rtsx_pci_sdmmc.c
rtsx_usb_sdmmc.c mmc: rtsx_usb_sdmmc: Re-work card detection/removal support 2018-12-17 08:26:24 +01:00
s3cmci.c mmc: convert to DEFINE_SHOW_ATTRIBUTE 2018-12-17 08:26:24 +01:00
s3cmci.h
sdhci_am654.c mmc: sdhci_am654: Add Initial Support for AM654 SDHCI driver 2018-12-17 08:26:24 +01:00
sdhci_f_sdh30.c
sdhci-acpi.c mmc: sdhci-acpi: Disable LED control for Intel BYT-based controllers 2018-12-17 08:26:24 +01:00
sdhci-bcm-kona.c mmc: sdhci-*: Don't emit error msg if sdhci_add_host() fails 2018-05-29 12:24:26 +02:00
sdhci-brcmstb.c
sdhci-cadence.c mmc: sdhci-cadence: include <linux/bits.h> instead of <linux/bitops.h> 2018-12-17 08:26:24 +01:00
sdhci-cns3xxx.c
sdhci-dove.c
sdhci-esdhc-imx.c mmc: sdhci: imx: Use the slot GPIO descriptor 2018-12-17 08:26:24 +01:00
sdhci-esdhc.h mmc: sdhci-of-esdhc: workaround for unreliable pulse width detection 2018-12-17 08:26:24 +01:00
sdhci-iproc.c mmc: sdhci-iproc: Add ACPI support 2018-10-08 11:40:43 +02:00
sdhci-msm.c mmc: sdhci-msm: avoid unused function warning 2018-12-17 08:26:24 +01:00
sdhci-of-arasan.c mmc: sdhci_am654: Add Initial Support for AM654 SDHCI driver 2018-12-17 08:26:24 +01:00
sdhci-of-at91.c
sdhci-of-dwcmshc.c mmc: sdhci-of-dwcmshc: solve 128MB DMA boundary limitation 2018-10-08 11:40:43 +02:00
sdhci-of-esdhc.c mmc: sdhci-of-esdhc: Fix timeout checks 2018-12-17 08:26:24 +01:00
sdhci-of-hlwd.c
sdhci-omap.c mmc: sdhci-omap: Workaround errata regarding SDR104/HS200 tuning failures (i929) 2018-12-17 08:26:24 +01:00
sdhci-pci-arasan.c
sdhci-pci-core.c mmc: sdhci-pci: Disable LED control for Intel BYT-based controllers 2018-12-17 08:26:24 +01:00
sdhci-pci-data.c
sdhci-pci-dwc-mshc.c mmc: sdhci-pci-dwc-mshc: synopsys dwc mshc support 2018-07-16 11:21:45 +02:00
sdhci-pci-o2micro.c mmc: sdhci-pci-o2micro: Add quirk for O2 Micro dev 0x8620 rev 0x01 2018-10-08 11:40:43 +02:00
sdhci-pci.h mmc: sdhci-pci-dwc-mshc: synopsys dwc mshc support 2018-07-16 11:21:45 +02:00
sdhci-pic32.c mmc: sdhci-*: Don't emit error msg if sdhci_add_host() fails 2018-05-29 12:24:26 +02:00
sdhci-pltfm.c mmc: sdhci-pltfm: Convert DT properties to generic device properties 2018-10-08 11:40:43 +02:00
sdhci-pltfm.h mmc: sdhci-pltfm: Convert DT properties to generic device properties 2018-10-08 11:40:43 +02:00
sdhci-pxav2.c mmc: sdhci-*: Don't emit error msg if sdhci_add_host() fails 2018-05-29 12:24:26 +02:00
sdhci-pxav3.c mmc: sdhci: pxav3: Delete GPIO handling 2018-10-08 11:40:43 +02:00
sdhci-s3c.c mmc: sdhci-*: Don't emit error msg if sdhci_add_host() fails 2018-05-29 12:24:26 +02:00
sdhci-sirf.c mmc: sdhci: sirf: Use the slot GPIO descriptor 2018-10-08 11:40:43 +02:00
sdhci-spear.c mmc: sdhci: spear: Use the slot GPIO descriptor 2018-10-08 11:40:43 +02:00
sdhci-sprd.c mmc: sdhci-sprd: Add Spreadtrum's initial host controller 2018-10-08 11:40:43 +02:00
sdhci-st.c mmc: sdhci-*: Don't emit error msg if sdhci_add_host() fails 2018-05-29 12:24:26 +02:00
sdhci-tegra.c mmc: tegra: fix inconsistent IS_ERR and PTR_ERR 2018-10-08 11:40:43 +02:00
sdhci-xenon-phy.c mmc: sdhci-xenon: Fix timeout checks 2018-12-17 08:26:24 +01:00
sdhci-xenon.c mmc: sdhci-xenon: Fix timeout checks 2018-12-17 08:26:24 +01:00
sdhci-xenon.h
sdhci.c mmc: sdhci: Add quirk to disable LED control 2018-12-17 08:26:24 +01:00
sdhci.h mmc: sdhci: Add quirk to disable LED control 2018-12-17 08:26:24 +01:00
sdricoh_cs.c
sh_mmcif.c mmc: use SPDX identifier for Renesas drivers 2018-10-08 11:40:43 +02:00
sunxi-mmc.c mmc: sunxi: Use new timing mode for A64 eMMC controller 2018-10-08 11:40:43 +02:00
tifm_sd.c mmc: tifm_sd: Mark expected switch fall-through 2018-10-08 11:40:43 +02:00
tmio_mmc_core.c mmc: host: tmio: Use GPIO descriptors 2018-12-17 08:26:24 +01:00
tmio_mmc.c mmc: tmio: remove TMIO_MMC_HAVE_HIGH_REG flag 2018-10-15 14:39:45 +02:00
tmio_mmc.h mmc: tmio: introduce mask for 'always 1' bits 2018-12-17 08:26:24 +01:00
toshsd.c
toshsd.h
uniphier-sd.c mmc: uniphier-sd: avoid using broken DMA RX channel 2018-10-15 14:53:21 +02:00
usdhi6rol0.c mmc: use SPDX identifier for Renesas drivers 2018-10-08 11:40:43 +02:00
ushc.c mmc: ushc: handle highmem pages 2018-05-21 15:49:20 +02:00
via-sdmmc.c
vub300.c
wbsd.c mmc: wbsd: handle highmem pages 2018-05-21 15:49:21 +02:00
wbsd.h
wmt-sdmmc.c mmc: host: simplify getting .drvdata 2018-05-02 15:08:48 +02:00