Re: [PATCH v3 0/3] Support for ASUS egpu, dpgu disable, panel overdrive
From: Luke Jones
Date: Mon Aug 09 2021 - 17:49:49 EST
On Mon, Aug 9 2021 at 11:18:38 +0200, Hans de Goede
<hdegoede@xxxxxxxxxx> wrote:
Hi Luke,
On 8/7/21 4:36 AM, Luke D. Jones wrote:
This patch series adds support for some functions that are found on
newer
ASUS gaming laptops:
- Panel overdrive: Some laptops can drive the LCD matrix slightly
faster
to eliminate or reduce ghosting artifacts
- dGPU disable: ASUS added a function in ACPI to disable or enable
the dGPU
which removes it from the PCI bus. Presumably this was to help
prevent
Windows apps from using the dGPU when the user didn't want them
to but
because of how it works it also means that when rebooted to Linux
the dGPU
no-longer exits. This patch enables a user to echo 0/1 to a WMI
path to
re-enable it (or disable, but the drivers *must* be unloaded
first).
- eGPU enable: The ASUS x-flow lpatop has an iGPU, a dGPU, and an
optional
eGPU. This patch enables the user to echo 0/1 to a WMI path to
enable or
disable the eGPU. In ACPI this also appears to remove the dGPU
from the
PCI bus.
All of the above patches have been tested over the course of a few
months.
There is a small possibility of user error perhaps, where the user
tries to
enable or disable the dGPU/eGPU while drivers are loaded which
would cause
a system hang, but it is expected that almost all users would be
using the
`asusctl` daemon and dbus methods to manage the above which then
eliminates
these issues.
Thank you for the new version, all 3 patches look good to me, but I
miss
a changelog in this cover-letter.
Specifically I'm wondering what happened to the following,
which you wrote about in the v1 patch-set thread:
"""
Proper enable of the dGPU again as far as my testing goes works such
that:
1. call the ACPI method
2. rescan PCI bus to ensure the device is powered
3. call the ACPI method again to save the setting
But it appears that recent work in-kernel for many things AMD related
has broken this for us...
"""
Apologies, I've been a bit too busy to remember some things.
The changes are mostly to satisfy review. The dGPU patch has removed the
dual call to the ACPI method, it was not working as expected. I will
revisit
this when 5.14 kernel is released.
I'll be sure to remember the changelog next time I submit a patch,
sorry.
Regards,
Luke.
?
Regards,
Hans
Luke D. Jones (3):
asus-wmi: Add panel overdrive functionality
asus-wmi: Add dgpu disable method
asus-wmi: Add egpu enable method
drivers/platform/x86/asus-wmi.c | 289
+++++++++++++++++++++
include/linux/platform_data/x86/asus-wmi.h | 7 +
2 files changed, 296 insertions(+)
--
2.31.1