linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jerome Neanne <jneanne@baylibre.com>
To: lgirdwood@gmail.com, broonie@kernel.org, robh+dt@kernel.org,
	nm@ti.com, kristo@kernel.org
Cc: khilman@baylibre.com, narmstrong@baylibre.com, msp@baylibre.com,
	j-keerthy@ti.c, lee.jones@linaro.org, jneanne@baylibre.com,
	linux-kernel@vger.kernel.org, devicetree@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org
Subject: [PATCH v1 00/14] Add support for TI TPS65219 PMIC.
Date: Tue, 19 Jul 2022 11:17:28 +0200	[thread overview]
Message-ID: <20220719091742.3221-1-jneanne@baylibre.com> (raw)

Not implemented
- DVS

1-Regulators:
Full implementation and test
Visual check: cat /sys/kernel/debug/regulator/regulator_summary
Full validation requires userspace-consumer and virtual-regulator
LDO1 is not used and output can be probbed on TP84.

Changes vs RFC:
Use standard regmap helpers only.
Reshaped integrating review feedbacks.

2-Reset WARM/COLD
test procedure: launch reboot on the console and check visually

warm vs. cold can be configured on the kernel command-line at boot time.
Default is cold, but adding `reboot=w`
to kernel command allow testing warm reboot.

Alternative:
`# echo warm > /sys/kernel/reboot/mode` 

Changes vs RFC:
Hooked to standard linux/reboot.h
Add pr_flush to ensure output to console happens.


3-SW Shutdown
test procedure: launch halt on the console and check visually

Note: enters in competition with other source during probe

Board Test Points can be used to check voltage after system shutdown.
baseport is not handling wakeup.
A power OFF/ON cycle is needed to recover.

Changes vs RFC:
Standard system-power-controller has been implemented to enable override.

4-Interrupt Pin (nINT): NEW, was not implemented in RFC

Interrupt occurring on PMIC TPS65219 is propagated to SOC
through EXTINTn pin connected to gic500 interrupt controller

Interrupt lines for TPS65219 shows-up on console:
cat /proc/interrupts

Validation:
Create a Residual Voltage interrupt and handling and interrupt source is cleared.
`tps65219 0-0030: Registered residual voltage for LDO1`
`533:          1          0  tps65219_irq  35 Edge      LDO1_RV`

Mapped to power button (use TP90 to GND to emulate a physical button)

5-PB Startup and Shutdown: NEW, was not implemented in RFC
New implementation to support both rising and falling edge.

TPS65219 has different interrupts compared to other TPS6521* chips.
TPS65219 defines two interrupts for the powerbutton one for push and one
for release.


Interrupt support: cat proc/interrupts
`557:          0          0  tps65219_irq  47 Edge      tps65219-pwrbutton.1.auto`
`558:          0          0  tps65219_irq  48 Edge      tps65219-pwrbutton.1.auto`

Jerome Neanne (9):
  regulator: dt-bindings: Add TI TPS65219 PMIC bindings
  regulator: dt-bindings: Add interrupts support to TPS65219 PMIC
    bindings
  mfd: drivers: Add TI TPS65219 PMIC support
  mfd: drivers: Add interrupts support to TI TPS65219 PMIC
  regulator: drivers: Add TI TPS65219 PMIC regulators support
  arm64: defconfig: Add tps65219 as modules
  arm64: dts: ti: Add TI TPS65219 PMIC support for AM642 SK board.
  arm64: dts: ti: Add pinmux and irq mapping for TPS65219 external
    interrupts
  arm64: defconfig: Add tps65219 power-button as module

Markus Schneider-Pargmann (5):
  MAINTAINERS: OMAP2+ support, add tps65218-pwrbutton
  regulator: dt-bindings: tps65219: Add power-button property
  mfd: tps65219: Add power-button support
  Input: Add tps65219 interrupt driven powerbutton
  arm64: dts: ti: k3-am642-sk: Enable tps65219 power-button

 .../bindings/regulator/ti,tps65219.yaml       | 178 +++++++
 MAINTAINERS                                   |   4 +
 arch/arm64/boot/dts/ti/k3-am642-sk.dts        | 117 +++++
 arch/arm64/configs/defconfig                  |   3 +
 drivers/input/misc/Kconfig                    |  10 +
 drivers/input/misc/Makefile                   |   1 +
 drivers/input/misc/tps65219-pwrbutton.c       | 150 ++++++
 drivers/mfd/Kconfig                           |  15 +
 drivers/mfd/Makefile                          |   1 +
 drivers/mfd/tps65219.c                        | 438 ++++++++++++++++++
 drivers/regulator/Kconfig                     |   9 +
 drivers/regulator/Makefile                    |   1 +
 drivers/regulator/tps65219-regulator.c        | 414 +++++++++++++++++
 include/linux/mfd/tps65219.h                  | 364 +++++++++++++++
 14 files changed, 1705 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/regulator/ti,tps65219.yaml
 create mode 100644 drivers/input/misc/tps65219-pwrbutton.c
 create mode 100644 drivers/mfd/tps65219.c
 create mode 100644 drivers/regulator/tps65219-regulator.c
 create mode 100644 include/linux/mfd/tps65219.h

-- 
2.17.1


             reply	other threads:[~2022-07-19  9:17 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-19  9:17 Jerome Neanne [this message]
2022-07-19  9:17 ` [PATCH v1 01/14] MAINTAINERS: OMAP2+ support, add tps65218-pwrbutton Jerome Neanne
2022-07-19  9:17 ` [PATCH v1 02/14] regulator: dt-bindings: Add TI TPS65219 PMIC bindings Jerome Neanne
2022-07-19 12:55   ` Mark Brown
2022-07-19  9:17 ` [PATCH v1 03/14] regulator: dt-bindings: Add interrupts support to " Jerome Neanne
2022-07-19 12:58   ` Mark Brown
2022-07-20 23:37   ` Rob Herring
2022-07-19  9:17 ` [PATCH v1 04/14] regulator: dt-bindings: tps65219: Add power-button property Jerome Neanne
2022-07-20 23:39   ` Rob Herring
2022-07-21  7:09     ` Markus Schneider-Pargmann
2022-07-19  9:17 ` [PATCH v1 05/14] mfd: drivers: Add TI TPS65219 PMIC support Jerome Neanne
2022-07-19  9:17 ` [PATCH v1 06/14] mfd: drivers: Add interrupts support to TI TPS65219 PMIC Jerome Neanne
2022-07-19  9:17 ` [PATCH v1 07/14] mfd: tps65219: Add power-button support Jerome Neanne
2022-07-19  9:17 ` [PATCH v1 08/14] regulator: drivers: Add TI TPS65219 PMIC regulators support Jerome Neanne
2022-07-19 13:32   ` Mark Brown
2022-07-22 10:12     ` jerome Neanne
2022-07-22 12:39       ` Mark Brown
2022-07-22 13:30         ` jerome Neanne
2022-07-22 18:40           ` Mark Brown
2022-07-19  9:17 ` [PATCH v1 09/14] Input: Add tps65219 interrupt driven powerbutton Jerome Neanne
2022-07-19  9:17 ` [PATCH v1 10/14] arm64: defconfig: Add tps65219 as modules Jerome Neanne
2022-07-19  9:17 ` [PATCH v1 11/14] arm64: dts: ti: Add TI TPS65219 PMIC support for AM642 SK board Jerome Neanne
2022-07-19 13:00   ` Nishanth Menon
     [not found]     ` <CAOP-2kHgEhm+Ym8o7A49qP-oabO0i+89PGoWO0c9_2xz7oU89w@mail.gmail.com>
2022-07-19 13:17       ` Nishanth Menon
2022-07-19  9:17 ` [PATCH v1 12/14] arm64: dts: ti: Add pinmux and irq mapping for TPS65219 external interrupts Jerome Neanne
2022-07-19  9:17 ` [PATCH v1 13/14] arm64: dts: ti: k3-am642-sk: Enable tps65219 power-button Jerome Neanne
2022-07-19  9:17 ` [PATCH v1 14/14] arm64: defconfig: Add tps65219 power-button as module Jerome Neanne

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=20220719091742.3221-1-jneanne@baylibre.com \
    --to=jneanne@baylibre.com \
    --cc=broonie@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=j-keerthy@ti.c \
    --cc=khilman@baylibre.com \
    --cc=kristo@kernel.org \
    --cc=lee.jones@linaro.org \
    --cc=lgirdwood@gmail.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=msp@baylibre.com \
    --cc=narmstrong@baylibre.com \
    --cc=nm@ti.com \
    --cc=robh+dt@kernel.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).