diff mbox series

[v2,1/2] dt-bindings: display: bridge: add TI TDP158

Message ID 20240625-tdp158-v2-1-a3b344707fa7@freebox.fr (mailing list archive)
State New, archived
Headers show
Series Basic support for TI TDP158 | expand

Commit Message

Marc Gonzalez June 25, 2024, 4:38 p.m. UTC
The TI TDP158 is an HDMI to TMDS Redriver.

Signed-off-by: Marc Gonzalez <mgonzalez@freebox.fr>
---
 .../bindings/display/bridge/ti,tdp158.yaml         | 48 ++++++++++++++++++++++
 1 file changed, 48 insertions(+)

Comments

Conor Dooley June 26, 2024, 4:08 p.m. UTC | #1
On Tue, Jun 25, 2024 at 06:38:12PM +0200, Marc Gonzalez wrote:
> The TI TDP158 is an HDMI to TMDS Redriver.
> 
> Signed-off-by: Marc Gonzalez <mgonzalez@freebox.fr>
> ---
>  .../bindings/display/bridge/ti,tdp158.yaml         | 48 ++++++++++++++++++++++
>  1 file changed, 48 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/display/bridge/ti,tdp158.yaml b/Documentation/devicetree/bindings/display/bridge/ti,tdp158.yaml
> new file mode 100644
> index 0000000000000..b687699e2ba80
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/bridge/ti,tdp158.yaml
> @@ -0,0 +1,48 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/display/bridge/ti,tdp158.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: TI TDP158 HDMI to TMDS Redriver
> +
> +maintainers:
> +  - Arnaud Vrac <avrac@freebox.fr>
> +
> +properties:
> +  compatible:
> +    const: ti,tdp158
> +
> +  reg:
> +    description: I2C address of the device
> +
> +  enable-gpios:
> +    description: GPIO controlling bridge enable
> +
> +  vcc-supply:
> +    description: Power supply 3.3V
> +
> +  vdd-supply:
> +    description: Power supply 1.1V

Are these supplies not also required? Surely the device needs the power
to function?

Cheers,
Conor.

> +
> +  ports:
> +    $ref: /schemas/graph.yaml#/properties/ports
> +
> +    properties:
> +      port@0:
> +        $ref: /schemas/graph.yaml#/properties/port
> +        description: Bridge input
> +
> +      port@1:
> +        $ref: /schemas/graph.yaml#/properties/port
> +        description: Bridge output
> +
> +    required:
> +      - port@0
> +      - port@1
> +
> +required:
> +  - compatible
> +  - ports
> +
> +additionalProperties: false
> 
> -- 
> 2.34.1
>
Marc Gonzalez June 26, 2024, 5:20 p.m. UTC | #2
On 26/06/2024 18:08, Conor Dooley wrote:

> On Tue, Jun 25, 2024 at 06:38:12PM +0200, Marc Gonzalez wrote:
>
>> The TI TDP158 is an HDMI to TMDS Redriver.
>>
>> Signed-off-by: Marc Gonzalez <mgonzalez@freebox.fr>
>> ---
>>  .../bindings/display/bridge/ti,tdp158.yaml         | 48 ++++++++++++++++++++++
>>  1 file changed, 48 insertions(+)
>>
>> diff --git a/Documentation/devicetree/bindings/display/bridge/ti,tdp158.yaml b/Documentation/devicetree/bindings/display/bridge/ti,tdp158.yaml
>> new file mode 100644
>> index 0000000000000..b687699e2ba80
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/display/bridge/ti,tdp158.yaml
>> @@ -0,0 +1,48 @@
>> +# SPDX-License-Identifier: GPL-2.0-only
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/display/bridge/ti,tdp158.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: TI TDP158 HDMI to TMDS Redriver
>> +
>> +maintainers:
>> +  - Arnaud Vrac <avrac@freebox.fr>
>> +
>> +properties:
>> +  compatible:
>> +    const: ti,tdp158
>> +
>> +  reg:
>> +    description: I2C address of the device
>> +
>> +  enable-gpios:
>> +    description: GPIO controlling bridge enable
>> +
>> +  vcc-supply:
>> +    description: Power supply 3.3V
>> +
>> +  vdd-supply:
>> +    description: Power supply 1.1V
> 
> Are these supplies not also required? Surely the device needs the power
> to function?

Maybe if the hamsters spin fast enough in their wheels,
these supplies won't be required? :)

The reason I hesitated to mark them as required,
is because the HW engineer told us that on our board
they were connected to a power line that is shared
between several functional blocks.

I suppose that's not a reason?

Required means "device doesn't work if they're not connected" ?

Regards
Maxime Ripard June 27, 2024, 7:24 a.m. UTC | #3
On Tue, Jun 25, 2024 at 06:38:12PM GMT, Marc Gonzalez wrote:
> The TI TDP158 is an HDMI to TMDS Redriver.
> 
> Signed-off-by: Marc Gonzalez <mgonzalez@freebox.fr>

Your commit log needs some work.

In particular, that device is more complex than what you're saying, and
explaining the full capabilities of the device will allow people to help
you create bindings that will be able to exploit all those capabilities
without breaking the backward compatibility.

Maxime
Conor Dooley June 27, 2024, 4:15 p.m. UTC | #4
On Wed, Jun 26, 2024 at 07:20:46PM +0200, Marc Gonzalez wrote:
> On 26/06/2024 18:08, Conor Dooley wrote:
> 
> > On Tue, Jun 25, 2024 at 06:38:12PM +0200, Marc Gonzalez wrote:
> >
> >> The TI TDP158 is an HDMI to TMDS Redriver.
> >>
> >> Signed-off-by: Marc Gonzalez <mgonzalez@freebox.fr>
> >> ---
> >>  .../bindings/display/bridge/ti,tdp158.yaml         | 48 ++++++++++++++++++++++
> >>  1 file changed, 48 insertions(+)
> >>
> >> diff --git a/Documentation/devicetree/bindings/display/bridge/ti,tdp158.yaml b/Documentation/devicetree/bindings/display/bridge/ti,tdp158.yaml
> >> new file mode 100644
> >> index 0000000000000..b687699e2ba80
> >> --- /dev/null
> >> +++ b/Documentation/devicetree/bindings/display/bridge/ti,tdp158.yaml
> >> @@ -0,0 +1,48 @@
> >> +# SPDX-License-Identifier: GPL-2.0-only
> >> +%YAML 1.2
> >> +---
> >> +$id: http://devicetree.org/schemas/display/bridge/ti,tdp158.yaml#
> >> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> >> +
> >> +title: TI TDP158 HDMI to TMDS Redriver
> >> +
> >> +maintainers:
> >> +  - Arnaud Vrac <avrac@freebox.fr>
> >> +
> >> +properties:
> >> +  compatible:
> >> +    const: ti,tdp158
> >> +
> >> +  reg:
> >> +    description: I2C address of the device
> >> +
> >> +  enable-gpios:
> >> +    description: GPIO controlling bridge enable
> >> +
> >> +  vcc-supply:
> >> +    description: Power supply 3.3V
> >> +
> >> +  vdd-supply:
> >> +    description: Power supply 1.1V
> > 
> > Are these supplies not also required? Surely the device needs the power
> > to function?
> 
> Maybe if the hamsters spin fast enough in their wheels,
> these supplies won't be required? :)
> 
> The reason I hesitated to mark them as required,
> is because the HW engineer told us that on our board
> they were connected to a power line that is shared
> between several functional blocks.
> 
> I suppose that's not a reason?

Then all of those blocks should have their supplies described in the
devicetree! FWIW, if you don't put them in your dts, you'll get
validation failures but the regulator core will produce dummy regulators
so your driver should "just workTM". I'd suggest that you add the
supplies though to these other functional blocks so that the OS can
manage them properly.

> Required means "device doesn't work if they're not connected" ?

Correct.

Thanks,
Conor.
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/display/bridge/ti,tdp158.yaml b/Documentation/devicetree/bindings/display/bridge/ti,tdp158.yaml
new file mode 100644
index 0000000000000..b687699e2ba80
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/bridge/ti,tdp158.yaml
@@ -0,0 +1,48 @@ 
+# SPDX-License-Identifier: GPL-2.0-only
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/display/bridge/ti,tdp158.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: TI TDP158 HDMI to TMDS Redriver
+
+maintainers:
+  - Arnaud Vrac <avrac@freebox.fr>
+
+properties:
+  compatible:
+    const: ti,tdp158
+
+  reg:
+    description: I2C address of the device
+
+  enable-gpios:
+    description: GPIO controlling bridge enable
+
+  vcc-supply:
+    description: Power supply 3.3V
+
+  vdd-supply:
+    description: Power supply 1.1V
+
+  ports:
+    $ref: /schemas/graph.yaml#/properties/ports
+
+    properties:
+      port@0:
+        $ref: /schemas/graph.yaml#/properties/port
+        description: Bridge input
+
+      port@1:
+        $ref: /schemas/graph.yaml#/properties/port
+        description: Bridge output
+
+    required:
+      - port@0
+      - port@1
+
+required:
+  - compatible
+  - ports
+
+additionalProperties: false