| Kernel driver ltc4245 |
| ===================== |
| |
| Supported chips: |
| * Linear Technology LTC4245 |
| Prefix: 'ltc4245' |
| Addresses scanned: 0x20-0x3f |
| Datasheet: |
| http://www.linear.com/pc/downloadDocument.do?navId=H0,C1,C1003,C1006,C1140,P19392,D13517 |
| |
| Author: Ira W. Snyder <iws@ovro.caltech.edu> |
| |
| |
| Description |
| ----------- |
| |
| The LTC4245 controller allows a board to be safely inserted and removed |
| from a live backplane in multiple supply systems such as CompactPCI and |
| PCI Express. |
| |
| |
| Usage Notes |
| ----------- |
| |
| This driver does not probe for LTC4245 devices, due to the fact that some |
| of the possible addresses are unfriendly to probing. You will have to |
| instantiate the devices explicitly. |
| |
| Example: the following will load the driver for an LTC4245 at address 0x23 |
| on I2C bus #1: |
| $ modprobe ltc4245 |
| $ echo ltc4245 0x23 > /sys/bus/i2c/devices/i2c-1/new_device |
| |
| |
| Sysfs entries |
| ------------- |
| |
| The LTC4245 has built-in limits for over and under current warnings. This |
| makes it very likely that the reference circuit will be used. |
| |
| This driver uses the values in the datasheet to change the register values |
| into the values specified in the sysfs-interface document. The current readings |
| rely on the sense resistors listed in Table 2: "Sense Resistor Values". |
| |
| in1_input 12v input voltage (mV) |
| in2_input 5v input voltage (mV) |
| in3_input 3v input voltage (mV) |
| in4_input Vee (-12v) input voltage (mV) |
| |
| in1_min_alarm 12v input undervoltage alarm |
| in2_min_alarm 5v input undervoltage alarm |
| in3_min_alarm 3v input undervoltage alarm |
| in4_min_alarm Vee (-12v) input undervoltage alarm |
| |
| curr1_input 12v current (mA) |
| curr2_input 5v current (mA) |
| curr3_input 3v current (mA) |
| curr4_input Vee (-12v) current (mA) |
| |
| curr1_max_alarm 12v overcurrent alarm |
| curr2_max_alarm 5v overcurrent alarm |
| curr3_max_alarm 3v overcurrent alarm |
| curr4_max_alarm Vee (-12v) overcurrent alarm |
| |
| in5_input 12v output voltage (mV) |
| in6_input 5v output voltage (mV) |
| in7_input 3v output voltage (mV) |
| in8_input Vee (-12v) output voltage (mV) |
| |
| in5_min_alarm 12v output undervoltage alarm |
| in6_min_alarm 5v output undervoltage alarm |
| in7_min_alarm 3v output undervoltage alarm |
| in8_min_alarm Vee (-12v) output undervoltage alarm |
| |
| in9_input GPIO voltage data (see note 1) |
| in10_input GPIO voltage data (see note 1) |
| in11_input GPIO voltage data (see note 1) |
| |
| power1_input 12v power usage (mW) |
| power2_input 5v power usage (mW) |
| power3_input 3v power usage (mW) |
| power4_input Vee (-12v) power usage (mW) |
| |
| |
| Note 1 |
| ------ |
| |
| If you have NOT configured the driver to sample all GPIO pins as analog |
| voltages, then the in10_input and in11_input sysfs attributes will not be |
| created. The driver will sample the GPIO pin that is currently connected to the |
| ADC as an analog voltage, and report the value in in9_input. |
| |
| If you have configured the driver to sample all GPIO pins as analog voltages, |
| then they will be sampled in round-robin fashion. If userspace reads too |
| slowly, -EAGAIN will be returned when you read the sysfs attribute containing |
| the sensor reading. |
| |
| The LTC4245 chip can be configured to sample all GPIO pins with two methods: |
| 1) platform data -- see include/linux/platform_data/ltc4245.h |
| 2) OF device tree -- add the "ltc4245,use-extra-gpios" property to each chip |
| |
| The default mode of operation is to sample a single GPIO pin. |