Re: [PATCH v4 1/3] dt-bindings: phy: airoha: Document support for AN7583 USB PHY
From: Krzysztof Kozlowski
Date: Wed Sep 16 2026 - 11:54:47 EST
On 07/09/2026 11:00, Christian Marangi wrote:
> On Mon, Sep 07, 2026 at 08:35:56AM +0200, Krzysztof Kozlowski wrote:
>>> +
>>> + required:
>>> + - phys
>>> + - '#phy-cells'
>>> +
>>> + additionalProperties: false
>>> +
>>> +patternProperties:
>>> + '^usb2-phy@[0-9a-f]+$':
>>
>> You should not mix MMIO and non-MMIO children. Either children have
>> distinctive addressing, or not. Not both.
>>
>> The other problem is that your children have no resources, so are not
>> really distinctive children and should be folded in to the parent.
>>
>> I already asked that at v2, so let's finish with asking: drop the
>> children.
>>
>
> I misunderstood the request and tought it was only related to the PCIe
> part.
>
> I'm not really sure how to drop the child without complicating the node
> structure a lot (also I feel dropping the child would make the description
> of the HW less clear and I would like to prevent that)
>
> The register for the usb2 node 0x0 and 0x1000 are offset of the register
> declared in the parent node 0x1fac0000. For usb2 1 the phy registers are at
> 0x1fac0000 - 0x1fac0200, for usb2 2 the phy register are at
> 0x1fac1000 - 0x1fac1200.
0x1fac0000 - 0x1fac0200 and 0xx1fac1000 - 0x1fac1200 are both already
within the parent (which is: 0x1fac0000 0x1200), so I do not understand
your explanation how this would complicate anything.
>
> The driver read this offset and apply it to every register access for the
> related phy.
>
> The usb2 child are needed for the specific airoha,usb2-monitor-clk-sel
> property since it's specific for the usb 2.0 phy.
>
> Also would like to stress that these PHY are all part of the same register
> block.
>
> One solution might be to just classify the usb2 node as 0x0 and 0x1 and
> handle internally the register mapping with the driver. But again the
> problematic thing is map the monitor-clk-sel with the relevant USB 2.0 phy.
>
> Any hint on this? Is it ok to keep the child node and use 0x0 and 0x1?
Best regards,
Krzysztof