2006-01-04 22:00:51

by Ben Collins

[permalink] [raw]
Subject: [PATCH 07/15] acpi: Add list of IBM R40 laptops to processor_power dmi table.

Signed-off-by: Ben Collins <[email protected]>

---

drivers/acpi/processor_idle.c | 67 +++++++++++++++++++++++++++++++----------
1 files changed, 51 insertions(+), 16 deletions(-)

883292d0b65189123df24f335b5705f98da9a6ed
diff --git a/drivers/acpi/processor_idle.c b/drivers/acpi/processor_idle.c
index 807b0df..552420e 100644
--- a/drivers/acpi/processor_idle.c
+++ b/drivers/acpi/processor_idle.c
@@ -95,22 +95,57 @@ static int set_max_cstate(struct dmi_sys
}

static struct dmi_system_id __initdata processor_power_dmi_table[] = {
- {set_max_cstate, "IBM ThinkPad R40e", {
- DMI_MATCH(DMI_BIOS_VENDOR,
- "IBM"),
- DMI_MATCH(DMI_BIOS_VERSION,
- "1SET60WW")},
- (void *)1},
- {set_max_cstate, "Medion 41700", {
- DMI_MATCH(DMI_BIOS_VENDOR,
- "Phoenix Technologies LTD"),
- DMI_MATCH(DMI_BIOS_VERSION,
- "R01-A1J")}, (void *)1},
- {set_max_cstate, "Clevo 5600D", {
- DMI_MATCH(DMI_BIOS_VENDOR,
- "Phoenix Technologies LTD"),
- DMI_MATCH(DMI_BIOS_VERSION,
- "SHE845M0.86C.0013.D.0302131307")},
+ { set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,"IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,"1SET60WW")}, (void *)1},
+ { set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,"IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,"1SET43WW") }, (void*)1},
+ { set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,"IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,"1SET45WW") }, (void*)1},
+ { set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,"IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,"1SET47WW") }, (void*)1},
+ { set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,"IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,"1SET50WW") }, (void*)1},
+ { set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,"IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,"1SET52WW") }, (void*)1},
+ { set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,"IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,"1SET55WW") }, (void*)1},
+ { set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,"IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,"1SET56WW") }, (void*)1},
+ { set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,"IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,"1SET59WW") }, (void*)1},
+ { set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,"IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,"1SET60WW") }, (void*)1},
+ { set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,"IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,"1SET61WW") }, (void*)1},
+ { set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,"IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,"1SET62WW") }, (void*)1},
+ { set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,"IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,"1SET64WW") }, (void*)1},
+ { set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,"IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,"1SET65WW") }, (void*)1},
+ { set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,"IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,"1SET68WW") }, (void*)1},
+ { set_max_cstate, "Medion 41700", {
+ DMI_MATCH(DMI_BIOS_VENDOR,"Phoenix Technologies LTD"),
+ DMI_MATCH(DMI_BIOS_VERSION,"R01-A1J")}, (void *)1},
+ { set_max_cstate, "Clevo 5600D", {
+ DMI_MATCH(DMI_BIOS_VENDOR,"Phoenix Technologies LTD"),
+ DMI_MATCH(DMI_BIOS_VERSION,"SHE845M0.86C.0013.D.0302131307")},
(void *)2},
{},
};
--
1.0.5


2006-01-05 03:47:47

by Dave Jones

[permalink] [raw]
Subject: Re: [PATCH 07/15] acpi: Add list of IBM R40 laptops to processor_power dmi table.

On Wed, Jan 04, 2006 at 05:00:25PM -0500, Ben Collins wrote:
> Signed-off-by: Ben Collins <[email protected]>

There's a variant of this in -mm already, (albeit with horked indentation)
Does your diff have all the same entries that one does ?
(If so, I prefer yours :)

This is also being tracked at http://bugme.osdl.org/show_bug.cgi?id=3549
Len seemed to have an objection against merging this, but if every distro
is carrying it anyway, it seems kinda pointless not to imo.

Dave

2006-01-05 05:28:25

by Andrew Morton

[permalink] [raw]
Subject: Re: [PATCH 07/15] acpi: Add list of IBM R40 laptops to processor_power dmi table.

Dave Jones <[email protected]> wrote:
>
> On Wed, Jan 04, 2006 at 05:00:25PM -0500, Ben Collins wrote:
> > Signed-off-by: Ben Collins <[email protected]>
>
> There's a variant of this in -mm already, (albeit with horked indentation)
> Does your diff have all the same entries that one does ?
> (If so, I prefer yours :)

Below.

> This is also being tracked at http://bugme.osdl.org/show_bug.cgi?id=3549
> Len seemed to have an objection against merging this, but if every distro
> is carrying it anyway, it seems kinda pointless not to imo.
>

I don't know what the problem is. I've been sitting on it since September
and have sent it five times, to no effect.


From: Thomas Rosner <[email protected]>

This adds all known BIOS versions of IBM R40e Laptops to the C2/C3
processor state blacklist and thus prevents them from crashing. Fixes Bug
#3549.

Implementation is probably overly verbose, but DMI_MATCH seems to give us
no choice.

Signed-off-by: Thomas Rosner <[email protected]>
Cc: <[email protected]>
Cc: "Brown, Len" <[email protected]>
Cc: Dave Jones <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
---

drivers/acpi/processor_idle.c | 115 ++++++++++++++++++++++++++++++++++++------
1 files changed, 101 insertions(+), 14 deletions(-)

diff -puN drivers/acpi/processor_idle.c~acpi-disable-c2-c3-for-_all_-ibm-r40e-laptops-for-2613-bug-3549 drivers/acpi/processor_idle.c
--- devel/drivers/acpi/processor_idle.c~acpi-disable-c2-c3-for-_all_-ibm-r40e-laptops-for-2613-bug-3549 2005-11-05 02:22:48.000000000 -0800
+++ devel-akpm/drivers/acpi/processor_idle.c 2005-11-05 02:22:48.000000000 -0800
@@ -95,23 +95,110 @@ static int set_max_cstate(struct dmi_sys
}

static struct dmi_system_id __initdata processor_power_dmi_table[] = {
+ /* The known versions of IBM R40e BIOS */
{set_max_cstate, "IBM ThinkPad R40e", {
- DMI_MATCH(DMI_BIOS_VENDOR,
- "IBM"),
- DMI_MATCH(DMI_BIOS_VERSION,
- "1SET60WW")},
- (void *)1},
+ DMI_MATCH(DMI_BIOS_VENDOR,
+ "IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,
+ "1SET32WW") },
+ (void*)1},
+ {set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,
+ "IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,
+ "1SET43WW") },
+ (void*)1},
+ {set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,
+ "IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,
+ "1SET45WW") },
+ (void*)1},
+ {set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,
+ "IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,
+ "1SET47WW") },
+ (void*)1},
+ {set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,
+ "IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,
+ "1SET50WW") },
+ (void*)1},
+ {set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,
+ "IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,
+ "1SET52WW") },
+ (void*)1},
+ {set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,
+ "IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,
+ "1SET55WW") },
+ (void*)1},
+ {set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,
+ "IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,
+ "1SET56WW") },
+ (void*)1},
+ {set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,
+ "IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,
+ "1SET59WW") },
+ (void*)1},
+ {set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,
+ "IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,
+ "1SET60WW")},
+ (void *)1},
+ {set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,
+ "IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,
+ "1SET61WW") },
+ (void*)1},
+ {set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,
+ "IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,
+ "1SET62WW") },
+ (void*)1},
+ {set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,
+ "IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,
+ "1SET64WW") },
+ (void*)1},
+ {set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,
+ "IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,
+ "1SET65WW") },
+ (void*)1},
+ {set_max_cstate, "IBM ThinkPad R40e", {
+ DMI_MATCH(DMI_BIOS_VENDOR,
+ "IBM"),
+ DMI_MATCH(DMI_BIOS_VERSION,
+ "1SET68WW") },
+ (void*)1},
+ /* Other laptops, same problem */
{set_max_cstate, "Medion 41700", {
- DMI_MATCH(DMI_BIOS_VENDOR,
- "Phoenix Technologies LTD"),
- DMI_MATCH(DMI_BIOS_VERSION,
- "R01-A1J")}, (void *)1},
+ DMI_MATCH(DMI_BIOS_VENDOR,
+ "Phoenix Technologies LTD"),
+ DMI_MATCH(DMI_BIOS_VERSION,
+ "R01-A1J")},
+ (void *)1},
{set_max_cstate, "Clevo 5600D", {
- DMI_MATCH(DMI_BIOS_VENDOR,
- "Phoenix Technologies LTD"),
- DMI_MATCH(DMI_BIOS_VERSION,
- "SHE845M0.86C.0013.D.0302131307")},
- (void *)2},
+ DMI_MATCH(DMI_BIOS_VENDOR,
+ "Phoenix Technologies LTD"),
+ DMI_MATCH(DMI_BIOS_VERSION,
+ "SHE845M0.86C.0013.D.0302131307")},
+ (void *)2},
{},
};

_

2006-01-05 05:34:11

by Dave Jones

[permalink] [raw]
Subject: Re: [PATCH 07/15] acpi: Add list of IBM R40 laptops to processor_power dmi table.

On Wed, Jan 04, 2006 at 09:27:51PM -0800, Andrew Morton wrote:
> Dave Jones <[email protected]> wrote:
> >
> > On Wed, Jan 04, 2006 at 05:00:25PM -0500, Ben Collins wrote:
> > > Signed-off-by: Ben Collins <[email protected]>
> >
> > There's a variant of this in -mm already, (albeit with horked indentation)
> > Does your diff have all the same entries that one does ?
> > (If so, I prefer yours :)
>
> Below.

Ok. The IDs seem to be the same. I'd vote to drop the -mm one and
go with Ben's variant which fixes the lindent trainwreck at the same time.

Dave

2006-01-05 05:46:56

by Andrew Morton

[permalink] [raw]
Subject: Re: [PATCH 07/15] acpi: Add list of IBM R40 laptops to processor_power dmi table.

Dave Jones <[email protected]> wrote:
>
> On Wed, Jan 04, 2006 at 09:27:51PM -0800, Andrew Morton wrote:
> > Dave Jones <[email protected]> wrote:
> > >
> > > On Wed, Jan 04, 2006 at 05:00:25PM -0500, Ben Collins wrote:
> > > > Signed-off-by: Ben Collins <[email protected]>
> > >
> > > There's a variant of this in -mm already, (albeit with horked indentation)
> > > Does your diff have all the same entries that one does ?
> > > (If so, I prefer yours :)
> >
> > Below.
>
> Ok. The IDs seem to be the same. I'd vote to drop the -mm one and
> go with Ben's variant which fixes the lindent trainwreck at the same time.
>

OK. But I'll keep the attributions as I had them, under the assumption
that they're more accurate than Ben's (which appear to be not at all ;))