mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-12-27 10:01:39 -05:00
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>
126 lines
2.8 KiB
YAML
126 lines
2.8 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/interconnect/qcom,sm6350-rpmh.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Qualcomm SM6350 RPMh Network-On-Chip Interconnect
|
|
|
|
maintainers:
|
|
- Luca Weiss <luca.weiss@fairphone.com>
|
|
|
|
description:
|
|
Qualcomm RPMh-based interconnect provider on SM6350.
|
|
|
|
properties:
|
|
compatible:
|
|
enum:
|
|
- qcom,sm6350-aggre1-noc
|
|
- qcom,sm6350-aggre2-noc
|
|
- qcom,sm6350-config-noc
|
|
- qcom,sm6350-dc-noc
|
|
- qcom,sm6350-gem-noc
|
|
- qcom,sm6350-mmss-noc
|
|
- qcom,sm6350-npu-noc
|
|
- qcom,sm6350-system-noc
|
|
|
|
reg:
|
|
maxItems: 1
|
|
|
|
clocks:
|
|
minItems: 1
|
|
maxItems: 2
|
|
|
|
patternProperties:
|
|
'^interconnect-[a-z0-9\-]+$':
|
|
type: object
|
|
description:
|
|
The interconnect providers do not have a separate QoS register space,
|
|
but share parent's space.
|
|
$ref: qcom,rpmh-common.yaml#
|
|
|
|
properties:
|
|
compatible:
|
|
enum:
|
|
- qcom,sm6350-clk-virt
|
|
- qcom,sm6350-compute-noc
|
|
|
|
required:
|
|
- compatible
|
|
|
|
unevaluatedProperties: false
|
|
|
|
required:
|
|
- compatible
|
|
- 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
|
|
|
|
examples:
|
|
- |
|
|
#include <dt-bindings/clock/qcom,gcc-sm6350.h>
|
|
#include <dt-bindings/clock/qcom,rpmh.h>
|
|
|
|
config_noc: interconnect@1500000 {
|
|
compatible = "qcom,sm6350-config-noc";
|
|
reg = <0x01500000 0x28000>;
|
|
#interconnect-cells = <2>;
|
|
qcom,bcm-voters = <&apps_bcm_voter>;
|
|
};
|
|
|
|
aggre2_noc: interconnect@1700000 {
|
|
compatible = "qcom,sm6350-aggre2-noc";
|
|
reg = <0x01700000 0x1f880>;
|
|
#interconnect-cells = <2>;
|
|
qcom,bcm-voters = <&apps_bcm_voter>;
|
|
clocks = <&gcc GCC_AGGRE_USB3_PRIM_AXI_CLK>,
|
|
<&rpmhcc RPMH_IPA_CLK>;
|
|
|
|
compute_noc: interconnect-compute-noc {
|
|
compatible = "qcom,sm6350-compute-noc";
|
|
#interconnect-cells = <2>;
|
|
qcom,bcm-voters = <&apps_bcm_voter>;
|
|
};
|
|
};
|