Thank you for your contribution! Sashiko AI review found 1 potential issue(s) 
to consider:
- [Medium] dt-bindings: display: ti,tpd12s015: schema allows missing gpios but 
drivers require 3 items
--

commit b4ff2205414e2e8ba45b337bf355981c209d7395
Author: Chaosheng Qu <[email protected]>

dt-bindings: display: ti,tpd12s015: Convert to DT schema

The commit converts the TPD12S015 HDMI level shifter binding from plain
text to DT schema format.

> diff --git a/Documentation/devicetree/bindings/display/ti/ti,tpd12s015.yaml 
> b/Documentation/devicetree/bindings/display/ti/ti,tpd12s015.yaml
> new file mode 100644
> index 0000000000000..1927da3bd7361
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/ti/ti,tpd12s015.yaml

[ ... ]

> +properties:
> +  compatible:
> +    oneOf:
> +      - const: ti,tpd12s015
> +      - items:
> +          - const: ti,tpd12s016
> +          - const: ti,tpd12s015
> +
> +  gpios:
> +    description:
> +      The CT CP HPD, LS OE and HPD GPIOs, in that order. The first controls
> +      the level shifter, the second enables the level shifter outputs and
> +      the third reads the hot-plug detect line.
> +    maxItems: 3

[Severity: Medium]
Does the gpios property need a minItems: 3 constraint, or should it be made
a globally required property?

Both the DRM driver (ti-tpd12s015.c) and fbdev driver (encoder-tpd12s015.c)
unconditionally fail probe if the third GPIO is missing:

drivers/gpu/drm/bridge/ti-tpd12s015.c:tpd12s015_probe() {
    ...
        gpio = devm_gpiod_get_index(&pdev->dev, NULL, 2, GPIOD_IN);
        if (IS_ERR(gpio))
                return PTR_ERR(gpio);
    ...
}

If a device tree omits gpios or provides fewer than 3 items, it will pass
schema validation but the hardware will fail to probe at runtime.

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

Reply via email to