Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | /* |
2 | * (C) 2001-2004 Dave Jones. <davej@codemonkey.org.uk> | |
3 | * (C) 2002 Padraig Brady. <padraig@antefacto.com> | |
4 | * | |
5 | * Licensed under the terms of the GNU GPL License version 2. | |
6 | * Based upon datasheets & sample CPUs kindly provided by VIA. | |
7 | * | |
8 | * VIA have currently 3 different versions of Longhaul. | |
9 | * Version 1 (Longhaul) uses the BCR2 MSR at 0x1147. | |
10 | * It is present only in Samuel 1 (C5A), Samuel 2 (C5B) stepping 0. | |
11 | * Version 2 of longhaul is the same as v1, but adds voltage scaling. | |
12 | * Present in Samuel 2 (steppings 1-7 only) (C5B), and Ezra (C5C) | |
13 | * voltage scaling support has currently been disabled in this driver | |
14 | * until we have code that gets it right. | |
15 | * Version 3 of longhaul got renamed to Powersaver and redesigned | |
16 | * to use the POWERSAVER MSR at 0x110a. | |
17 | * It is present in Ezra-T (C5M), Nehemiah (C5X) and above. | |
18 | * It's pretty much the same feature wise to longhaul v2, though | |
19 | * there is provision for scaling FSB too, but this doesn't work | |
20 | * too well in practice so we don't even try to use this. | |
21 | * | |
22 | * BIG FAT DISCLAIMER: Work in progress code. Possibly *dangerous* | |
23 | */ | |
24 | ||
25 | #include <linux/kernel.h> | |
26 | #include <linux/module.h> | |
27 | #include <linux/moduleparam.h> | |
28 | #include <linux/init.h> | |
29 | #include <linux/cpufreq.h> | |