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