Merge tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc
[sfrench/cifs-2.6.git] / Documentation / hwmon / via686a.rst
1 Kernel driver via686a
2 =====================
3
4 Supported chips:
5
6   * Via VT82C686A, VT82C686B  Southbridge Integrated Hardware Monitor
7
8     Prefix: 'via686a'
9
10     Addresses scanned: ISA in PCI-space encoded address
11
12     Datasheet: On request through web form (http://www.via.com.tw/en/resources/download-center/)
13
14 Authors:
15         - Kyösti Mälkki <kmalkki@cc.hut.fi>,
16         - Mark D. Studebaker <mdsxyz123@yahoo.com>
17         - Bob Dougherty <bobd@stanford.edu>
18         - (Some conversion-factor data were contributed by
19         - Jonathan Teh Soon Yew <j.teh@iname.com>
20         - and Alex van Kaam <darkside@chello.nl>.)
21
22 Module Parameters
23 -----------------
24
25 ======================= =======================================================
26 force_addr=0xaddr       Set the I/O base address. Useful for boards that
27                         don't set the address in the BIOS. Look for a BIOS
28                         upgrade before resorting to this. Does not do a
29                         PCI force; the via686a must still be present in lspci.
30                         Don't use this unless the driver complains that the
31                         base address is not set.
32                         Example: 'modprobe via686a force_addr=0x6000'
33 ======================= =======================================================
34
35 Description
36 -----------
37
38 The driver does not distinguish between the chips and reports
39 all as a 686A.
40
41 The Via 686a southbridge has integrated hardware monitor functionality.
42 It also has an I2C bus, but this driver only supports the hardware monitor.
43 For the I2C bus driver, see <file:Documentation/i2c/busses/i2c-viapro>
44
45 The Via 686a implements three temperature sensors, two fan rotation speed
46 sensors, five voltage sensors and alarms.
47
48 Temperatures are measured in degrees Celsius. An alarm is triggered once
49 when the Overtemperature Shutdown limit is crossed; it is triggered again
50 as soon as it drops below the hysteresis value.
51
52 Fan rotation speeds are reported in RPM (rotations per minute). An alarm is
53 triggered if the rotation speed has dropped below a programmable limit. Fan
54 readings can be divided by a programmable divider (1, 2, 4 or 8) to give
55 the readings more range or accuracy. Not all RPM values can accurately be
56 represented, so some rounding is done. With a divider of 2, the lowest
57 representable value is around 2600 RPM.
58
59 Voltage sensors (also known as IN sensors) report their values in volts.
60 An alarm is triggered if the voltage has crossed a programmable minimum
61 or maximum limit. Voltages are internally scalled, so each voltage channel
62 has a different resolution and range.
63
64 If an alarm triggers, it will remain triggered until the hardware register
65 is read at least once. This means that the cause for the alarm may
66 already have disappeared! Note that in the current implementation, all
67 hardware registers are read whenever any data is read (unless it is less
68 than 1.5 seconds since the last update). This means that you can easily
69 miss once-only alarms.
70
71 The driver only updates its values each 1.5 seconds; reading it more often
72 will do no harm, but will return 'old' values.
73
74 Known Issues
75 ------------
76
77 This driver handles sensors integrated in some VIA south bridges. It is
78 possible that a motherboard maker used a VT82C686A/B chip as part of a
79 product design but was not interested in its hardware monitoring features,
80 in which case the sensor inputs will not be wired. This is the case of
81 the Asus K7V, A7V and A7V133 motherboards, to name only a few of them.
82 So, if you need the force_addr parameter, and end up with values which
83 don't seem to make any sense, don't look any further: your chip is simply
84 not wired for hardware monitoring.