All of lore.kernel.org
 help / color / mirror / Atom feed
From: Julien Panis <jpanis@baylibre.com>
To: lee@kernel.org, robh+dt@kernel.org,
	krzysztof.kozlowski+dt@linaro.org, corbet@lwn.net, arnd@arndb.de,
	gregkh@linuxfoundation.org, derek.kiernan@xilinx.com,
	dragan.cvetic@xilinx.com
Cc: eric.auger@redhat.com, jgg@ziepe.ca, razor@blackwall.org,
	stephen@networkplumber.org, davem@davemloft.net,
	christian.koenig@amd.com, contact@emersion.fr,
	devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-doc@vger.kernel.org, sterzik@ti.com, u-kumar1@ti.com,
	eblanc@baylibre.com, jneanne@baylibre.com
Subject: [PATCH v3 0/4] TI TPS6594 PMIC support (Core, ESM, PFSM)
Date: Tue, 21 Mar 2023 18:10:16 +0100	[thread overview]
Message-ID: <20230321171020.74736-1-jpanis@baylibre.com> (raw)

TPS6594 is a Power Management IC which provides regulators and others
features like GPIOs, RTC, watchdog, ESMs (Error Signal Monitor), and
PFSM (Pre-configurable Finite State Machine). The SoC and the PMIC can
communicate through the I2C or SPI interfaces.
TPS6594 is the super-set device while TPS6593 and LP8764X are derivatives.

This series adds support to TI TPS6594 PMIC and its derivatives.

The features implemented in this series are:
- Core (MFD I2C and SPI entry points)
- ESM (child device)
- PFSM (child device)

- Core description:
I2C and SPI interface protocols are implemented, with and without
the bit-integrity error detection feature (CRC mode).
In multi-PMIC configuration, all instances share a single GPIO of
the SoC to generate interrupt requests via their respective nINT
output pin.

- ESM description:
This device monitors the SoC error output signal at its nERR_SOC
input pin. In error condition, ESM toggles its nRSTOUT_SOC pin
to reset the SoC.
Basically, ESM driver starts ESM hardware.

- 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.

Link to v2:
https://lore.kernel.org/all/20230315110736.35506-1-jpanis@baylibre.com/

Others series will be submitted over the next few weeks, providing
drivers for others child devices like GPIOs (pinctrl), RTC, and
regulators. Board support will also be added (device trees).

Julien Panis (4):
  dt-bindings: mfd: Add TI TPS6594 PMIC
  mfd: tps6594: Add driver for TI TPS6594 PMIC
  misc: tps6594-esm: Add driver for TI TPS6594 ESM
  misc: tps6594-pfsm: Add driver for TI TPS6594 PFSM

 .../devicetree/bindings/mfd/ti,tps6594.yaml   |  231 ++++
 .../userspace-api/ioctl/ioctl-number.rst      |    1 +
 drivers/mfd/Kconfig                           |   32 +
 drivers/mfd/Makefile                          |    3 +
 drivers/mfd/tps6594-core.c                    |  453 ++++++++
 drivers/mfd/tps6594-i2c.c                     |  244 ++++
 drivers/mfd/tps6594-spi.c                     |  129 +++
 drivers/misc/Kconfig                          |   23 +
 drivers/misc/Makefile                         |    2 +
 drivers/misc/tps6594-esm.c                    |  132 +++
 drivers/misc/tps6594-pfsm.c                   |  304 +++++
 include/linux/mfd/tps6594.h                   | 1020 +++++++++++++++++
 include/uapi/linux/tps6594_pfsm.h             |   45 +
 13 files changed, 2619 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/mfd/ti,tps6594.yaml
 create mode 100644 drivers/mfd/tps6594-core.c
 create mode 100644 drivers/mfd/tps6594-i2c.c
 create mode 100644 drivers/mfd/tps6594-spi.c
 create mode 100644 drivers/misc/tps6594-esm.c
 create mode 100644 drivers/misc/tps6594-pfsm.c
 create mode 100644 include/linux/mfd/tps6594.h
 create mode 100644 include/uapi/linux/tps6594_pfsm.h


base-commit: fe15c26ee26efa11741a7b632e9f23b01aca4cc6
-- 
2.37.3


             reply	other threads:[~2023-03-21 17:11 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-21 17:10 Julien Panis [this message]
2023-03-21 17:10 ` [PATCH v3 1/4] dt-bindings: mfd: Add TI TPS6594 PMIC Julien Panis
2023-03-22  7:34   ` Krzysztof Kozlowski
2023-03-22  8:01     ` Julien Panis
2023-03-22  8:16       ` Krzysztof Kozlowski
2023-03-22 13:55         ` Julien Panis
2023-03-22 21:36           ` Krzysztof Kozlowski
2023-03-21 17:10 ` [PATCH v3 2/4] mfd: tps6594: Add driver for " Julien Panis
2023-03-27 15:35   ` Julien Panis
2023-03-29 14:49     ` Lee Jones
2023-03-21 17:10 ` [PATCH v3 3/4] misc: tps6594-esm: Add driver for TI TPS6594 ESM Julien Panis
2023-03-21 17:10 ` [PATCH v3 4/4] misc: tps6594-pfsm: Add driver for TI TPS6594 PFSM Julien Panis

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230321171020.74736-1-jpanis@baylibre.com \
    --to=jpanis@baylibre.com \
    --cc=arnd@arndb.de \
    --cc=christian.koenig@amd.com \
    --cc=contact@emersion.fr \
    --cc=corbet@lwn.net \
    --cc=davem@davemloft.net \
    --cc=derek.kiernan@xilinx.com \
    --cc=devicetree@vger.kernel.org \
    --cc=dragan.cvetic@xilinx.com \
    --cc=eblanc@baylibre.com \
    --cc=eric.auger@redhat.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=jgg@ziepe.ca \
    --cc=jneanne@baylibre.com \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=lee@kernel.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=razor@blackwall.org \
    --cc=robh+dt@kernel.org \
    --cc=stephen@networkplumber.org \
    --cc=sterzik@ti.com \
    --cc=u-kumar1@ti.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.