]> git.proxmox.com Git - mirror_edk2.git/commit - MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/EmmcDevice.c
MdeModulePkg/SdMmcPciHcDxe: Fix bus timing switch sequence
authorAlbecki, Mateusz <mateusz.albecki@intel.com>
Thu, 26 Sep 2019 14:27:43 +0000 (22:27 +0800)
committerHao A Wu <hao.a.wu@intel.com>
Sun, 29 Sep 2019 01:11:27 +0000 (09:11 +0800)
commita8c1fc70dbd56e367464c976ef8aa43e9349b87d
tree89d7e5e565f1d85bfbdd8c823401ac1eb8e007e0
parent206783aa7f96870cc7d252d8ff93128c33b0a927
MdeModulePkg/SdMmcPciHcDxe: Fix bus timing switch sequence

REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2218

SD specification recommends switching card bus timing before
switching bus timing in controller. Emmc driver used to do
this switch other way around. This commit adds controller
timing switch in EmmcSwitchBusTiming function to enforce this
order and removes all controller timing programming from
EmmcSwitchToXXX functions.

Signed-off-by: Mateusz Albecki <mateusz.albecki@intel.com>
Reviewed-by: Hao A Wu <hao.a.wu@intel.com>
Tested-by: Hao A Wu <hao.a.wu@intel.com>
Tested-by: Marcin Wojtas <mw@semihalf.com>
MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/EmmcDevice.c