Re: [PATCH v3 3/4] dt-bindings: phy: google: Add Google Tensor G5 USB PHY
From: Roy Luo
Date: Mon Oct 13 2025 - 21:47:17 EST
On Fri, Oct 10, 2025 at 5:11 PM Krzysztof Kozlowski <krzk@xxxxxxxxxx> wrote:
>
> On 10/10/2025 22:16, Roy Luo wrote:
> > + reg:
> > + items:
> > + - description: USB2 PHY configuration registers.
> > + - description: DisplayPort top-level registers.
> > + - description: USB top-level configuration registers.
> > +
> > + reg-names:
> > + items:
> > + - const: u2phy_cfg
> > + - const: dp_top
> > + - const: usb_top_cfg
> > +
> > + "#phy-cells":
> > + const: 1
> > +
> > + clocks:
> > + maxItems: 1
> > +
> > + resets:
> > + maxItems: 1
> > +
> > + power-domains:
> > + maxItems: 1
> > +
> > + orientation-switch:
> > + type: boolean
> > + description:
> > + Indicates the PHY as a handler of USB Type-C orientation changes
> > +
> > +required:
> > + - compatible
> > + - reg
> > + - reg-names
> > + - "#phy-cells"
> > + - clocks
> > + - resets
> > + - power-domains
> > + - orientation-switch
> > +
> > +additionalProperties: false
> > +
> > +examples:
> > + - |
> > + soc {
> > + #address-cells = <2>;
> > + #size-cells = <2>;
> > +
> > + usb_phy: usb_phy@c410000 {
> > + compatible = "google,gs5-usb-phy";
> > + reg = <0 0x0c450014 0 0xc>,
> > + <0 0x0c637000 0 0xa0>,
>
> You probably miss DP support and this does not belong here.
This register space isn't solely for DP operation, a significant portion
manages the custom combo PHY. Consequently, this space is essential
even for USB-only operation. We can expect more registers in the space
to be utilized when DP support is added.
While I acknowledge the current name is confusing, it directly reflects
the hardware documentation. We can either adhere to the hardware
documentation's naming or propose a more descriptive alternative.
What's your preference?
>
> > + <0 0x0c45002c 0 0x4>;
>
> That's not a separate address space. I really, really doubt that
> hardware engineers came with address spaces of one word long.
I initially created this space to access the usb2only mode register,
which must be programmed when the controller operates in high-speed
only mode without the USB3 PHY initialized. Upon review, I now
believe the controller driver is the better location for this configuration,
as the register logically belongs there and the controller can tell
whether usb3 phy is going to be initialized.
That is, I'm removing this register space in the next patch.
Thanks,
Roy Luo
>
> > + reg-names = "u2phy_cfg", "dp_top", "usb_top_cfg";
> > + #phy-cells = <1>;
> > + clocks = <&hsion_usb2_phy_reset_clk>;
> > + resets = <&hsion_resets_usb2_phy>;
> > + power-domains = <&hsio_n_usb_pd>;
> > + orientation-switch;
> > + };
> > + };
> > +...
>
>
> Best regards,
> Krzysztof