Map->Operation is used to select whether a DMA region that is being bounced has the source buffer copied to it. Except Map->Operation isn't yet set, so the behavior is somewhat random. Instead use the passed in Operation parameter.
Signed-off-by: Jeremy Linton <jeremy.lin...@arm.com> --- EmbeddedPkg/Library/NonCoherentDmaLib/NonCoherentDmaLib.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/EmbeddedPkg/Library/NonCoherentDmaLib/NonCoherentDmaLib.c b/EmbeddedPkg/Library/NonCoherentDmaLib/NonCoherentDmaLib.c index 9c8ef5bfb5..1aec86fffd 100644 --- a/EmbeddedPkg/Library/NonCoherentDmaLib/NonCoherentDmaLib.c +++ b/EmbeddedPkg/Library/NonCoherentDmaLib/NonCoherentDmaLib.c @@ -224,7 +224,7 @@ DmaMap ( goto FreeMapInfo; } - if (Map->Operation == MapOperationBusMasterRead) { + if (Operation == MapOperationBusMasterRead) { CopyMem (Map->BufferAddress, (VOID *)(UINTN)HostAddress, *NumberOfBytes); } mCpu->FlushDataCache (mCpu, (UINTN)Map->BufferAddress, AllocSize, -- 2.13.7 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#79240): https://edk2.groups.io/g/devel/message/79240 Mute This Topic: https://groups.io/mt/84857084/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-