blob: b478b08649658693697d3c6f8ee582c5524a8073 [file] [log] [blame]
Ira Snyder6e34b182009-01-07 16:37:32 +01001Kernel driver ltc4245
2=====================
3
4Supported chips:
5 * Linear Technology LTC4245
6 Prefix: 'ltc4245'
7 Addresses scanned: 0x20-0x3f
8 Datasheet:
9 http://www.linear.com/pc/downloadDocument.do?navId=H0,C1,C1003,C1006,C1140,P19392,D13517
10
11Author: Ira W. Snyder <iws@ovro.caltech.edu>
12
13
14Description
15-----------
16
17The LTC4245 controller allows a board to be safely inserted and removed
18from a live backplane in multiple supply systems such as CompactPCI and
19PCI Express.
20
21
22Usage Notes
23-----------
24
25This driver does not probe for LTC4245 devices, due to the fact that some
Jean Delvare2d2a7cf2009-10-04 22:53:42 +020026of the possible addresses are unfriendly to probing. You will have to
27instantiate the devices explicitly.
Ira Snyder6e34b182009-01-07 16:37:32 +010028
29Example: the following will load the driver for an LTC4245 at address 0x23
30on I2C bus #1:
Jean Delvare2d2a7cf2009-10-04 22:53:42 +020031$ modprobe ltc4245
32$ echo ltc4245 0x23 > /sys/bus/i2c/devices/i2c-1/new_device
Ira Snyder6e34b182009-01-07 16:37:32 +010033
34
35Sysfs entries
36-------------
37
38The LTC4245 has built-in limits for over and under current warnings. This
39makes it very likely that the reference circuit will be used.
40
41This driver uses the values in the datasheet to change the register values
42into the values specified in the sysfs-interface document. The current readings
43rely on the sense resistors listed in Table 2: "Sense Resistor Values".
44
45in1_input 12v input voltage (mV)
46in2_input 5v input voltage (mV)
47in3_input 3v input voltage (mV)
48in4_input Vee (-12v) input voltage (mV)
49
50in1_min_alarm 12v input undervoltage alarm
51in2_min_alarm 5v input undervoltage alarm
52in3_min_alarm 3v input undervoltage alarm
53in4_min_alarm Vee (-12v) input undervoltage alarm
54
55curr1_input 12v current (mA)
56curr2_input 5v current (mA)
57curr3_input 3v current (mA)
58curr4_input Vee (-12v) current (mA)
59
60curr1_max_alarm 12v overcurrent alarm
61curr2_max_alarm 5v overcurrent alarm
62curr3_max_alarm 3v overcurrent alarm
63curr4_max_alarm Vee (-12v) overcurrent alarm
64
65in5_input 12v output voltage (mV)
66in6_input 5v output voltage (mV)
67in7_input 3v output voltage (mV)
68in8_input Vee (-12v) output voltage (mV)
69
70in5_min_alarm 12v output undervoltage alarm
71in6_min_alarm 5v output undervoltage alarm
72in7_min_alarm 3v output undervoltage alarm
73in8_min_alarm Vee (-12v) output undervoltage alarm
74
Ira W. Snyder5950ec82010-08-14 21:08:49 +020075in9_input GPIO voltage data (see note 1)
76in10_input GPIO voltage data (see note 1)
77in11_input GPIO voltage data (see note 1)
Ira Snyder6e34b182009-01-07 16:37:32 +010078
79power1_input 12v power usage (mW)
80power2_input 5v power usage (mW)
81power3_input 3v power usage (mW)
82power4_input Vee (-12v) power usage (mW)
Ira W. Snyder5950ec82010-08-14 21:08:49 +020083
84
85Note 1
86------
87
88If you have NOT configured the driver to sample all GPIO pins as analog
89voltages, then the in10_input and in11_input sysfs attributes will not be
90created. The driver will sample the GPIO pin that is currently connected to the
91ADC as an analog voltage, and report the value in in9_input.
92
93If you have configured the driver to sample all GPIO pins as analog voltages,
94then they will be sampled in round-robin fashion. If userspace reads too
95slowly, -EAGAIN will be returned when you read the sysfs attribute containing
96the sensor reading.
97
98The LTC4245 chip can be configured to sample all GPIO pins with two methods:
991) platform data -- see include/linux/i2c/ltc4245.h
1002) OF device tree -- add the "ltc4245,use-extra-gpios" property to each chip
101
102The default mode of operation is to sample a single GPIO pin.