[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250730-s2mpg10-v5-0-cd133963626c@linaro.org>
Date: Wed, 30 Jul 2025 10:31:33 +0100
From: André Draszik <andre.draszik@...aro.org>
To: Krzysztof Kozlowski <krzk@...nel.org>, Lee Jones <lee@...nel.org>,
Rob Herring <robh@...nel.org>, Conor Dooley <conor+dt@...nel.org>,
Sylwester Nawrocki <s.nawrocki@...sung.com>,
Chanwoo Choi <cw00.choi@...sung.com>, Alim Akhtar <alim.akhtar@...sung.com>,
Michael Turquette <mturquette@...libre.com>,
Stephen Boyd <sboyd@...nel.org>, Russell King <linux@...linux.org.uk>,
Catalin Marinas <catalin.marinas@....com>, Will Deacon <will@...nel.org>,
Alexandre Belloni <alexandre.belloni@...tlin.com>
Cc: Peter Griffin <peter.griffin@...aro.org>,
Tudor Ambarus <tudor.ambarus@...aro.org>,
Will McVicker <willmcvicker@...gle.com>, kernel-team@...roid.com,
linux-kernel@...r.kernel.org, linux-samsung-soc@...r.kernel.org,
devicetree@...r.kernel.org, linux-clk@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org, linux-rtc@...r.kernel.org,
André Draszik <andre.draszik@...aro.org>,
Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
Subject: [PATCH v5 0/2] Samsung S2MPG10 PMIC MFD-based drivers
Original cover letter further down.
This is a resend of two patches from the original series that haven't
been merged yet. That series was merged except for the attached two
patches here. Other than rebasing against next-20250729 there are no
changes to them.
Lee, I think Stephen's intention was to get these two merged via the
MFD tree please.
Original cover letter:
----------------------
This series adds initial support for the Samsung S2MPG10 PMIC using the
MFD framework. This is a PMIC for mobile applications and is used on
the Google Pixel 6 and 6 Pro (oriole / raven).
*** dependency note ***
To compile, this depends on the Samsung ACPM driver in Linux next with
the following additional patches:
https://lore.kernel.org/all/20250324-acpm-atomic-v2-0-7d87746e1765@linaro.org/
https://lore.kernel.org/all/20250319-acpm-fixes-v2-0-ac2c1bcf322b@linaro.org/
https://lore.kernel.org/all/20250327-acpm-children-v1-0-0afe15ee2ff7@linaro.org/
*** dependency note end ***
+++ Kconfig update +++
There is a Kconfig symbol update in this series, because the existing
Samsung S2M driver has been split into core and transport (I2C & ACPM)
parts. CONFIG_MFD_SEC_CORE is now truly a core driver, and
the I2C code that was part of it is now enabled via CONFIG_MFD_SEC_I2C.
This was necessary because unlike the other S2M PMICs, S2MPG10 doesn't
talk via I2C, but via the Samsung ACPM firmware.
+++ Kconfig update end +++
This series must be applied in-order, due to interdependencies of some
of the patches. There are also various cleanup patches to the S2M
drivers. I've kept them ordered as:
* DT bindings (patches 1 ... 3)
* s2m mfd prep for adding S2MPG10 support (patches 4 ... 7)
* split S2M mfd driver into s2m-core and s2m-i2c, including the
kconfig symbol update (patch 8)
* S2MPG10 core driver (patch 9)
* s2m mfd driver cleanup patches (patches 10 ... 23)
* S2MPG10 clock driver (patch 24)
* s2m RTC prep for adding S2MPG10 (patch 25 ... 26)
* S2MPG10 RTC driver (patch 27)
* s2m RTC cleanup patches (patches 28 ... 31)
I realise these are many, but since some prep-work was required to be
able to add S2MPG anyway, I wanted to get the cleanup patches in as
well :-) Let me know if I should postpone them to a later date instead.
The S2MPG10 includes buck converters, various LDOs, power meters, RTC,
clock outputs, and additional GPIOs interfaces.
This series adds support in the top-level device driver, and for the
RTC and clock. Importantly, having the RTC driver allows to do a proper
reset of the system. Drivers or driver updates for the other components
will be added in future patches.
This will need a DT update for Oriole / Raven to enable this device. I
will send that out separately.
Cheers,
Andre'
Signed-off-by: André Draszik <andre.draszik@...aro.org>
---
Changes in v5:
- just a rebase & resend of the last two remaining patches
- no other changes
- Link to v4: https://lore.kernel.org/r/20250409-s2mpg10-v4-0-d66d5f39b6bf@linaro.org
Changes in v4:
- various updates to sec-acpm (patch 9, Lee)
- cache enum type in patch 25 (Krzysztof)
- collect tags
- Link to v3: https://lore.kernel.org/r/20250403-s2mpg10-v3-0-b542b3505e68@linaro.org
Changes in v3:
- Krzysztof:
- keep 'regulators' subnode required even for s2mpg10
- drop '$ref' and 'unevaluatedProperties' from pmic subnode, use
'additionalProperties' instead
- add some regulators to examples since s2mpg10 requires them as of
v3
- sec-acpm:
- use an enum for struct sec_acpm_bus_context::type
- consistent name space for all functions sec_pmic_acpm_... to be
similar to i2c and consistent in this file
- Link to v2: https://lore.kernel.org/r/20250328-s2mpg10-v2-0-b54dee33fb6b@linaro.org
Changes in v2:
- Rob:
- make PMIC node a child of ACPM, and all related changes (binding,
driver)
- Krzysztof:
- merge defconfig updates into patch changing the symbols (patch 8)
- split MODULE_AUTHOR update into a separate patch
- better alignment fix (patch 11)
- merge two s2dos05/s2mpu05 related patches into one (patch 14)
- myself:
- keep PMIC DT parsing in core, not in transport driver
- several updates in sec-acpm.c, see separate entries in patch 9
- fix typo in patch 17
- collect tags
- Link to v1: https://lore.kernel.org/r/20250323-s2mpg10-v1-0-d08943702707@linaro.org
---
André Draszik (2):
dt-bindings: clock: samsung,s2mps11: add s2mpg10
clk: s2mps11: add support for S2MPG10 PMIC clock
Documentation/devicetree/bindings/clock/samsung,s2mps11.yaml | 1 +
drivers/clk/clk-s2mps11.c | 8 ++++++++
2 files changed, 9 insertions(+)
---
base-commit: 54efec8782214652b331c50646013f8526570e8d
change-id: 20250321-s2mpg10-ef5d1ebd3043
Best regards,
--
André Draszik <andre.draszik@...aro.org>
Powered by blists - more mailing lists