fixed the following problems:
1) DMA interrupt don't been cleaning up after one UDMA operation 2) Global variable mHobStart is not updated after invoking CoreInitializeGcdServices() func in the dxemain. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4107 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
@@ -354,7 +354,7 @@ Returns:
|
||||
|
||||
EFI_STATUS
|
||||
CoreInitializeGcdServices (
|
||||
IN VOID **HobStart,
|
||||
IN OUT VOID **HobStart,
|
||||
IN EFI_PHYSICAL_ADDRESS MemoryBaseAddress,
|
||||
IN UINT64 MemoryLength
|
||||
)
|
||||
@@ -367,7 +367,8 @@ Routine Description:
|
||||
memory map, so memory allocations and resource allocations can be made. The first
|
||||
part of this function can not depend on any memory services until at least one
|
||||
memory descriptor is provided to the memory services. Then the memory services
|
||||
can be used to intialize the GCD map.
|
||||
can be used to intialize the GCD map. The HobStart will be relocated to a pool
|
||||
buffer.
|
||||
|
||||
Arguments:
|
||||
|
||||
|
@@ -299,6 +299,10 @@ Returns:
|
||||
ASSERT_EFI_ERROR (Status);
|
||||
|
||||
//
|
||||
// The HobStart is relocated in gcd service init. Sync mHobStart varible.
|
||||
//
|
||||
mHobStart = HobStart;
|
||||
|
||||
// Install the DXE Services Table into the EFI System Tables's Configuration Table
|
||||
//
|
||||
Status = CoreInstallConfigurationTable (&gEfiDxeServicesTableGuid, gDxeCoreDS);
|
||||
@@ -867,4 +871,3 @@ DxeMainUefiDecompress (
|
||||
|
||||
return UefiDecompress (Source, Destination, Scratch);
|
||||
}
|
||||
|
||||
|
@@ -2242,7 +2242,7 @@ Returns:
|
||||
|
||||
EFI_STATUS
|
||||
CoreInitializeGcdServices (
|
||||
IN VOID **HobStart,
|
||||
IN OUT VOID **HobStart,
|
||||
IN EFI_PHYSICAL_ADDRESS MemoryBaseAddress,
|
||||
IN UINT64 MemoryLength
|
||||
)
|
||||
@@ -2255,7 +2255,8 @@ Routine Description:
|
||||
memory map, so memory allocations and resource allocations can be made. The first
|
||||
part of this function can not depend on any memory services until at least one
|
||||
memory descriptor is provided to the memory services. Then the memory services
|
||||
can be used to intialize the GCD map.
|
||||
can be used to intialize the GCD map. The HobStart will be relocated to a pool
|
||||
buffer.
|
||||
|
||||
Arguments:
|
||||
|
||||
|
Reference in New Issue
Block a user