[PATCH v9 0/8] Add support for PMICs used on Tegra 3 devices
Svyatoslav Ryhel
clamor95 at gmail.com
Fri Oct 27 10:26:07 CEST 2023
Patch set adds basic support for PMICs used in many Tegra 3 devices.
All PMIC drivers are based on datasheets provided by vendors.
Implemented API include regulator set/get voltage enable/disable and
basic PMIC r/w capabilities.
Drivers were tested by me on LG P895 (max77663), HTC One X (TPS80032)
and ASUS TF300T (tps65911). Calculations and behavior were correct,
predictable and reproducible.
Poweroff functional will be added after this basic drivers are merged.
---
Changes from v8:
- dropped common.h
- decreased amount of inclusions
Changes from v7:
- no activity for 3 weeks, no changes, re-sending
Changes from v6:
- no changes, re-sending
Changes from v5:
- pass tps6591x regulator children directly via udevice_id data field
Changes from v4:
- used private structure for TPS80031 SPMS driver so that internal
flags do not interfere with those from dm_regulator_uclass_plat
- fixed detection on ldoln and ldousb for palmas ldo driver
Changes from v3:
- expanded descriptions in Kconfigs for pmics and regulators
- replaced ret with other variable name if it is not used for return
- dropped prefixed with pmic name
- dropped () in ~(var) type expressions
- return dm_i2c_* output in pmic_read/write functions
- switched to log_debug in some places
- added descryptions for some "non obvious" functions
- fixed tps80031 spms voltage calculation in non linear region
- adjsuted tps65911 vio voltage calculation
Changes from v2:
- removed all previously made poweroff API in favour to use sysreset
after this patchset is accepted
Changes from v1:
- created poweroff API for PMIC and integrated it call into do_poweroff
- added poweroff function to submitted max77663, tps80032 and tps65911
drivers
- fixed registers asignments for regulators with non-numeric name
(ldoln, ldousb, vddctrl)
---
Svyatoslav Ryhel (8):
power: pmic: palmas: support TI TPS65913 PMIC
power: regulator: palmas: fix ldoln and ldousb detection
power: pmic: add the base MAX77663 PMIC support
power: regulator: max77663: add regulator support
power: pmic: add the base TPS80031 PMIC support
power: regulator: tps80031: add regulator support
power: pmic: tps65910: add TPS65911 PMIC support
power: regulator: tps65911: add regulator support
doc/device-tree-bindings/pmic/max77663.txt | 84 ++++
doc/device-tree-bindings/pmic/tps65911.txt | 78 ++++
doc/device-tree-bindings/pmic/tps80031.txt | 76 ++++
drivers/power/pmic/Kconfig | 20 +
drivers/power/pmic/Makefile | 2 +
drivers/power/pmic/max77663.c | 81 ++++
drivers/power/pmic/palmas.c | 1 +
drivers/power/pmic/pmic_tps65910_dm.c | 15 +-
drivers/power/pmic/tps80031.c | 82 ++++
drivers/power/regulator/Kconfig | 28 ++
drivers/power/regulator/Makefile | 3 +
drivers/power/regulator/max77663_regulator.c | 375 ++++++++++++++++++
drivers/power/regulator/palmas_regulator.c | 24 +-
drivers/power/regulator/tps65911_regulator.c | 395 +++++++++++++++++++
drivers/power/regulator/tps80031_regulator.c | 347 ++++++++++++++++
include/power/max77663.h | 42 ++
include/power/tps65910_pmic.h | 44 +++
include/power/tps80031.h | 45 +++
18 files changed, 1729 insertions(+), 13 deletions(-)
create mode 100644 doc/device-tree-bindings/pmic/max77663.txt
create mode 100644 doc/device-tree-bindings/pmic/tps65911.txt
create mode 100644 doc/device-tree-bindings/pmic/tps80031.txt
create mode 100644 drivers/power/pmic/max77663.c
create mode 100644 drivers/power/pmic/tps80031.c
create mode 100644 drivers/power/regulator/max77663_regulator.c
create mode 100644 drivers/power/regulator/tps65911_regulator.c
create mode 100644 drivers/power/regulator/tps80031_regulator.c
create mode 100644 include/power/max77663.h
create mode 100644 include/power/tps80031.h
--
2.39.2
More information about the U-Boot
mailing list