2024-02-29 18:09:59

by Lee Jones

[permalink] [raw]
Subject: Re: [PATCH v2 00/14] Add support for TI TPS65224 PMIC

On Fri, 23 Feb 2024, Bhargav Raviprakash wrote:

> This series modifies the existing TPS6594 drivers to add support for the
> TPS65224 PMIC device that is a derivative of TPS6594. TPS65224 has a
> similar register map to TPS6594 with a few differences. SPI, I2C, ESM,
> PFSM, Regulators and GPIO features overlap between the two devices.
>
> TPS65224 is a Power Management IC (PMIC) which provides regulators and
> other features like GPIOs, Watchdog, Error Signal Monitor (ESM) and
> Pre-configurable Finite State Machine (PFSM). The SoC and the PMIC can
> communicate through the I2C or SPI interfaces. The PMIC TPS65224
> additionally has a 12-bit ADC.
> Data Sheet for TPS65224: https://www.ti.com/product/TPS65224-Q1
>
> Driver re-use is applied following the advice of the following series:
> https://lore.kernel.org/lkml/[email protected]/
>
> The features implemented in this series are:
> - TPS65224 Register definitions
> - Core (MFD I2C and SPI entry points)
> - PFSM
> - ESM
> - Regulators
> - Pinctrl
>
> TPS65224 Register definitions:
> This patch adds macros for register field definitions of TPS65224
> to the existing TPS6594 driver.
>
> Core description:
> I2C and SPI interface protocols are implemented, with and without
> the bit-integrity error detection feature (CRC mode).
>
> PFSM description:
> Strictly speaking, PFSM is not hardware. It is a piece of code.
> PMIC integrates a state machine which manages operational modes.
> Depending on the current operational mode, some voltage domains
> remain energized while others can be off.
> PFSM driver can be used to trigger transitions between configured
> states.
>
> ESM description:
> This device monitors the SoC error output signal at its nERR_MCU
> input pin. On error detection, ESM driver toggles the PMIC nRSTOUT pin
> to reset the SoC.
>
> Regulators description:
> 4 BUCKs and 3 LDOs.
> BUCK12 can be used in dual-phase mode.
>
> Pinctrl description:
> TPS65224 family has 6 GPIOs. Those GPIOs can also serve different
> functions such as I2C or SPI interface or watchdog disable functions.
> The driver provides both pinmuxing for the functions and GPIO capability.
>
> This series was tested on linux-next tag: next-20240118
>
> Test logs can be found here:
> https://gist.github.com/LeonardMH/58ec135921fb1062ffd4a8b384831eb0
>
> Changelog v1 -> v2:
> - Changes to patch sign-off
> - Commit message change in dt-bindings patch
> - regmap config included in the of_match_table data field
>
> Bhargav Raviprakash (11):
> mfd: tps6594: use volatile_table instead of volatile_reg
> mfd: tps6594: add regmap config in match data
> dt-bindings: mfd: ti,tps6594: Add TI TPS65224 PMIC
> mfd: tps6594-i2c: Add TI TPS65224 PMIC I2C
> mfd: tps6594-spi: Add TI TPS65224 PMIC SPI
> mfd: tps6594-core: Add TI TPS65224 PMIC core
> misc: tps6594-pfsm: Add TI TPS65224 PMIC PFSM
> misc: tps6594-esm: reversion check limited to TPS6594 family
> misc: tps6594-esm: use regmap_field
> misc: tps6594-esm: Add TI TPS65224 PMIC ESM
> arch: arm64: dts: ti: k3-am62p5-sk: Add TPS65224 PMIC support in AM62P
> dts
>
> Nirmala Devi Mal Nadar (3):
> mfd: tps6594: Add register definitions for TI TPS65224 PMIC
> regulator: tps6594-regulator: Add TI TPS65224 PMIC regulators
> pinctrl: pinctrl-tps6594: Add TPS65224 PMIC pinctrl and GPIO
>
> .../devicetree/bindings/mfd/ti,tps6594.yaml | 1 +
> arch/arm64/boot/dts/ti/k3-am62p5-sk.dts | 95 +++++
> drivers/mfd/tps6594-core.c | 266 +++++++++++--
> drivers/mfd/tps6594-i2c.c | 41 +-
> drivers/mfd/tps6594-spi.c | 41 +-
> drivers/misc/tps6594-esm.c | 89 +++--
> drivers/misc/tps6594-pfsm.c | 55 ++-
> drivers/pinctrl/pinctrl-tps6594.c | 287 ++++++++++++--
> drivers/regulator/Kconfig | 4 +-
> drivers/regulator/tps6594-regulator.c | 244 ++++++++++--
> include/linux/mfd/tps6594.h | 369 +++++++++++++++++-
> 11 files changed, 1325 insertions(+), 167 deletions(-)

Does this set have to be taken in wholesale?

--
Lee Jones [李琼斯]


2024-03-07 09:48:19

by Bhargav Raviprakash

[permalink] [raw]
Subject: Re: [PATCH v2 00/14] Add support for TI TPS65224 PMIC

Hi,

On Thu, 29 Feb 2024 17:49:52 +0000, Lee Jones wrote:
> On Fri, 23 Feb 2024, Bhargav Raviprakash wrote:
>
> > This series modifies the existing TPS6594 drivers to add support for the
> > TPS65224 PMIC device that is a derivative of TPS6594. TPS65224 has a
> > similar register map to TPS6594 with a few differences. SPI, I2C, ESM,
> > PFSM, Regulators and GPIO features overlap between the two devices.
> >
> > TPS65224 is a Power Management IC (PMIC) which provides regulators and
> > other features like GPIOs, Watchdog, Error Signal Monitor (ESM) and
> > Pre-configurable Finite State Machine (PFSM). The SoC and the PMIC can
> > communicate through the I2C or SPI interfaces. The PMIC TPS65224
> > additionally has a 12-bit ADC.
> > Data Sheet for TPS65224: https://www.ti.com/product/TPS65224-Q1
> >
> > Driver re-use is applied following the advice of the following series:
> > https://lore.kernel.org/lkml/[email protected]/
> >
> > The features implemented in this series are:
> > - TPS65224 Register definitions
> > - Core (MFD I2C and SPI entry points)
> > - PFSM
> > - ESM
> > - Regulators
> > - Pinctrl
> >
> > TPS65224 Register definitions:
> > This patch adds macros for register field definitions of TPS65224
> > to the existing TPS6594 driver.
> >
> > Core description:
> > I2C and SPI interface protocols are implemented, with and without
> > the bit-integrity error detection feature (CRC mode).
> >
> > PFSM description:
> > Strictly speaking, PFSM is not hardware. It is a piece of code.
> > PMIC integrates a state machine which manages operational modes.
> > Depending on the current operational mode, some voltage domains
> > remain energized while others can be off.
> > PFSM driver can be used to trigger transitions between configured
> > states.
> >
> > ESM description:
> > This device monitors the SoC error output signal at its nERR_MCU
> > input pin. On error detection, ESM driver toggles the PMIC nRSTOUT pin
> > to reset the SoC.
> >
> > Regulators description:
> > 4 BUCKs and 3 LDOs.
> > BUCK12 can be used in dual-phase mode.
> >
> > Pinctrl description:
> > TPS65224 family has 6 GPIOs. Those GPIOs can also serve different
> > functions such as I2C or SPI interface or watchdog disable functions.
> > The driver provides both pinmuxing for the functions and GPIO capability.
> >
> > This series was tested on linux-next tag: next-20240118
> >
> > Test logs can be found here:
> > https://gist.github.com/LeonardMH/58ec135921fb1062ffd4a8b384831eb0
> >
> > Changelog v1 -> v2:
> > - Changes to patch sign-off
> > - Commit message change in dt-bindings patch
> > - regmap config included in the of_match_table data field
> >
> > Bhargav Raviprakash (11):
> > mfd: tps6594: use volatile_table instead of volatile_reg
> > mfd: tps6594: add regmap config in match data
> > dt-bindings: mfd: ti,tps6594: Add TI TPS65224 PMIC
> > mfd: tps6594-i2c: Add TI TPS65224 PMIC I2C
> > mfd: tps6594-spi: Add TI TPS65224 PMIC SPI
> > mfd: tps6594-core: Add TI TPS65224 PMIC core
> > misc: tps6594-pfsm: Add TI TPS65224 PMIC PFSM
> > misc: tps6594-esm: reversion check limited to TPS6594 family
> > misc: tps6594-esm: use regmap_field
> > misc: tps6594-esm: Add TI TPS65224 PMIC ESM
> > arch: arm64: dts: ti: k3-am62p5-sk: Add TPS65224 PMIC support in AM62P
> > dts
> >
> > Nirmala Devi Mal Nadar (3):
> > mfd: tps6594: Add register definitions for TI TPS65224 PMIC
> > regulator: tps6594-regulator: Add TI TPS65224 PMIC regulators
> > pinctrl: pinctrl-tps6594: Add TPS65224 PMIC pinctrl and GPIO
> >
> > .../devicetree/bindings/mfd/ti,tps6594.yaml | 1 +
> > arch/arm64/boot/dts/ti/k3-am62p5-sk.dts | 95 +++++
> > drivers/mfd/tps6594-core.c | 266 +++++++++++--
> > drivers/mfd/tps6594-i2c.c | 41 +-
> > drivers/mfd/tps6594-spi.c | 41 +-
> > drivers/misc/tps6594-esm.c | 89 +++--
> > drivers/misc/tps6594-pfsm.c | 55 ++-
> > drivers/pinctrl/pinctrl-tps6594.c | 287 ++++++++++++--
> > drivers/regulator/Kconfig | 4 +-
> > drivers/regulator/tps6594-regulator.c | 244 ++++++++++--
> > include/linux/mfd/tps6594.h | 369 +++++++++++++++++-
> > 11 files changed, 1325 insertions(+), 167 deletions(-)
>
> Does this set have to be taken in wholesale?
>
> --
> Lee Jones [李琼斯]

The drivers do not have to be applied in lockstep or taken in wholesale.

Regards,
Bhargav