.. SPDX-License-Identifier: GPL-2.0-only

Kernel driver mpq8785
=======================

Supported chips:

  * MPS MPM82504
  * MPS MPQ8785

    Prefix: 'mpq8785'

Author: Charles Hsu <ythsu0511@gmail.com>

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

The MPM82504 is a quad 25A, scalable, fully integrated power module with a PMBus
interface. The device offers a complete power solution that achieves up to 25A
per output channel. The MPM82504 has four output channels that can be paralleled
to provide 50A, 75A, or 100A of output current for flexible configurations.
The device can also operate in parallel with the MPM3695-100 and additional
MPM82504 devices to provide a higher output current. The MPM82504 operates
at high efficiency across a wide load range.

The MPQ8785 is a fully integrated, PMBus-compatible, high-frequency, synchronous
buck converter. The MPQ8785 offers a very compact solution that achieves up to
40A output current per phase, with excellent load and line regulation over a
wide input supply range. The MPQ8785 operates at high efficiency over a wide
output current load range.

The PMBus interface provides converter configurations and key parameters
monitoring.

The devices adopts MPS's proprietary multi-phase digital constant-on-time (MCOT)
control, which provides fast transient response and eases loop stabilization.
The MCOT scheme also allows multiple devices or channels to be connected in
parallel with excellent current sharing and phase interleaving for high-current
applications.

Fully integrated protection features include over-current protection (OCP),
over-voltage protection (OVP), under-voltage protection (UVP), and
over-temperature protection (OTP).

All supported modules require a minimal number of readily available, standard
external components. The MPM82504 is available in a BGA (15mmx30mmx5.18mm)
package and the MPQ8785 is available in a TLGA (5mmx6mm) package.

Device compliant with:

- PMBus rev 1.3 interface.

The driver exports the following attributes via the 'sysfs' files
for input voltage:

**in1_input**

**in1_label**

**in1_max**

**in1_max_alarm**

**in1_min**

**in1_min_alarm**

**in1_crit**

**in1_crit_alarm**

The driver provides the following attributes for output voltage:

**in2_input**

**in2_label**

**in2_alarm**

The driver provides the following attributes for output current:

**curr1_input**

**curr1_label**

**curr1_max**

**curr1_max_alarm**

**curr1_crit**

**curr1_crit_alarm**

The driver provides the following attributes for temperature:

**temp1_input**

**temp1_max**

**temp1_max_alarm**

**temp1_crit**

**temp1_crit_alarm**
