SimpleFbDxe: Attempt to flush cache after every blit; didn't work

This commit is contained in:
Zhuowei Zhang 2019-02-23 17:43:42 -08:00
parent bfb1f3cc79
commit 73299652d9
2 changed files with 7 additions and 0 deletions

View File

@ -11,6 +11,7 @@
#include <Protocol/GraphicsOutput.h>
#include <Library/BaseLib.h>
#include <Library/FrameBufferBltLib.h>
#include <Library/CacheMaintenanceLib.h>
/// Defines
/*
@ -189,6 +190,11 @@ DisplayBlt
);
gBS->RestoreTPL (Tpl);
// zhuowei: hack: flush the cache manually since my memory maps are still broken
WriteBackInvalidateDataCacheRange((void*)mDisplay.Mode->FrameBufferBase,
mDisplay.Mode->FrameBufferSize);
// zhuowei: end hack
return RETURN_ERROR (Status) ? EFI_INVALID_PARAMETER : EFI_SUCCESS;
}

View File

@ -28,6 +28,7 @@
DebugLib
PcdLib
FrameBufferBltLib
CacheMaintenanceLib
[Protocols]
gEfiGraphicsOutputProtocolGuid ## PRODUCES