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:
eric_tian
2007-10-12 05:41:48 +00:00
parent cba02989d1
commit 6979fd9382
4 changed files with 163 additions and 124 deletions

View File

@@ -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:

View File

@@ -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);
}

View File

@@ -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: