drivers/platform/x86/gigabyte-wmi.c | 44 ------------------------------------- 1 file changed, 44 deletions(-)
Having to maintain a per-system allowlist is burdensome and confusing
for users, drop it.
Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
---
Changes in v2:
- Rebase on 6.4-rc1
- Remove RFC status
- Drop #include <linux/dmi.h>
- Link to v1: https://lore.kernel.org/r/20230325-gigabyte-wmi-unrestrict-v1-1-23771309a4d3@weissschuh.net
---
As discussed in v1 this is based on 6.4-rc1.
---
drivers/platform/x86/gigabyte-wmi.c | 44 -------------------------------------
1 file changed, 44 deletions(-)
diff --git a/drivers/platform/x86/gigabyte-wmi.c b/drivers/platform/x86/gigabyte-wmi.c
index 2a426040f749..8aa665e866b8 100644
--- a/drivers/platform/x86/gigabyte-wmi.c
+++ b/drivers/platform/x86/gigabyte-wmi.c
@@ -5,7 +5,6 @@
#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
#include <linux/acpi.h>
-#include <linux/dmi.h>
#include <linux/hwmon.h>
#include <linux/module.h>
#include <linux/wmi.h>
@@ -13,10 +12,6 @@
#define GIGABYTE_WMI_GUID "DEADBEEF-2001-0000-00A0-C90629100000"
#define NUM_TEMPERATURE_SENSORS 6
-static bool force_load;
-module_param(force_load, bool, 0444);
-MODULE_PARM_DESC(force_load, "Force loading on unknown platform");
-
static u8 usable_sensors_mask;
enum gigabyte_wmi_commandtype {
@@ -133,49 +128,10 @@ static u8 gigabyte_wmi_detect_sensor_usability(struct wmi_device *wdev)
return r;
}
-#define DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME(name) \
- { .matches = { \
- DMI_EXACT_MATCH(DMI_BOARD_VENDOR, "Gigabyte Technology Co., Ltd."), \
- DMI_EXACT_MATCH(DMI_BOARD_NAME, name), \
- }}
-
-static const struct dmi_system_id gigabyte_wmi_known_working_platforms[] = {
- DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("A320M-S2H V2-CF"),
- DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("B450M DS3H-CF"),
- DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("B450M DS3H WIFI-CF"),
- DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("B450M S2H V2"),
- DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("B550 AORUS ELITE AX V2"),
- DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("B550 AORUS ELITE"),
- DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("B550 AORUS ELITE V2"),
- DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("B550 GAMING X V2"),
- DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("B550I AORUS PRO AX"),
- DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("B550M AORUS PRO-P"),
- DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("B550M DS3H"),
- DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("B650 AORUS ELITE AX"),
- DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("B660 GAMING X DDR4"),
- DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("B660I AORUS PRO DDR4"),
- DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("Z390 I AORUS PRO WIFI-CF"),
- DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("Z490 AORUS ELITE AC"),
- DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("X570 AORUS ELITE"),
- DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("X570 AORUS ELITE WIFI"),
- DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("X570 GAMING X"),
- DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("X570 I AORUS PRO WIFI"),
- DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("X570 UD"),
- DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("X570S AORUS ELITE"),
- DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("Z690M AORUS ELITE AX DDR4"),
- { }
-};
-
static int gigabyte_wmi_probe(struct wmi_device *wdev, const void *context)
{
struct device *hwmon_dev;
- if (!dmi_check_system(gigabyte_wmi_known_working_platforms)) {
- if (!force_load)
- return -ENODEV;
- dev_warn(&wdev->dev, "Forcing load on unknown platform");
- }
-
usable_sensors_mask = gigabyte_wmi_detect_sensor_usability(wdev);
if (!usable_sensors_mask) {
dev_info(&wdev->dev, "No temperature sensors usable");
---
base-commit: ac9a78681b921877518763ba0e89202254349d1b
change-id: 20230325-gigabyte-wmi-unrestrict-7244320c1996
Best regards,
--
Thomas Weißschuh <linux@weissschuh.net>
Hi, On 5/7/23 22:45, Thomas Weißschuh wrote: > Having to maintain a per-system allowlist is burdensome and confusing > for users, drop it. > > Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Thank you for your patch, I've applied this patch to my review-hans branch: https://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git/log/?h=review-hans Note it will show up in my review-hans branch once I've pushed my local branch there, which might take a while. Once I've run some tests on this branch the patches there will be added to the platform-drivers-x86/for-next branch and eventually will be included in the pdx86 pull-request to Linus for the next merge-window. Regards, Hans > --- > Changes in v2: > - Rebase on 6.4-rc1 > - Remove RFC status > - Drop #include <linux/dmi.h> > - Link to v1: https://lore.kernel.org/r/20230325-gigabyte-wmi-unrestrict-v1-1-23771309a4d3@weissschuh.net > --- > > As discussed in v1 this is based on 6.4-rc1. > --- > drivers/platform/x86/gigabyte-wmi.c | 44 ------------------------------------- > 1 file changed, 44 deletions(-) > > diff --git a/drivers/platform/x86/gigabyte-wmi.c b/drivers/platform/x86/gigabyte-wmi.c > index 2a426040f749..8aa665e866b8 100644 > --- a/drivers/platform/x86/gigabyte-wmi.c > +++ b/drivers/platform/x86/gigabyte-wmi.c > @@ -5,7 +5,6 @@ > #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt > > #include <linux/acpi.h> > -#include <linux/dmi.h> > #include <linux/hwmon.h> > #include <linux/module.h> > #include <linux/wmi.h> > @@ -13,10 +12,6 @@ > #define GIGABYTE_WMI_GUID "DEADBEEF-2001-0000-00A0-C90629100000" > #define NUM_TEMPERATURE_SENSORS 6 > > -static bool force_load; > -module_param(force_load, bool, 0444); > -MODULE_PARM_DESC(force_load, "Force loading on unknown platform"); > - > static u8 usable_sensors_mask; > > enum gigabyte_wmi_commandtype { > @@ -133,49 +128,10 @@ static u8 gigabyte_wmi_detect_sensor_usability(struct wmi_device *wdev) > return r; > } > > -#define DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME(name) \ > - { .matches = { \ > - DMI_EXACT_MATCH(DMI_BOARD_VENDOR, "Gigabyte Technology Co., Ltd."), \ > - DMI_EXACT_MATCH(DMI_BOARD_NAME, name), \ > - }} > - > -static const struct dmi_system_id gigabyte_wmi_known_working_platforms[] = { > - DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("A320M-S2H V2-CF"), > - DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("B450M DS3H-CF"), > - DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("B450M DS3H WIFI-CF"), > - DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("B450M S2H V2"), > - DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("B550 AORUS ELITE AX V2"), > - DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("B550 AORUS ELITE"), > - DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("B550 AORUS ELITE V2"), > - DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("B550 GAMING X V2"), > - DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("B550I AORUS PRO AX"), > - DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("B550M AORUS PRO-P"), > - DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("B550M DS3H"), > - DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("B650 AORUS ELITE AX"), > - DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("B660 GAMING X DDR4"), > - DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("B660I AORUS PRO DDR4"), > - DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("Z390 I AORUS PRO WIFI-CF"), > - DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("Z490 AORUS ELITE AC"), > - DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("X570 AORUS ELITE"), > - DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("X570 AORUS ELITE WIFI"), > - DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("X570 GAMING X"), > - DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("X570 I AORUS PRO WIFI"), > - DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("X570 UD"), > - DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("X570S AORUS ELITE"), > - DMI_EXACT_MATCH_GIGABYTE_BOARD_NAME("Z690M AORUS ELITE AX DDR4"), > - { } > -}; > - > static int gigabyte_wmi_probe(struct wmi_device *wdev, const void *context) > { > struct device *hwmon_dev; > > - if (!dmi_check_system(gigabyte_wmi_known_working_platforms)) { > - if (!force_load) > - return -ENODEV; > - dev_warn(&wdev->dev, "Forcing load on unknown platform"); > - } > - > usable_sensors_mask = gigabyte_wmi_detect_sensor_usability(wdev); > if (!usable_sensors_mask) { > dev_info(&wdev->dev, "No temperature sensors usable"); > > --- > base-commit: ac9a78681b921877518763ba0e89202254349d1b > change-id: 20230325-gigabyte-wmi-unrestrict-7244320c1996 > > Best regards,
© 2016 - 2024 Red Hat, Inc.