
This series adds the missing bit to enable the UHS, HS200 and DDR52 modes on the omap5 platforms (DRA7 and AM57).
It relies on the following series: * [PATCH v2 00/26] mmc: Add support for HS200 and UHS modes * [PATCH v2 0/5] mmc: omap_hsmmc: Add support for ADMA * [PATCH v3 0/2] power: Add a driver to handle the PBIAS cell of the TI SOCs
Enabling support for high speed modes on omap5 requires implementing: * io signal voltage selection * tuning support * pin configuration (IO delays)
The few last patches enable the high mode for all omap5 platforms except some for which we need to disable either the UHS or the HS200 because the volatge regulators on board would not allow using those modes. This is not a SOC limitation.
With this in place we observe significant improvements in the performances: on a DRA72 evm: eMMC HS200: 124 MB/s eMMC DDR52: 78 MB/s sd SDR104: 71 MB/s sd SDR50: 44 MB/s For the record, the original performances were: SD High speed: 18 MB/s MMC High speed: 18 MB/s
This series has been tested on: * DRA71-evm * DRA72-evm * DRA7x-evm * DRA76-evm * AM57x-evm * Beaglebone Black * AM335x evm * AM437x SK
Jean-Jacques
Jean-Jacques Hiblot (8): mmc: omap_hsmmc: Reduce the max timeout for reset controller fsm mmc: omap_hsmmc: allow the simple HS modes to use the default pinctrl mmc: omap_hsmmc: update mmc->clock with the actual bus speed mmc: omap_hsmmc: implement send_init_stream callback mmc: omap_hsmmc: add signal voltage selection support ARM: dts: dra7: Add supported MMC/SD modes in MMC dt nodes dts: am57xx-beagle-x15: disable UHS and HS200 support dts: am57xx-idk: disable HS200 support
Kishon Vijay Abraham I (15): mmc: omap_hsmmc: cleanup clock configuration mmc: omap_hsmmc: cleanup omap_hsmmc_set_ios mmc: omap_hsmmc: add support to set default io voltage mmc: omap_hsmmc: set MMC mode in the UHSMS bit field mmc: omap_hsmmc: Enable DDR mode support mmc: omap_hsmmc: Add tuning support mmc: omap_hsmmc: Workaround for errata id i802 mmc: omap_hsmmc: use mmc_of_parse to populate mmc_config ARM: OMAP5/DRA7: Enable iodelay recalibration to be done from uboot mmc: omap_hsmmc: Add support to set IODELAY values mmc: omap_hsmmc: Add support to get pinctrl values and max frequency for different hw revisions mmc: omap_hsmmc: allow mmc clock to be gated ARM: OMAP5: set mmc clock frequency to 192MHz ARM: dts: DRA7: use new dra7-specific compatible string ARM: DRA7x/AM57x: Add MMC/SD fixups for rev1.0 and rev 1.1
arch/arm/dts/am57xx-beagle-x15.dts | 6 + arch/arm/dts/am57xx-idk-common.dtsi | 2 + arch/arm/dts/dra7.dtsi | 22 +- arch/arm/include/asm/arch-omap5/clock.h | 2 +- arch/arm/include/asm/arch-omap5/dra7xx_iodelay.h | 3 + arch/arm/include/asm/arch-omap5/sys_proto.h | 7 + arch/arm/include/asm/omap_mmc.h | 59 +- arch/arm/mach-omap2/omap5/dra7xx_iodelay.c | 30 + arch/arm/mach-omap2/omap5/hw_data.c | 10 +- board/ti/am57xx/board.c | 30 + board/ti/dra7xx/evm.c | 29 + drivers/mmc/omap_hsmmc.c | 940 +++++++++++++++++++++-- include/configs/am57xx_evm.h | 2 - include/configs/dra7xx_evm.h | 2 - 14 files changed, 1071 insertions(+), 73 deletions(-)