[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