0001 Kernel driver abituguru
0002 =======================
0003
0004 Supported chips:
0005
0006 * Abit uGuru revision 1 & 2 (Hardware Monitor part only)
0007
0008 Prefix: 'abituguru'
0009
0010 Addresses scanned: ISA 0x0E0
0011
0012 Datasheet: Not available, this driver is based on reverse engineering.
0013 A "Datasheet" has been written based on the reverse engineering it
0014 should be available in the same dir as this file under the name
0015 abituguru-datasheet.
0016
0017 Note:
0018 The uGuru is a microcontroller with onboard firmware which programs
0019 it to behave as a hwmon IC. There are many different revisions of the
0020 firmware and thus effectively many different revisions of the uGuru.
0021 Below is an incomplete list with which revisions are used for which
0022 Motherboards:
0023
0024 - uGuru 1.00 ~ 1.24 (AI7, KV8-MAX3, AN7) [1]_
0025 - uGuru 2.0.0.0 ~ 2.0.4.2 (KV8-PRO)
0026 - uGuru 2.1.0.0 ~ 2.1.2.8 (AS8, AV8, AA8, AG8, AA8XE, AX8)
0027 - uGuru 2.2.0.0 ~ 2.2.0.6 (AA8 Fatal1ty)
0028 - uGuru 2.3.0.0 ~ 2.3.0.9 (AN8)
0029 - uGuru 3.0.0.0 ~ 3.0.x.x (AW8, AL8, AT8, NI8 SLI, AT8 32X, AN8 32X,
0030 AW9D-MAX) [2]_
0031
0032 .. [1] For revisions 2 and 3 uGuru's the driver can autodetect the
0033 sensortype (Volt or Temp) for bank1 sensors, for revision 1 uGuru's
0034 this does not always work. For these uGuru's the autodetection can
0035 be overridden with the bank1_types module param. For all 3 known
0036 revision 1 motherboards the correct use of this param is:
0037 bank1_types=1,1,0,0,0,0,0,2,0,0,0,0,2,0,0,1
0038 You may also need to specify the fan_sensors option for these boards
0039 fan_sensors=5
0040
0041 .. [2] There is a separate abituguru3 driver for these motherboards,
0042 the abituguru (without the 3 !) driver will not work on these
0043 motherboards (and visa versa)!
0044
0045 Authors:
0046 - Hans de Goede <j.w.r.degoede@hhs.nl>,
0047 - (Initial reverse engineering done by Olle Sandberg
0048 <ollebull@gmail.com>)
0049
0050
0051 Module Parameters
0052 -----------------
0053
0054 * force: bool
0055 Force detection. Note this parameter only causes the
0056 detection to be skipped, and thus the insmod to
0057 succeed. If the uGuru can't be read the actual hwmon
0058 driver will not load and thus no hwmon device will get
0059 registered.
0060 * bank1_types: int[]
0061 Bank1 sensortype autodetection override:
0062
0063 * -1 autodetect (default)
0064 * 0 volt sensor
0065 * 1 temp sensor
0066 * 2 not connected
0067 * fan_sensors: int
0068 Tell the driver how many fan speed sensors there are
0069 on your motherboard. Default: 0 (autodetect).
0070 * pwms: int
0071 Tell the driver how many fan speed controls (fan
0072 pwms) your motherboard has. Default: 0 (autodetect).
0073 * verbose: int
0074 How verbose should the driver be? (0-3):
0075
0076 * 0 normal output
0077 * 1 + verbose error reporting
0078 * 2 + sensors type probing info (default)
0079 * 3 + retryable error reporting
0080
0081 Default: 2 (the driver is still in the testing phase)
0082
0083 Notice: if you need any of the first three options above please insmod the
0084 driver with verbose set to 3 and mail me <j.w.r.degoede@hhs.nl> the output of:
0085 dmesg | grep abituguru
0086
0087
0088 Description
0089 -----------
0090
0091 This driver supports the hardware monitoring features of the first and
0092 second revision of the Abit uGuru chip found on Abit uGuru featuring
0093 motherboards (most modern Abit motherboards).
0094
0095 The first and second revision of the uGuru chip in reality is a Winbond
0096 W83L950D in disguise (despite Abit claiming it is "a new microprocessor
0097 designed by the ABIT Engineers"). Unfortunately this doesn't help since the
0098 W83L950D is a generic microcontroller with a custom Abit application running
0099 on it.
0100
0101 Despite Abit not releasing any information regarding the uGuru, Olle
0102 Sandberg <ollebull@gmail.com> has managed to reverse engineer the sensor part
0103 of the uGuru. Without his work this driver would not have been possible.
0104
0105 Known Issues
0106 ------------
0107
0108 The voltage and frequency control parts of the Abit uGuru are not supported.
0109
0110 .. toctree::
0111 :maxdepth: 1
0112
0113 abituguru-datasheet.rst