* [PATCH 0/2] Initial Exynos850 ACPM support for exynos-acpm
@ 2026-05-12 23:12 Alexey Klimov
2026-05-12 23:12 ` [PATCH 1/2] dt-bindings: firmware: google,gs101-acpm-ipc: document Exynos850 compatible Alexey Klimov
2026-05-12 23:12 ` [PATCH 2/2] firmware: samsung: acpm: add Exynos850 support Alexey Klimov
0 siblings, 2 replies; 4+ messages in thread
From: Alexey Klimov @ 2026-05-12 23:12 UTC (permalink / raw)
To: Sam Protsenko, Tudor Ambarus, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Krzysztof Kozlowski, Alim Akhtar
Cc: Peter Griffin, linux-samsung-soc, devicetree, linux-arm-kernel,
linux-kernel
This series adds support for the Exynos850 SoC to the Samsung ACPM
firmware IPC driver.
The Exynos850 contains an APM co-processor that handles IPC messages for
clocks, power, thermal management, and PMIC control. While it uses the
same underlying ACPM communication machinery and protocols set as
the GS101, the exact implementation details vary between the two SoCs.
Those protocol-specific differences will be managed individually by the
corresponding protocol drivers. However, a dedicated compatible string
is still required for the core IPC driver because the Exynos850 firmware
utilizes a different initialisation data base offset.
First patch updates the google,gs101-acpm-ipc dt-bindings to include the
new "samsung,exynos850-acpm-ipc" compatible string.
Second patch adds the corresponding match data, base offset, and clock
device name to the exynos-acpm firmware driver.
There is a dependency for driver changes (not for device tree bindings
update) on clk-acpm exynos850 series posted here:
https://lore.kernel.org/linux-samsung-soc/20260512-exynos850-acpm-clk-v1-0-837532ddbf38@linaro.org/
Signed-off-by: Alexey Klimov <alexey.klimov@linaro.org>
---
Alexey Klimov (2):
dt-bindings: firmware: google,gs101-acpm-ipc: document Exynos850 compatible
firmware: samsung: acpm: add Exynos850 support
.../devicetree/bindings/firmware/google,gs101-acpm-ipc.yaml | 4 +++-
drivers/firmware/samsung/exynos-acpm.c | 10 ++++++++++
2 files changed, 13 insertions(+), 1 deletion(-)
---
base-commit: 9e0898f1c0f134c6bad146ca8578f73c3e40ac0a
change-id: 20260512-exynos850-acpm-firmware-support-0aefaf4104b6
prerequisite-change-id: 20260512-exynos850-acpm-clk-bed1c23b66eb:v1
prerequisite-patch-id: 223c977406801dde31779f956e33e65e51a0323c
prerequisite-patch-id: 9b11f60e3c53e94e28b5e54fb7bb87e5415d8a05
Best regards,
--
Alexey Klimov <alexey.klimov@linaro.org>
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH 1/2] dt-bindings: firmware: google,gs101-acpm-ipc: document Exynos850 compatible
2026-05-12 23:12 [PATCH 0/2] Initial Exynos850 ACPM support for exynos-acpm Alexey Klimov
@ 2026-05-12 23:12 ` Alexey Klimov
2026-05-14 14:46 ` Tudor Ambarus
2026-05-12 23:12 ` [PATCH 2/2] firmware: samsung: acpm: add Exynos850 support Alexey Klimov
1 sibling, 1 reply; 4+ messages in thread
From: Alexey Klimov @ 2026-05-12 23:12 UTC (permalink / raw)
To: Sam Protsenko, Tudor Ambarus, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Krzysztof Kozlowski, Alim Akhtar
Cc: Peter Griffin, linux-samsung-soc, devicetree, linux-arm-kernel,
linux-kernel
The Exynos850 SoC incorporates an APM co-processor. Communication with
this hardware block is done using the ACPM protocol, which handles IPC
messages for clocks, power, thermal management and PMIC control.
Dedicated compatible string is required for the Exynos850 because
its firmware utilizes a different initialisation data base offset
(0x7000) compared to the existing GS101 implementation (0xa000).
Signed-off-by: Alexey Klimov <alexey.klimov@linaro.org>
---
Documentation/devicetree/bindings/firmware/google,gs101-acpm-ipc.yaml | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/firmware/google,gs101-acpm-ipc.yaml b/Documentation/devicetree/bindings/firmware/google,gs101-acpm-ipc.yaml
index e68f9c3ca5e2..511c873280fe 100644
--- a/Documentation/devicetree/bindings/firmware/google,gs101-acpm-ipc.yaml
+++ b/Documentation/devicetree/bindings/firmware/google,gs101-acpm-ipc.yaml
@@ -22,7 +22,9 @@ description: |
properties:
compatible:
- const: google,gs101-acpm-ipc
+ enum:
+ - google,gs101-acpm-ipc
+ - samsung,exynos850-acpm-ipc
"#clock-cells":
const: 1
--
2.51.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH 2/2] firmware: samsung: acpm: add Exynos850 support
2026-05-12 23:12 [PATCH 0/2] Initial Exynos850 ACPM support for exynos-acpm Alexey Klimov
2026-05-12 23:12 ` [PATCH 1/2] dt-bindings: firmware: google,gs101-acpm-ipc: document Exynos850 compatible Alexey Klimov
@ 2026-05-12 23:12 ` Alexey Klimov
1 sibling, 0 replies; 4+ messages in thread
From: Alexey Klimov @ 2026-05-12 23:12 UTC (permalink / raw)
To: Sam Protsenko, Tudor Ambarus, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Krzysztof Kozlowski, Alim Akhtar
Cc: Peter Griffin, linux-samsung-soc, devicetree, linux-arm-kernel,
linux-kernel
The Exynos850 SoC contains an APM co-processor. Communication
with this hardware block is established using the ACPM protocol,
which handles IPC messages for clocks, power, thermal management,
and PMIC control.
Add the "samsung,exynos850-acpm-ipc" compatible string along with
its associated match data. This includes the specific initialisation
data base offset (which differs from the GS101 offset) and the
"exynos850-acpm-clk" device name required to properly instantiate
the clock provider.
Signed-off-by: Alexey Klimov <alexey.klimov@linaro.org>
---
drivers/firmware/samsung/exynos-acpm.c | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/drivers/firmware/samsung/exynos-acpm.c b/drivers/firmware/samsung/exynos-acpm.c
index 16c46ed60837..db4138f36038 100644
--- a/drivers/firmware/samsung/exynos-acpm.c
+++ b/drivers/firmware/samsung/exynos-acpm.c
@@ -37,6 +37,7 @@
#define ACPM_POLL_TIMEOUT_US (100 * USEC_PER_MSEC)
#define ACPM_TX_TIMEOUT_US 500000
+#define ACPM_EXYNOS850_INITDATA_BASE 0x7000
#define ACPM_GS101_INITDATA_BASE 0xa000
/**
@@ -766,6 +767,11 @@ struct acpm_handle *devm_acpm_get_by_node(struct device *dev,
}
EXPORT_SYMBOL_GPL(devm_acpm_get_by_node);
+static const struct acpm_match_data acpm_exynos850 = {
+ .initdata_base = ACPM_EXYNOS850_INITDATA_BASE,
+ .acpm_clk_dev_name = "exynos850-acpm-clk",
+};
+
static const struct acpm_match_data acpm_gs101 = {
.initdata_base = ACPM_GS101_INITDATA_BASE,
.acpm_clk_dev_name = "gs101-acpm-clk",
@@ -776,6 +782,10 @@ static const struct of_device_id acpm_match[] = {
.compatible = "google,gs101-acpm-ipc",
.data = &acpm_gs101,
},
+ {
+ .compatible = "samsung,exynos850-acpm-ipc",
+ .data = &acpm_exynos850,
+ },
{},
};
MODULE_DEVICE_TABLE(of, acpm_match);
--
2.51.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH 1/2] dt-bindings: firmware: google,gs101-acpm-ipc: document Exynos850 compatible
2026-05-12 23:12 ` [PATCH 1/2] dt-bindings: firmware: google,gs101-acpm-ipc: document Exynos850 compatible Alexey Klimov
@ 2026-05-14 14:46 ` Tudor Ambarus
0 siblings, 0 replies; 4+ messages in thread
From: Tudor Ambarus @ 2026-05-14 14:46 UTC (permalink / raw)
To: Alexey Klimov, Sam Protsenko, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Krzysztof Kozlowski, Alim Akhtar
Cc: Peter Griffin, linux-samsung-soc, devicetree, linux-arm-kernel,
linux-kernel
Hi, Alexey,
Please check sashiko's review from:
https://sashiko.dev/#/patchset/20260513-exynos850-acpm-firmware-support-v1-0-3858d097e433%40linaro.org
does the gs101 pmic constraints apply to e850?
Cheers,
ta
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2026-05-14 14:47 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-12 23:12 [PATCH 0/2] Initial Exynos850 ACPM support for exynos-acpm Alexey Klimov
2026-05-12 23:12 ` [PATCH 1/2] dt-bindings: firmware: google,gs101-acpm-ipc: document Exynos850 compatible Alexey Klimov
2026-05-14 14:46 ` Tudor Ambarus
2026-05-12 23:12 ` [PATCH 2/2] firmware: samsung: acpm: add Exynos850 support Alexey Klimov
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox