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

From: Krzysztof Kozlowski <[email-masked]>
Date: Mon, 18 May 2026 09:07:21 +0200

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/[email-masked]/

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