audk/EmbeddedPkg
Gaurav Jain 567bc4b4ae EmbeddedPkg/MmcDxe: Added MaxBlock Transfer Limit 65535 in R/W.
Moved BlockCount calculation below BufferSize Validation checks.
First Ensure Buffersize is Not Zero and multiple of Media BlockSize.
then calculate BlockCount and perform Block checks.

Corrected BlockCount calculation, as BufferSize is multiple of BlockSize,
So adding (BlockSize-1) bytes to BufferSize and
then divide by BlockSize will have no impact on BlockCount.

Reading Large Images from MMC causes errors.
As per SD Host Controller Spec version 4.20,
Restriction of 16-bit Block Count transfer is 65535.
Max block transfer limit in single cmd is 65535 blocks.
Added Max Block check that can be processed is 0xFFFF.
then Update BlockCount on the basis of MaxBlock.

Signed-off-by: Gaurav Jain <gaurav.jain@nxp.com>
Reviewed-by: "Loh, Tien Hock" <tien.hock.loh@intel.com>
2020-06-12 08:12:27 +00:00
..
Application EmbeddedPkg: Unload image on EFI_SECURITY_VIOLATION 2019-09-25 10:03:57 +08:00
Drivers EmbeddedPkg: remove ISP 1716 USB host controller driver 2020-05-05 15:37:20 +00:00
EmbeddedMonotonicCounter EmbeddedPkg: Replace BSD License with BSD+Patent License 2019-04-09 10:57:58 -07:00
GdbStub EmbeddedPkg: add missing EFIAPI calling convention specifiers 2019-10-09 09:40:09 +02:00
Include EmbeddedPkg: rename gEfiMmcHostProtocolGuid to gEmbeddedMmcHostProtocolGuid 2020-04-30 08:11:42 +00:00
Library EmbeddedPkg/NonCoherentDmaLib: implement support for DMA range limits 2019-12-06 14:55:45 +00:00
MetronomeDxe EmbeddedPkg: add missing EFIAPI calling convention specifiers 2019-10-09 09:40:09 +02:00
RealTimeClockRuntimeDxe EmbeddedPkg/RealTimeClockRuntimeDxe: Drop ASSERTs on function arguments 2020-03-26 18:39:01 +00:00
ResetRuntimeDxe EmbeddedPkg: Replace BSD License with BSD+Patent License 2019-04-09 10:57:58 -07:00
Scripts/LauterbachT32 EmbeddedPkg: convert Lauterbach README.txt to 7-bit safe Readme.md 2019-10-04 11:18:22 +01:00
SimpleTextInOutSerial EmbeddedPkg: Fix various typos 2019-07-04 12:21:04 +01:00
Universal/MmcDxe EmbeddedPkg/MmcDxe: Added MaxBlock Transfer Limit 65535 in R/W. 2020-06-12 08:12:27 +00:00
EmbeddedPkg.dec EmbeddedPkg: remove ISP 1716 USB host controller driver 2020-05-05 15:37:20 +00:00
EmbeddedPkg.dsc EmbeddedPkg/EmbeddedPkg.dsc: remove some stale component references 2020-05-06 10:21:31 +00:00