[PATCH 6/7] dt-bindings: usb: ti,am33xx-usb: Convert to DT schema

sashiko-bot at kernel.org sashiko-bot at kernel.org
Mon Aug 17 14:54:04 PDT 2026


Thank you for your contribution! Sashiko AI review found 2 potential issue(s) to consider:
- [Medium] The schema explicitly marks `ti,hwmods` as deprecated but simultaneously mandates it in the `required` array, creating an inescapable validation conflict.
- [Medium] Unresolved phandle references (`&ctrl_mod` and `&usb0_phy`) in the binding example will cause a fatal dtc compilation error.
--

--- Patch [6]: [PATCH 6/7] dt-bindings: usb: ti,am33xx-usb: Convert to DT schema ---
commit e8e58c2d48bc9c752ca62d3c7e0ea6fd5cff0b12
Author: Bhargav Joshi <j.bhargav.u at gmail.com>

dt-bindings: usb: ti,am33xx-usb: Convert to DT schema
    
Convert the TI AM33xx USB Wrapper text binding to DT schema.
Changes during conversion:
- Drop the USB control module from child nodes, as it physically resides
  within the System Control Module address space, not the USB wrapper.
- Allow standard phy@[0-9a-f]+$ child node names alongside the legacy
  usb-phy@[0-9a-f]+$.
- Mark the legacy ti,hwmods property as deprecated.
- Document required #address-cells, #size-cells, and ranges property
  missing from text binding.

> diff --git a/Documentation/devicetree/bindings/usb/ti,am33xx-usb.yaml b/Documentation/devicetree/bindings/usb/ti,am33xx-usb.yaml
> new file mode 100644
> index 0000000000000..889190431c9a0
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/usb/ti,am33xx-usb.yaml
> @@ -0,0 +1,104 @@

[ ... ]

> +  ti,hwmods:
> +    $ref: /schemas/types.yaml#/definitions/string
> +    description: Name of the hwmod associated with the USB module.
> +    const: usb_otg_hs
> +    deprecated: true

[ ... ]

> +required:
> +  - compatible
> +  - reg
> +  - ranges
> +  - "#address-cells"
> +  - "#size-cells"
> +  - ti,hwmods

[Severity: Medium]
Will this cause a validation conflict? The schema explicitly marks ti,hwmods
as deprecated but simultaneously mandates it in the required array.

Any device tree validating against this schema will emit warnings or errors:
omitting the property violates the required list, while including it triggers
the deprecated warning. This prevents the creation of cleanly validating
device trees.

[ ... ]

> +examples:
> +  - |
> +    usb at 47400000 {
> +        compatible = "ti,am33xx-usb";

[ ... ]

> +        usb-phy at 47401300 {
> +            compatible = "ti,am335x-usb-phy";
> +            reg = <0x47401300 0x100>;
> +            reg-names = "phy";
> +            ti,ctrl_mod = <&ctrl_mod>;

[Severity: Medium]
Does this reference an undefined label? The ctrl_mod label was dropped during
the conversion. Referencing it here will cause dtc to fail with a Reference
to non-existent node or label error during make dt_binding_check.

> +            #phy-cells = <0>;
> +        };
> +
> +        usb at 47401000 {
> +            compatible = "ti,musb-am33xx";
> +            reg = <0x47401400 0x400>,
> +                  <0x47401000 0x200>;
> +            reg-names = "mc", "control";
> +            interrupts = <18>;
> +            interrupt-names = "mc";
> +            dr_mode = "otg";
> +            mentor,multipoint = <1>;
> +            mentor,num-eps = <16>;
> +            mentor,ram-bits = <12>;
> +            mentor,power = <500>;
> +            phys = <&usb0_phy>;

[Severity: Medium]
Similarly, does this reference the undefined label usb0_phy? The label was
removed from the example, which will also result in a dtc compilation error
when building the example.

> +        };

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260818-ti-am33-usb-v1-0-69ac5f92df45@gmail.com?part=6



More information about the linux-phy mailing list