[[email protected]: Re: hp omnibook xe4500 hangs while loading acpi module]
Hi Len,
The patch "[ACPI] GV3 IO port is 16-bits" to the arch/i386/kernel/cpu/cpufreq/acpi.c file broke at least some of the GV1/2 support. Any idea on how to fix it up so that it works for both?
Happy holidays,
Dominik
----- Forwarded message from Martin Schreiber <[email protected]> -----
Subject: Re: hp omnibook xe4500 hangs while loading acpi module
From: Martin Schreiber <[email protected]>
To: Dominik Brodowski <[email protected]>
Cc: [email protected]
In-Reply-To: <[email protected]>
X-Mailer: Ximian Evolution 1.4.5
Date: Sat, 20 Dec 2003 17:13:47 +0100
the acpi cpufreq (kernel 2.6.0) works now on omnibook xe4500 with the attached patch.
thanks!
Quoted 8 lines · Dominik Brodowski
Hi,
Can you please try the attached patch (for 2.6.0)? It reverts a change done during the time frame you mention: I assume this patch "[ACPI] GV3 IO port is 16-bits (Venkatesh Pallipadi)" caused the trouble. Please CC <[email protected]> in your reply [the cpufreq mailing list], so that other cpufreq developers can investigate this issue as well.
Quoted 37 lines
Thanks,
DominikQuoted 33 lines · Martin Schreiber
hi!
my "hp omnibook xe4500" hangs, if i load the acpi module for cpufreq. there's no kernel error message. it just blocks everything.
the cpufreq works fine up to test-6
with test-7, the kernel hangs, if i load the module.can i help you, to fix this problem?
just say, what you need.
i'm completely new to the kernel!
ciao,
martiniMartin Schreiber
Im Muehltal 48
91171 Gredinghttp://www.martin-schreiber.net
[email protected]Stürmt und schneit's Silvester nicht, ist das Neujahr auch in Sicht.
--BEGIN GEEK CODE BLOCK--
Version: 3.12
GCS d s+: a-- C++ UL++ P+ L+++ E-- W+++ N o K- w-- O- M- V- PS+++ PE+ Y PGP++ t 5+ X R+ tv++ b+ DI- D++ G e h-- r-- y+
--END GEEK CODE BLOCK--
Martin Schreiber
Im Muehltal 48
91171 Greding
http://www.martin-schreiber.net
[email protected]
Wenn du kritisiert wirst, dann mußt du irgend etwas richtig machen. Denn man greift nur denjenigen an, der den Ball hat.
-- Bruce Lee
-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GCS d s+: a-- C++ UL++ P+ L+++ E-- W+++ N o K- w--- O- M- V- PS+++ PE+ Y PGP++ t 5+ X R+ tv++ b+ DI- D++ G e h-- r-- y+
------END GEEK CODE BLOCK------
arch/i386/kernel/cpu/cpufreq/acpi.c +7 -7
@@ -231,7 +231,7 @@ int state) {u16 port =0 ; -u16 value =0 ; +u8 value =0 ;int i =0 ;struct cpufreq_freqs cpufreq_freqs;
@@ -282,9 +282,9 @@ value = (u16 ) perf->states[state].control;ACPI_DEBUG_PRINT ((ACPI_DB_INFO , -"Writing 0x%04x to port 0x%04x\n" , value, port)); +"Writing 0x%02x to port 0x%02x\n" , value, port)); -outw (value, port); +outb (value, port);/* * Then we read the 'status_register' and compare the value with the
@@ -296,11 +296,11 @@ port = perf->status_register;ACPI_DEBUG_PRINT ((ACPI_DB_INFO , -"Looking for 0x%04x from port 0x%04x\n" , - (u16 ) perf->states[state].status, port)); +"Looking for 0x%02x from port 0x%02x\n" , + (u8 ) perf->states[state].status, port));for (i=0 ; i<100 ; i++) { - value =inw (port); + value =inb (port);if (value == (u16 ) perf->states[state].status)break ;udelay (10 );
@@ -309,7 +309,7 @@/* notify cpufreq */ cpufreq_notify_transition (&cpufreq_freqs,CPUFREQ_POSTCHANGE ); -if (value != (u16 ) perf->states[state].status) { +if (value != perf->states[state].status) {unsigned int tmp = cpufreq_freqs.new; cpufreq_freqs.new = cpufreq_freqs.old; cpufreq_freqs.old = tmp;
----- End forwarded message -----