.. SPDX-License-Identifier: GPL-2.0-or-later

Kernel driver ltc4286
=====================

Supported chips:

  * Analog Devices LTC4286

    Prefix: 'ltc4286'

    Addresses scanned: -

    Datasheet: https://www.analog.com/media/en/technical-documentation/data-sheets/ltc4286.pdf

  * Analog Devices LTC4287

    Prefix: 'ltc4287'

    Addresses scanned: -

    Datasheet: https://www.analog.com/media/en/technical-documentation/data-sheets/ltc4287.pdf

Author: Delphine CC Chiu <Delphine_CC_Chiu@Wiwynn.com>


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

This driver supports hardware monitoring for Analog Devices LTC4286
and LTC4287 Hot-Swap Controller and Digital Power Monitors.

LTC4286 and LTC4287 are hot-swap controllers that allow a circuit board
to be removed from or inserted into a live backplane. They also feature
current and voltage readback via an integrated 12 bit analog-to-digital
converter (ADC), accessed using a PMBus interface.

The driver is a client driver to the core PMBus driver. Please see
Documentation/hwmon/pmbus.rst for details on PMBus client drivers.


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

This driver does not auto-detect devices. You will have to instantiate the
devices explicitly. Please see Documentation/i2c/instantiating-devices.rst for
details.

The shunt value in micro-ohms can be set via device tree at compile-time. Please
refer to the Documentation/devicetree/bindings/hwmon/lltc,ltc4286.yaml for bindings
if the device tree is used.


Platform data support
---------------------

The driver supports standard PMBus driver platform data. Please see
Documentation/hwmon/pmbus.rst for details.


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

The following attributes are supported. Limits are read-write, history reset
attributes are write-only, all other attributes are read-only.

======================= =======================================================
in1_label		"vin"
in1_input		Measured voltage.
in1_alarm		Input voltage alarm.
in1_min 		Minimum input voltage.
in1_max 		Maximum input voltage.

in2_label		"vout1"
in2_input		Measured voltage.
in2_alarm		Output voltage alarm.
in2_min 		Minimum output voltage.
in2_max 		Maximum output voltage.

curr1_label		"iout1"
curr1_input		Measured current.
curr1_alarm		Output current alarm.
curr1_max		Maximum current.

power1_label		"pin"
power1_input		Input power.
power1_alarm		Input power alarm.
power1_max		Maximum poewr.

temp1_input		Chip temperature.
temp1_min		Minimum chip temperature.
temp1_max		Maximum chip temperature.
temp1_crit		Critical chip temperature.
temp1_alarm		Chip temperature alarm.
======================= =======================================================
