mirror of
https://github.com/reactos/reactos.git
synced 2025-08-06 09:43:04 +00:00
[BOOTLIB]: More debug print cleanups
[BOOTLIB]: Fix incorrect use of flag introduced a few revisions ago. This fixes <1MB RAM descriptors. [BOOTLIB]: Enable BmFwMemoryInitialize, since it works now. All (known) bugs are fixed, bootmgr is back on track. svn path=/trunk/; revision=70516
This commit is contained in:
parent
93d3cafa85
commit
b835d33a8c
7 changed files with 11 additions and 19 deletions
|
@ -1151,7 +1151,7 @@ BmMain (
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Initialize firmware-specific memory regions */
|
/* Initialize firmware-specific memory regions */
|
||||||
//BmFwMemoryInitialize();
|
BmFwMemoryInitialize();
|
||||||
|
|
||||||
/* Initialize the boot status data log (BSD) */
|
/* Initialize the boot status data log (BSD) */
|
||||||
BmpInitializeBootStatusDataLog();
|
BmpInitializeBootStatusDataLog();
|
||||||
|
@ -1168,7 +1168,7 @@ BmMain (
|
||||||
|
|
||||||
/* do more stuff!! */
|
/* do more stuff!! */
|
||||||
EfiPrintf(BlResourceFindMessage(BM_MSG_TEST));
|
EfiPrintf(BlResourceFindMessage(BM_MSG_TEST));
|
||||||
EfiPrintf(Stylesheet);
|
//EfiPrintf(Stylesheet);
|
||||||
EfiStall(10000000);
|
EfiStall(10000000);
|
||||||
|
|
||||||
//Failure:
|
//Failure:
|
||||||
|
|
|
@ -287,10 +287,11 @@ typedef enum _BL_MEMORY_ATTR
|
||||||
//
|
//
|
||||||
// Memory Allocation Attributes
|
// Memory Allocation Attributes
|
||||||
//
|
//
|
||||||
|
BlMemoryUnknown = 0x00010000,
|
||||||
BlMemoryNonFixed = 0x00020000,
|
BlMemoryNonFixed = 0x00020000,
|
||||||
BlMemoryFixed = 0x00040000,
|
BlMemoryFixed = 0x00040000,
|
||||||
BlMemoryReserved = 0x00080000,
|
BlMemoryReserved = 0x00080000,
|
||||||
BlMemoryValidAllocationAttributes = BlMemoryNonFixed | BlMemoryFixed | BlMemoryReserved,
|
BlMemoryValidAllocationAttributes = BlMemoryNonFixed | BlMemoryFixed | BlMemoryReserved | BlMemoryUnknown,
|
||||||
BlMemoryValidAllocationAttributeMask = 0x00FF0000,
|
BlMemoryValidAllocationAttributeMask = 0x00FF0000,
|
||||||
|
|
||||||
//
|
//
|
||||||
|
|
|
@ -1269,7 +1269,8 @@ MmFwGetMemoryMap (
|
||||||
if (Descriptor->Type == BlConventionalMemory)
|
if (Descriptor->Type == BlConventionalMemory)
|
||||||
{
|
{
|
||||||
/* Set the reserved flag on the descriptor */
|
/* Set the reserved flag on the descriptor */
|
||||||
Descriptor->Flags |= BlReservedMemory;
|
EfiPrintf(L"Adding magic flag\r\n");
|
||||||
|
Descriptor->Flags |= BlMemoryReserved;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Add this descriptor into the list */
|
/* Add this descriptor into the list */
|
||||||
|
@ -1313,7 +1314,8 @@ MmFwGetMemoryMap (
|
||||||
if ((Descriptor->Type == BlConventionalMemory) && (EndPage <= 0x100))
|
if ((Descriptor->Type == BlConventionalMemory) && (EndPage <= 0x100))
|
||||||
{
|
{
|
||||||
/* Set the reserved flag on the descriptor */
|
/* Set the reserved flag on the descriptor */
|
||||||
Descriptor->Flags |= BlReservedMemory;
|
EfiPrintf(L"Adding magic flag\r\n");
|
||||||
|
Descriptor->Flags |= BlMemoryReserved;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Add the descriptor to the list, requesting coalescing as asked */
|
/* Add the descriptor to the list, requesting coalescing as asked */
|
||||||
|
|
|
@ -301,7 +301,7 @@ BlockIopOperation (
|
||||||
}
|
}
|
||||||
|
|
||||||
Alignment = BlockDevice->Alignment;
|
Alignment = BlockDevice->Alignment;
|
||||||
if (!Alignment || !((Alignment - 1) & (ULONG_PTR)Buffer))
|
if (!(Alignment) || !((Alignment - 1) & (ULONG_PTR)Buffer))
|
||||||
{
|
{
|
||||||
Status = BlockIopFirmwareOperation(DeviceEntry,
|
Status = BlockIopFirmwareOperation(DeviceEntry,
|
||||||
Buffer,
|
Buffer,
|
||||||
|
@ -317,7 +317,6 @@ BlockIopOperation (
|
||||||
return STATUS_SUCCESS;
|
return STATUS_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
EfiPrintf(L"Firmware alignment fixup required\r\n");
|
|
||||||
Status = BlockIopAllocateAlignedBuffer(&BlockIopAlignedBuffer,
|
Status = BlockIopAllocateAlignedBuffer(&BlockIopAlignedBuffer,
|
||||||
&BlockIopAlignedBufferSize,
|
&BlockIopAlignedBufferSize,
|
||||||
BufferSize,
|
BufferSize,
|
||||||
|
@ -821,11 +820,6 @@ BlockIoEfiGetBlockIoInformation (
|
||||||
/* Get information on the block media */
|
/* Get information on the block media */
|
||||||
Media = BlockDevice->Protocol->Media;
|
Media = BlockDevice->Protocol->Media;
|
||||||
|
|
||||||
EfiPrintf(L"Block I/O Info for Device 0x%p, 0x%lX\r\n", BlockDevice, BlockDevice->Handle);
|
|
||||||
EfiPrintf(L"Removable: %d Present: %d Last Block: %I64d BlockSize: %d IoAlign: %d MediaId: %d ReadOnly: %d\r\n",
|
|
||||||
Media->RemovableMedia, Media->MediaPresent, Media->LastBlock, Media->BlockSize, Media->IoAlign,
|
|
||||||
Media->MediaId, Media->ReadOnly);
|
|
||||||
|
|
||||||
/* Set the appropriate device flags */
|
/* Set the appropriate device flags */
|
||||||
BlockDevice->DeviceFlags = 0;
|
BlockDevice->DeviceFlags = 0;
|
||||||
if (Media->RemovableMedia)
|
if (Media->RemovableMedia)
|
||||||
|
|
|
@ -551,8 +551,6 @@ EtfsOpen (
|
||||||
PRAW_DIR_REC DirEntry;
|
PRAW_DIR_REC DirEntry;
|
||||||
BOOLEAN IsDirectory;
|
BOOLEAN IsDirectory;
|
||||||
|
|
||||||
EfiPrintf(L"Attempting to open file %s in directory %s\r\n", FileName, Directory->FilePath);
|
|
||||||
|
|
||||||
EtfsFile = Directory->FsSpecificData;
|
EtfsFile = Directory->FsSpecificData;
|
||||||
DeviceId = EtfsFile->DeviceId;
|
DeviceId = EtfsFile->DeviceId;
|
||||||
EtfsDevice = EtfsDeviceTable[DeviceId];
|
EtfsDevice = EtfsDeviceTable[DeviceId];
|
||||||
|
|
|
@ -426,8 +426,6 @@ FileIoOpen (
|
||||||
Status = STATUS_SUCCESS;
|
Status = STATUS_SUCCESS;
|
||||||
FileEntry->FileId = FileId;
|
FileEntry->FileId = FileId;
|
||||||
|
|
||||||
EfiPrintf(L"File %s opened with ID: %lx\r\n", FileEntry->FilePath, FileId);
|
|
||||||
|
|
||||||
FileOpened:
|
FileOpened:
|
||||||
/* Add a reference to the file entry, and see if this is the first one */
|
/* Add a reference to the file entry, and see if this is the first one */
|
||||||
if (++FileEntry->ReferenceCount == 1)
|
if (++FileEntry->ReferenceCount == 1)
|
||||||
|
@ -524,7 +522,6 @@ BlFileOpen (
|
||||||
if (NT_SUCCESS(Status))
|
if (NT_SUCCESS(Status))
|
||||||
{
|
{
|
||||||
/* Return the file ID back to the caller */
|
/* Return the file ID back to the caller */
|
||||||
EfiPrintf(L"File %s opened: %lx\r\n", FileName, FileEntry->FileId);
|
|
||||||
*FileId = FileEntry->FileId;
|
*FileId = FileEntry->FileId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -742,9 +742,9 @@ MmMdFindSatisfyingRegion (
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Bail out if the allocation flags don't match */
|
/* Bail out if the allocation flags don't match */
|
||||||
if (((Flags ^ Descriptor->Flags) & 0x190000))
|
if (((Flags ^ Descriptor->Flags) & (BlMemoryRuntime | BlMemoryReserved | BlMemoryUnknown)))
|
||||||
{
|
{
|
||||||
EfiPrintf(L"Incorrect memory allocation flags\r\n");
|
//EfiPrintf(L"Incorrect memory allocation flags\r\n");
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue