diff --git a/Changelog.md b/Changelog.md
index d4760e00..4691466e 100644
--- a/Changelog.md
+++ b/Changelog.md
@@ -5,6 +5,7 @@ OpenCore Changelog
- Documentation improvements (see Differences.pdf)
- Platform information database updates
- Fixed misbehaving Debug -> Target enable bit
+- Added `ResetLogoStatus` ACPI quirk
#### v0.0.1
- Initial developer preview release
diff --git a/Docs/Configuration.pdf b/Docs/Configuration.pdf
index 7e54c0c3..0ad8b915 100644
Binary files a/Docs/Configuration.pdf and b/Docs/Configuration.pdf differ
diff --git a/Docs/Configuration.tex b/Docs/Configuration.tex
index adca3645..4908bffd 100644
--- a/Docs/Configuration.tex
+++ b/Docs/Configuration.tex
@@ -828,6 +828,16 @@ source file may help understanding ACPI opcodes.
attempting to fix the ACPI addresses. It does not do magic, and only
works with most common cases. Do not use unless absolutely required.
+\item
+ \texttt{ResetLogoStatus}\\
+ \textbf{Type}: \texttt{plist\ boolean}\\
+ \textbf{Default value}: \texttt{false}\\
+ \textbf{Description}: Reset \texttt{BGRT} table \texttt{Displayed}
+ status field to \texttt{false}.
+
+ This works around firmwares that provide \texttt{BGRT} table but
+ fail to handle screen updates afterwards.
+
\end{enumerate}
diff --git a/Docs/Differences/Differences.pdf b/Docs/Differences/Differences.pdf
index 0ebe9e77..a0ea537f 100644
Binary files a/Docs/Differences/Differences.pdf and b/Docs/Differences/Differences.pdf differ
diff --git a/Docs/Differences/Differences.tex b/Docs/Differences/Differences.tex
index f69b80d7..24a40994 100644
--- a/Docs/Differences/Differences.tex
+++ b/Docs/Differences/Differences.tex
@@ -1,7 +1,7 @@
\documentclass[]{article}
%DIF LATEXDIFF DIFFERENCE FILE
%DIF DEL PreviousConfiguration.tex Fri May 3 12:13:06 2019
-%DIF ADD ../Configuration.tex Wed May 8 19:47:54 2019
+%DIF ADD ../Configuration.tex Wed May 8 21:43:05 2019
\usepackage{lmodern}
\usepackage{amssymb,amsmath}
@@ -903,7 +903,19 @@ source file may help understanding ACPI opcodes.
attempting to fix the ACPI addresses. It does not do magic, and only
works with most common cases. Do not use unless absolutely required.
-\end{enumerate}
+\DIFaddbegin \item
+ \texttt{\DIFadd{ResetLogoStatus}}\\
+ \textbf{\DIFadd{Type}}\DIFadd{: }\texttt{\DIFadd{plist\ boolean}}\\
+ \textbf{\DIFadd{Default value}}\DIFadd{: }\texttt{\DIFadd{false}}\\
+ \textbf{\DIFadd{Description}}\DIFadd{: Reset }\texttt{\DIFadd{BGRT}} \DIFadd{table }\texttt{\DIFadd{Displayed}}
+ \DIFadd{status field to }\texttt{\DIFadd{false}}\DIFadd{.
+}
+
+ \DIFadd{This works around firmwares that provide }\texttt{\DIFadd{BGRT}} \DIFadd{table but
+ fail to handle screen updates afterwards.
+}
+
+\DIFaddend \end{enumerate}
\section{DeviceProperties}\label{devprops}
diff --git a/Docs/Sample.plist b/Docs/Sample.plist
index 75085718..09526278 100644
--- a/Docs/Sample.plist
+++ b/Docs/Sample.plist
@@ -153,6 +153,8 @@
RebaseRegions
+ ResetLogoStatus
+
DeviceProperties
diff --git a/Docs/SampleFull.plist b/Docs/SampleFull.plist
index 12b776d7..968e9380 100644
--- a/Docs/SampleFull.plist
+++ b/Docs/SampleFull.plist
@@ -153,6 +153,8 @@
RebaseRegions
+ ResetLogoStatus
+
DeviceProperties
diff --git a/Platform/OpenCore/OpenCoreAcpi.c b/Platform/OpenCore/OpenCoreAcpi.c
index aeeb5b99..111f9f1b 100644
--- a/Platform/OpenCore/OpenCoreAcpi.c
+++ b/Platform/OpenCore/OpenCoreAcpi.c
@@ -211,6 +211,10 @@ OcLoadAcpiSupport (
AcpiFadtEnableReset (&Context);
}
+ if (Config->Acpi.Quirks.ResetLogoStatus) {
+ AcpiResetLogoStatus (&Context);
+ }
+
if (Config->Acpi.Quirks.RebaseRegions) {
AcpiRelocateRegions (&Context);
}