[PATCH v2 1/5] dt-bindings: phy: imx8mq-usb: add compatible "fsl,imx95-usb-phy"
Krzysztof Kozlowski
krzk at kernel.org
Tue Aug 6 22:48:43 PDT 2024
On 06/08/2024 18:11, Frank Li wrote:
> On Tue, Aug 06, 2024 at 10:29:47AM +0200, Krzysztof Kozlowski wrote:
>> On 06/08/2024 07:06, Xu Yang wrote:
>>> The usb phy in i.MX95 is compatible with i.MX8MP's, this will add a
>>> compatible "fsl,imx95-usb-phy" for i.MX95. Also change reg maxItems
>>> to 2 since i.MX95 needs another regmap to control Type-C Assist (TCA)
>>> block. Since i.MX95 usb phy is able to switch SS lanes, this will also
>>> add orientation-switch and port property to the file.
>>>
>>> Signed-off-by: Xu Yang <xu.yang_2 at nxp.com>
>>>
>>> ---
>>> Changes in v2:
>>> - replace minItems with description in reg property
>>> - remove orientation-switch and port
>>> - refer to usb-switch.yaml
>>> - use unevaluatedProperties
>>> ---
>>> .../bindings/phy/fsl,imx8mq-usb-phy.yaml | 42 ++++++++++++++++---
>>> 1 file changed, 37 insertions(+), 5 deletions(-)
>>>
>>> diff --git a/Documentation/devicetree/bindings/phy/fsl,imx8mq-usb-phy.yaml b/Documentation/devicetree/bindings/phy/fsl,imx8mq-usb-phy.yaml
>>> index dc3a3f709fea..6d6d211883ae 100644
>>> --- a/Documentation/devicetree/bindings/phy/fsl,imx8mq-usb-phy.yaml
>>> +++ b/Documentation/devicetree/bindings/phy/fsl,imx8mq-usb-phy.yaml
>>> @@ -11,12 +11,17 @@ maintainers:
>>>
>>> properties:
>>> compatible:
>>> - enum:
>>> - - fsl,imx8mq-usb-phy
>>> - - fsl,imx8mp-usb-phy
>>> + oneOf:
>>> + - enum:
>>> + - fsl,imx8mq-usb-phy
>>> + - fsl,imx8mp-usb-phy
>>> + - items:
>>> + - const: fsl,imx95-usb-phy
>>> + - const: fsl,imx8mp-usb-phy
>>>
>>> reg:
>>> - maxItems: 1
>>> + minItems: 1
>>> + maxItems: 2
>>>
>>> "#phy-cells":
>>> const: 0
>>> @@ -89,7 +94,34 @@ required:
>>> - clocks
>>> - clock-names
>>>
>>> -additionalProperties: false
>>> +allOf:
>>> + - if:
>>> + properties:
>>> + compatible:
>>> + contains:
>>> + enum:
>>> + - fsl,imx95-usb-phy
>>> + then:
>>> + properties:
>>> + reg:
>>> + items:
>>> + - description: USB PHY Control range
>>> + - description: USB PHY TCA Block range
>>> + else:
>>> + properties:
>>> + reg:
>>> + maxItems: 1
>>> +
>>> + - if:
>>> + properties:
>>> + compatible:
>>> + contains:
>>> + enum:
>>> + - fsl,imx95-usb-phy
>>> + then:
>>> + $ref: /schemas/usb/usb-switch.yaml#
>>
>> ref should be rather in top-level. You can always disallow certain
>> properties for devices, if they are really not applicable.
>
> There are some "required" in usb-switch.yaml,
>
> oneOf:
> - required:
> - port
> - required:
> - ports
>
> If put on the top, it may cause DTB check warning for other compatible
> strings, which have not support usb-switch.
Hm, indeed, that's unusual case to have such different devices in one
schema. Did you test that above $ref in if: actually works?
Best regards,
Krzysztof
More information about the linux-phy
mailing list