Re: [PATCH 2/5] dt-bindings: connector: Add fsl,io-connector binding

From: Krzysztof Kozlowski

Date: Mon May 18 2026 - 03:07:36 EST


On 18/05/2026 06:18, Chancel Liu wrote:
>>> +description:
>>> + The NXP I/O connector represents a physically present I/O connector
>>> +on the
>>> + base board. It acts as a nexus that exposes a constrained set of
>>> +I/O
>>> + resources, such as GPIOs, clocks, PWMs and interrupts, through
>>> +fixed
>>> + electrical wiring. All actual hardware providers reside on the base board.
>>> + The connector node only defines index-based mappings to those
>> providers.
>>> +
>>> +properties:
>>> + compatible:
>>> + const: fsl,io-connector
>>
>> Everything is IO. Everything is connector, so your compatible does not match
>> requirements from writing bindings.
>>
>
> Yes, this compatible is too generic. I will rename the compatible to
> fsl,aud-io-connector.

aud is not much better. Which boards have it? What's the pinout? What's
standard? Is it described anywhere? If so, provide reference to spec/docs.

>
>>> +
>>> + gpio-controller: true
>>> +
>>> + '#gpio-cells':
>>> + const: 2
>>> +
>>> + gpio-map:
>>> + $ref: /schemas/types.yaml#/definitions/uint32-matrix
>>
>> You do not need to redefine the types. You need constraints, though.
>>
>
> OK. I will add proper constraints.
>
>>> +
>>> + gpio-map-mask:
>>> + $ref: /schemas/types.yaml#/definitions/uint32-array
>>> +
>>> + gpio-map-pass-thru:
>>> + $ref: /schemas/types.yaml#/definitions/uint32-array
>>> +
>>> + '#clock-cells':
>>> + const: 1
>>> +
>>> + clock-map:
>>> + $ref: /schemas/types.yaml#/definitions/uint32-matrix
>>> +
>>> + clock-map-mask:
>>> + $ref: /schemas/types.yaml#/definitions/uint32-array
>>> +
>>> + clock-map-pass-thru:
>>> + $ref: /schemas/types.yaml#/definitions/uint32-array
>>
>> I do not see these defined anywhere. I also checked cover letter for
>> references for pulls to dtschema.
>>
>
> Nexus nodes are already in the device-tree specification:
> https://github.com/devicetree-org/devicetree-specification/blob/v0.4/source/chapter2-devicetree-basics.rst#nexus-nodes-and-specifier-mapping
> For reference, current kernel has supported it:
> * Nexus OF support:
> commit bd6f2fd5a1d5 ("of: Support parsing phandle argument lists through a nexus node")
> * GPIO adoption:
> commit c11e6f0f04db ("gpio: Support gpio nexus dt bindings")
> * PWM adoption:
> commit e71e46a6f19c ("pwm: Add support for pwm nexus dt bindings")
> Clock adoption is ongoing:
> https://lore.kernel.org/all/20260327-schneider-v7-0-rc1-crypto-v1-10-5e6ff7853994@xxxxxxxxxxx/

DT spec only mentions nexuses, but it is only a spec. Each property from
the spec must be defined in dtschema or kernel bindings.

I do not see any dependency mentioned in the cover letter, so how do you
think we can figure out where is this definition of clock nexus?


Best regards,
Krzysztof