Document the driver for Synaptics TDDI (Touch/Display Integration) panels.
Along with the MIPI-DSI panel, these devices also have an in-built LED
backlight device and a touchscreen, all packed together in a single chip.
Also, add compatibles for supported panels - TD4101 and TD4300.
Signed-off-by: Kaustabh Chakraborty <kauschluss@disroot.org>
---
.../bindings/display/panel/synaptics,tddi.yaml | 92 ++++++++++++++++++++++
1 file changed, 92 insertions(+)
diff --git a/Documentation/devicetree/bindings/display/panel/synaptics,tddi.yaml b/Documentation/devicetree/bindings/display/panel/synaptics,tddi.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..3aae1358a1d764361c072d3b54f74cdf634f7fa8
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/panel/synaptics,tddi.yaml
@@ -0,0 +1,92 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/display/panel/samsung,tddi.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Synaptics TDDI Display Panel Controller
+
+maintainers:
+ - Kaustabh Chakraborty <kauschluss@disroot.org>
+
+allOf:
+ - $ref: panel-common.yaml#
+
+properties:
+ compatible:
+ enum:
+ - syna,td4101-panel
+ - syna,td4300-panel
+
+ reg:
+ maxItems: 1
+
+ vio-supply:
+ maxItems: 1
+ description: core I/O voltage supply
+
+ vsn-supply:
+ maxItems: 1
+ description: negative voltage supply for analog circuits
+
+ vsp-supply:
+ maxItems: 1
+ description: positive voltage supply for analog circuits
+
+ backlight-gpios:
+ maxItems: 1
+ description: backlight enable GPIO
+
+ reset-gpios: true
+ width-mm: true
+ height-mm: true
+ panel-timing: true
+
+required:
+ - compatible
+ - reg
+ - width-mm
+ - height-mm
+ - panel-timing
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/gpio/gpio.h>
+
+ dsi {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ panel@0 {
+ compatible = "synaptics,td4300-panel";
+ reg = <0>;
+
+ vio-supply = <&panel_vio_reg>;
+ vsn-supply = <&panel_vsn_reg>;
+ vsp-supply = <&panel_vsp_reg>;
+
+ backlight-gpios = <&gpd3 5 GPIO_ACTIVE_LOW>;
+ reset-gpios = <&gpd3 4 GPIO_ACTIVE_LOW>;
+
+ width-mm = <68>;
+ height-mm = <121>;
+
+ panel-timing {
+ clock-frequency = <144389520>;
+
+ hactive = <1080>;
+ hsync-len = <4>;
+ hfront-porch = <120>;
+ hback-porch = <32>;
+
+ vactive = <1920>;
+ vsync-len = <2>;
+ vfront-porch = <21>;
+ vback-porch = <4>;
+ };
+ };
+ };
+
+...
--
2.49.0
On Thu, Jun 12, 2025 at 08:09:40PM +0530, Kaustabh Chakraborty wrote: > Document the driver for Synaptics TDDI (Touch/Display Integration) panels. > Along with the MIPI-DSI panel, these devices also have an in-built LED > backlight device and a touchscreen, all packed together in a single chip. > Also, add compatibles for supported panels - TD4101 and TD4300. > > Signed-off-by: Kaustabh Chakraborty <kauschluss@disroot.org> > --- > .../bindings/display/panel/synaptics,tddi.yaml | 92 ++++++++++++++++++++++ > 1 file changed, 92 insertions(+) > > diff --git a/Documentation/devicetree/bindings/display/panel/synaptics,tddi.yaml b/Documentation/devicetree/bindings/display/panel/synaptics,tddi.yaml > new file mode 100644 > index 0000000000000000000000000000000000000000..3aae1358a1d764361c072d3b54f74cdf634f7fa8 > --- /dev/null > +++ b/Documentation/devicetree/bindings/display/panel/synaptics,tddi.yaml File called synaptics,tddi > @@ -0,0 +1,92 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/display/panel/samsung,tddi.yaml# id of samsung,tddi > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Synaptics TDDI Display Panel Controller > + > +maintainers: > + - Kaustabh Chakraborty <kauschluss@disroot.org> > + > +allOf: > + - $ref: panel-common.yaml# > + > +properties: > + compatible: > + enum: > + - syna,td4101-panel > + - syna,td4300-panel compatibles are syna,td####-panel These should be consistent and tooling should have complained about the mismatch between id and filename at the least.
On 2025-06-12 15:32, Conor Dooley wrote: > On Thu, Jun 12, 2025 at 08:09:40PM +0530, Kaustabh Chakraborty wrote: >> Document the driver for Synaptics TDDI (Touch/Display Integration) panels. >> Along with the MIPI-DSI panel, these devices also have an in-built LED >> backlight device and a touchscreen, all packed together in a single chip. >> Also, add compatibles for supported panels - TD4101 and TD4300. >> >> Signed-off-by: Kaustabh Chakraborty <kauschluss@disroot.org> >> --- >> .../bindings/display/panel/synaptics,tddi.yaml | 92 ++++++++++++++++++++++ >> 1 file changed, 92 insertions(+) >> >> diff --git a/Documentation/devicetree/bindings/display/panel/synaptics,tddi.yaml b/Documentation/devicetree/bindings/display/panel/synaptics,tddi.yaml >> new file mode 100644 >> index 0000000000000000000000000000000000000000..3aae1358a1d764361c072d3b54f74cdf634f7fa8 >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/display/panel/synaptics,tddi.yaml > > File called synaptics,tddi > >> @@ -0,0 +1,92 @@ >> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) >> +%YAML 1.2 >> +--- >> +$id: http://devicetree.org/schemas/display/panel/samsung,tddi.yaml# > > id of samsung,tddi > > [...] > >> +properties: >> + compatible: >> + enum: >> + - syna,td4101-panel >> + - syna,td4300-panel > > compatibles are syna,td####-panel > > These should be consistent and tooling should have complained about the > mismatch between id and filename at the least. Hmm, I don't recall seeing any errors. Do I pick any one then? Or is there any other generic way?
On Thu, Jun 12, 2025 at 03:47:55PM +0000, Kaustabh Chakraborty wrote: > On 2025-06-12 15:32, Conor Dooley wrote: > > On Thu, Jun 12, 2025 at 08:09:40PM +0530, Kaustabh Chakraborty wrote: > >> Document the driver for Synaptics TDDI (Touch/Display Integration) panels. > >> Along with the MIPI-DSI panel, these devices also have an in-built LED > >> backlight device and a touchscreen, all packed together in a single chip. > >> Also, add compatibles for supported panels - TD4101 and TD4300. > >> > >> Signed-off-by: Kaustabh Chakraborty <kauschluss@disroot.org> > >> --- > >> .../bindings/display/panel/synaptics,tddi.yaml | 92 ++++++++++++++++++++++ > >> 1 file changed, 92 insertions(+) > >> > >> diff --git a/Documentation/devicetree/bindings/display/panel/synaptics,tddi.yaml b/Documentation/devicetree/bindings/display/panel/synaptics,tddi.yaml > >> new file mode 100644 > >> index 0000000000000000000000000000000000000000..3aae1358a1d764361c072d3b54f74cdf634f7fa8 > >> --- /dev/null > >> +++ b/Documentation/devicetree/bindings/display/panel/synaptics,tddi.yaml > > > > File called synaptics,tddi > > > >> @@ -0,0 +1,92 @@ > >> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > >> +%YAML 1.2 > >> +--- > >> +$id: http://devicetree.org/schemas/display/panel/samsung,tddi.yaml# > > > > id of samsung,tddi > > > > [...] > > > >> +properties: > >> + compatible: > >> + enum: > >> + - syna,td4101-panel > >> + - syna,td4300-panel > > > > compatibles are syna,td####-panel > > > > These should be consistent and tooling should have complained about the > > mismatch between id and filename at the least. > > Hmm, I don't recall seeing any errors. Do I pick any one then? Or is there > any other generic way? The id must match the filename and the filename should match one of the compatibles.
© 2016 - 2025 Red Hat, Inc.