Re: [PATCH RFC v3 3/6] dt-bindings: phy: cp110-utmi-phy: add compatible string for armada-38x

Josua Mayer
2024-07-22T15:16:07Z

Am 22.07.24 um 17:05 schrieb Josua Mayer:
> Am 21.07.24 um 11:31 schrieb Krzysztof Kozlowski:
>> On 20/07/2024 16:19, Josua Mayer wrote:
>>> Armada 38x USB-2.0 PHYs are similar to Armada 8K (CP110) and can be
>>> supported by the same driver with small differences.
>>>
>>> Add new compatible string for armada-38x variant of utmi phy.
>>> Then add descriptions and names for two additional register definitions
>>> that may be specified instead of a syscon phandle.
>>>
>>> Signed-off-by: Josua Mayer <josua@solid-run.com>
>>> ---
>>> .../phy/marvell,armada-cp110-utmi-phy.yaml | 34 ++++++++++++++++++----
>>> 1 file changed, 29 insertions(+), 5 deletions(-)
>>>
>>> diff --git a/Documentation/devicetree/bindings/phy/marvell,armada-cp110-utmi-phy.yaml b/Documentation/devicetree/bindings/phy/marvell,armada-cp110-utmi-phy.yaml
>>> index 9ce7b4c6d208..246e48d51755 100644
>>> --- a/Documentation/devicetree/bindings/phy/marvell,armada-cp110-utmi-phy.yaml
>>> +++ b/Documentation/devicetree/bindings/phy/marvell,armada-cp110-utmi-phy.yaml
cut
>>> @@ -68,7 +93,6 @@ required:
>>> - reg
>>> - "#address-cells"
>>> - "#size-cells"
>>> - - marvell,system-controller
>> you miss here allOf:if:then: narrowing and marvell,system-controller per
>> each variant.
I am struggling a bit with the options.

First attempt says: if not both usb-cfg and utmi-cfg reg-names are specified,
then marvell,system-controller is required.

allOf:
- required:
- compatible
- reg
- "#address-cells"
- "#size-cells"
- if:
not:
properties:
reg-names:
allOf:
- contains:
const: usb-cfg
- contains:
const: utmi-cfg
then:
required:
- marvell,system-controller

This works okay for any combinations of reg-names.

However when device-tree is missing reg-names all together,
marvell,system-controller is not marked required.

Would it be acceptable to make reg-names required?