dt-bindings: interconnect: qcom,sm6350-rpmh: Add clocks for QoS

Add the clocks for some interconnects to the bindings that are required
to set up the QoS correctly. Update one of the examples to aggre2_noc to
have an example with clocks.

Also while we're at it, remove #interconnect-cells: true as that's
already provided from qcom,rpmh-common.yaml.

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Luca Weiss <luca.weiss@fairphone.com>
Link: https://lore.kernel.org/r/20251114-sm6350-icc-qos-v2-1-6af348cb9c69@fairphone.com
Signed-off-by: Georgi Djakov <djakov@kernel.org>
This commit is contained in:
Luca Weiss
2025-11-14 10:31:09 +01:00
committed by Georgi Djakov
parent 5ffe1910ed
commit dfb1717308

View File

@@ -12,9 +12,6 @@ maintainers:
description: description:
Qualcomm RPMh-based interconnect provider on SM6350. Qualcomm RPMh-based interconnect provider on SM6350.
allOf:
- $ref: qcom,rpmh-common.yaml#
properties: properties:
compatible: compatible:
enum: enum:
@@ -30,7 +27,9 @@ properties:
reg: reg:
maxItems: 1 maxItems: 1
'#interconnect-cells': true clocks:
minItems: 1
maxItems: 2
patternProperties: patternProperties:
'^interconnect-[a-z0-9\-]+$': '^interconnect-[a-z0-9\-]+$':
@@ -46,8 +45,6 @@ patternProperties:
- qcom,sm6350-clk-virt - qcom,sm6350-clk-virt
- qcom,sm6350-compute-noc - qcom,sm6350-compute-noc
'#interconnect-cells': true
required: required:
- compatible - compatible
@@ -57,10 +54,54 @@ required:
- compatible - compatible
- reg - reg
allOf:
- $ref: qcom,rpmh-common.yaml#
- if:
properties:
compatible:
contains:
enum:
- qcom,sm6350-aggre1-noc
then:
properties:
clocks:
items:
- description: aggre UFS PHY AXI clock
- if:
properties:
compatible:
contains:
enum:
- qcom,sm6350-aggre2-noc
then:
properties:
clocks:
items:
- description: aggre USB3 PRIM AXI clock
- description: RPMH CC IPA clock
- if:
properties:
compatible:
contains:
enum:
- qcom,sm6350-aggre1-noc
- qcom,sm6350-aggre2-noc
then:
required:
- clocks
else:
properties:
clocks: false
unevaluatedProperties: false unevaluatedProperties: false
examples: examples:
- | - |
#include <dt-bindings/clock/qcom,gcc-sm6350.h>
#include <dt-bindings/clock/qcom,rpmh.h>
config_noc: interconnect@1500000 { config_noc: interconnect@1500000 {
compatible = "qcom,sm6350-config-noc"; compatible = "qcom,sm6350-config-noc";
reg = <0x01500000 0x28000>; reg = <0x01500000 0x28000>;
@@ -68,14 +109,16 @@ examples:
qcom,bcm-voters = <&apps_bcm_voter>; qcom,bcm-voters = <&apps_bcm_voter>;
}; };
system_noc: interconnect@1620000 { aggre2_noc: interconnect@1700000 {
compatible = "qcom,sm6350-system-noc"; compatible = "qcom,sm6350-aggre2-noc";
reg = <0x01620000 0x17080>; reg = <0x01700000 0x1f880>;
#interconnect-cells = <2>; #interconnect-cells = <2>;
qcom,bcm-voters = <&apps_bcm_voter>; qcom,bcm-voters = <&apps_bcm_voter>;
clocks = <&gcc GCC_AGGRE_USB3_PRIM_AXI_CLK>,
<&rpmhcc RPMH_IPA_CLK>;
clk_virt: interconnect-clk-virt { compute_noc: interconnect-compute-noc {
compatible = "qcom,sm6350-clk-virt"; compatible = "qcom,sm6350-compute-noc";
#interconnect-cells = <2>; #interconnect-cells = <2>;
qcom,bcm-voters = <&apps_bcm_voter>; qcom,bcm-voters = <&apps_bcm_voter>;
}; };