Subject: [PATCH] hwmon: (dell-smm) Add Dell Precision 7510 to fan control whitelist

This allows manual PWM control without the BIOS fighting back on Dell
Precision 7510. Meanwhile at it, also sort alphabetically the entries
of the i8k_whitelist_fan_control struct.

Signed-off-by: Carlos Alberto Lopez Perez <[email protected]>
---
drivers/hwmon/dell-smm-hwmon.c | 24 ++++++++++++++++--------
1 file changed, 16 insertions(+), 8 deletions(-)

diff --git a/drivers/hwmon/dell-smm-hwmon.c b/drivers/hwmon/dell-smm-hwmon.c
index f2221ca0aa7b..a677c8a4ef29 100644
--- a/drivers/hwmon/dell-smm-hwmon.c
+++ b/drivers/hwmon/dell-smm-hwmon.c
@@ -1186,14 +1186,6 @@ static const struct i8k_fan_control_data i8k_fan_control_data[] = {
};

static struct dmi_system_id i8k_whitelist_fan_control[] __initdata = {
- {
- .ident = "Dell Precision 5530",
- .matches = {
- DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
- DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Precision 5530"),
- },
- .driver_data = (void *)&i8k_fan_control_data[I8K_FAN_34A3_35A3],
- },
{
.ident = "Dell Latitude 5480",
.matches = {
@@ -1218,6 +1210,22 @@ static struct dmi_system_id i8k_whitelist_fan_control[] __initdata = {
},
.driver_data = (void *)&i8k_fan_control_data[I8K_FAN_34A3_35A3],
},
+ {
+ .ident = "Dell Precision 5530",
+ .matches = {
+ DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+ DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Precision 5530"),
+ },
+ .driver_data = (void *)&i8k_fan_control_data[I8K_FAN_34A3_35A3],
+ },
+ {
+ .ident = "Dell Precision 7510",
+ .matches = {
+ DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+ DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Precision 7510"),
+ },
+ .driver_data = (void *)&i8k_fan_control_data[I8K_FAN_34A3_35A3],
+ },
{ }
};

--
2.20.1



2021-08-02 17:31:54

by Pali Rohár

[permalink] [raw]
Subject: Re: [PATCH] hwmon: (dell-smm) Add Dell Precision 7510 to fan control whitelist

On Monday 02 August 2021 14:15:38 Carlos Alberto Lopez Perez wrote:
> This allows manual PWM control without the BIOS fighting back on Dell
> Precision 7510. Meanwhile at it, also sort alphabetically the entries
> of the i8k_whitelist_fan_control struct.
>
> Signed-off-by: Carlos Alberto Lopez Perez <[email protected]>

Acked-by: Pali Rohár <[email protected]>

> ---
> drivers/hwmon/dell-smm-hwmon.c | 24 ++++++++++++++++--------
> 1 file changed, 16 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/hwmon/dell-smm-hwmon.c b/drivers/hwmon/dell-smm-hwmon.c
> index f2221ca0aa7b..a677c8a4ef29 100644
> --- a/drivers/hwmon/dell-smm-hwmon.c
> +++ b/drivers/hwmon/dell-smm-hwmon.c
> @@ -1186,14 +1186,6 @@ static const struct i8k_fan_control_data i8k_fan_control_data[] = {
> };
>
> static struct dmi_system_id i8k_whitelist_fan_control[] __initdata = {
> - {
> - .ident = "Dell Precision 5530",
> - .matches = {
> - DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
> - DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Precision 5530"),
> - },
> - .driver_data = (void *)&i8k_fan_control_data[I8K_FAN_34A3_35A3],
> - },
> {
> .ident = "Dell Latitude 5480",
> .matches = {
> @@ -1218,6 +1210,22 @@ static struct dmi_system_id i8k_whitelist_fan_control[] __initdata = {
> },
> .driver_data = (void *)&i8k_fan_control_data[I8K_FAN_34A3_35A3],
> },
> + {
> + .ident = "Dell Precision 5530",
> + .matches = {
> + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
> + DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Precision 5530"),
> + },
> + .driver_data = (void *)&i8k_fan_control_data[I8K_FAN_34A3_35A3],
> + },
> + {
> + .ident = "Dell Precision 7510",
> + .matches = {
> + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
> + DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Precision 7510"),
> + },
> + .driver_data = (void *)&i8k_fan_control_data[I8K_FAN_34A3_35A3],
> + },
> { }
> };
>
> --
> 2.20.1
>

2021-08-02 22:53:44

by Guenter Roeck

[permalink] [raw]
Subject: Re: [PATCH] hwmon: (dell-smm) Add Dell Precision 7510 to fan control whitelist

On Mon, Aug 02, 2021 at 02:15:38PM +0100, Carlos Alberto Lopez Perez wrote:
> This allows manual PWM control without the BIOS fighting back on Dell
> Precision 7510. Meanwhile at it, also sort alphabetically the entries
> of the i8k_whitelist_fan_control struct.
>
> Signed-off-by: Carlos Alberto Lopez Perez <[email protected]>
> Acked-by: Pali Roh?r <[email protected]>

Applied.

Thanks,
Guenter

> ---
> drivers/hwmon/dell-smm-hwmon.c | 24 ++++++++++++++++--------
> 1 file changed, 16 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/hwmon/dell-smm-hwmon.c b/drivers/hwmon/dell-smm-hwmon.c
> index f2221ca0aa7b..a677c8a4ef29 100644
> --- a/drivers/hwmon/dell-smm-hwmon.c
> +++ b/drivers/hwmon/dell-smm-hwmon.c
> @@ -1186,14 +1186,6 @@ static const struct i8k_fan_control_data i8k_fan_control_data[] = {
> };
>
> static struct dmi_system_id i8k_whitelist_fan_control[] __initdata = {
> - {
> - .ident = "Dell Precision 5530",
> - .matches = {
> - DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
> - DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Precision 5530"),
> - },
> - .driver_data = (void *)&i8k_fan_control_data[I8K_FAN_34A3_35A3],
> - },
> {
> .ident = "Dell Latitude 5480",
> .matches = {
> @@ -1218,6 +1210,22 @@ static struct dmi_system_id i8k_whitelist_fan_control[] __initdata = {
> },
> .driver_data = (void *)&i8k_fan_control_data[I8K_FAN_34A3_35A3],
> },
> + {
> + .ident = "Dell Precision 5530",
> + .matches = {
> + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
> + DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Precision 5530"),
> + },
> + .driver_data = (void *)&i8k_fan_control_data[I8K_FAN_34A3_35A3],
> + },
> + {
> + .ident = "Dell Precision 7510",
> + .matches = {
> + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
> + DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Precision 7510"),
> + },
> + .driver_data = (void *)&i8k_fan_control_data[I8K_FAN_34A3_35A3],
> + },
> { }
> };
>