Message ID | 1578630784-962-4-git-send-email-daidavid1@codeaurora.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Split SDM845 interconnect nodes and consolidate RPMh support | expand |
On Thu, Jan 09, 2020 at 08:33:01PM -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). > > Signed-off-by: David Dai <daidavid1@codeaurora.org> > --- > .../bindings/interconnect/qcom,sdm845.yaml | 49 ++++++++++++++++++---- > 1 file changed, 40 insertions(+), 9 deletions(-) > > diff --git a/Documentation/devicetree/bindings/interconnect/qcom,sdm845.yaml b/Documentation/devicetree/bindings/interconnect/qcom,sdm845.yaml > index 61e0097..6741a12 100644 > --- a/Documentation/devicetree/bindings/interconnect/qcom,sdm845.yaml > +++ b/Documentation/devicetree/bindings/interconnect/qcom,sdm845.yaml > @@ -13,21 +13,44 @@ 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 reside within > - an RPMh device node pertaining to their RSC and each provider maps to a > - single RPMh resource. > + 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-rsc-hlos > + - 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-voter-names: > + items: > + - const: apps > + - const: disp If these are always the names, why do you need them? > + > + 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. Is the max length 2? > + > required: > - compatible > + - reg > - '#interconnect-cells' > + - qcom,bcm-voters > > additionalProperties: false > > @@ -35,9 +58,17 @@ examples: > - | > #include <dt-bindings/interconnect/qcom,sdm845.h> > > - apps_rsc: rsc { > - rsc_hlos: interconnect { > - compatible = "qcom,sdm845-rsc-hlos"; > - #interconnect-cells = <1>; > - }; > + mem_noc: interconnect@1380000 { > + compatible = "qcom,sdm845-mem-noc"; > + reg = <0 0x01380000 0 0x27200>; > + #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-voter-names = "apps", "disp"; > + qcom,bcm-voters = <&apps_bcm_voter>, <&disp_bcm_voter>; > }; > -- > The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, > a Linux Foundation Collaborative Project >
On 1/15/2020 6:49 AM, Rob Herring wrote: > On Thu, Jan 09, 2020 at 08:33:01PM -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). >> >> Signed-off-by: David Dai <daidavid1@codeaurora.org> >> --- >> .../bindings/interconnect/qcom,sdm845.yaml | 49 ++++++++++++++++++---- >> 1 file changed, 40 insertions(+), 9 deletions(-) >> >> diff --git a/Documentation/devicetree/bindings/interconnect/qcom,sdm845.yaml b/Documentation/devicetree/bindings/interconnect/qcom,sdm845.yaml >> index 61e0097..6741a12 100644 >> --- a/Documentation/devicetree/bindings/interconnect/qcom,sdm845.yaml >> +++ b/Documentation/devicetree/bindings/interconnect/qcom,sdm845.yaml >> @@ -13,21 +13,44 @@ 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 reside within >> - an RPMh device node pertaining to their RSC and each provider maps to a >> - single RPMh resource. >> + 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-rsc-hlos >> + - 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-voter-names: >> + items: >> + - const: apps >> + - const: disp > If these are always the names, why do you need them? Disp and apps bcm voters are the only ones supported for sdm845, but the number of voters and voter names may be different for other non-sdm845 based boards. >> + >> + 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. > Is the max length 2? For sdm845, yes. >> + >> required: >> - compatible >> + - reg >> - '#interconnect-cells' >> + - qcom,bcm-voters >> >> additionalProperties: false >> >> @@ -35,9 +58,17 @@ examples: >> - | >> #include <dt-bindings/interconnect/qcom,sdm845.h> >> >> - apps_rsc: rsc { >> - rsc_hlos: interconnect { >> - compatible = "qcom,sdm845-rsc-hlos"; >> - #interconnect-cells = <1>; >> - }; >> + mem_noc: interconnect@1380000 { >> + compatible = "qcom,sdm845-mem-noc"; >> + reg = <0 0x01380000 0 0x27200>; >> + #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-voter-names = "apps", "disp"; >> + qcom,bcm-voters = <&apps_bcm_voter>, <&disp_bcm_voter>; >> }; >> -- >> The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, >> a Linux Foundation Collaborative Project >>
On Thu, Jan 9, 2020 at 8:33 PM David Dai <daidavid1@codeaurora.org> 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). > > Signed-off-by: David Dai <daidavid1@codeaurora.org> > --- > .../bindings/interconnect/qcom,sdm845.yaml | 49 ++++++++++++++++++---- > 1 file changed, 40 insertions(+), 9 deletions(-) > This patch doesn't seem to apply cleanly on top of patch 1 because of whitespace context differences. I'll use this as an opportunity to plug the "patman" tool, which lives (weirdly) in the u-boot repository, but is an excellent way to manage and spin upstream submissions. -Evan
diff --git a/Documentation/devicetree/bindings/interconnect/qcom,sdm845.yaml b/Documentation/devicetree/bindings/interconnect/qcom,sdm845.yaml index 61e0097..6741a12 100644 --- a/Documentation/devicetree/bindings/interconnect/qcom,sdm845.yaml +++ b/Documentation/devicetree/bindings/interconnect/qcom,sdm845.yaml @@ -13,21 +13,44 @@ 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 reside within - an RPMh device node pertaining to their RSC and each provider maps to a - single RPMh resource. + 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-rsc-hlos + - 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-voter-names: + items: + - const: apps + - const: disp + + 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. + required: - compatible + - reg - '#interconnect-cells' + - qcom,bcm-voters additionalProperties: false @@ -35,9 +58,17 @@ examples: - | #include <dt-bindings/interconnect/qcom,sdm845.h> - apps_rsc: rsc { - rsc_hlos: interconnect { - compatible = "qcom,sdm845-rsc-hlos"; - #interconnect-cells = <1>; - }; + mem_noc: interconnect@1380000 { + compatible = "qcom,sdm845-mem-noc"; + reg = <0 0x01380000 0 0x27200>; + #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-voter-names = "apps", "disp"; + qcom,bcm-voters = <&apps_bcm_voter>, <&disp_bcm_voter>; };
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). Signed-off-by: David Dai <daidavid1@codeaurora.org> --- .../bindings/interconnect/qcom,sdm845.yaml | 49 ++++++++++++++++++---- 1 file changed, 40 insertions(+), 9 deletions(-)