diff --git a/Changelog.md b/Changelog.md
index 8257650156af8c1f7161766a99f1c6b4a35adbe3..a6d3fa89bb062e207a2128c195f18f997b5161be 100644
--- a/Changelog.md
+++ b/Changelog.md
@@ -24,6 +24,7 @@ OpenCore Changelog
- Fixed CPU detection crash with QEMU 5.0 and KVM accelerator
- Removed `RequestBootVarFallback` due to numerous bugs
- Added `DeduplicateBootOrder` UEFI quirk
+- Removed `DirectGopCacheMode` due to being ineffective
#### v0.5.8
- Fixed invalid CPU object reference in SSDT-PLUG
diff --git a/Docs/Configuration.tex b/Docs/Configuration.tex
index fc26acaccd98e424641cea56a4b4091c16982535..438456e9e3b47aaca3102c8c5dc4de81f75179c9 100755
--- a/Docs/Configuration.tex
+++ b/Docs/Configuration.tex
@@ -4849,21 +4849,6 @@ functioning. Feature highlights:
\emph{Note}: This option only applies to \texttt{System} renderer.
-\item
- \texttt{DirectGopCacheMode}\\
- \textbf{Type}: \texttt{plist\ string}\\
- \textbf{Failsafe}: Empty string\\
- \textbf{Description}: Cache mode for builtin graphics output protocol framebuffer.
-
- Tuning cache mode may provide better rendering performance on some firmwares.
- Providing empty string leaves cache control settings to the firmware.
- Valid non-empty values are: \texttt{Uncacheable}, \texttt{WriteCombining}, and
- \texttt{WriteThrough}.
-
- \emph{Note}: This option is not supported on most hardware (see
- \href{https://github.com/acidanthera/bugtracker/issues/755}{acidanthera/bugtracker\#755}
- for more details).
-
\item
\texttt{DirectGopRendering}\\
\textbf{Type}: \texttt{plist\ boolean}\\
diff --git a/Docs/Sample.plist b/Docs/Sample.plist
index ad37f635ca2c341df0339e0a88b8e44652034888..702144c6245307745ef13c3b1460419cfba80130 100644
--- a/Docs/Sample.plist
+++ b/Docs/Sample.plist
@@ -860,8 +860,6 @@
ConsoleMode
- DirectGopCacheMode
-
DirectGopRendering
IgnoreTextInGraphics
diff --git a/Docs/SampleFull.plist b/Docs/SampleFull.plist
index 5b1105f5c0dc311fbceeb14defca7799ecf599ef..cdd17f7ebf129be069949e28ef8199454f8b08bb 100644
--- a/Docs/SampleFull.plist
+++ b/Docs/SampleFull.plist
@@ -963,8 +963,6 @@
ConsoleMode
- DirectGopCacheMode
-
DirectGopRendering
IgnoreTextInGraphics
diff --git a/Include/Library/OcConfigurationLib.h b/Include/Library/OcConfigurationLib.h
index 359f3f46d5a48078f68a805b427dbf67b5627011..d32ed439707834423cb52edc65dcaf522d86886e 100644
--- a/Include/Library/OcConfigurationLib.h
+++ b/Include/Library/OcConfigurationLib.h
@@ -517,7 +517,6 @@ typedef enum {
_(OC_STRING , ConsoleMode , , OC_STRING_CONSTR ("", _, __), OC_DESTR (OC_STRING)) \
_(OC_STRING , Resolution , , OC_STRING_CONSTR ("", _, __), OC_DESTR (OC_STRING)) \
_(OC_STRING , TextRenderer , , OC_STRING_CONSTR ("", _, __), OC_DESTR (OC_STRING)) \
- _(OC_STRING , DirectGopCacheMode , , OC_STRING_CONSTR ("", _, __), OC_DESTR (OC_STRING)) \
_(BOOLEAN , IgnoreTextInGraphics , , FALSE , ()) \
_(BOOLEAN , ClearScreenOnModeSwitch , , FALSE , ()) \
_(BOOLEAN , ProvideConsoleGop , , FALSE , ()) \
diff --git a/Library/OcConfigurationLib/OcConfigurationLib.c b/Library/OcConfigurationLib/OcConfigurationLib.c
index 2a04548ae59e512511d59a4da5a09aa83cab2781..1a9e6427b30a6520295af9164ae58255b4389c51 100644
--- a/Library/OcConfigurationLib/OcConfigurationLib.c
+++ b/Library/OcConfigurationLib/OcConfigurationLib.c
@@ -601,7 +601,6 @@ OC_SCHEMA
mUefiOutputSchema[] = {
OC_SCHEMA_BOOLEAN_IN ("ClearScreenOnModeSwitch",OC_GLOBAL_CONFIG, Uefi.Output.ClearScreenOnModeSwitch),
OC_SCHEMA_STRING_IN ("ConsoleMode", OC_GLOBAL_CONFIG, Uefi.Output.ConsoleMode),
- OC_SCHEMA_STRING_IN ("DirectGopCacheMode", OC_GLOBAL_CONFIG, Uefi.Output.DirectGopCacheMode),
OC_SCHEMA_BOOLEAN_IN ("DirectGopRendering", OC_GLOBAL_CONFIG, Uefi.Output.DirectGopRendering),
OC_SCHEMA_BOOLEAN_IN ("IgnoreTextInGraphics", OC_GLOBAL_CONFIG, Uefi.Output.IgnoreTextInGraphics),
OC_SCHEMA_BOOLEAN_IN ("ProvideConsoleGop", OC_GLOBAL_CONFIG, Uefi.Output.ProvideConsoleGop),
diff --git a/Platform/OpenCore/OpenCoreUefiInOut.c b/Platform/OpenCore/OpenCoreUefiInOut.c
index 28996010830958bab857f260818b8d1a7a20286c..aac2ac46197bde9fd330b7b1d64e268e7bda2522 100644
--- a/Platform/OpenCore/OpenCoreUefiInOut.c
+++ b/Platform/OpenCore/OpenCoreUefiInOut.c
@@ -191,7 +191,6 @@ OcLoadUefiOutputSupport (
{
EFI_STATUS Status;
CONST CHAR8 *AsciiRenderer;
- CONST CHAR8 *AsciiCacheMode;
OC_CONSOLE_RENDERER Renderer;
UINT32 Width;
UINT32 Height;
@@ -241,20 +240,7 @@ OcLoadUefiOutputSupport (
}
if (Config->Uefi.Output.DirectGopRendering) {
- AsciiCacheMode = OC_BLOB_GET (&Config->Uefi.Output.DirectGopCacheMode);
-
- if (AsciiCacheMode[0] == '\0') {
- OcUseDirectGop (-1);
- } else if (AsciiStrCmp (AsciiCacheMode, "Uncacheable") == 0) {
- OcUseDirectGop (CacheUncacheable);
- } else if (AsciiStrCmp (AsciiCacheMode, "WriteCombining") == 0) {
- OcUseDirectGop (CacheWriteCombining);
- } else if (AsciiStrCmp (AsciiCacheMode, "WriteThrough") == 0) {
- OcUseDirectGop (CacheWriteThrough);
- } else {
- DEBUG ((DEBUG_WARN, "OC: Requested unknown cache mode %a\n", AsciiCacheMode));
- OcUseDirectGop (-1);
- }
+ OcUseDirectGop (-1);
}
if (Config->Uefi.Output.ReconnectOnResChange && !EFI_ERROR (Status)) {