Thank you for your contribution! Sashiko AI review found 1 potential issue(s) 
to consider:
- [Medium] The newly added endpoint constraints (including `bus-width`, 
`video-interfaces.yaml` inclusion, and `unevaluatedProperties: false`) are 
applied using an exact string match for `endpoint`. This silently bypasses 
validation for indexed nodes like `endpoint@1` or `endpoint@2`, which are 
actively used by multi-endpoint configurations.
--

--- Patch [1]: [PATCH v4 1/4] dt-bindings: lcdif: Add endpoint bus-width 
property ---
commit e694f44914c3b2ddcaf755532413ffea7e676ef7
Author: Francesco Dolcini <[email protected]>

dt-bindings: lcdif: Add endpoint bus-width property

The DPI output of the LCD interface can be configured with a bus width
of 16, 18, or 24 bits. This introduces a bus-width property to the output
endpoint to specify the number of parallel RGB bits connected.

> diff --git a/Documentation/devicetree/bindings/display/fsl,lcdif.yaml 
> b/Documentation/devicetree/bindings/display/fsl,lcdif.yaml
> index 2dd0411ec6516..89cea0c14cf1d 100644
> --- a/Documentation/devicetree/bindings/display/fsl,lcdif.yaml
> +++ b/Documentation/devicetree/bindings/display/fsl,lcdif.yaml
> @@ -68,9 +68,19 @@ properties:
>      maxItems: 1
>  
>    port:
> -    $ref: /schemas/graph.yaml#/properties/port
> +    $ref: /schemas/graph.yaml#/$defs/port-base
> +    unevaluatedProperties: false
>      description: The LCDIF output port
>  
> +    properties:
> +      endpoint:

[Severity: Medium]
Will this strict property match cause a regression in validation for indexed
endpoints?

By using an exact string match for endpoint under the properties block, this
schema appears to silently bypass validation for multi-endpoint configurations
that use indexed nodes like endpoint@1 or endpoint@2.

Because these indexed nodes are matched and evaluated by the
^endpoint(@[0-9a-f]+)?$ pattern from /schemas/graph.yaml#/$defs/port-base,
they will satisfy the parent port node's unevaluatedProperties: false check.
However, any invalid properties or incorrect bus-width values inside those
indexed endpoint nodes will be ignored by this new schema block.

Should this use patternProperties with "^endpoint(@[0-9a-f]+)?$" instead of
an exact properties match to ensure all endpoints are properly validated?

> +        $ref: /schemas/media/video-interfaces.yaml
> +        unevaluatedProperties: false
> +
> +        properties:
> +          bus-width:
> +            enum: [ 16, 18, 24 ]
> +
>    display:
>      $ref: /schemas/types.yaml#/definitions/phandle
>      description: phandle to display panel

-- 
Sashiko AI review ยท 
https://sashiko.dev/#/patchset/[email protected]?part=1

Reply via email to