lkml.org 
[lkml]   [2007]   [May]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: cpufreq longhaul locks up
I found one line which wasn't were it should be. Probably this will not 
fix Your problem with powersave governor, but it is a bit related.
Looks like Longhaul isn't skipping frequency transtition when it is asked
to set f which is already set. Now after first transition it will not
try to set same frequency again. Second part contains some magic
because I don't have CN400 datasheet. It is NDA protected :-( Should
print You one byte in hex and will try to set one register. I don't
know if anything will change but it is worth testing.

Fingers crossed
Rafał

---
arch/i386/kernel/cpu/cpufreq/longhaul.c | 9 +++++++--
1 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/arch/i386/kernel/cpu/cpufreq/longhaul.c b/arch/i386/kernel/cpu/cpufreq/longhaul.c
index 2b030d6..5548e5b 100644
--- a/arch/i386/kernel/cpu/cpufreq/longhaul.c
+++ b/arch/i386/kernel/cpu/cpufreq/longhaul.c
@@ -88,6 +88,7 @@ static int clock_ratio[32];
static int eblcr_table[32];
static int longhaul_version;
static struct cpufreq_frequency_table *longhaul_table;
+static unsigned int old_ratio = -1;

#ifdef CONFIG_CPU_FREQ_DEBUG
static char speedbuffer[8];
@@ -252,7 +253,6 @@ static void longhaul_setstate(unsigned int clock_ratio_index)
{
int speed, mult;
struct cpufreq_freqs freqs;
- static unsigned int old_ratio=-1;
unsigned long flags;
unsigned int pic1_mask, pic2_mask;

@@ -603,7 +603,12 @@ static int enable_arbiter_disable(void)
/* Find CN400 V-Link host bridge */
if (dev == NULL)
dev = pci_find_device(PCI_VENDOR_ID_VIA, 0x7259, NULL);
-
+ if (dev != NULL) {
+ pci_read_config_byte(dev, 0x47, &pci_cmd);
+ printk(KERN_INFO PFX "%#02x\n", pci_cmd);
+ pci_cmd |= 0xf;
+ pci_write_config_byte(dev, 0x47, pci_cmd);
+ }
}
if (dev != NULL) {
/* Enable access to port 0x22 */
--


----------------------------------------------------------------------
Po meczu.....kurde...:)
>>> http://link.interia.pl/f1a72
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2007-05-05 19:51    [W:0.397 / U:0.548 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site