The WMAX _UID of all devices that support the AWCC interface is "AWCC". This includes the following devices which were manually verified by reading their ACPI tables: - Dell G16 7630 - Dell G5 5505 SE - Alienware m16 R1 - Alienware m17 R5 AMD - Alienware x15 R2 - Alienware 17 R5 - Alienware Aurora R12 - Alienware Aurora Ryzen Edition And possibly many more, if not all devices with this interface. Add a check for "AWCC" _UID in wmax_wmi_probe() as a last resort test for support. Signed-off-by: Kurt Borja <kuurtb@xxxxxxxxx> --- drivers/platform/x86/dell/alienware-wmi-wmax.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/drivers/platform/x86/dell/alienware-wmi-wmax.c b/drivers/platform/x86/dell/alienware-wmi-wmax.c index 46d11b200820cdbaa841fc97e33b339fca42104e..1a81373a9d5937b4ff5511ad2061b6dc6e40b810 100644 --- a/drivers/platform/x86/dell/alienware-wmi-wmax.c +++ b/drivers/platform/x86/dell/alienware-wmi-wmax.c @@ -1420,14 +1420,17 @@ static int wmax_wmi_probe(struct wmi_device *wdev, const void *context) .upd_brightness = wmax_wmi_update_brightness, }, }; - int ret; + char *uid; - if (awcc) - ret = alienware_awcc_setup(wdev); - else - ret = alienware_alienfx_setup(&pdata); + if (!awcc) { + uid = wmidev_get_acpi_device_uid(wdev); + if (!uid || strncmp(uid, "AWCC", 4)) + return alienware_alienfx_setup(&pdata); - return ret; + awcc = &generic_quirks; + } + + return alienware_awcc_setup(wdev); } static int wmax_wmi_suspend(struct device *dev) -- 2.48.1