This series of patches adds the MP5920 Host-swap controller, which is used as a protection and control IC for devices that are being inserted into a live backplane. MP5920 acts as a voltage regulator (MP5911 etc) supervisor. IC utilizes pmbus and provides monitoring, statistics and limits to electrical and thermal characteristics such as: - input and output voltage - output current - output power - IC temperature One must take into account the nonlinear character of readings, so there will be a statistical error in the range 5–10 percents, depending on current passing through. In order to use the IC, make sure to specify a valid I2C address (consult to datasheet and dts-bindings) MP5920 datasheet: https://www.monolithicpower.com/en/mp5920.html Changes in v2: - fixed typos Changes in v3: - removed unnecessary license blob - removed unnecessary headers - edited device tables style - added chip name checking in probing - fixed typos in pmbus_driver_info struct initialization Changes in v4: - added i2c_check_functionality in probing - refactored usage of dev_err_probe insted of dev_err - edited chip name string handling while printing - restored .driver.of_match_table, keeping i2c_driver "old" style Alex Vdovydchenko (2): dt-bindings: hwmon: Add MPS mp5920 hwmon: add MP5920 driver .../devicetree/bindings/trivial-devices.yaml | 2 + Documentation/hwmon/index.rst | 1 + Documentation/hwmon/mp5920.rst | 91 ++++++++++++++++++ drivers/hwmon/pmbus/Kconfig | 9 ++ drivers/hwmon/pmbus/Makefile | 1 + drivers/hwmon/pmbus/mp5920.c | 93 +++++++++++++++++++ 6 files changed, 197 insertions(+) create mode 100644 Documentation/hwmon/mp5920.rst create mode 100644 drivers/hwmon/pmbus/mp5920.c -- 2.43.0