diff mbox series

[V3] dt-bindings: usb: dwc3: Add interrupt-names property support for wakeup interrupt

Message ID 20230519065940.2190786-1-piyush.mehta@amd.com
State Changes Requested, archived
Headers show
Series [V3] dt-bindings: usb: dwc3: Add interrupt-names property support for wakeup interrupt | expand

Checks

Context Check Description
robh/checkpatch success
robh/patch-applied success
robh/dt-meta-schema fail build log

Commit Message

Mehta, Piyush May 19, 2023, 6:59 a.m. UTC
The hibernation feature enabled for Xilinx Versal NET SoC in DWC3 IP.
As the DWC3 IP supports the hibernation feature, to handle the wakeup
or hibernation interrupt, add host mode "wakeup" interrupt-names
optional property in the binding schema to capture remote-wakeup and
connect/ disconnect event in the hibernation state.

We have a dedicated IRQ line specifically for the hibernation feature.
When the "wakeup" IRQ line is triggered, it initiates a hibernation
interrupt, causing the system to wake up from the hibernation state.

Signed-off-by: Piyush Mehta <piyush.mehta@amd.com>
---
Change in V2:
-  Addressed ROB review comments
 - Updated name of interrupt-names property with "wakeup"
 - Move interrupt-names property from dwc3-xilinx core to dwc3 core.

Link: https://lore.kernel.org/all/CAL_JsqK6_7XD7+w+EQvPPmbmSOpfo3JDb0xDN4StuHUm1kgchw@mail.gmail.com/

Change in V3:
-  Addressed Krzysztof Kozlowski comments
 - Update binding schema enum.
 - Upadet commit message.

Link: https://lore.kernel.org/all/76dfbf27-8ad2-6e09-5354-b006b9e81af1@linaro.org/
---
 Documentation/devicetree/bindings/usb/snps,dwc3.yaml | 2 ++
 1 file changed, 2 insertions(+)

Comments

Rob Herring (Arm) May 19, 2023, 7:21 a.m. UTC | #1
On Fri, 19 May 2023 12:29:40 +0530, Piyush Mehta wrote:
> The hibernation feature enabled for Xilinx Versal NET SoC in DWC3 IP.
> As the DWC3 IP supports the hibernation feature, to handle the wakeup
> or hibernation interrupt, add host mode "wakeup" interrupt-names
> optional property in the binding schema to capture remote-wakeup and
> connect/ disconnect event in the hibernation state.
> 
> We have a dedicated IRQ line specifically for the hibernation feature.
> When the "wakeup" IRQ line is triggered, it initiates a hibernation
> interrupt, causing the system to wake up from the hibernation state.
> 
> Signed-off-by: Piyush Mehta <piyush.mehta@amd.com>
> ---
> Change in V2:
> -  Addressed ROB review comments
>  - Updated name of interrupt-names property with "wakeup"
>  - Move interrupt-names property from dwc3-xilinx core to dwc3 core.
> 
> Link: https://lore.kernel.org/all/CAL_JsqK6_7XD7+w+EQvPPmbmSOpfo3JDb0xDN4StuHUm1kgchw@mail.gmail.com/
> 
> Change in V3:
> -  Addressed Krzysztof Kozlowski comments
>  - Update binding schema enum.
>  - Upadet commit message.
> 
> Link: https://lore.kernel.org/all/76dfbf27-8ad2-6e09-5354-b006b9e81af1@linaro.org/
> ---
>  Documentation/devicetree/bindings/usb/snps,dwc3.yaml | 2 ++
>  1 file changed, 2 insertions(+)
> 

My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
on your patch (DT_CHECKER_FLAGS is new in v5.13):

yamllint warnings/errors:

dtschema/dtc warnings/errors:
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/usb/dwc3-xilinx.example.dtb: usb@0: usb@fe200000:interrupt-names: More than one condition true in oneOf schema:
	{'maxItems': 3,
	 'minItems': 1,
	 'oneOf': [{'items': [{'const': 'dwc_usb3'}],
	            'maxItems': 1,
	            'minItems': 1,
	            'type': 'array'},
	           {'items': {'enum': ['host', 'peripheral', 'otg']},
	            'type': 'array'},
	           {'items': {'enum': ['host', 'peripheral', 'otg', 'wakeup']},
	            'type': 'array'}]}
	From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/usb/dwc3-xilinx.yaml
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/usb/dwc3-xilinx.example.dtb: usb@0: usb@fe200000: Unevaluated properties are not allowed ('interrupt-names' was unexpected)
	From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/usb/dwc3-xilinx.yaml
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/usb/dwc3-xilinx.example.dtb: usb@fe200000: interrupt-names: More than one condition true in oneOf schema:
	{'maxItems': 3,
	 'minItems': 1,
	 'oneOf': [{'items': [{'const': 'dwc_usb3'}],
	            'maxItems': 1,
	            'minItems': 1,
	            'type': 'array'},
	           {'items': {'enum': ['host', 'peripheral', 'otg']},
	            'type': 'array'},
	           {'items': {'enum': ['host', 'peripheral', 'otg', 'wakeup']},
	            'type': 'array'}]}
	From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/usb/snps,dwc3.yaml
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/usb/dwc3-xilinx.example.dtb: usb@fe200000: Unevaluated properties are not allowed ('interrupt-names' was unexpected)
	From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/usb/snps,dwc3.yaml
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/usb/ti,am62-usb.example.dtb: usb@f910000: usb@31100000:interrupt-names: More than one condition true in oneOf schema:
	{'maxItems': 3,
	 'minItems': 1,
	 'oneOf': [{'items': [{'const': 'dwc_usb3'}],
	            'maxItems': 1,
	            'minItems': 1,
	            'type': 'array'},
	           {'items': {'enum': ['host', 'peripheral', 'otg']},
	            'type': 'array'},
	           {'items': {'enum': ['host', 'peripheral', 'otg', 'wakeup']},
	            'type': 'array'}]}
	From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/usb/ti,am62-usb.yaml
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/usb/ti,am62-usb.example.dtb: usb@f910000: usb@31100000: Unevaluated properties are not allowed ('interrupt-names' was unexpected)
	From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/usb/ti,am62-usb.yaml
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/usb/ti,am62-usb.example.dtb: usb@31100000: interrupt-names: More than one condition true in oneOf schema:
	{'maxItems': 3,
	 'minItems': 1,
	 'oneOf': [{'items': [{'const': 'dwc_usb3'}],
	            'maxItems': 1,
	            'minItems': 1,
	            'type': 'array'},
	           {'items': {'enum': ['host', 'peripheral', 'otg']},
	            'type': 'array'},
	           {'items': {'enum': ['host', 'peripheral', 'otg', 'wakeup']},
	            'type': 'array'}]}
	From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/usb/snps,dwc3.yaml
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/usb/ti,am62-usb.example.dtb: usb@31100000: Unevaluated properties are not allowed ('interrupt-names' was unexpected)
	From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/usb/snps,dwc3.yaml

doc reference errors (make refcheckdocs):

See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20230519065940.2190786-1-piyush.mehta@amd.com

The base for the series is generally the latest rc1. A different dependency
should be noted in *this* patch.

If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:

pip3 install dtschema --upgrade

Please check and re-submit after running the above command yourself. Note
that DT_SCHEMA_FILES can be set to your schema file to speed up checking
your schema. However, it must be unset to test all examples with your schema.
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/usb/snps,dwc3.yaml b/Documentation/devicetree/bindings/usb/snps,dwc3.yaml
index 50edc4da780e..771bd9ab71d9 100644
--- a/Documentation/devicetree/bindings/usb/snps,dwc3.yaml
+++ b/Documentation/devicetree/bindings/usb/snps,dwc3.yaml
@@ -53,6 +53,8 @@  properties:
       - const: dwc_usb3
       - items:
           enum: [host, peripheral, otg]
+      - items:
+          enum: [host, peripheral, otg, wakeup]
 
   clocks:
     description: