Kernel driver ltc4260
=====================

Supported chips:

  * Linear Technology LTC4260

    Prefix: 'ltc4260'

    Addresses scanned: -

    Datasheet:

	http://cds.linear.com/docs/en/datasheet/4260fc.pdf

Author: Guenter Roeck <linux@roeck-us.net>


Description
-----------

The LTC4260 Hot Swap controller allows a board to be safely inserted
and removed from a live backplane.


Usage Notes
-----------

This driver does not probe for LTC4260 devices, since there is no register
which can be safely used to identify the chip. You will have to instantiate
the devices explicitly.

Example: the following will load the driver for an LTC4260 at address 0x10
on I2C bus #1::

	$ modprobe ltc4260
	$ echo ltc4260 0x10 > /sys/bus/i2c/devices/i2c-1/new_device


Sysfs entries
-------------

Voltage readings provided by this driver are reported as obtained from the ADC
registers. If a set of voltage divider resistors is installed, calculate the
real voltage by multiplying the reported value with (R1+R2)/R2, where R1 is the
value of the divider resistor against the measured voltage and R2 is the value
of the divider resistor against Ground.

Current reading provided by this driver is reported as obtained from the ADC
Current Sense register. The reported value assumes that a 1 mOhm sense resistor
is installed. If a different sense resistor is installed, calculate the real
current by dividing the reported value by the sense resistor value in mOhm.

======================= =======================
in1_input		SOURCE voltage (mV)
in1_min_alarm		Undervoltage alarm
in1_max_alarm		Overvoltage alarm

in2_input		ADIN voltage (mV)
in2_alarm		Power bad alarm

curr1_input		SENSE current (mA)
curr1_alarm		SENSE overcurrent alarm
======================= =======================
