[PATCH 2/5] dt-bindings: usb: cypress,hx3: Add support for all variants

Conor Dooley conor at kernel.org
Wed Apr 9 14:27:55 PDT 2025


On Wed, Apr 09, 2025 at 06:26:43PM +0200, Quentin Schulz wrote:
> Hi Conor,
> 
> On 4/9/25 6:18 PM, Conor Dooley wrote:
> > On Tue, Apr 08, 2025 at 06:36:04PM +0200, Łukasz Czechowski wrote:
> > > Hello,
> > > 
> > > śr., 26 mar 2025 o 18:58 Conor Dooley <conor at kernel.org> napisał(a):
> > > > 
> > > > On Wed, Mar 26, 2025 at 05:22:57PM +0100, Lukasz Czechowski wrote:
> > > > > The Cypress HX3 hubs use different default PID value depending
> > > > > on the variant. Update compatibles list.
> > > > > 
> > > > > Fixes: 1eca51f58a10 ("dt-bindings: usb: Add binding for Cypress HX3 USB 3.0 family")
> > > > > Cc: stable at vger.kernel.org # 6.6
> > > > > Cc: stable at vger.kernel.org # Backport of the patch in this series fixing product ID in onboard_dev_id_table and onboard_dev_match in drivers/usb/misc/onboard_usb_dev.{c,h} driver
> > > > > Signed-off-by: Lukasz Czechowski <lukasz.czechowski at thaumatec.com>
> > > > > ---
> > > > >   Documentation/devicetree/bindings/usb/cypress,hx3.yaml | 6 ++++++
> > > > >   1 file changed, 6 insertions(+)
> > > > > 
> > > > > diff --git a/Documentation/devicetree/bindings/usb/cypress,hx3.yaml b/Documentation/devicetree/bindings/usb/cypress,hx3.yaml
> > > > > index 1033b7a4b8f9..f0b93002bd02 100644
> > > > > --- a/Documentation/devicetree/bindings/usb/cypress,hx3.yaml
> > > > > +++ b/Documentation/devicetree/bindings/usb/cypress,hx3.yaml
> > > > > @@ -15,8 +15,14 @@ allOf:
> > > > >   properties:
> > > > >     compatible:
> > > > >       enum:
> > > > > +      - usb4b4,6500
> > > > > +      - usb4b4,6502
> > > > > +      - usb4b4,6503
> > > > >         - usb4b4,6504
> > > > >         - usb4b4,6506
> > > > > +      - usb4b4,6507
> > > > > +      - usb4b4,6508
> > > > > +      - usb4b4,650a
> > > > 
> > > > All these devices seem to have the same match data, why is a fallback
> > > > not suitable?
> > > > 
> > > 
> > > Thank you for the suggestion. Indeed the fallback compatible appears
> > > to work fine in this case,
> > > and I am able to avoid additional entries in onboard_dev_match table
> > > as added in the first patch in this series.
> > > 
> > > However, after I've updated the cypress,hx3.yaml schema file and
> > > rk3399-puma.dtsi file,
> > > I get the following warnings, when running "make dtbs_check":
> > > 
> > > linux/arch/arm64/boot/dts/rockchip/rk3399-puma-haikou.dtb: hub at 1:
> > > compatible: ['usb4b4,6502', 'usb4b4,6506'] is too long
> > >   from schema $id: http://devicetree.org/schemas/usb/cypress,hx3.yaml#
> > > linux/arch/arm64/boot/dts/rockchip/rk3399-puma-haikou.dtb: hub at 2:
> > > compatible: ['usb4b4,6500', 'usb4b4,6504'] is too long
> > >   from schema $id: http://devicetree.org/schemas/usb/cypress,hx3.yaml#
> > > 
> > > Below is the diff of my changes:
> > > 
> > > diff --git a/Documentation/devicetree/bindings/usb/cypress,hx3.yaml
> > > b/Documentation/devicetree/bindings/usb/cypress,hx3.yaml
> > > index f0b93002bd02..d6eac1213228 100644
> > > --- a/Documentation/devicetree/bindings/usb/cypress,hx3.yaml
> > > +++ b/Documentation/devicetree/bindings/usb/cypress,hx3.yaml
> > > @@ -14,15 +14,22 @@ allOf:
> > > 
> > >   properties:
> > >     compatible:
> > > -    enum:
> > > -      - usb4b4,6500
> > > -      - usb4b4,6502
> > > -      - usb4b4,6503
> > > -      - usb4b4,6504
> > > -      - usb4b4,6506
> > > -      - usb4b4,6507
> > > -      - usb4b4,6508
> > > -      - usb4b4,650a
> > > +    oneOf:
> > > +      - enum:
> > > +          - usb4b4,6504
> > > +          - usb4b4,6506
> > > +      - items:
> > > +          - enum:
> > > +              - usb4b4,6500
> > > +              - usb4b4,6508
> > > +          - const: usb4b4,6504
> > > +      - items:
> > > +          - enum:
> > > +              - usb4b4,6502
> > > +              - usb4b4,6503
> > > +              - usb4b4,6507
> > > +              - usb4b4,650a
> > > +          - const: usb4b4,6506
> > > 
> > >     reg: true
> > > 
> > > diff --git a/arch/arm64/boot/dts/rockchip/rk3399-puma.dtsi
> > > b/arch/arm64/boot/dts/rockchip/rk3399-puma.dtsi
> > > index d0d867374b3f..7fac61f95fc6 100644
> > > --- a/arch/arm64/boot/dts/rockchip/rk3399-puma.dtsi
> > > +++ b/arch/arm64/boot/dts/rockchip/rk3399-puma.dtsi
> > > @@ -594,14 +594,14 @@ &usbdrd_dwc3_1 {
> > >          #size-cells = <0>;
> > > 
> > >          hub_2_0: hub at 1 {
> > > -               compatible = "usb4b4,6502";
> > > +               compatible = "usb4b4,6502", "usb4b4,6506";
> > >                  reg = <1>;
> > >                  peer-hub = <&hub_3_0>;
> > >                  reset-gpios = <&gpio4 RK_PA3 GPIO_ACTIVE_HIGH>;
> > >          };
> > > 
> > >          hub_3_0: hub at 2 {
> > > -               compatible = "usb4b4,6500";
> > > +               compatible = "usb4b4,6500", "usb4b4,6504";
> > >                  reg = <2>;
> > >                  peer-hub = <&hub_2_0>;
> > >                  reset-gpios = <&gpio4 RK_PA3 GPIO_ACTIVE_HIGH>;
> > > 
> > > 
> > > Do you have any suggestions on how I can properly update the schema
> > > files to avoid the above warnings?
> > 
> > The diffs you have here look okay, not really sure what you're asking
> > for.
> 
> It fails dtbs_check:
> 
> linux/arch/arm64/boot/dts/rockchip/rk3399-puma-haikou.dtb: hub at 1:
> compatible: ['usb4b4,6502', 'usb4b4,6506'] is too long
>   from schema $id: http://devicetree.org/schemas/usb/cypress,hx3.yaml#
> linux/arch/arm64/boot/dts/rockchip/rk3399-puma-haikou.dtb: hub at 2:
> compatible: ['usb4b4,6500', 'usb4b4,6504'] is too long
>   from schema $id: http://devicetree.org/schemas/usb/cypress,hx3.yaml#
> 
> I'm not sure we're allowed to add new errors with dtbs_check (and would like
> to avoid it in any case).

Ah, the restriction I think comes from the usb-device binding. Maybe
just leave it as you had it?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 228 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-rockchip/attachments/20250409/2a888fe2/attachment.sig>


More information about the Linux-rockchip mailing list