From: Puranjay Mohan <p-mohan@ti.com> To: Rob Herring <robh@kernel.org> Cc: <linux-kernel@vger.kernel.org>, <bjorn.andersson@linaro.org>, <mathieu.poirier@linaro.org>, <krzysztof.kozlowski+dt@linaro.org>, <linux-remoteproc@vger.kernel.org>, <devicetree@vger.kernel.org>, <nm@ti.com>, <ssantosh@kernel.org>, <s-anna@ti.com>, <linux-arm-kernel@lists.infradead.org>, <rogerq@kernel.org>, <grygorii.strashko@ti.com>, <vigneshr@ti.com>, <kishon@ti.com> Subject: Re: [PATCH v3 1/5] dt-bindings: remoteproc: Add PRU consumer bindings Date: Thu, 2 Jun 2022 10:58:24 +0530 [thread overview] Message-ID: <6c054a1b-2842-a6f0-733a-92cfda76f828@ti.com> (raw) In-Reply-To: <YnA3dtaqptLgZBrV@robh.at.kernel.org> Hi Rob, On 03/05/22 01:26, Rob Herring wrote: > On Mon, Apr 18, 2022 at 04:11:14PM +0530, Puranjay Mohan wrote: >> From: Suman Anna <s-anna@ti.com> >> >> Add a YAML binding document for PRU consumers. The binding includes >> all the common properties that can be used by different PRU consumer >> or application nodes and supported by the PRU remoteproc driver. >> These are used to configure the PRU hardware for specific user >> applications. >> >> The application nodes themselves should define their own bindings. >> >> Co-developed-by: Tero Kristo <t-kristo@ti.com> >> Signed-off-by: Tero Kristo <t-kristo@ti.com> >> Signed-off-by: Suman Anna <s-anna@ti.com> >> Co-developed-by: Grzegorz Jaszczyk <grzegorz.jaszczyk@linaro.org> >> Signed-off-by: Grzegorz Jaszczyk <grzegorz.jaszczyk@linaro.org> >> Signed-off-by: Puranjay Mohan <p-mohan@ti.com> >> --- >> .../bindings/remoteproc/ti,pru-consumer.yaml | 70 +++++++++++++++++++ >> 1 file changed, 70 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/remoteproc/ti,pru-consumer.yaml >> >> diff --git a/Documentation/devicetree/bindings/remoteproc/ti,pru-consumer.yaml b/Documentation/devicetree/bindings/remoteproc/ti,pru-consumer.yaml >> new file mode 100644 >> index 000000000000..5b1f1cb2f098 >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/remoteproc/ti,pru-consumer.yaml >> @@ -0,0 +1,70 @@ >> +# SPDX-License-Identifier: (GPL-2.0-only or BSD-2-Clause) >> +%YAML 1.2 >> +--- >> +$id: http://devicetree.org/schemas/remoteproc/ti,pru-consumer.yaml# >> +$schema: http://devicetree.org/meta-schemas/core.yaml# >> + >> +title: Common TI PRU Consumer Binding >> + >> +maintainers: >> + - Suman Anna <s-anna@ti.com> >> + >> +description: | >> + A PRU application/consumer/user node typically uses one or more PRU device >> + nodes to implement a PRU application/functionality. Each application/client >> + node would need a reference to at least a PRU node, and optionally define >> + some properties needed for hardware/firmware configuration. The below >> + properties are a list of common properties supported by the PRU remoteproc >> + infrastructure. >> + >> + The application nodes shall define their own bindings like regular platform >> + devices, so below are in addition to each node's bindings. >> + >> +properties: >> + ti,prus: >> + $ref: /schemas/types.yaml#/definitions/phandle-array >> + description: phandles to the PRU, RTU or Tx_PRU nodes used >> + minItems: 1 >> + maxItems: 6 >> + items: >> + maxItems: 1 >> + >> + firmware-name: >> + $ref: /schemas/types.yaml#/definitions/string-array >> + description: | >> + firmwares for the PRU cores, the default firmware for the core from >> + the PRU node will be used if not provided. The firmware names should >> + correspond to the PRU cores listed in the 'ti,prus' property > > So should be the name number of entries?: > > minItems: 1 > maxItems: 6 will add in v4 > >> + >> + ti,pruss-gp-mux-sel: >> + $ref: /schemas/types.yaml#/definitions/uint32-array > > minItems: 1 will add in v4 > >> + maxItems: 6 >> + items: >> + enum: [0, 1, 2, 3, 4] >> + description: | >> + array of values for the GP_MUX_SEL under PRUSS_GPCFG register for a PRU. >> + This selects the internal muxing scheme for the PRU instance. Values >> + should correspond to the PRU cores listed in the 'ti,prus' property. The >> + GP_MUX_SEL setting is a per-slice setting (one setting for PRU0, RTU0, >> + and Tx_PRU0 on K3 SoCs). Use the same value for all cores within the >> + same slice in the associative array. If the array size is smaller than >> + the size of 'ti,prus' property, the default out-of-reset value (0) for the >> + PRU core is used. >> + >> +required: >> + - ti,prus >> + >> +dependencies: >> + firmware-name: [ 'ti,prus' ] >> + ti,pruss-gp-mux-sel: [ 'ti,prus' ] > > This doesn't make sense because 'ti,prus' is already required. Should > all 3 properties always be required? All three of these are always required, so, I will remove the "dependencies:" tag and add all three of them to "required:" in v4 Will it be the correct way to do it? > >> + >> +additionalProperties: true >> + >> +examples: >> + - | >> + /* PRU application node example */ >> + pru-app { >> + ti,prus = <&pru0>, <&pru1>; >> + firmware-name = "pruss-app-fw0", "pruss-app-fw1"; >> + ti,pruss-gp-mux-sel = <2>, <1>; > > This example never validates, but okay I guess. > >> + }; >> -- >> 2.17.1 >> >> Thanks, Puranjay Mohan
WARNING: multiple messages have this Message-ID (diff)
From: Puranjay Mohan <p-mohan@ti.com> To: Rob Herring <robh@kernel.org> Cc: nm@ti.com, devicetree@vger.kernel.org, grygorii.strashko@ti.com, vigneshr@ti.com, mathieu.poirier@linaro.org, kishon@ti.com, linux-remoteproc@vger.kernel.org, linux-kernel@vger.kernel.org, bjorn.andersson@linaro.org, rogerq@kernel.org, krzysztof.kozlowski+dt@linaro.org, ssantosh@kernel.org, linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH v3 1/5] dt-bindings: remoteproc: Add PRU consumer bindings Date: Thu, 2 Jun 2022 10:58:24 +0530 [thread overview] Message-ID: <6c054a1b-2842-a6f0-733a-92cfda76f828@ti.com> (raw) In-Reply-To: <YnA3dtaqptLgZBrV@robh.at.kernel.org> Hi Rob, On 03/05/22 01:26, Rob Herring wrote: > On Mon, Apr 18, 2022 at 04:11:14PM +0530, Puranjay Mohan wrote: >> From: Suman Anna <s-anna@ti.com> >> >> Add a YAML binding document for PRU consumers. The binding includes >> all the common properties that can be used by different PRU consumer >> or application nodes and supported by the PRU remoteproc driver. >> These are used to configure the PRU hardware for specific user >> applications. >> >> The application nodes themselves should define their own bindings. >> >> Co-developed-by: Tero Kristo <t-kristo@ti.com> >> Signed-off-by: Tero Kristo <t-kristo@ti.com> >> Signed-off-by: Suman Anna <s-anna@ti.com> >> Co-developed-by: Grzegorz Jaszczyk <grzegorz.jaszczyk@linaro.org> >> Signed-off-by: Grzegorz Jaszczyk <grzegorz.jaszczyk@linaro.org> >> Signed-off-by: Puranjay Mohan <p-mohan@ti.com> >> --- >> .../bindings/remoteproc/ti,pru-consumer.yaml | 70 +++++++++++++++++++ >> 1 file changed, 70 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/remoteproc/ti,pru-consumer.yaml >> >> diff --git a/Documentation/devicetree/bindings/remoteproc/ti,pru-consumer.yaml b/Documentation/devicetree/bindings/remoteproc/ti,pru-consumer.yaml >> new file mode 100644 >> index 000000000000..5b1f1cb2f098 >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/remoteproc/ti,pru-consumer.yaml >> @@ -0,0 +1,70 @@ >> +# SPDX-License-Identifier: (GPL-2.0-only or BSD-2-Clause) >> +%YAML 1.2 >> +--- >> +$id: http://devicetree.org/schemas/remoteproc/ti,pru-consumer.yaml# >> +$schema: http://devicetree.org/meta-schemas/core.yaml# >> + >> +title: Common TI PRU Consumer Binding >> + >> +maintainers: >> + - Suman Anna <s-anna@ti.com> >> + >> +description: | >> + A PRU application/consumer/user node typically uses one or more PRU device >> + nodes to implement a PRU application/functionality. Each application/client >> + node would need a reference to at least a PRU node, and optionally define >> + some properties needed for hardware/firmware configuration. The below >> + properties are a list of common properties supported by the PRU remoteproc >> + infrastructure. >> + >> + The application nodes shall define their own bindings like regular platform >> + devices, so below are in addition to each node's bindings. >> + >> +properties: >> + ti,prus: >> + $ref: /schemas/types.yaml#/definitions/phandle-array >> + description: phandles to the PRU, RTU or Tx_PRU nodes used >> + minItems: 1 >> + maxItems: 6 >> + items: >> + maxItems: 1 >> + >> + firmware-name: >> + $ref: /schemas/types.yaml#/definitions/string-array >> + description: | >> + firmwares for the PRU cores, the default firmware for the core from >> + the PRU node will be used if not provided. The firmware names should >> + correspond to the PRU cores listed in the 'ti,prus' property > > So should be the name number of entries?: > > minItems: 1 > maxItems: 6 will add in v4 > >> + >> + ti,pruss-gp-mux-sel: >> + $ref: /schemas/types.yaml#/definitions/uint32-array > > minItems: 1 will add in v4 > >> + maxItems: 6 >> + items: >> + enum: [0, 1, 2, 3, 4] >> + description: | >> + array of values for the GP_MUX_SEL under PRUSS_GPCFG register for a PRU. >> + This selects the internal muxing scheme for the PRU instance. Values >> + should correspond to the PRU cores listed in the 'ti,prus' property. The >> + GP_MUX_SEL setting is a per-slice setting (one setting for PRU0, RTU0, >> + and Tx_PRU0 on K3 SoCs). Use the same value for all cores within the >> + same slice in the associative array. If the array size is smaller than >> + the size of 'ti,prus' property, the default out-of-reset value (0) for the >> + PRU core is used. >> + >> +required: >> + - ti,prus >> + >> +dependencies: >> + firmware-name: [ 'ti,prus' ] >> + ti,pruss-gp-mux-sel: [ 'ti,prus' ] > > This doesn't make sense because 'ti,prus' is already required. Should > all 3 properties always be required? All three of these are always required, so, I will remove the "dependencies:" tag and add all three of them to "required:" in v4 Will it be the correct way to do it? > >> + >> +additionalProperties: true >> + >> +examples: >> + - | >> + /* PRU application node example */ >> + pru-app { >> + ti,prus = <&pru0>, <&pru1>; >> + firmware-name = "pruss-app-fw0", "pruss-app-fw1"; >> + ti,pruss-gp-mux-sel = <2>, <1>; > > This example never validates, but okay I guess. > >> + }; >> -- >> 2.17.1 >> >> Thanks, Puranjay Mohan _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2022-06-02 5:28 UTC|newest] Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top 2022-04-18 10:41 [PATCH v3 0/5] Introduce PRU remoteproc consumer API Puranjay Mohan 2022-04-18 10:41 ` Puranjay Mohan 2022-04-18 10:41 ` [PATCH v3 1/5] dt-bindings: remoteproc: Add PRU consumer bindings Puranjay Mohan 2022-04-18 10:41 ` Puranjay Mohan 2022-05-02 19:56 ` Rob Herring 2022-05-02 19:56 ` Rob Herring 2022-06-02 5:28 ` Puranjay Mohan [this message] 2022-06-02 5:28 ` Puranjay Mohan 2022-06-03 8:11 ` Roger Quadros 2022-06-03 8:11 ` Roger Quadros 2022-06-03 10:14 ` Puranjay Mohan 2022-06-03 10:14 ` Puranjay Mohan 2022-06-03 10:46 ` Roger Quadros 2022-06-03 10:46 ` Roger Quadros 2022-04-18 10:41 ` [PATCH v3 2/5] remoteproc: pru: Add APIs to get and put the PRU cores Puranjay Mohan 2022-04-18 10:41 ` Puranjay Mohan 2022-04-18 10:41 ` [PATCH v3 3/5] remoteproc: pru: Make sysfs entries read-only for PRU client driven boots Puranjay Mohan 2022-04-18 10:41 ` Puranjay Mohan 2022-04-18 10:41 ` [PATCH v3 4/5] remoteproc: pru: Add pru_rproc_set_ctable() function Puranjay Mohan 2022-04-18 10:41 ` Puranjay Mohan 2022-04-18 10:41 ` [PATCH v3 5/5] remoteproc: pru: Configure firmware based on client setup Puranjay Mohan 2022-04-18 10:41 ` Puranjay Mohan 2022-04-28 11:23 ` [PATCH v3 0/5] Introduce PRU remoteproc consumer API Puranjay Mohan 2022-04-28 11:23 ` Puranjay Mohan 2022-04-28 16:39 ` Mathieu Poirier 2022-04-28 16:39 ` Mathieu Poirier
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=6c054a1b-2842-a6f0-733a-92cfda76f828@ti.com \ --to=p-mohan@ti.com \ --cc=bjorn.andersson@linaro.org \ --cc=devicetree@vger.kernel.org \ --cc=grygorii.strashko@ti.com \ --cc=kishon@ti.com \ --cc=krzysztof.kozlowski+dt@linaro.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-remoteproc@vger.kernel.org \ --cc=mathieu.poirier@linaro.org \ --cc=nm@ti.com \ --cc=robh@kernel.org \ --cc=rogerq@kernel.org \ --cc=s-anna@ti.com \ --cc=ssantosh@kernel.org \ --cc=vigneshr@ti.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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.