2008-06-15 22:27:11

by maximilian attems

[permalink] [raw]
Subject: [PATCH] hdaps add support for various newer Lenovo thinkpads

adds R61, T61p, X61s, X61, Z61m, Z61p models to whitelist.

originally based on an Ubuntu patch that got it wrong,
the dmidecode output of the corresponding laptops
shows LENOVO as the manufacturer.
https://bugs.launchpad.net/ubuntu/+source/linux-source-2.6.22/+bug/133636

tested on X61s:
[ 184.893588] hdaps: inverting axis readings.
[ 184.893588] hdaps: LENOVO ThinkPad X61s detected.
[ 184.893588] input: hdaps as /class/input/input12
[ 184.924326] hdaps: driver successfully loaded.

original authors below on Cc.

Cc: Klaus S. Madsen <[email protected]>
Cc: Chuck Short <[email protected]>
Cc: Jean Delvare <[email protected]>
Cc: Tim Gardner <[email protected]>
Signed-off-by: maximilian attems <[email protected]>
---
drivers/hwmon/hdaps.c | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/drivers/hwmon/hdaps.c b/drivers/hwmon/hdaps.c
index 26df06f..50f2269 100644
--- a/drivers/hwmon/hdaps.c
+++ b/drivers/hwmon/hdaps.c
@@ -516,17 +516,23 @@ static struct dmi_system_id __initdata hdaps_whitelist[] = {
HDAPS_DMI_MATCH_NORMAL("IBM", "ThinkPad R51"),
HDAPS_DMI_MATCH_NORMAL("IBM", "ThinkPad R52"),
HDAPS_DMI_MATCH_INVERT("LENOVO", "ThinkPad R61i"),
+ HDAPS_DMI_MATCH_INVERT("LENOVO", "ThinkPad R61"),
HDAPS_DMI_MATCH_INVERT("IBM", "ThinkPad T41p"),
HDAPS_DMI_MATCH_NORMAL("IBM", "ThinkPad T41"),
HDAPS_DMI_MATCH_INVERT("IBM", "ThinkPad T42p"),
HDAPS_DMI_MATCH_NORMAL("IBM", "ThinkPad T42"),
HDAPS_DMI_MATCH_NORMAL("IBM", "ThinkPad T43"),
HDAPS_DMI_MATCH_INVERT("LENOVO", "ThinkPad T60"),
+ HDAPS_DMI_MATCH_INVERT("LENOVO", "ThinkPad T61p"),
HDAPS_DMI_MATCH_INVERT("LENOVO", "ThinkPad T61"),
HDAPS_DMI_MATCH_NORMAL("IBM", "ThinkPad X40"),
HDAPS_DMI_MATCH_NORMAL("IBM", "ThinkPad X41"),
HDAPS_DMI_MATCH_INVERT("LENOVO", "ThinkPad X60"),
+ HDAPS_DMI_MATCH_INVERT("LENOVO", "ThinkPad X61s"),
+ HDAPS_DMI_MATCH_INVERT("LENOVO", "ThinkPad X61"),
HDAPS_DMI_MATCH_NORMAL("IBM", "ThinkPad Z60m"),
+ HDAPS_DMI_MATCH_INVERT("LENOVO", "ThinkPad Z61m"),
+ HDAPS_DMI_MATCH_INVERT("LENOVO", "ThinkPad Z61p"),
{ .ident = NULL }
};

--
1.5.5.3


2008-06-30 23:15:18

by Andrew Morton

[permalink] [raw]
Subject: Re: [PATCH] hdaps add support for various newer Lenovo thinkpads

On Mon, 16 Jun 2008 00:26:48 +0200
maximilian attems <[email protected]> wrote:

> adds R61, T61p, X61s, X61, Z61m, Z61p models to whitelist.
>
> originally based on an Ubuntu patch that got it wrong,
> the dmidecode output of the corresponding laptops
> shows LENOVO as the manufacturer.
> https://bugs.launchpad.net/ubuntu/+source/linux-source-2.6.22/+bug/133636
>
> tested on X61s:
> [ 184.893588] hdaps: inverting axis readings.
> [ 184.893588] hdaps: LENOVO ThinkPad X61s detected.
> [ 184.893588] input: hdaps as /class/input/input12
> [ 184.924326] hdaps: driver successfully loaded.
>
> original authors below on Cc.

I enhanced the changelog a little so that it shows what we're actually
fixing.

> Cc: Klaus S. Madsen <[email protected]>
> Cc: Chuck Short <[email protected]>
> Cc: Jean Delvare <[email protected]>
> Cc: Tim Gardner <[email protected]>
> Signed-off-by: maximilian attems <[email protected]>
> ---
> drivers/hwmon/hdaps.c | 6 ++++++
> 1 files changed, 6 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/hwmon/hdaps.c b/drivers/hwmon/hdaps.c
> index 26df06f..50f2269 100644
> --- a/drivers/hwmon/hdaps.c
> +++ b/drivers/hwmon/hdaps.c
> @@ -516,17 +516,23 @@ static struct dmi_system_id __initdata hdaps_whitelist[] = {
> HDAPS_DMI_MATCH_NORMAL("IBM", "ThinkPad R51"),
> HDAPS_DMI_MATCH_NORMAL("IBM", "ThinkPad R52"),
> HDAPS_DMI_MATCH_INVERT("LENOVO", "ThinkPad R61i"),
> + HDAPS_DMI_MATCH_INVERT("LENOVO", "ThinkPad R61"),
> HDAPS_DMI_MATCH_INVERT("IBM", "ThinkPad T41p"),
> HDAPS_DMI_MATCH_NORMAL("IBM", "ThinkPad T41"),
> HDAPS_DMI_MATCH_INVERT("IBM", "ThinkPad T42p"),
> HDAPS_DMI_MATCH_NORMAL("IBM", "ThinkPad T42"),
> HDAPS_DMI_MATCH_NORMAL("IBM", "ThinkPad T43"),
> HDAPS_DMI_MATCH_INVERT("LENOVO", "ThinkPad T60"),
> + HDAPS_DMI_MATCH_INVERT("LENOVO", "ThinkPad T61p"),
> HDAPS_DMI_MATCH_INVERT("LENOVO", "ThinkPad T61"),
> HDAPS_DMI_MATCH_NORMAL("IBM", "ThinkPad X40"),
> HDAPS_DMI_MATCH_NORMAL("IBM", "ThinkPad X41"),
> HDAPS_DMI_MATCH_INVERT("LENOVO", "ThinkPad X60"),
> + HDAPS_DMI_MATCH_INVERT("LENOVO", "ThinkPad X61s"),
> + HDAPS_DMI_MATCH_INVERT("LENOVO", "ThinkPad X61"),
> HDAPS_DMI_MATCH_NORMAL("IBM", "ThinkPad Z60m"),
> + HDAPS_DMI_MATCH_INVERT("LENOVO", "ThinkPad Z61m"),
> + HDAPS_DMI_MATCH_INVERT("LENOVO", "ThinkPad Z61p"),
> { .ident = NULL }
> };
>

Thanks, I'll queue this for 2.6.26 and will also recommend it for a
2.6.25.x backport.