1Kernel driver abituguru 2======================= 3 4Supported chips: 5 * Abit uGuru revision 1 & 2 (Hardware Monitor part only) 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. 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.x.x (AW8, AL8, AT8, NI8 SLI, AT8 32X, AN8 32X, 24 AW9D-MAX) (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) There is a separate abituguru3 driver for these motherboards, 34 the abituguru (without the 3 !) driver will not work on these 35 motherboards (and visa versa)! 36 37Authors: 38 Hans de Goede <j.w.r.degoede@hhs.nl>, 39 (Initial reverse engineering done by Olle Sandberg 40 <ollebull@gmail.com>) 41 42 43Module Parameters 44----------------- 45 46* force: bool Force detection. Note this parameter only causes the 47 detection to be skipped, and thus the insmod to 48 succeed. If the uGuru can't be read the actual hwmon 49 driver will not load and thus no hwmon device will get 50 registered. 51* bank1_types: int[] Bank1 sensortype autodetection override: 52 -1 autodetect (default) 53 0 volt sensor 54 1 temp sensor 55 2 not connected 56* fan_sensors: int Tell the driver how many fan speed sensors there are 57 on your motherboard. Default: 0 (autodetect). 58* pwms: int Tell the driver how many fan speed controls (fan 59 pwms) your motherboard has. Default: 0 (autodetect). 60* verbose: int How verbose should the driver be? (0-3): 61 0 normal output 62 1 + verbose error reporting 63 2 + sensors type probing info (default) 64 3 + retryable error reporting 65 Default: 2 (the driver is still in the testing phase) 66 67Notice if you need any of the first three options above please insmod the 68driver with verbose set to 3 and mail me <j.w.r.degoede@hhs.nl> the output of: 69dmesg | grep abituguru 70 71 72Description 73----------- 74 75This driver supports the hardware monitoring features of the first and 76second revision of the Abit uGuru chip found on Abit uGuru featuring 77motherboards (most modern Abit motherboards). 78 79The first and second revision of the uGuru chip in reality is a Winbond 80W83L950D in disguise (despite Abit claiming it is "a new microprocessor 81designed by the ABIT Engineers"). Unfortunately this doesn't help since the 82W83L950D is a generic microcontroller with a custom Abit application running 83on it. 84 85Despite Abit not releasing any information regarding the uGuru, Olle 86Sandberg <ollebull@gmail.com> has managed to reverse engineer the sensor part 87of the uGuru. Without his work this driver would not have been possible. 88 89Known Issues 90------------ 91 92The voltage and frequency control parts of the Abit uGuru are not supported. 93