17ebd8b66SMauro Carvalho ChehabKernel driver abituguru3
27ebd8b66SMauro Carvalho Chehab========================
37ebd8b66SMauro Carvalho Chehab
47ebd8b66SMauro Carvalho ChehabSupported chips:
57ebd8b66SMauro Carvalho Chehab  * Abit uGuru revision 3 (Hardware Monitor part, reading only)
67ebd8b66SMauro Carvalho Chehab
77ebd8b66SMauro Carvalho Chehab    Prefix: 'abituguru3'
87ebd8b66SMauro Carvalho Chehab
97ebd8b66SMauro Carvalho Chehab    Addresses scanned: ISA 0x0E0
107ebd8b66SMauro Carvalho Chehab
117ebd8b66SMauro Carvalho Chehab    Datasheet: Not available, this driver is based on reverse engineering.
127ebd8b66SMauro Carvalho Chehab
137ebd8b66SMauro Carvalho Chehab    Note:
147ebd8b66SMauro Carvalho Chehab	The uGuru is a microcontroller with onboard firmware which programs
157ebd8b66SMauro Carvalho Chehab	it to behave as a hwmon IC. There are many different revisions of the
164776b9e3SBrandon Jiang	firmware and thus effectively many different revisions of the uGuru.
177ebd8b66SMauro Carvalho Chehab	Below is an incomplete list with which revisions are used for which
187ebd8b66SMauro Carvalho Chehab	Motherboards:
197ebd8b66SMauro Carvalho Chehab
207ebd8b66SMauro Carvalho Chehab	- uGuru 1.00    ~ 1.24    (AI7, KV8-MAX3, AN7)
217ebd8b66SMauro Carvalho Chehab	- uGuru 2.0.0.0 ~ 2.0.4.2 (KV8-PRO)
227ebd8b66SMauro Carvalho Chehab	- uGuru 2.1.0.0 ~ 2.1.2.8 (AS8, AV8, AA8, AG8, AA8XE, AX8)
237ebd8b66SMauro Carvalho Chehab	- uGuru 2.3.0.0 ~ 2.3.0.9 (AN8)
247ebd8b66SMauro Carvalho Chehab	- uGuru 3.0.0.0 ~ 3.0.x.x (AW8, AL8, AT8, NI8 SLI, AT8 32X, AN8 32X,
257ebd8b66SMauro Carvalho Chehab	  AW9D-MAX)
267ebd8b66SMauro Carvalho Chehab
274776b9e3SBrandon Jiang	The abituguru3 driver is only for revision 3.0.x.x motherboards,
287ebd8b66SMauro Carvalho Chehab	this driver will not work on older motherboards. For older
297ebd8b66SMauro Carvalho Chehab	motherboards use the abituguru (without the 3 !) driver.
307ebd8b66SMauro Carvalho Chehab
317ebd8b66SMauro Carvalho ChehabAuthors:
327ebd8b66SMauro Carvalho Chehab	- Hans de Goede <j.w.r.degoede@hhs.nl>,
337ebd8b66SMauro Carvalho Chehab	- (Initial reverse engineering done by Louis Kruger)
347ebd8b66SMauro Carvalho Chehab
357ebd8b66SMauro Carvalho Chehab
367ebd8b66SMauro Carvalho ChehabModule Parameters
377ebd8b66SMauro Carvalho Chehab-----------------
387ebd8b66SMauro Carvalho Chehab
397ebd8b66SMauro Carvalho Chehab* force: bool
407ebd8b66SMauro Carvalho Chehab			Force detection. Note this parameter only causes the
417ebd8b66SMauro Carvalho Chehab			detection to be skipped, and thus the insmod to
427ebd8b66SMauro Carvalho Chehab			succeed. If the uGuru can't be read the actual hwmon
437ebd8b66SMauro Carvalho Chehab			driver will not load and thus no hwmon device will get
447ebd8b66SMauro Carvalho Chehab			registered.
457ebd8b66SMauro Carvalho Chehab* verbose: bool
467ebd8b66SMauro Carvalho Chehab			Should the driver be verbose?
477ebd8b66SMauro Carvalho Chehab
487ebd8b66SMauro Carvalho Chehab			* 0/off/false  normal output
497ebd8b66SMauro Carvalho Chehab			* 1/on/true    + verbose error reporting (default)
507ebd8b66SMauro Carvalho Chehab
517ebd8b66SMauro Carvalho Chehab			Default: 1 (the driver is still in the testing phase)
527ebd8b66SMauro Carvalho Chehab
537ebd8b66SMauro Carvalho ChehabDescription
547ebd8b66SMauro Carvalho Chehab-----------
557ebd8b66SMauro Carvalho Chehab
567ebd8b66SMauro Carvalho ChehabThis driver supports the hardware monitoring features of the third revision of
577ebd8b66SMauro Carvalho Chehabthe Abit uGuru chip, found on recent Abit uGuru featuring motherboards.
587ebd8b66SMauro Carvalho Chehab
597ebd8b66SMauro Carvalho ChehabThe 3rd revision of the uGuru chip in reality is a Winbond W83L951G.
607ebd8b66SMauro Carvalho ChehabUnfortunately this doesn't help since the W83L951G is a generic microcontroller
617ebd8b66SMauro Carvalho Chehabwith a custom Abit application running on it.
627ebd8b66SMauro Carvalho Chehab
637ebd8b66SMauro Carvalho ChehabDespite Abit not releasing any information regarding the uGuru revision 3,
647ebd8b66SMauro Carvalho ChehabLouis Kruger has managed to reverse engineer the sensor part of the uGuru.
657ebd8b66SMauro Carvalho ChehabWithout his work this driver would not have been possible.
667ebd8b66SMauro Carvalho Chehab
677ebd8b66SMauro Carvalho ChehabKnown Issues
687ebd8b66SMauro Carvalho Chehab------------
697ebd8b66SMauro Carvalho Chehab
707ebd8b66SMauro Carvalho ChehabThe voltage and frequency control parts of the Abit uGuru are not supported,
717ebd8b66SMauro Carvalho Chehabneither is writing any of the sensor settings and writing / reading the
727ebd8b66SMauro Carvalho Chehabfanspeed control registers (FanEQ)
737ebd8b66SMauro Carvalho Chehab
747ebd8b66SMauro Carvalho ChehabIf you encounter any problems please mail me <j.w.r.degoede@hhs.nl> and
757ebd8b66SMauro Carvalho Chehabinclude the output of: `dmesg | grep abituguru`
76