| Hans de Goede | f2b84bb | 2006-06-04 20:22:24 +0200 | [diff] [blame] | 1 | Kernel driver abituguru | 
|  | 2 | ======================= | 
|  | 3 |  | 
|  | 4 | Supported chips: | 
| Hans de Goede | 5cab828 | 2006-07-05 18:09:09 +0200 | [diff] [blame] | 5 | * Abit uGuru revision 1-3 (Hardware Monitor part only) | 
| Hans de Goede | f2b84bb | 2006-06-04 20:22:24 +0200 | [diff] [blame] | 6 | Prefix: 'abituguru' | 
|  | 7 | Addresses scanned: ISA 0x0E0 | 
|  | 8 | Datasheet: Not available, this driver is based on reverse engineering. | 
|  | 9 | A "Datasheet" has been written based on the reverse engineering it | 
|  | 10 | should be available in the same dir as this file under the name | 
|  | 11 | abituguru-datasheet. | 
| Hans de Goede | 5cab828 | 2006-07-05 18:09:09 +0200 | [diff] [blame] | 12 | Note: | 
|  | 13 | The uGuru is a microcontroller with onboard firmware which programs | 
|  | 14 | it to behave as a hwmon IC. There are many different revisions of the | 
|  | 15 | firmware and thus effectivly many different revisions of the uGuru. | 
|  | 16 | Below is an incomplete list with which revisions are used for which | 
|  | 17 | Motherboards: | 
|  | 18 | uGuru 1.00    ~ 1.24    (AI7, KV8-MAX3, AN7) (1) | 
|  | 19 | uGuru 2.0.0.0 ~ 2.0.4.2 (KV8-PRO) | 
|  | 20 | uGuru 2.1.0.0 ~ 2.1.2.8 (AS8, AV8, AA8, AG8, AA8XE, AX8) | 
|  | 21 | uGuru 2.2.0.0 ~ 2.2.0.6 (AA8 Fatal1ty) | 
|  | 22 | uGuru 2.3.0.0 ~ 2.3.0.9 (AN8) | 
|  | 23 | uGuru 3.0.0.0 ~ 3.0.1.2 (AW8, AL8, NI8) | 
|  | 24 | uGuru 4.xxxxx?          (AT8 32X) (2) | 
|  | 25 | 1) For revisions 2 and 3 uGuru's the driver can autodetect the | 
|  | 26 | sensortype (Volt or Temp) for bank1 sensors, for revision 1 uGuru's | 
|  | 27 | this doesnot always work. For these uGuru's the autodection can | 
|  | 28 | be overriden with the bank1_types module param. For all 3 known | 
|  | 29 | revison 1 motherboards the correct use of this param is: | 
|  | 30 | bank1_types=1,1,0,0,0,0,0,2,0,0,0,0,2,0,0,1 | 
|  | 31 | You may also need to specify the fan_sensors option for these boards | 
|  | 32 | fan_sensors=5 | 
|  | 33 | 2) The current version of the abituguru driver is known to NOT work | 
|  | 34 | on these Motherboards | 
| Hans de Goede | f2b84bb | 2006-06-04 20:22:24 +0200 | [diff] [blame] | 35 |  | 
|  | 36 | Authors: | 
|  | 37 | Hans de Goede <j.w.r.degoede@hhs.nl>, | 
|  | 38 | (Initial reverse engineering done by Olle Sandberg | 
|  | 39 | <ollebull@gmail.com>) | 
|  | 40 |  | 
|  | 41 |  | 
|  | 42 | Module Parameters | 
|  | 43 | ----------------- | 
|  | 44 |  | 
|  | 45 | * force: bool		Force detection. Note this parameter only causes the | 
|  | 46 | detection to be skipped, if the uGuru can't be read | 
|  | 47 | the module initialization (insmod) will still fail. | 
| Hans de Goede | 5cab828 | 2006-07-05 18:09:09 +0200 | [diff] [blame] | 48 | * bank1_types: int[]	Bank1 sensortype autodetection override: | 
|  | 49 | -1 autodetect (default) | 
|  | 50 | 0 volt sensor | 
|  | 51 | 1 temp sensor | 
|  | 52 | 2 not connected | 
| Hans de Goede | f2b84bb | 2006-06-04 20:22:24 +0200 | [diff] [blame] | 53 | * fan_sensors: int	Tell the driver how many fan speed sensors there are | 
|  | 54 | on your motherboard. Default: 0 (autodetect). | 
|  | 55 | * pwms: int		Tell the driver how many fan speed controls (fan | 
|  | 56 | pwms) your motherboard has. Default: 0 (autodetect). | 
|  | 57 | * verbose: int		How verbose should the driver be? (0-3): | 
|  | 58 | 0 normal output | 
|  | 59 | 1 + verbose error reporting | 
| Hans de Goede | 5cab828 | 2006-07-05 18:09:09 +0200 | [diff] [blame] | 60 | 2 + sensors type probing info (default) | 
| Hans de Goede | f2b84bb | 2006-06-04 20:22:24 +0200 | [diff] [blame] | 61 | 3 + retryable error reporting | 
|  | 62 | Default: 2 (the driver is still in the testing phase) | 
|  | 63 |  | 
|  | 64 | Notice if you need any of the first three options above please insmod the | 
|  | 65 | driver with verbose set to 3 and mail me <j.w.r.degoede@hhs.nl> the output of: | 
|  | 66 | dmesg | grep abituguru | 
|  | 67 |  | 
|  | 68 |  | 
|  | 69 | Description | 
|  | 70 | ----------- | 
|  | 71 |  | 
|  | 72 | This driver supports the hardware monitoring features of the Abit uGuru chip | 
|  | 73 | found on Abit uGuru featuring motherboards (most modern Abit motherboards). | 
|  | 74 |  | 
|  | 75 | The uGuru chip in reality is a Winbond W83L950D in disguise (despite Abit | 
|  | 76 | claiming it is "a new microprocessor designed by the ABIT Engineers"). | 
|  | 77 | Unfortunatly this doesn't help since the W83L950D is a generic | 
|  | 78 | microcontroller with a custom Abit application running on it. | 
|  | 79 |  | 
|  | 80 | Despite Abit not releasing any information regarding the uGuru, Olle | 
|  | 81 | Sandberg <ollebull@gmail.com> has managed to reverse engineer the sensor part | 
|  | 82 | of the uGuru. Without his work this driver would not have been possible. | 
|  | 83 |  | 
|  | 84 | Known Issues | 
|  | 85 | ------------ | 
|  | 86 |  | 
|  | 87 | The voltage and frequency control parts of the Abit uGuru are not supported. |