ASUS M6800N: processor has only C1
Subsystems (2)
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hello,
I've some problems with my new ASUS laptop with the latest BIOS 0205A from
http://fsai.fh-trier.de/~gielj/M6800N/
As from the title, when I insert the ACPI 'processor' module, I got this error:
=====
acpi_processor-2210 [188] acpi_processor_get_inf: Invalid PBLK length [7]
ACPI: Processor [CPU1] (supports C1)
=====
while all the entry in /proc/acpi/processor/CPU1/ seem there:
=====
gismo:/proc/acpi/processor/CPU1# cat info processor id: 2 acpi id: 1927985 bus mastering control: no power management: no throttling control: no limit interface: no
gismo:/proc/acpi/processor/CPU1# cat limit <not supported>
gismo:/proc/acpi/processor/CPU1# cat power
active state: C47514253
default state: C26214683
bus master activity: 00010000
states:
C1: promotion[--] demotion[C23360] latency[000]
usage[134972534]
C2: <not supported>
C3: <not supported>gismo:/proc/acpi/processor/CPU1# cat throttling Could not determine current throttling state. =====
I already hacked my DSDT (attached in .dsl format), but the last tests I made on 2.6.3 + ACPI 20040220 and 'ACPI DSDT in initrd' gave the same error (attached 'dmesg' output).
Possible solutions?
Thx, bye,
Gismo / Luca
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)
Comment: Using GnuPG with Debian - http://enigmail.mozdev.org
iD8DBQFARFn7VAp7Xm10JmkRAnJLAJsHNSajA3/hYGBINjOmgJPJC86/uACfa1BJ wpr5JQ8eix6oM7zhmht4Yrw=
=YMRS
-----END PGP SIGNATURE-----
Quoted 5 lines · Luca Capello
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1Hello,
Quoted 7 lines
I've some problems with my new ASUS laptop with the latest BIOS 0205A from
http://fsai.fh-trier.de/~gielj/M6800N/As from the title, when I insert the ACPI 'processor' module, I got this error:
=====
acpi_processor-2210 [188]acpi_processor_get_inf: Invalid PBLK length [7]
ACPI: Processor [CPU1] (supports C1)
=====
Perhaps
http://bugzilla.kernel.org/show_bug.cgi?id=1958
may help you.
Cheers,
Signature · 11 lines
Bruno Ducrot -- Which is worse: ignorance or apathy? -- Don't know. Don't care. ------------------------------------------------------- SF.Net is sponsored by: Speed Start Your Linux Apps Now. Build and deploy apps & Web services for Linux with a free DVD software kit from IBM. Click Now! http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hello,
Quoted 3 lines · Bruno Ducrot
Perhaps
http://bugzilla.kernel.org/show_bug.cgi?id=1958
may help you.
the patch at that bug failed on 2.6.4-rc1 + ACPI 20040220:
=====
gismo:/usr/src/linux-2.6.4-rc1-test# patch -p1 < ../kernel/v2.6/bug1958-20040127.processor.c.diff patching file drivers/acpi/processor.c Hunk #1 FAILED at 3. Hunk #2 succeeded at 299 (offset 1 line). Hunk #3 succeeded at 407 (offset 1 line). Hunk #4 succeeded at 424 (offset 1 line). Hunk #5 succeeded at 441 (offset 1 line). Hunk #6 succeeded at 517 (offset 1 line). Hunk #7 succeeded at 546 (offset 1 line). Hunk #8 succeeded at 851 (offset 1 line). Hunk #9 succeeded at 890 (offset 1 line). Hunk #10 succeeded at 949 (offset 1 line). Hunk #11 succeeded at 1016 (offset 1 line). Hunk #12 succeeded at 2145 (offset 595 lines). Hunk #13 succeeded at 2601 (offset 581 lines). 1 out of 13 hunks FAILED -- saving rejects to file drivers/acpi/processor.c.rej gismo:/usr/src/linux-2.6.4-rc1-test# =====
This is not a big problem, the FAILED is cause by the fact that in the new 'processor.c' at line 3 there's even the
* Copyright (C) 2004 Dominik Brodowski <[email protected]>
which wasn't present in 2.6.1.
On the other hand, I got these error when compiling:
======
CC [M] drivers/acpi/processor.odrivers/acpi/processor.c: In function `acpi_processor_power_activate':drivers/acpi/processor.c:311: error: structure has no member named type' drivers/acpi/processor.c:315: error: structure has no member named type' drivers/acpi/processor.c:321: error: structure has no member named type' drivers/acpi/processor.c: In function acpi_processor_idle':drivers/acpi/processor.c:409: error: structure has no member named type' drivers/acpi/processor.c: In function acpi_processor_set_power_policy':drivers/acpi/processor.c:548: error: structure has no member named count' drivers/acpi/processor.c:549: error: structure has no member named type' drivers/acpi/processor.c: In function `acpi_processor_get_power_info_cst':drivers/acpi/processor.c:668: error: structure has no member named `count' drivers/acpi/processor.c:691: error: dereferencing pointer to incomplete type drivers/acpi/processor.c:692: error: dereferencing pointer to incomplete type drivers/acpi/processor.c:695: error: dereferencing pointer to incomplete type drivers/acpi/processor.c:696: error: dereferencing pointer to incomplete type drivers/acpi/processor.c:703: error: structure has no member named type' drivers/acpi/processor.c:718: error: structure has no member named type' drivers/acpi/processor.c:818: error: structure has no member named count' drivers/acpi/processor.c:818: error: structure has no member named count' drivers/acpi/processor.c:819: error: structure has no member named count' drivers/acpi/processor.c:823: error: structure has no member named count' drivers/acpi/processor.c:825: error: structure has no member named count' drivers/acpi/processor.c:828: error: structure has no member named count' drivers/acpi/processor.c: In function `acpi_processor_get_power_info_fadt':drivers/acpi/processor.c:892: error: structure has no member named type' drivers/acpi/processor.c:895: error: structure has no member named count' drivers/acpi/processor.c:951: error: structure has no member named type' drivers/acpi/processor.c:955: error: structure has no member named count' drivers/acpi/processor.c: In function `acpi_processor_get_power_info':drivers/acpi/processor.c:979: error: structure has no member named type' drivers/acpi/processor.c:991: error: structure has no member named type' drivers/acpi/processor.c:992: error: structure has no member named count' drivers/acpi/processor.c:1018: error: structure has no member named count' drivers/acpi/processor.c: In function `acpi_processor_power_seq_show':drivers/acpi/processor.c:2147: error: structure has no member named count' drivers/acpi/processor.c:2150: error: structure has no member named type' drivers/acpi/processor.c: In function `acpi_processor_add':drivers/acpi/processor.c:2603: error: structure has no member named `count' make[3]: *** [drivers/acpi/processor.o] Error 1
make[2]: *** [drivers/acpi] Error 2
make[1]: *** [drivers] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.4-rc1-test'
make: *** [stamp-build] Error 2 gismo:/usr/src/linux-2.6.4-rc1-test#
=====
Should I wait for a patch against 2.6.4 + latest ACPI or should I try the old 2.6.1?
BTW, 2.6.4 + ACPI 20040220 has the same problem as the older one, I mean, same error on ACPI and only C1 :-(
Thx, bye,
Gismo / Luca
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)
Comment: Using GnuPG with Debian - http://enigmail.mozdev.org
iD8DBQFARIFpVAp7Xm10JmkRAp+LAJ9xUd96H62JjkIRropA0XCjVMTebACbBqil qa7YtCuawPalRAehnh3hHDs=
=oKSv
-----END PGP SIGNATURE-----
-------------------------------------------------------
SF.Net is sponsored by: Speed Start Your Linux Apps Now. Build and deploy apps & Web services for Linux with a free DVD software kit from IBM. Click Now!
http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hello,
Quoted 49 lines · Luca Capello
On the other hand, I got these error when compiling:
======
CC [M]drivers/acpi/processor.odrivers/acpi/processor.c: In function `acpi_processor_power_activate':drivers/acpi/processor.c:311: error: structure has no member namedtype' drivers/acpi/processor.c:315: error: structure has no member namedtype'drivers/acpi/processor.c:321: error: structure has no member namedtype' drivers/acpi/processor.c: In functionacpi_processor_idle':drivers/acpi/processor.c:409: error: structure has no member namedtype' drivers/acpi/processor.c: In functionacpi_processor_set_power_policy':drivers/acpi/processor.c:548: error: structure has no member namedcount' drivers/acpi/processor.c:549: error: structure has no member namedtype'drivers/acpi/processor.c: In function `acpi_processor_get_power_info_cst':drivers/acpi/processor.c:668: error: structure has no member named `count'drivers/acpi/processor.c:691: error: dereferencing pointer to incomplete typedrivers/acpi/processor.c:692: error: dereferencing pointer to incomplete typedrivers/acpi/processor.c:695: error: dereferencing pointer to incomplete typedrivers/acpi/processor.c:696: error: dereferencing pointer to incomplete typedrivers/acpi/processor.c:703: error: structure has no member namedtype' drivers/acpi/processor.c:718: error: structure has no member namedtype'drivers/acpi/processor.c:818: error: structure has no member namedcount' drivers/acpi/processor.c:818: error: structure has no member namedcount'drivers/acpi/processor.c:819: error: structure has no member namedcount' drivers/acpi/processor.c:823: error: structure has no member namedcount'drivers/acpi/processor.c:825: error: structure has no member namedcount' drivers/acpi/processor.c:828: error: structure has no member namedcount'drivers/acpi/processor.c: In function `acpi_processor_get_power_info_fadt':drivers/acpi/processor.c:892: error: structure has no member namedtype' drivers/acpi/processor.c:895: error: structure has no member namedcount'drivers/acpi/processor.c:951: error: structure has no member namedtype' drivers/acpi/processor.c:955: error: structure has no member namedcount'drivers/acpi/processor.c: In function `acpi_processor_get_power_info':drivers/acpi/processor.c:979: error: structure has no member namedtype' drivers/acpi/processor.c:991: error: structure has no member namedtype'drivers/acpi/processor.c:992: error: structure has no member namedcount' drivers/acpi/processor.c:1018: error: structure has no member namedcount'drivers/acpi/processor.c: In function `acpi_processor_power_seq_show':drivers/acpi/processor.c:2147: error: structure has no member namedcount' drivers/acpi/processor.c:2150: error: structure has no member namedtype'drivers/acpi/processor.c: In function `acpi_processor_add':drivers/acpi/processor.c:2603: error: structure has no member named `count' make[3]: *** [drivers/acpi/processor.o] Error 1
make[2]: *** [drivers/acpi] Error 2
make[1]: *** [drivers] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.4-rc1-test'
make: *** [stamp-build] Error 2 gismo:/usr/src/linux-2.6.4-rc1-test#
=====
Quoted 2 lines
Should I wait for a patch against 2.6.4 + latest ACPI or should I try the old 2.6.1?
well, I've tried on the old 2.6.1 (w/o any ACPI patches, as I don't know where I could find them) and I got the same errors:
=====
CC [M] drivers/acpi/processor.odrivers/acpi/processor.c: In function `acpi_processor_power_activate':drivers/acpi/processor.c:311: error: structure has no member named type' drivers/acpi/processor.c:315: error: structure has no member named type' drivers/acpi/processor.c:321: error: structure has no member named type' drivers/acpi/processor.c: In function acpi_processor_idle':drivers/acpi/processor.c:409: error: structure has no member named type' drivers/acpi/processor.c: In function acpi_processor_set_power_policy':drivers/acpi/processor.c:548: error: structure has no member named count' drivers/acpi/processor.c:549: error: structure has no member named type' drivers/acpi/processor.c: In function `acpi_processor_get_power_info_cst':drivers/acpi/processor.c:668: error: structure has no member named `count' drivers/acpi/processor.c:691: error: dereferencing pointer to incomplete type drivers/acpi/processor.c:692: error: dereferencing pointer to incomplete type drivers/acpi/processor.c:695: error: dereferencing pointer to incomplete type drivers/acpi/processor.c:696: error: dereferencing pointer to incomplete type drivers/acpi/processor.c:703: error: structure has no member named type' drivers/acpi/processor.c:718: error: structure has no member named type' drivers/acpi/processor.c:818: error: structure has no member named count' drivers/acpi/processor.c:818: error: structure has no member named count' drivers/acpi/processor.c:819: error: structure has no member named count' drivers/acpi/processor.c:823: error: structure has no member named count' drivers/acpi/processor.c:825: error: structure has no member named count' drivers/acpi/processor.c:828: error: structure has no member named count' drivers/acpi/processor.c: In function `acpi_processor_get_power_info_fadt':drivers/acpi/processor.c:892: error: structure has no member named type' drivers/acpi/processor.c:895: error: structure has no member named count' drivers/acpi/processor.c:951: error: structure has no member named type' drivers/acpi/processor.c:955: error: structure has no member named count' drivers/acpi/processor.c: In function `acpi_processor_get_power_info':drivers/acpi/processor.c:979: error: structure has no member named type' drivers/acpi/processor.c:991: error: structure has no member named type' drivers/acpi/processor.c:992: error: structure has no member named count' drivers/acpi/processor.c:1018: error: structure has no member named count' drivers/acpi/processor.c: In function `acpi_processor_power_seq_show':drivers/acpi/processor.c:1553: error: structure has no member named count' drivers/acpi/processor.c:1556: error: structure has no member named type' drivers/acpi/processor.c: In function `acpi_processor_add':drivers/acpi/processor.c:2023: error: structure has no member named `count' make[3]: *** [drivers/acpi/processor.o] Error 1
make[2]: *** [drivers/acpi] Error 2
make[1]: *** [drivers] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.1'
make: *** [stamp-build] Error 2
gismo:/usr/src/linux-2.6.1#
=====
So I can suppose this is not a kernel 2.6.1 or 2.6.4 problem, but something
other: am I right?
Thx, bye,
Gismo / Luca
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)
Comment: Using GnuPG with Debian - http://enigmail.mozdev.org
iD8DBQFARJ2NVAp7Xm10JmkRApIIAJ47/P1I3b+aJvWBiHOwD/naXGhLUwCfSUPb 194T+dov+lgpkxq+Ly2g3Kk=
=JBCN
-----END PGP SIGNATURE-----
-------------------------------------------------------
SF.Net is sponsored by: Speed Start Your Linux Apps Now. Build and deploy apps & Web services for Linux with a free DVD software kit from IBM. Click Now!
http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click
Quoted 4 lines · Luca Capello
Hash: SHA1
Hello,
Thanks. Sound like that I send only an half patch, sorry.
include/acpi/processor.h +12 -0
@@ -15,6 +15,16 @@/* Power Management */ +struct acpi_power_register { +u8 descriptor; +u16 length; +u8 space_id; +u8 bit_width; +u8 bit_offset; +u8 reserved; +u64 address; +} __attribute__ ((packed)); +struct acpi_processor_cx_policy {u32 count;int state;
@@ -32,6 +42,7 @@ struct acpi_processor_cx {u32 latency;u32 latency_ticks;u32 power; +u32 type;u32 usage;struct acpi_processor_cx_policy promotion;struct acpi_processor_cx_policy demotion;
@@ -40,6 +51,7 @@ struct acpi_processor_cx {struct acpi_processor_power {int state;int default_state; +int count;u32 bm_activity;struct acpi_processor_cx states[ACPI_PROCESSOR_MAX_POWER ]; };
Signature · 11 lines
Bruno Ducrot -- Which is worse: ignorance or apathy? -- Don't know. Don't care. ------------------------------------------------------- SF.Net is sponsored by: Speed Start Your Linux Apps Now. Build and deploy apps & Web services for Linux with a free DVD software kit from IBM. Click Now! http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hello,
Quoted 1 line · Bruno Ducrot
Thanks. Sound like that I send only an half patch, sorry.
nothing changed, well, I got one more error:
=====
acpi_processor-2490 [29] acpi_processor_get_inf: Invalid PBLK length [7] acpi_processor-0654 [31] acpi_processor_get_pow: Invalid _CST data
ACPI: Processor [CPU1] (supports C1)
=====
I tried this on kernel 2.6.4-rc1 + ACPI 20040220 with the original DSDT.
I tried to compile the same kernel with 'ACPI DSDT in initrd' patch, but after the patch applied with some hunks (just one failed in a comment section), I got an error:
=====
LD init/built-in.o
LD .tmp_vmlinux1
init/built-in.o(.init.text+0x347f): In function `populate_rootfs':
: undefined reference to dsdt_start' init/built-in.o(.init.text+0x3546): In function populate_rootfs':
: undefined reference to dsdt_start' drivers/built-in.o(.text+0x869e): In function acpi_os_table_override':
: undefined reference to dsdt_start' drivers/built-in.o(.text+0x86b0): In function acpi_os_table_override':
: undefined reference to dsdt_start' drivers/built-in.o(.text+0x2933e): In function acpi_tb_table_override':
: undefined reference to dsdt_start' drivers/built-in.o(.text+0x2934f): more undefined references to dsdt_start' follow make[1]: *** [.tmp_vmlinux1] Error 1
make[1]: Leaving directory `/usr/src/linux-2.6.4-rc1.processor-cst.acpi-initrd'
make: *** [stamp-build] Error 2 gismo:/usr/src/linux-2.6.4-rc1.processor-cst.acpi-initrd#
=====
Thx, bye,
Gismo / Luca
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)
Comment: Using GnuPG with Debian - http://enigmail.mozdev.org
iD8DBQFARj14VAp7Xm10JmkRAnKCAJ0QkEsEPaWW/6K/dPWd2erkzllmeACdEJXg Jfd//ZiKf50KkgyEQPFRH2A=
=jPlO
-----END PGP SIGNATURE-----
-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
Quoted 5 lines · Luca Capello
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1Hello,
Quoted 9 lines
Quoted 1 line · Bruno Ducrot
Thanks. Sound like that I send only an half patch, sorry.
nothing changed, well, I got one more error:
=====
acpi_processor-2490 [29]acpi_processor_get_inf: Invalid PBLK length [7] acpi_processor-0654 [31]acpi_processor_get_pow: Invalid_CSTdata
ACPI: Processor [CPU1] (supports C1)
=====
Could you please try:
drivers/acpi/processor.c +2 -2
@@ -649,8 +649,8 @@ acpi_processor_get_power_info_cst ( count = cst->package.elements[0 ].integer.value; -/* There must be at least 2 power states. */ -if (count <=1 || count != cst->package.count -1 ) { +/* There must be at least one power state (some bios forgot C1), and validate count */ +if (count <1 || count != cst->package.count -1 ) {ACPI_DEBUG_PRINT ((ACPI_DB_ERROR ,"Invalid _CST data\n" )); status = -EFAULT ; goto end;
I think also that the bios will only allow C2, not C3 nor C4 if you are on AC.
Could you then try on battery also? Note that I have not implemented yet the reevaluation of _CST in case of AC/battery switch...
Signature · 11 lines
Bruno Ducrot -- Which is worse: ignorance or apathy? -- Don't know. Don't care. ------------------------------------------------------- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
On Tue, Mar 02, 2004 at 10:55:09AM +0100, Luca Capello wrote:
BTW, I tried to recompile your dsl with iasl version 20040220.
Since it has:
Processor (CPU1, 0x01, 0x00000410, 0x07)
I expected that the compilation failed because of the length of 7, or at least a warning. But threre was nothing. Therefore I consider that iasl break ACPI 2.0c, 16.2.3.3.1.17 for the definition of the ASL ProcessorTerm token.
Of course, that is only a minor issue, but well, since there were some bios developper documentation broken in that regard, it should be fine to get at least a warning.
Bob, could you please add this check?
Thanks,
Signature · 11 lines
Bruno Ducrot -- Which is worse: ignorance or apathy? -- Don't know. Don't care. ------------------------------------------------------- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
Quoted 15 lines · Luca Capello
gismo:/proc/acpi/processor/CPU1# cat power active state: C47514253 default state: C26214683 bus master activity: 00010000 states: C1: promotion[--] demotion[C23360] latency[000] usage[134972534] C2: <not supported> C3: <not supported>gismo:/proc/acpi/processor/CPU1# cat throttling Could not determine current throttling state. =====
Quoted 6 lines
I already hacked my DSDT (attached in .dsl format), but the last tests I made on 2.6.3 + ACPI 20040220 and 'ACPI DSDT in initrd' gave the same error (attached 'dmesg' output).
Possible solutions?
I had the same problem.
Your machine supports the C4 state.
Change the P_BLK in your DSDT to 0x06
e.g.:
Processor (\_PR.CPU0, 0x01, 0x00001010, 0x07)
to:
Processor (\_PR.CPU0, 0x01, 0x00001010, 0x06)
or use the patch from Pavel, posted on the 28.02.2004, 17:10.
Unfortunately this won't enable the C4 state if you have one. What do mainters say about supporting Cn processor states in the future?
-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
Quoted 28 lines · Thomas Renninger
Quoted 15 lines · Luca Capello
gismo:/proc/acpi/processor/CPU1# cat power active state: C47514253 default state: C26214683 bus master activity: 00010000 states: C1: promotion[--] demotion[C23360] latency[000] usage[134972534] C2: <not supported> C3: <not supported>gismo:/proc/acpi/processor/CPU1# cat throttling Could not determine current throttling state. =====Quoted 6 lines
I already hacked my DSDT (attached in .dsl format), but the last tests I made on 2.6.3 + ACPI 20040220 and 'ACPI DSDT in initrd' gave the same error (attached 'dmesg' output).
Possible solutions?
I had the same problem.
Your machine supports the C4 state.
Change theP_BLKin your DSDT to0x06e.g.:
Quoted 8 lines
Processor (\_PR.CPU0, 0x01, 0x00001010, 0x07) to: Processor (\_PR.CPU0, 0x01, 0x00001010, 0x06)or use the patch from Pavel, posted on the 28.02.2004, 17:10.
Unfortunately this won't enable the C4 state if you have one. What do mainters say about supporting Cn processor states in the future?
I am pretty sure this message will come up more often in future.
Could it be that new mobile Intel processors support the C4 state -> therefore P_BLK = 0x07?
Pavel's patch is a workaround, setting P_BLK back to 6, but isn't it worth a critical bug for supporting Cn states, as only supporting C0-C3 states offends the specification?
Thomas
-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
Quoted 1 line · Thomas Renninger
or use the patch from Pavel, posted on the 28.02.2004, 17:10.
Sorry haven't read the whole thread...
-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hello,
drivers/acpi/processor.c acpi_processor_get_power_info_cst ( · line 652
Quoted 11 lines · Bruno Ducrot
Could you please try:
drivers/acpi/processor.c +1
-2@@ -649,8 +649,8 @@ acpi_processor_get_power_info_cst ( count = cst->package.elements[0 ].integer.value; -/* There must be at least 2 power states. */ -if (count <=1 || count != cst->package.count -1 ) { +/* There must be at least one power state (some bios forgot C1), and
validate count */
drivers/acpi/processor.c acpi_processor_get_power_info_cst ( · line 656
Quoted 4 lines
drivers/acpi/processor.c +1
-0+if (count <1 || count != cst->package.count -1 ) {ACPI_DEBUG_PRINT ((ACPI_DB_ERROR ,"Invalid _CST data\n" )); status = -EFAULT ; goto end;
no problem, I forgot to advise you that I can make all the necessary tests to bring my new laptop to a completely ACPI working system :-)
Quoted 1 line
I think also that the bios will only allow C2, not C3 nor C4 if you are on AC.
You're right, but even on battery I get only C1 & C2 (as from the attached).
Quoted 2 lines
Could you then try on battery also? Note that I have not implemented yet the reevaluation of
_CSTin case of AC/battery switch...
As above, it doesn't matter if I'm on battery or on AC: it's the same, but anyway I have no more the _CST error message, but only the PBLK length one.
Thx, bye,
Gismo / Luca
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)
Comment: Using GnuPG with Debian - http://enigmail.mozdev.org
iD8DBQFARzTnVAp7Xm10JmkRAo/2AJ93Hek8RsyZvF2hlrVjgAdVAsWSsACeILws mLV3QeCgx3/wbW6onD3ZX8k=
=Mhm+
-----END PGP SIGNATURE-----
Quoted 5 lines · Luca Capello
Hello,
no problem, I forgot to advise you that I can make all the necessary tests to bring my new laptop to a completely ACPI working system :-)
Thanks!
Quoted 3 lines
Quoted 2 lines
I think also that the bios will only allow C2, not C3 nor C4 if you are on AC.
You're right, but even on battery I get only C1 & C2 (as from the attached).
Well, there is a stupid bug, I guess.
drivers/acpi/processor.c +2 -5
@@ -666,7 +666,7 @@ acpi_processor_get_power_info_cst (/* Get all power states */ /* Note that C0 and C1 are filled already by our caller. */ - pr->power.count =2 ; + pr->power.count =1 ;for (i =1 ; i <= count; i++) {union acpi_object *element;union acpi_object *obj;
@@ -816,13 +816,10 @@ acpi_processor_get_power_info_cst (/* All check done. Register this power state. */ cx.valid =1 ; cx.latency_ticks =US_TO_PM_TIMER_TICKS (cx.latency); -memcpy (&(pr->power.states[pr->power.count]), &cx,sizeof (cx)); (pr->power.count)++; +memcpy (&(pr->power.states[pr->power.count]), &cx,sizeof (cx)); } -/* adjust count. */ - (pr->power.count)--; -ACPI_DEBUG_PRINT ((ACPI_DB_INFO ,"Found %d power states\n" , pr->power.count));/* Validate number of power states */
include/acpi/processor.h +1 -1
@@ -5,7 +5,7 @@#define ACPI_PROCESSOR_BUSY_METRIC 10 -#define ACPI_PROCESSOR_MAX_POWER ACPI_C_STATE_COUNT +#define ACPI_PROCESSOR_MAX_POWER 8#define ACPI_PROCESSOR_MAX_C2_LATENCY 100#define ACPI_PROCESSOR_MAX_C3_LATENCY 1000
Signature · 11 lines
Bruno Ducrot -- Which is worse: ignorance or apathy? -- Don't know. Don't care. ------------------------------------------------------- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hello,
Quoted 4 lines · Bruno Ducrot
Quoted 2 lines
no problem, I forgot to advise you that I can make all the necessary tests to bring my new laptop to a completely ACPI working system :-)
Thanks!
your welcome :-)
BTW 1: I forgot to advise you that I'm using again kernel 2.6.3 + ACPI 20040220
+ ACPI DSDT in initrd patch (from http://gaugusch.at/kernel.shtml) and a modified DSDT (available from http://fsai.fh-trier.de/~gielj/M6800N/), which fixes the battery status problem.
BTW 2: should I update my tests even on the kernel bug page? IMHO you should update your second patch (you posted 20040304 at 12:12).
Quoted 5 lines
Quoted 3 lines
Quoted 1 line
I think also that the bios will only allow C2, not C3 nor C4 if you are on AC.
You're right, but even on battery I get only C1 & C2 (as from the attached).
Well, there is a stupid bug, I guess.
on the above 2.6.3 there're no changes, always C1 & C2 in battery mode and on AC. The same behaviour on 2.6.4-rc1 + ACPI 20040220 + your patches.
Thx, bye,
Gismo / Luca
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)
Comment: Using GnuPG with Debian - http://enigmail.mozdev.org
iD8DBQFASJ/IVAp7Xm10JmkRAt0RAJ4s6qv9ldZlSVxPy4O9ARlPJ2qKfACeIrI9 RQZcQ8dHCAHV9DLeSLFxE80=
=FEbt
-----END PGP SIGNATURE-----
-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hello,
Quoted 8 lines · Thomas Renninger
I had the same problem.
Your machine supports the C4 state.
Change theP_BLKin your DSDT to0x06e.g.:
Processor (\_PR.CPU0, 0x01, 0x00001010, 0x07) to: Processor (\_PR.CPU0, 0x01, 0x00001010, 0x06)
with all Bruno's patches in this thread and if I change in my DSDT
=====
Scope (\_PR)
{
- - Processor (CPU1, 0x01, 0x00000410, 0x07)
+ Processor (CPU1, 0x01, 0x00000410, 0x06)
{
Method (_CST, 0, NotSerialized)
{=====
I get
=====
gismo:/# dmesg | grep Processor ACPI: Processor [CPU1] (supports C1 C2, 8 throttling states)
gismo:/# cat /proc/acpi/processor/CPU1/info processor id: 0 acpi id: 1 bus mastering control: yes power management: yes throttling control: yes limit interface: yes
gismo:/# cat /proc/acpi/processor/CPU1/limit active limit: P0:T0 user limit: P0:T0 thermal limit: P0:T0
gismo:/# cat /proc/acpi/processor/CPU1/power active state: C2 default state: C1 bus master activity: 00000000 states: C1 [1]: promotion[C2] demotion[--] latency[000] usage[00000010] *C2 [2]: promotion[--] demotion[C1] latency[001] usage[00475240]
gismo:/# cat /proc/acpi/processor/CPU1/throttling
state count: 8
active state: T0
states:
*T0: 00%
T1: 12%
T2: 25%
T3: 37%
T4: 50%
T5: 62%
T6: 75%
T7: 87%
=====Quoted 1 line
or use the patch from Pavel, posted on the 28.02.2004, 17:10.
With Pavel's patch (posted 20040228 at 17:10) I get the same results.
Again the same results if I don't apply Bruno's patches about _CST methods for C4, with the exception of
=====
@gismo:/$ cat /proc/acpi/processor/CPU1/power active state: C2 default state: C1 bus master activity: 00000000 states: C1: promotion[C2] demotion[--] latency[000] usage[00050830] *C2: promotion[--] demotion[C1] latency[099] usage[00350099] C3: <not supported> =====
I re-read the thread 'ACPI C4 support' where Pavel posted his patch to allow 'pblk_length' of 7. I'm not an expert not a programmer, but from what I had read, it seems that:
- - Pavel's patch could be a good workaround, but Andrew Grover wouldn't avoid it
- - 'pblk_length' can have only 0 or 6 (7 is a bad value)
- - 'iasl' compiler (win32/20040220 and linux/20030918) doesn't recognize 'pblk_length' of 7 as a bad value (neither as a warning)
Now, my /simple/ question: should I modify my DSDT (as in the first case) or use Pavel's patch (as in the second) to avoid the 'pblk_length' error?
Thx, bye,
Gismo / Luca
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)
Comment: Using GnuPG with Debian - http://enigmail.mozdev.org
iD4DBQFASL21VAp7Xm10JmkRAqtyAJihn4lDORPlekXeHzTJL8TfZB0YAJsE6iki DGM7jSfqkWAufDF82/Q8ig==
=gDrQ
-----END PGP SIGNATURE-----
-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
Quoted 8 lines · Luca Capello
Quoted 6 lines
Quoted 4 lines
Quoted 2 lines
I think also that the bios will only allow C2, not C3 nor C4 if you are on AC.
You're right, but even on battery I get only C1 & C2 (as from the attached).
Well, there is a stupid bug, I guess.
on the above 2.6.3 there're no changes, always C1 & C2 in battery mode and on AC. The same behaviour on 2.6.4-rc1 + ACPI 20040220 + your patches.
I updated that on bugzilla.
Could you please also send me the output of/proc/acpi/processor/*/power
if that still fail on battery?
Thanks again for your time,
Signature · 11 lines
Bruno Ducrot -- Which is worse: ignorance or apathy? -- Don't know. Don't care. ------------------------------------------------------- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hello,
Quoted 10 lines · Bruno Ducrot
Quoted 8 lines
Quoted 5 lines
Quoted 3 lines
Quoted 1 line
I think also that the bios will only allow C2, not C3 nor C4 if you are on AC.
You're right, but even on battery I get only C1 & C2 (as from the attached).
Well, there is a stupid bug, I guess.
on the above 2.6.3 there're no changes, always C1 & C2 in battery mode and on AC. The same behaviour on 2.6.4-rc1 + ACPI 20040220 + your patches.
I updated that on bugzilla.
thank you, I tried the new one on a fresh 2.6.3 + ACPI 20040220 + ACPI DSDT in initrd (so just the last patch and no more the old ones), but still the same on battery mode (only C1 & C2). With a fresh 2.6.4-rc1 + ACPI 20040220 nothing changes. The same results on AC mode and the 2.6.3 above.
Quoted 3 lines
Could you please also send me the output of
/proc/acpi/processor/*/power
if that still fail on battery?
Sure, here it is:
===== (2.6.3)
[email protected]:~$ dmesg | grep Processor ACPI: Processor [CPU1] (supports C1 C2) [email protected]:~$ cat /proc/acpi/processor/*/info processor id: 0 acpi id: 1 bus mastering control: yes power management: yes throttling control: no limit interface: no [email protected]:~$ cat /proc/acpi/processor/*/limit <not supported> [email protected]:~$ cat /proc/acpi/processor/*/power active state: C2 default state: C1 bus master activity: 00000000 states: C1: type[1] promotion[C2] demotion[--] latency[000] usage[00000010] *C2: type[2] promotion[--] demotion[C1] latency[001] usage[00067837] [email protected]:~$ cat /proc/acpi/processor/*/throttling <not supported>
===== (2.6.4-rc1)
[email protected]:~$ dmesg | grep Processor ACPI: Processor [CPU1] (supports C1 C2) [email protected]:~$ cat /proc/acpi/processor/*/info processor id: 0 acpi id: 1 bus mastering control: yes power management: yes throttling control: no limit interface: no [email protected]:~$ cat /proc/acpi/processor/*/limit <not supported> [email protected]:~$ cat /proc/acpi/processor/*/power active state: C2 default state: C1 bus master activity: 00000000 states: C1: type[1] promotion[C2] demotion[--] latency[000] usage[00000010] *C2: type[2] promotion[--] demotion[C1] latency[001] usage[00142674] [email protected]:~$ cat /proc/acpi/processor/*/throttling <not supported> =====
Quoted 1 line
Thanks again for your time,
Once again, *I* should thank you :-)
Thx, bye,
Gismo / Luca
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)
Comment: Using GnuPG with Debian - http://enigmail.mozdev.org
iD8DBQFASOErVAp7Xm10JmkRAh4BAJ98yHK8GuxBdEJCbelhJoEKBlBQKgCeKYBs /k0jX4ZkkjXml7njNaKZEts=
=GnKH
-----END PGP SIGNATURE-----
-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
Quoted 14 lines · Thomas Renninger
Quoted 4 lines · Thomas Renninger
Your machine supports the C4 state.
Change theP_BLKin your DSDT to0x06e.g.:
Quoted 8 lines
Processor (\_PR.CPU0, 0x01, 0x00001010, 0x07) to: Processor (\_PR.CPU0, 0x01, 0x00001010, 0x06)or use the patch from Pavel, posted on the 28.02.2004, 17:10.
Unfortunately this won't enable the C4 state if you have one. What do mainters say about supporting Cn processor states in the future?
Quoted 7 lines
I am pretty sure this message will come up more often in future. Could it be that new mobile Intel processors support the C4 state -> therefore
P_BLK=0x07?Pavel's patch is a workaround, setting
P_BLKback to 6, but isn't it worth a critical bug for supporting Cn states,
as only supporting C0-C3 states offends the specification?
For FreeBSD, I took the approach that throttling requires P_BLK_LEN >= 4, C2 requires >= 5, and C3 requires >= 6. Systems with higher values will get C1-C3 but we will not support C4 on such systems. There are already plenty of valid systems with _CST out in the real world (i.e. IBM Centrino laptops) and so for someone to break the standard now is unacceptable. Users will get C1-C3 on broken systems, which is good enough.
-Nate
-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hello,
I tried kernel 2.6.5-rc1 with a new BIOS 0206A, but still the same problem. It seems that Bruno's patches (which at least let me have C1 & C2) haven't been applied yet.
On the other hand, without Bruno's patches I get:
=====
gismo:~# cat /proc/acpi/processor/CPU1/*
processor id: 0
acpi id: 1
bus mastering control: yes
power management: no
throttling control: no
limit interface: no
<not supported>
active state: C1
default state: C1
bus master activity: 00000000
states:
*C1: promotion[--] demotion[--] latency[000] usage[00000000]
C2: <not supported>
C3: <not supported>
<not supported>
gismo:~#
=====This output is the same if I use the original DSDT or a modified one to have battery support.
Question: with Bruno's patches, I never got C3 (neither the 'C3 <not supported>' message), so, could it be that my laptop doesn't support C3 but C4?
Attached the new DSDT from BIOS 0206A.
Thx, bye,
Gismo / Luca
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)
Comment: Using GnuPG with Debian - http://enigmail.mozdev.org
iD8DBQFAXB0PVAp7Xm10JmkRAoEWAJ45t856zXKbUIy3GvtWvccmqp36gwCfXQLF R7Sgufi/xSxec77YWZLYhj4=
=93t0
-----END PGP SIGNATURE-----
Hi Luca,
With a little DSDT tweak I get the following output:
$ cat /proc/acpi/processor/CPU1/*
processor id: 0
acpi id: 1
bus mastering control: yes
power management: yes
throttling control: yes
limit interface: yes
active limit: P0:T0
user limit: P0:T0
thermal limit: P0:T0
active state: C2
default state: C1
bus master activity: 00000000
states:
C1: promotion[C2] demotion[--] latency[000]
usage[00024090]
*C2: promotion[--] demotion[C1] latency[099]
usage[00991232]
C3: <not supported>
state count: 8
active state: T0
states:
*T0: 00%
T1: 12%
T2: 25%
T3: 37%
T4: 50%
T5: 62%
T6: 75%
T7: 87%The fix requires simply changing one value in the DSDT from:
Processor (CPU1, 0x01, 0x00000410, 0x07)
to:
Processor (CPU1, 0x01, 0x00000410, 0x06)
You can find more details on the forum I started dedicated to Linux on the M6N series laptops:
http://mrhammy2.ath.cx:81/forum/viewforum.php?f=1
-Herman
Quoted 44 lines · Luca Capello
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1Hello,
I tried kernel 2.6.5-rc1 with a new BIOS 0206A, but still the same problem. It seems that Bruno's patches (which at least let me have C1 & C2) haven't been applied yet.
On the other hand, without Bruno's patches I get:
=====gismo:~# cat /proc/acpi/processor/CPU1/* processor id: 0 acpi id: 1 bus mastering control: yes power management: no throttling control: no limit interface: no <not supported> active state: C1 default state: C1 bus master activity: 00000000 states: *C1: promotion[--] demotion[--] latency[000] usage[00000000] C2: <not supported> C3: <not supported> <not supported> gismo:~# =====This output is the same if I use the original DSDT or a modified one to have battery support.
Question: with Bruno's patches, I never got C3 (neither the 'C3 <not supported>' message), so, could it be that my laptop doesn't support C3 but C4?
Attached the new DSDT from BIOS 0206A.
Thx, bye,
Gismo / Luca
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)
Comment: Using GnuPG with Debian - http://enigmail.mozdev.org
Quoted 4 lines
iD8DBQFAXB0PVAp7Xm10JmkRAoEWAJ45t856zXKbUIy3GvtWvccmqp36gwCfXQLF R7Sgufi/xSxec77YWZLYhj4=
=93t0
-----END PGP SIGNATURE-----
-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hello,
Quoted 1 line · Herman Sheremetyev
With a little DSDT tweak I get the following output:
<cut>
Quoted 7 lines
The fix requires simply changing one value in the DSDT from:
Processor (CPU1,
0x01,0x00000410,0x07)to:
Processor (CPU1,
0x01,0x00000410,0x06)
this hack was already known
http://sourceforge.net/mailarchive/message.php?msg_id=7451801
But the same can be achieved using Bruno Ducrot's at
http://bugzilla.kernel.org/show_bug.cgi?id=1958
Please read the whole thread here
http://sourceforge.net/mailarchive/message.php?msg_id=7451789
AFAIK Bruno's patches are a /cleaner/ solution, as you can have C1 & C2 without hacking your DSDT. On the other hand, it seems that our laptop support C4 state (via _CST), which is the final objective of Bruno's patches IIRC.
Thx, bye,
Gismo / Luca
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)
Comment: Using GnuPG with Debian - http://enigmail.mozdev.org
iD8DBQFAXI/HVAp7Xm10JmkRAoieAJ9wkCvoWudcEGXu+Kq78AmqGkoYJQCfThQg H84lZKxoXpvApZHLilJkA9Y=
=iyHh
-----END PGP SIGNATURE-----
-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click