From: Alex Elder <elder@riscstar.com>
To: lee@kernel.org, lgirdwood@gmail.com, broonie@kernel.org,
alexandre.belloni@bootlin.com, robh@kernel.org,
krzk+dt@kernel.org, conor+dt@kernel.org
Cc: mat.jonczyk@o2.pl, dlan@gentoo.org, paul.walmsley@sifive.com,
palmer@dabbelt.com, aou@eecs.berkeley.edu, alex@ghiti.fr,
troymitchell988@gmail.com, guodong@riscstar.com,
linux-rtc@vger.kernel.org, devicetree@vger.kernel.org,
linux-riscv@lists.infradead.org, spacemit@lists.linux.dev,
linux-kernel@vger.kernel.org
Subject: [PATCH v6 0/8] spacemit: introduce P1 PMIC support
Date: Fri, 27 Jun 2025 09:22:59 -0500 [thread overview]
Message-ID: <20250627142309.1444135-1-elder@riscstar.com> (raw)
The SpacemiT P1 is an I2C-controlled PMIC that implements 6 buck
converters and 12 LDOs. It contains a load switch, ADC channels,
GPIOs, a real-time clock, and a watchdog timer.
This series introduces a multifunction driver for the P1 PMIC as well
as drivers for its regulators and RTC.
This version adds a new patch to change the simple MFD driver as
suggested by Lee Jones. Rather than specifying a full regmap config
for each simple MFD, specify the max_register value desired in the
simple_mfd_data structure. That supports all existing devices (which
don't use the regmap_config option), as well as the SpacemiT P1
(which specifies the max_register).
-Alex
This series is available here:
https://github.com/riscstar/linux/tree/outgoing/pmic-v6
Between version 5 and version 6:
- Added Rob Herring's reviewed-by to patch 1
- Add the simple MFD functionality suggested by Lee Jones
- Update patch 3 (previously 2) accordingly
Here is version 5 of this series:
https://lore.kernel.org/lkml/20250625164119.1068842-1-elder@riscstar.com/
Between version 4 and version 5:
- Only check the seconds register for change when looping on read
- Return without re-enabling the RTC if writing registers fails
- If the RTC is disabled when reading, return an error
Here is version 4 of this series:
https://lore.kernel.org/lkml/20250625164119.1068842-1-elder@riscstar.com/
More complete history is available at that link.
Alex Elder (8):
dt-bindings: mfd: add support the SpacemiT P1 PMIC
mfd: simple-mfd-i2c: specify max_register
mfd: simple-mfd-i2c: add SpacemiT P1 support
regulator: spacemit: support SpacemiT P1 regulators
rtc: spacemit: support the SpacemiT P1 RTC
riscv: dts: spacemit: enable the i2c8 adapter
riscv: dts: spacemit: define fixed regulators
riscv: dts: spacemit: define regulator constraints
.../devicetree/bindings/mfd/spacemit,p1.yaml | 86 +++++++++
.../boot/dts/spacemit/k1-bananapi-f3.dts | 138 +++++++++++++++
arch/riscv/boot/dts/spacemit/k1-pinctrl.dtsi | 7 +
arch/riscv/boot/dts/spacemit/k1.dtsi | 11 ++
drivers/mfd/Kconfig | 11 ++
drivers/mfd/simple-mfd-i2c.c | 30 ++--
drivers/mfd/simple-mfd-i2c.h | 2 +-
drivers/regulator/Kconfig | 12 ++
drivers/regulator/Makefile | 1 +
drivers/regulator/spacemit-p1.c | 157 ++++++++++++++++
drivers/rtc/Kconfig | 10 ++
drivers/rtc/Makefile | 1 +
drivers/rtc/rtc-spacemit-p1.c | 167 ++++++++++++++++++
13 files changed, 620 insertions(+), 13 deletions(-)
create mode 100644 Documentation/devicetree/bindings/mfd/spacemit,p1.yaml
create mode 100644 drivers/regulator/spacemit-p1.c
create mode 100644 drivers/rtc/rtc-spacemit-p1.c
base-commit: 2aeda9592360c200085898a258c4754bfe879921
--
2.45.2
next reply other threads:[~2025-06-27 14:23 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-06-27 14:22 Alex Elder [this message]
2025-06-27 14:23 ` [PATCH v6 1/8] dt-bindings: mfd: add support the SpacemiT P1 PMIC Alex Elder
2025-06-27 14:23 ` [PATCH v6 2/8] mfd: simple-mfd-i2c: specify max_register Alex Elder
2025-07-02 15:26 ` Lee Jones
2025-07-02 15:35 ` Alex Elder
2025-07-02 16:26 ` Lee Jones
2025-06-27 14:23 ` [PATCH v6 3/8] mfd: simple-mfd-i2c: add SpacemiT P1 support Alex Elder
2025-06-27 14:23 ` [PATCH v6 4/8] regulator: spacemit: support SpacemiT P1 regulators Alex Elder
2025-06-27 14:23 ` [PATCH v6 5/8] rtc: spacemit: support the SpacemiT P1 RTC Alex Elder
2025-06-27 14:23 ` [PATCH v6 6/8] riscv: dts: spacemit: enable the i2c8 adapter Alex Elder
2025-06-27 14:23 ` [PATCH v6 7/8] riscv: dts: spacemit: define fixed regulators Alex Elder
2025-06-27 14:23 ` [PATCH v6 8/8] riscv: dts: spacemit: define regulator constraints Alex Elder
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=20250627142309.1444135-1-elder@riscstar.com \
--to=elder@riscstar.com \
--cc=alex@ghiti.fr \
--cc=alexandre.belloni@bootlin.com \
--cc=aou@eecs.berkeley.edu \
--cc=broonie@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dlan@gentoo.org \
--cc=guodong@riscstar.com \
--cc=krzk+dt@kernel.org \
--cc=lee@kernel.org \
--cc=lgirdwood@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-riscv@lists.infradead.org \
--cc=linux-rtc@vger.kernel.org \
--cc=mat.jonczyk@o2.pl \
--cc=palmer@dabbelt.com \
--cc=paul.walmsley@sifive.com \
--cc=robh@kernel.org \
--cc=spacemit@lists.linux.dev \
--cc=troymitchell988@gmail.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox