summaryrefslogtreecommitdiff
path: root/Nt32Pkg/WinNtBlockIoDxe
diff options
context:
space:
mode:
authorJiamin Ma <mjmthy@gmail.com>2013-10-12 06:31:55 +0000
committerjyao1 <jyao1@6f19259b-4bc3-4df7-8a09-765794883524>2013-10-12 06:31:55 +0000
commitf66a43b26e6e0f4c1e5871dd3a88f2970b3abf87 (patch)
treef381d6fe0136f2949e4afa2367ec9b31a2e6e367 /Nt32Pkg/WinNtBlockIoDxe
parent09acdc0b24ac50f8623609d67ccc52a785b4fe57 (diff)
downloadedk2-platforms-f66a43b26e6e0f4c1e5871dd3a88f2970b3abf87.tar.xz
We enabled X64 native version NT32, and made it works on Windows 7 X64 OS.
Signed-off-by: Jiamin Ma <mjmthy@gmail.com> Reviewed by: Ruiyu Ni <ruiyu.ni@intel.com> Reviewed by: Liming Gao <liming.gao@intel.com> Reviewed by: Jiewen Yao <jiewen.yao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14766 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'Nt32Pkg/WinNtBlockIoDxe')
-rw-r--r--Nt32Pkg/WinNtBlockIoDxe/WinNtBlockIo.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/Nt32Pkg/WinNtBlockIoDxe/WinNtBlockIo.c b/Nt32Pkg/WinNtBlockIoDxe/WinNtBlockIo.c
index 12924e659f..f9f286705f 100644
--- a/Nt32Pkg/WinNtBlockIoDxe/WinNtBlockIo.c
+++ b/Nt32Pkg/WinNtBlockIoDxe/WinNtBlockIo.c
@@ -529,7 +529,7 @@ Returns:
BlockIo = &Private->BlockIo;
BlockIo->Revision = EFI_BLOCK_IO_PROTOCOL_REVISION;
BlockIo->Media = &Private->Media;
- BlockIo->Media->BlockSize = Private->BlockSize;
+ BlockIo->Media->BlockSize = (UINT32)Private->BlockSize;
BlockIo->Media->LastBlock = Private->NumberOfBlocks - 1;
BlockIo->Media->MediaId = 0;;
@@ -626,10 +626,10 @@ Returns:
//
Private->NtHandle = Private->WinNtThunk->CreateFile (
Private->Filename,
- Private->ReadMode,
- Private->ShareMode,
+ (DWORD)Private->ReadMode,
+ (DWORD)Private->ShareMode,
NULL,
- Private->OpenMode,
+ (DWORD)Private->OpenMode,
0,
NULL
);
@@ -658,7 +658,7 @@ Returns:
Status = SetFilePointer64 (Private, 0, &FileSize, FILE_END);
if (EFI_ERROR (Status)) {
- FileSize = MultU64x32 (Private->NumberOfBlocks, Private->BlockSize);
+ FileSize = MultU64x32 (Private->NumberOfBlocks, (UINT32)Private->BlockSize);
if (Private->DeviceType == EfiWinNtVirtualDisks) {
DEBUG ((EFI_D_ERROR, "PlOpenBlock: Could not get filesize of %s\n", Private->Filename));
Status = EFI_UNSUPPORTED;
@@ -667,10 +667,10 @@ Returns:
}
if (Private->NumberOfBlocks == 0) {
- Private->NumberOfBlocks = DivU64x32 (FileSize, Private->BlockSize);
+ Private->NumberOfBlocks = DivU64x32 (FileSize, (UINT32)Private->BlockSize);
}
- EndOfFile = MultU64x32 (Private->NumberOfBlocks, Private->BlockSize);
+ EndOfFile = MultU64x32 (Private->NumberOfBlocks, (UINT32)Private->BlockSize);
if (FileSize != EndOfFile) {
//
@@ -832,7 +832,7 @@ Returns:
return EFI_MEDIA_CHANGED;
}
- if ((UINT32) Buffer % Private->Media.IoAlign != 0) {
+ if ((UINTN) Buffer % Private->Media.IoAlign != 0) {
return EFI_INVALID_PARAMETER;
}
@@ -858,7 +858,7 @@ Returns:
//
// Seek to End of File
//
- DistanceToMove = MultU64x32 (Lba, BlockSize);
+ DistanceToMove = MultU64x32 (Lba, (UINT32)BlockSize);
Status = SetFilePointer64 (Private, DistanceToMove, &DistanceMoved, FILE_BEGIN);
if (EFI_ERROR (Status)) {