From f66a43b26e6e0f4c1e5871dd3a88f2970b3abf87 Mon Sep 17 00:00:00 2001 From: Jiamin Ma Date: Sat, 12 Oct 2013 06:31:55 +0000 Subject: We enabled X64 native version NT32, and made it works on Windows 7 X64 OS. Signed-off-by: Jiamin Ma Reviewed by: Ruiyu Ni Reviewed by: Liming Gao Reviewed by: Jiewen Yao git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14766 6f19259b-4bc3-4df7-8a09-765794883524 --- Nt32Pkg/WinNtBlockIoDxe/WinNtBlockIo.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'Nt32Pkg/WinNtBlockIoDxe') 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)) { -- cgit v1.2.3