//\r
// BufferSize must be a multiple of the intrinsic block size of the device.\r
//\r
- if ((BufferSize % Media->BlockSize) != 0) {\r
+ if (ModU64x32 (BufferSize, Media->BlockSize) != 0) {\r
return EFI_BAD_BUFFER_SIZE;\r
}\r
\r
- TotalBlock = BufferSize / Media->BlockSize;\r
+ TotalBlock = (UINTN) DivU64x32 (BufferSize, Media->BlockSize);\r
\r
//\r
// Make sure the range to read is valid.\r
}\r
\r
Address = Private->BlockMmio->BaseAddress;\r
- Address += Media->BlockSize * Lba;\r
+ Address += MultU64x32 (Lba, Media->BlockSize);\r
\r
- Count = BufferSize / 8;\r
+ Count = BufferSize >> 3;\r
\r
if (ReadData) {\r
CpuAccessFunction = Private->CpuIo->Mem.Read;\r