* [PATCH v2 0/3] soc: qcom: ice: Enable firmware managed resource @ 2026-05-07 11:24 Linlin Zhang 2026-05-07 11:24 ` [PATCH v2 1/3] dt-bindings: crypto: qcom,ice: Add sa8255p support Linlin Zhang 0 siblings, 1 reply; 2+ messages in thread From: Linlin Zhang @ 2026-05-07 11:24 UTC (permalink / raw) To: Rob Herring, Krzysztof Kozlowski, Conor Dooley Cc: Herbert Xu, David S . Miller, Bjorn Andersson, devicetree, linux-crypto, linux-arm-msm, linux-kernel [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #1: Type: text/plain; charset=UTF-8, Size: 2610 bytes --] From: linlzhan <linlzhan@qti.qualcomm.com> The Qualcomm automotive SA8255p SoC relies on firmware to configure platform resources, including clocks, interconnects and TLMM (GPIOs). These resources are controlled by the driver via SCMI power and performance protocols. The SCMI power protocol is used to enable and disable platform resources, including clocks, interconnect paths, and TLMM, by mapping resource state transitions to the runtime PM frameworks resume/suspend callbacks. In this design, the ICE driver acts as an SCMI client, with clocks and power domains abstracted and controlled by the SCMI server in firmware. This implementation depends on pm_runtime_resume_and_get() and pm_runtime_put_sync(), which are available in the OPP trees linux-next branch. v2: -- rebase the patchset -- update to/cc lists -- Link to v1: https://lore.kernel.org/all/20260430032136.3058773-1-linlin.zhang@oss.qualcomm.com/ -- To Linux Community v6: - Protect calling clock API with fw_managed flag in ICE runtime OPS callbacks. - Link to v5: http://shc-kerarch-hyd:8080/kernel_archive/20260324095703.1306437-1-linlin.zhang@oss.qualcomm.com/T/#t v5: - Align the continued argument line under the first argument after left parenthesis. - Modify the return value in probe function. - Link to v4: http://shc-kerarch-hyd:8080/kernel_archive/20260318170626.3654744-1-linlin.zhang@oss.qualcomm.com/T/ v4: - Commit and signed-off by OSS mail id - Enable runtime PM for ICE dirver - Add driver data to diffrenciate the clock managed by the firmware or not - Link to v3: http://shc-kerarch-hyd:8080/kernel_archive/20251107091315.476074-1-quic_linlzhan@quicinc.com/ v3: - Update the subject of patch 2. - Update returned type of remvoe function and firmware flag in ICE diver. - Link to v2: http://shc-kerarch-hyd:8080/kernel_archive/20251104104935.2752144-1-quic_linlzhan@quicinc.com/T/#t v2: - Addresssed comments from Badgey - Make Document binding of ice pass for binding checking. - Link to v1: http://shc-kerarch-hyd:8080/kernel_archive/20251024050921.3573402-1-quic_linlzhan@quicinc.com/T/#t Initial version: - Add fw managed resource abstraction support in ICE driver. - Add respective compatible and document it's bindings. Linlin Zhang (3): dt-bindings: crypto: qcom,ice: Add sa8255p support soc: qcom: ice: Enable PM runtime for ICE driver soc: qcom: ice: Add SCMI support for sa8255p based targets .../crypto/qcom,inline-crypto-engine.yaml | 27 ++++- drivers/soc/qcom/ice.c | 108 +++++++++++++++--- 2 files changed, 115 insertions(+), 20 deletions(-) -- 2.34.1 ^ permalink raw reply [flat|nested] 2+ messages in thread
* [PATCH v2 1/3] dt-bindings: crypto: qcom,ice: Add sa8255p support 2026-05-07 11:24 [PATCH v2 0/3] soc: qcom: ice: Enable firmware managed resource Linlin Zhang @ 2026-05-07 11:24 ` Linlin Zhang 0 siblings, 0 replies; 2+ messages in thread From: Linlin Zhang @ 2026-05-07 11:24 UTC (permalink / raw) To: Rob Herring, Krzysztof Kozlowski, Conor Dooley Cc: Herbert Xu, David S . Miller, Bjorn Andersson, devicetree, linux-crypto, linux-arm-msm, linux-kernel On sa8255p, resources such as PHY, clocks, regulators, and resets are managed by remote firmware via the SCMI power protocol. As a result, the ICE driver cannot directly access clocks and must instead use power-domains to request resource configuration. Add the qcom,sa8255p-inline-crypto-engine compatible string and make clocks optional for platforms that use power-domains instead. Signed-off-by: Linlin Zhang <linlin.zhang@oss.qualcomm.com> --- .../crypto/qcom,inline-crypto-engine.yaml | 27 ++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/Documentation/devicetree/bindings/crypto/qcom,inline-crypto-engine.yaml b/Documentation/devicetree/bindings/crypto/qcom,inline-crypto-engine.yaml index 876bf90ed96e..4e7d9111d0eb 100644 --- a/Documentation/devicetree/bindings/crypto/qcom,inline-crypto-engine.yaml +++ b/Documentation/devicetree/bindings/crypto/qcom,inline-crypto-engine.yaml @@ -17,6 +17,7 @@ properties: - qcom,kaanapali-inline-crypto-engine - qcom,milos-inline-crypto-engine - qcom,qcs8300-inline-crypto-engine + - qcom,sa8255p-inline-crypto-engine - qcom,sa8775p-inline-crypto-engine - qcom,sc7180-inline-crypto-engine - qcom,sc7280-inline-crypto-engine @@ -32,6 +33,9 @@ properties: clocks: maxItems: 1 + power-domains: + maxItems: 1 + operating-points-v2: true opp-table: @@ -40,7 +44,20 @@ properties: required: - compatible - reg - - clocks + +allOf: + - if: + properties: + compatible: + contains: + enum: + - qcom,sa8255p-inline-crypto-engine + then: + required: + - power-domains + else: + required: + - clocks additionalProperties: false @@ -75,4 +92,12 @@ examples: }; }; }; + + - | + crypto@1d88000 { + compatible = "qcom,sa8255p-inline-crypto-engine", + "qcom,inline-crypto-engine"; + reg = <0x01d88000 0x8000>; + power-domains = <&scmi26_pd 0>; + }; ... -- 2.34.1 ^ permalink raw reply related [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-05-07 11:25 UTC | newest] Thread overview: 2+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2026-05-07 11:24 [PATCH v2 0/3] soc: qcom: ice: Enable firmware managed resource Linlin Zhang 2026-05-07 11:24 ` [PATCH v2 1/3] dt-bindings: crypto: qcom,ice: Add sa8255p support Linlin Zhang
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox