linux-pm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Rob Herring <robh@kernel.org>
To: David Dai <daidavid1@codeaurora.org>
Cc: georgi.djakov@linaro.org, bjorn.andersson@linaro.org,
	evgreen@google.com, sboyd@kernel.org, ilina@codeaurora.org,
	seansw@qti.qualcomm.com, elder@linaro.org,
	linux-kernel@vger.kernel.org, devicetree@vger.kernel.org,
	linux-arm-msm@vger.kernel.org, linux-pm@vger.kernel.org
Subject: Re: [PATCH v1 1/4] dt-bindings: interconnect: Update Qualcomm SDM845 DT bindings
Date: Thu, 26 Dec 2019 11:45:26 -0700	[thread overview]
Message-ID: <20191226184526.GA18040@bogus> (raw)
In-Reply-To: <1576475925-20601-2-git-send-email-daidavid1@codeaurora.org>

On Sun, Dec 15, 2019 at 09:58:42PM -0800, David Dai wrote:
> Redefine the Network-on-Chip devices to more accurately describe
> the interconnect topology on Qualcomm's SDM845 platform. Each
> interconnect device can communicate with different instances of the
> RPMh hardware which are described as RSCs(Resource State Coordinators).
> 
> As part of updating the DT bindings, convert the existing sdm845 bindings
> to DT schema format using json-schema.

Too many things in one patch. Convert to schema in one patch and then 
add new stuff in separate patch(es).

> 
> Signed-off-by: David Dai <daidavid1@codeaurora.org>
> ---
>  .../bindings/interconnect/qcom,bcm-voter.yaml      |  45 +++++++++
>  .../bindings/interconnect/qcom,sdm845.txt          |  24 -----
>  .../bindings/interconnect/qcom,sdm845.yaml         | 108 +++++++++++++++++++++
>  3 files changed, 153 insertions(+), 24 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/interconnect/qcom,bcm-voter.yaml
>  delete mode 100644 Documentation/devicetree/bindings/interconnect/qcom,sdm845.txt
>  create mode 100644 Documentation/devicetree/bindings/interconnect/qcom,sdm845.yaml
> 
> diff --git a/Documentation/devicetree/bindings/interconnect/qcom,bcm-voter.yaml b/Documentation/devicetree/bindings/interconnect/qcom,bcm-voter.yaml
> new file mode 100644
> index 0000000..74f0715
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/interconnect/qcom,bcm-voter.yaml
> @@ -0,0 +1,45 @@
> +# SPDX-License-Identifier: GPL-2.0
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/interconnect/qcom,bcm-voter.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Qualcomm BCM-Voter Interconnect
> +
> +maintainers:
> +  - David Dai <daidavid1@codeaurora.org>
> +
> +description: |
> +    The Bus Clock Manager (BCM) is a dedicated hardware accelerator
> +    that manages shared system resources by aggregating requests
> +    from multiple Resource State Coordinators (RSC). Interconnect
> +    providers are able to vote for aggregated thresholds values from
> +    consumers by communicating through their respective RSCs.
> +
> +properties:
> +  compatible:
> +    enum:
> +      - qcom,sdm845-bcm-voter
> +
> +required:
> +  - compatible
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    apps_rsc: interconnect@179c0000 {
> +        compatible = "qcom,rpmh-rsc";
> +
> +        apps_bcm_voter: bcm_voter {
> +            compatible = "qcom,sdm845-bcm-voter";
> +        };
> +    };
> +
> +    disp_rsc: interconnect@179d0000 {
> +        compatible = "qcom,rpmh-rsc";
> +
> +        disp_bcm_voter: bcm_voter {
> +            compatible = "qcom,sdm845-bcm-voter";
> +        };
> +    };
> diff --git a/Documentation/devicetree/bindings/interconnect/qcom,sdm845.txt b/Documentation/devicetree/bindings/interconnect/qcom,sdm845.txt
> deleted file mode 100644
> index 5c4f1d9..0000000
> --- a/Documentation/devicetree/bindings/interconnect/qcom,sdm845.txt
> +++ /dev/null
> @@ -1,24 +0,0 @@
> -Qualcomm SDM845 Network-On-Chip interconnect driver binding
> ------------------------------------------------------------
> -
> -SDM845 interconnect providers support system bandwidth requirements through
> -RPMh hardware accelerators known as Bus Clock Manager (BCM). The provider is
> -able to communicate with the BCM through the Resource State Coordinator (RSC)
> -associated with each execution environment. Provider nodes must reside within
> -an RPMh device node pertaining to their RSC and each provider maps to a single
> -RPMh resource.
> -
> -Required properties :
> -- compatible : shall contain only one of the following:
> -			"qcom,sdm845-rsc-hlos"
> -- #interconnect-cells : should contain 1
> -
> -Examples:
> -
> -apps_rsc: rsc {
> -	rsc_hlos: interconnect {
> -		compatible = "qcom,sdm845-rsc-hlos";
> -		#interconnect-cells = <1>;
> -	};
> -};
> -
> diff --git a/Documentation/devicetree/bindings/interconnect/qcom,sdm845.yaml b/Documentation/devicetree/bindings/interconnect/qcom,sdm845.yaml
> new file mode 100644
> index 0000000..1aec321
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/interconnect/qcom,sdm845.yaml
> @@ -0,0 +1,108 @@
> +# SPDX-License-Identifier: GPL-2.0
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/interconnect/qcom,sdm845.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title:  Qualcomm SDM845 Network-On-Chip Interconnect
> +
> +maintainers:
> +  - David Dai <daidavid1@codeaurora.org>
> +
> +description: |
> +   SDM845 interconnect providers support system bandwidth requirements through
> +   RPMh hardware accelerators known as Bus Clock Manager (BCM). The provider is
> +   able to communicate with the BCM through the Resource State Coordinator (RSC)
> +   associated with each execution environment. Provider nodes must point to at
> +   least one RPMh device child node pertaining to their RSC and each provider
> +   can map to multiple RPMh resources.
> +
> +properties:
> +  reg:
> +    maxItems: 1
> +
> +  compatible:
> +    enum:
> +      - qcom,sdm845-aggre1-noc
> +      - qcom,sdm845-aggre2-noc
> +      - qcom,sdm845-config-noc
> +      - qcom,sdm845-dc-noc
> +      - qcom,sdm845-gladiator-noc
> +      - qcom,sdm845-mem-noc
> +      - qcom,sdm845-mmss-noc
> +      - qcom,sdm845-system-noc
> +
> +  '#interconnect-cells':
> +    const: 1
> +
> +  qcom,bcm-voters:
> +    $ref: /schemas/types.yaml#/definitions/phandle-array
> +    description: |
> +      List of phandles to qcom,bcm-voter nodes that are required by
> +      this interconnect to send RPMh commands.
> +
> +  qcom,bcm-voter-names:
> +    $ref: /schemas/types.yaml#/definitions/string-array

Don't need a type for *-names.

> +    description: |
> +      Names for each of the qcom,bcm-voters specified.
> +
> +required:
> +  - compatible
> +  - reg
> +  - '#interconnect-cells'
> +  - qcom,bcm-voters
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +      #include <dt-bindings/interconnect/qcom,sdm845.h>
> +
> +      mem_noc: interconnect@1380000 {
> +             compatible = "qcom,sdm845-mem-noc";
> +             reg = <0 0x01380000 0 0x27200>;
> +             #interconnect-cells = <1>;
> +             qcom,bcm-voters = <&apps_bcm_voter>;
> +      };
> +
> +      dc_noc: interconnect@14e0000 {
> +             compatible = "qcom,sdm845-dc-noc";
> +             reg = <0 0x014e0000 0 0x400>;
> +             #interconnect-cells = <1>;
> +             qcom,bcm-voters = <&apps_bcm_voter>;
> +      };
> +
> +      config_noc: interconnect@1500000 {
> +             compatible = "qcom,sdm845-config-noc";
> +             reg = <0 0x01500000 0 0x5080>;
> +             #interconnect-cells = <1>;
> +             qcom,bcm-voters = <&apps_bcm_voter>;
> +      };
> +
> +      system_noc: interconnect@1620000 {
> +             compatible = "qcom,sdm845-system-noc";
> +             reg = <0 0x01620000 0 0x18080>;
> +             #interconnect-cells = <1>;
> +             qcom,bcm-voters = <&apps_bcm_voter>;
> +      };
> +
> +      aggre1_noc: interconnect@16e0000 {
> +             compatible = "qcom,sdm845-aggre1-noc";
> +             reg = <0 0x016e0000 0 0xd080>;
> +             #interconnect-cells = <1>;
> +             qcom,bcm-voters = <&apps_bcm_voter>;
> +      };
> +
> +      aggre2_noc: interconnect@1700000 {
> +             compatible = "qcom,sdm845-aggre2-noc";
> +             reg = <0 0x01700000 0 0x3b100>;
> +             #interconnect-cells = <1>;
> +             qcom,bcm-voters = <&apps_bcm_voter>;
> +      };
> +
> +      mmss_noc: interconnect@1740000 {
> +             compatible = "qcom,sdm845-mmss-noc";
> +             reg = <0 0x01740000 0 0x1c1000>;
> +             #interconnect-cells = <1>;
> +             qcom,bcm-voters = <&apps_bcm_voter>;
> +      };

Examples are just examples, not an enumeration of all possible nodes.

Also, when is qcom,bcm-voters more than 1 phandle.

Rob

  reply	other threads:[~2019-12-26 18:45 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-12-16  5:58 [PATCH v1 0/4] Split SDM845 interconnect nodes and consolidate RPMh support David Dai
2019-12-16  5:58 ` [PATCH v1 1/4] dt-bindings: interconnect: Update Qualcomm SDM845 DT bindings David Dai
2019-12-26 18:45   ` Rob Herring [this message]
2020-01-02 19:48     ` David Dai
2019-12-16  5:58 ` [PATCH v1 2/4] interconnect: qcom: Consolidate interconnect RPMh support David Dai
2019-12-19 12:53   ` Georgi Djakov
2019-12-20  0:00     ` daidavid1
2019-12-16  5:58 ` [PATCH v1 3/4] interconnect: qcom: sdm845: Split qnodes into their respective NoCs David Dai
2019-12-26 18:48   ` Rob Herring
2019-12-26 19:00     ` Bjorn Andersson
2019-12-16  5:58 ` [PATCH v1 4/4] arm64: dts: sdm845: Redefine interconnect provider DT nodes David Dai
2020-01-07 23:45 ` [PATCH v1 0/4] Split SDM845 interconnect nodes and consolidate RPMh support Evan Green
2020-01-14 23:36   ` David Dai

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20191226184526.GA18040@bogus \
    --to=robh@kernel.org \
    --cc=bjorn.andersson@linaro.org \
    --cc=daidavid1@codeaurora.org \
    --cc=devicetree@vger.kernel.org \
    --cc=elder@linaro.org \
    --cc=evgreen@google.com \
    --cc=georgi.djakov@linaro.org \
    --cc=ilina@codeaurora.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=sboyd@kernel.org \
    --cc=seansw@qti.qualcomm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).