[CPUFREQ] Crusoe: longrun cpufreq module reports false min freq

The longrun cpufreq module reports a false minimum frequency 3MHz on
300-600MHz Crusoe processor.  This may be due to a calculation bug
in the module.

Original patch from Kaz Sasayama <kazssym@hypercore.co.jp>
submitted as http://bugs.debian.org/468149 patch ported to x86

Cc: Kaz Sasayama <kazssym@hypercore.co.jp>
Signed-off-by: maximilian attems <max@stro.at>
Signed-off-by: Dave Jones <davej@redhat.com>
This commit is contained in:
maximilian attems 2008-05-08 22:10:01 +02:00 коммит произвёл Dave Jones
Родитель eba9fe93a2
Коммит 667ad4f701
1 изменённых файлов: 1 добавлений и 1 удалений

Просмотреть файл

@ -245,7 +245,7 @@ static unsigned int __init longrun_determine_freqs(unsigned int *low_freq,
if ((ecx > 95) || (ecx == 0) || (eax < ebx)) if ((ecx > 95) || (ecx == 0) || (eax < ebx))
return -EIO; return -EIO;
edx = (eax - ebx) / (100 - ecx); edx = ((eax - ebx) * 100) / (100 - ecx);
*low_freq = edx * 1000; /* back to kHz */ *low_freq = edx * 1000; /* back to kHz */
dprintk("low frequency is %u kHz\n", *low_freq); dprintk("low frequency is %u kHz\n", *low_freq);