Message ID | 1594388491-15129-1-git-send-email-simhavcs@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v8,1/2] dt-binding: Add DSI/LVDS TC358775 bridge bindings | expand |
Hi All, Please Review the patch On Fri, Jul 10, 2020 at 7:11 PM Vinay Simha BN <simhavcs@gmail.com> wrote: > - license modified to (GPL-2.0-only OR BSD-2-Clause) > - single-link and dual-link lvds description and > examples are added > - proper indentation > - VESA/JEIDA formats picked from panel-lvds dts > - dsi data-lanes property removed, it will be picked > from dsi0 ports > - dual-link lvds port added and implemented > - converted from .txt to .yaml > > Signed-off-by: Vinay Simha BN <simhavcs@gmail.com> > Reviewed-by: Sam Ravnborg <sam@ravnborg.org> > Reviewed-by: Rob Herring <robh@kernel.org> > --- > v1: > Initial version wast .txt file > > v2: > From txt to yaml file format > > v3: > * Andrzej Hajda review comments incorporated > dual port lvds implemented > > * Laurent Pinchart review comments incorporated > dsi lanes property removed and it is dynamically > picked from the dsi ports > VESA/JEIDA format picked from panel-lvds dts > > v4: > * Sam Ravnborg review comments incorporated > }' is indented properly in examples data-lanes > description for single-link and dual-link lvds > > v5: > * Sam Ravnborg review comments incorporated > license modified to (GPL-2.0-only OR BSD-2-Clause) > changelog added > > v6: > * No changes, revision version mentioned to inline with > driver file > > v7: > * change log added > Reviewed-by: Sam Ravnborg <sam@ravnborg.org> > > v8: > * Reviewed-by: Rob Herring <robh@kernel.org> > * change log modified in reverse chronological order > --- > .../bindings/display/bridge/toshiba,tc358775.yaml | 215 > +++++++++++++++++++++ > 1 file changed, 215 insertions(+) > create mode 100644 > Documentation/devicetree/bindings/display/bridge/toshiba,tc358775.yaml > > diff --git > a/Documentation/devicetree/bindings/display/bridge/toshiba,tc358775.yaml > b/Documentation/devicetree/bindings/display/bridge/toshiba,tc358775.yaml > new file mode 100644 > index 0000000..31f085d > --- /dev/null > +++ > b/Documentation/devicetree/bindings/display/bridge/toshiba,tc358775.yaml > @@ -0,0 +1,215 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/display/bridge/toshiba,tc358775.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Toshiba TC358775 DSI to LVDS bridge bindings > + > +maintainers: > + - Vinay Simha BN <simhavcs@gmail.com> > + > +description: | > + This binding supports DSI to LVDS bridge TC358775 > + > + MIPI DSI-RX Data 4-lane, CLK 1-lane with data rates up to 800 Mbps/lane. > + Video frame size: > + Up to 1600x1200 24-bit/pixel resolution for single-link LVDS display > panel > + limited by 135 MHz LVDS speed > + Up to WUXGA (1920x1200 24-bit pixels) resolution for dual-link LVDS > display > + panel, limited by 270 MHz LVDS speed. > + > +properties: > + compatible: > + const: toshiba,tc358775 > + > + reg: > + maxItems: 1 > + description: i2c address of the bridge, 0x0f > + > + vdd-supply: > + maxItems: 1 > + description: 1.2V LVDS Power Supply > + > + vddio-supply: > + maxItems: 1 > + description: 1.8V IO Power Supply > + > + stby-gpios: > + maxItems: 1 > + description: Standby pin, Low active > + > + reset-gpios: > + maxItems: 1 > + description: Hardware reset, Low active > + > + ports: > + type: object > + description: > + A node containing input and output port nodes with endpoint > definitions > + as documented in > + Documentation/devicetree/bindings/media/video-interfaces.txt > + properties: > + "#address-cells": > + const: 1 > + > + "#size-cells": > + const: 0 > + > + port@0: > + type: object > + description: | > + DSI Input. The remote endpoint phandle should be a > + reference to a valid mipi_dsi_host device node. > + > + port@1: > + type: object > + description: | > + Video port for LVDS output (panel or connector). > + > + port@2: > + type: object > + description: | > + Video port for Dual link LVDS output (panel or connector). > + > + required: > + - port@0 > + - port@1 > + > +required: > + - compatible > + - reg > + - vdd-supply > + - vddio-supply > + - stby-gpios > + - reset-gpios > + - ports > + > +examples: > + - | > + #include <dt-bindings/gpio/gpio.h> > + > + /* For single-link LVDS display panel */ > + > + i2c@78b8000 { > + /* On High speed expansion */ > + label = "HS-I2C2"; > + reg = <0x078b8000 0x500>; > + clock-frequency = <400000>; /* fastmode operation */ > + #address-cells = <1>; > + #size-cells = <0>; > + > + tc_bridge: bridge@f { > + compatible = "toshiba,tc358775"; > + reg = <0x0f>; > + > + vdd-supply = <&pm8916_l2>; > + vddio-supply = <&pm8916_l6>; > + > + stby-gpios = <&msmgpio 99 GPIO_ACTIVE_LOW>; > + reset-gpios = <&msmgpio 72 GPIO_ACTIVE_LOW>; > + > + ports { > + #address-cells = <1>; > + #size-cells = <0>; > + > + port@0 { > + reg = <0>; > + d2l_in_test: endpoint { > + remote-endpoint = <&dsi0_out>; > + }; > + }; > + > + port@1 { > + reg = <1>; > + lvds_out: endpoint { > + remote-endpoint = <&panel_in>; > + }; > + }; > + }; > + }; > + }; > + > + dsi@1a98000 { > + reg = <0x1a98000 0x25c>; > + reg-names = "dsi_ctrl"; > + > + ports { > + #address-cells = <1>; > + #size-cells = <0>; > + port@1 { > + reg = <1>; > + dsi0_out: endpoint { > + remote-endpoint = <&d2l_in_test>; > + data-lanes = <0 1 2 3>; > + }; > + }; > + }; > + }; > + > + - | > + /* For dual-link LVDS display panel */ > + > + i2c@78b8000 { > + /* On High speed expansion */ > + label = "HS-I2C2"; > + reg = <0x078b8000 0x500>; > + clock-frequency = <400000>; /* fastmode operation */ > + #address-cells = <1>; > + #size-cells = <0>; > + > + tc_bridge_dual: bridge@f { > + compatible = "toshiba,tc358775"; > + reg = <0x0f>; > + > + vdd-supply = <&pm8916_l2>; > + vddio-supply = <&pm8916_l6>; > + > + stby-gpios = <&msmgpio 99 GPIO_ACTIVE_LOW>; > + reset-gpios = <&msmgpio 72 GPIO_ACTIVE_LOW>; > + > + ports { > + #address-cells = <1>; > + #size-cells = <0>; > + > + port@0 { > + reg = <0>; > + d2l_in_dual: endpoint { > + remote-endpoint = <&dsi0_out_dual>; > + }; > + }; > + > + port@1 { > + reg = <1>; > + lvds0_out: endpoint { > + remote-endpoint = <&panel_in0>; > + }; > + }; > + > + port@2 { > + reg = <2>; > + lvds1_out: endpoint { > + remote-endpoint = <&panel_in1>; > + }; > + }; > + }; > + }; > + }; > + > + dsi@1a98000 { > + reg = <0x1a98000 0x25c>; > + reg-names = "dsi_ctrl"; > + > + ports { > + #address-cells = <1>; > + #size-cells = <0>; > + port@1 { > + reg = <1>; > + dsi0_out_dual: endpoint { > + remote-endpoint = <&d2l_in_dual>; > + data-lanes = <0 1 2 3>; > + }; > + }; > + }; > + }; > +... > -- > 2.1.2 > >
Hi All, Please Review the patch On Wed, Jul 29, 2020 at 6:01 PM Vinay Simha B N <simhavcs@gmail.com> wrote: > Hi All, > > Please Review the patch > > On Fri, Jul 10, 2020 at 7:11 PM Vinay Simha BN <simhavcs@gmail.com> wrote: > >> - license modified to (GPL-2.0-only OR BSD-2-Clause) >> - single-link and dual-link lvds description and >> examples are added >> - proper indentation >> - VESA/JEIDA formats picked from panel-lvds dts >> - dsi data-lanes property removed, it will be picked >> from dsi0 ports >> - dual-link lvds port added and implemented >> - converted from .txt to .yaml >> >> Signed-off-by: Vinay Simha BN <simhavcs@gmail.com> >> Reviewed-by: Sam Ravnborg <sam@ravnborg.org> >> Reviewed-by: Rob Herring <robh@kernel.org> >> --- >> v1: >> Initial version wast .txt file >> >> v2: >> From txt to yaml file format >> >> v3: >> * Andrzej Hajda review comments incorporated >> dual port lvds implemented >> >> * Laurent Pinchart review comments incorporated >> dsi lanes property removed and it is dynamically >> picked from the dsi ports >> VESA/JEIDA format picked from panel-lvds dts >> >> v4: >> * Sam Ravnborg review comments incorporated >> }' is indented properly in examples data-lanes >> description for single-link and dual-link lvds >> >> v5: >> * Sam Ravnborg review comments incorporated >> license modified to (GPL-2.0-only OR BSD-2-Clause) >> changelog added >> >> v6: >> * No changes, revision version mentioned to inline with >> driver file >> >> v7: >> * change log added >> Reviewed-by: Sam Ravnborg <sam@ravnborg.org> >> >> v8: >> * Reviewed-by: Rob Herring <robh@kernel.org> >> * change log modified in reverse chronological order >> --- >> .../bindings/display/bridge/toshiba,tc358775.yaml | 215 >> +++++++++++++++++++++ >> 1 file changed, 215 insertions(+) >> create mode 100644 >> Documentation/devicetree/bindings/display/bridge/toshiba,tc358775.yaml >> >> diff --git >> a/Documentation/devicetree/bindings/display/bridge/toshiba,tc358775.yaml >> b/Documentation/devicetree/bindings/display/bridge/toshiba,tc358775.yaml >> new file mode 100644 >> index 0000000..31f085d >> --- /dev/null >> +++ >> b/Documentation/devicetree/bindings/display/bridge/toshiba,tc358775.yaml >> @@ -0,0 +1,215 @@ >> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) >> +%YAML 1.2 >> +--- >> +$id: http://devicetree.org/schemas/display/bridge/toshiba,tc358775.yaml# >> +$schema: http://devicetree.org/meta-schemas/core.yaml# >> + >> +title: Toshiba TC358775 DSI to LVDS bridge bindings >> + >> +maintainers: >> + - Vinay Simha BN <simhavcs@gmail.com> >> + >> +description: | >> + This binding supports DSI to LVDS bridge TC358775 >> + >> + MIPI DSI-RX Data 4-lane, CLK 1-lane with data rates up to 800 Mbps/lane. >> + Video frame size: >> + Up to 1600x1200 24-bit/pixel resolution for single-link LVDS display >> panel >> + limited by 135 MHz LVDS speed >> + Up to WUXGA (1920x1200 24-bit pixels) resolution for dual-link LVDS >> display >> + panel, limited by 270 MHz LVDS speed. >> + >> +properties: >> + compatible: >> + const: toshiba,tc358775 >> + >> + reg: >> + maxItems: 1 >> + description: i2c address of the bridge, 0x0f >> + >> + vdd-supply: >> + maxItems: 1 >> + description: 1.2V LVDS Power Supply >> + >> + vddio-supply: >> + maxItems: 1 >> + description: 1.8V IO Power Supply >> + >> + stby-gpios: >> + maxItems: 1 >> + description: Standby pin, Low active >> + >> + reset-gpios: >> + maxItems: 1 >> + description: Hardware reset, Low active >> + >> + ports: >> + type: object >> + description: >> + A node containing input and output port nodes with endpoint >> definitions >> + as documented in >> + Documentation/devicetree/bindings/media/video-interfaces.txt >> + properties: >> + "#address-cells": >> + const: 1 >> + >> + "#size-cells": >> + const: 0 >> + >> + port@0: >> + type: object >> + description: | >> + DSI Input. The remote endpoint phandle should be a >> + reference to a valid mipi_dsi_host device node. >> + >> + port@1: >> + type: object >> + description: | >> + Video port for LVDS output (panel or connector). >> + >> + port@2: >> + type: object >> + description: | >> + Video port for Dual link LVDS output (panel or connector). >> + >> + required: >> + - port@0 >> + - port@1 >> + >> +required: >> + - compatible >> + - reg >> + - vdd-supply >> + - vddio-supply >> + - stby-gpios >> + - reset-gpios >> + - ports >> + >> +examples: >> + - | >> + #include <dt-bindings/gpio/gpio.h> >> + >> + /* For single-link LVDS display panel */ >> + >> + i2c@78b8000 { >> + /* On High speed expansion */ >> + label = "HS-I2C2"; >> + reg = <0x078b8000 0x500>; >> + clock-frequency = <400000>; /* fastmode operation */ >> + #address-cells = <1>; >> + #size-cells = <0>; >> + >> + tc_bridge: bridge@f { >> + compatible = "toshiba,tc358775"; >> + reg = <0x0f>; >> + >> + vdd-supply = <&pm8916_l2>; >> + vddio-supply = <&pm8916_l6>; >> + >> + stby-gpios = <&msmgpio 99 GPIO_ACTIVE_LOW>; >> + reset-gpios = <&msmgpio 72 GPIO_ACTIVE_LOW>; >> + >> + ports { >> + #address-cells = <1>; >> + #size-cells = <0>; >> + >> + port@0 { >> + reg = <0>; >> + d2l_in_test: endpoint { >> + remote-endpoint = <&dsi0_out>; >> + }; >> + }; >> + >> + port@1 { >> + reg = <1>; >> + lvds_out: endpoint { >> + remote-endpoint = <&panel_in>; >> + }; >> + }; >> + }; >> + }; >> + }; >> + >> + dsi@1a98000 { >> + reg = <0x1a98000 0x25c>; >> + reg-names = "dsi_ctrl"; >> + >> + ports { >> + #address-cells = <1>; >> + #size-cells = <0>; >> + port@1 { >> + reg = <1>; >> + dsi0_out: endpoint { >> + remote-endpoint = <&d2l_in_test>; >> + data-lanes = <0 1 2 3>; >> + }; >> + }; >> + }; >> + }; >> + >> + - | >> + /* For dual-link LVDS display panel */ >> + >> + i2c@78b8000 { >> + /* On High speed expansion */ >> + label = "HS-I2C2"; >> + reg = <0x078b8000 0x500>; >> + clock-frequency = <400000>; /* fastmode operation */ >> + #address-cells = <1>; >> + #size-cells = <0>; >> + >> + tc_bridge_dual: bridge@f { >> + compatible = "toshiba,tc358775"; >> + reg = <0x0f>; >> + >> + vdd-supply = <&pm8916_l2>; >> + vddio-supply = <&pm8916_l6>; >> + >> + stby-gpios = <&msmgpio 99 GPIO_ACTIVE_LOW>; >> + reset-gpios = <&msmgpio 72 GPIO_ACTIVE_LOW>; >> + >> + ports { >> + #address-cells = <1>; >> + #size-cells = <0>; >> + >> + port@0 { >> + reg = <0>; >> + d2l_in_dual: endpoint { >> + remote-endpoint = <&dsi0_out_dual>; >> + }; >> + }; >> + >> + port@1 { >> + reg = <1>; >> + lvds0_out: endpoint { >> + remote-endpoint = <&panel_in0>; >> + }; >> + }; >> + >> + port@2 { >> + reg = <2>; >> + lvds1_out: endpoint { >> + remote-endpoint = <&panel_in1>; >> + }; >> + }; >> + }; >> + }; >> + }; >> + >> + dsi@1a98000 { >> + reg = <0x1a98000 0x25c>; >> + reg-names = "dsi_ctrl"; >> + >> + ports { >> + #address-cells = <1>; >> + #size-cells = <0>; >> + port@1 { >> + reg = <1>; >> + dsi0_out_dual: endpoint { >> + remote-endpoint = <&d2l_in_dual>; >> + data-lanes = <0 1 2 3>; >> + }; >> + }; >> + }; >> + }; >> +... >> -- >> 2.1.2 >> >> > > -- > regards, > vinaysimha >
Hi Vinay. On Wed, Jul 29, 2020 at 06:01:21PM +0530, Vinay Simha B N wrote: > Hi All, > > Please Review the patch > > On Fri, Jul 10, 2020 at 7:11 PM Vinay Simha BN <simhavcs@gmail.com> wrote: > > > - license modified to (GPL-2.0-only OR BSD-2-Clause) > > - single-link and dual-link lvds description and > > examples are added > > - proper indentation > > - VESA/JEIDA formats picked from panel-lvds dts > > - dsi data-lanes property removed, it will be picked > > from dsi0 ports > > - dual-link lvds port added and implemented > > - converted from .txt to .yaml > > > > Signed-off-by: Vinay Simha BN <simhavcs@gmail.com> > > Reviewed-by: Sam Ravnborg <sam@ravnborg.org> > > Reviewed-by: Rob Herring <robh@kernel.org> The binding is already reviewed by Rob and me - as you have recorded above. It will be applied when the driver is ready. Sam > > --- > > v1: > > Initial version wast .txt file > > > > v2: > > From txt to yaml file format > > > > v3: > > * Andrzej Hajda review comments incorporated > > dual port lvds implemented > > > > * Laurent Pinchart review comments incorporated > > dsi lanes property removed and it is dynamically > > picked from the dsi ports > > VESA/JEIDA format picked from panel-lvds dts > > > > v4: > > * Sam Ravnborg review comments incorporated > > }' is indented properly in examples data-lanes > > description for single-link and dual-link lvds > > > > v5: > > * Sam Ravnborg review comments incorporated > > license modified to (GPL-2.0-only OR BSD-2-Clause) > > changelog added > > > > v6: > > * No changes, revision version mentioned to inline with > > driver file > > > > v7: > > * change log added > > Reviewed-by: Sam Ravnborg <sam@ravnborg.org> > > > > v8: > > * Reviewed-by: Rob Herring <robh@kernel.org> > > * change log modified in reverse chronological order > > --- > > .../bindings/display/bridge/toshiba,tc358775.yaml | 215 > > +++++++++++++++++++++ > > 1 file changed, 215 insertions(+) > > create mode 100644 > > Documentation/devicetree/bindings/display/bridge/toshiba,tc358775.yaml > > > > diff --git > > a/Documentation/devicetree/bindings/display/bridge/toshiba,tc358775.yaml > > b/Documentation/devicetree/bindings/display/bridge/toshiba,tc358775.yaml > > new file mode 100644 > > index 0000000..31f085d > > --- /dev/null > > +++ > > b/Documentation/devicetree/bindings/display/bridge/toshiba,tc358775.yaml > > @@ -0,0 +1,215 @@ > > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > > +%YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/display/bridge/toshiba,tc358775.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: Toshiba TC358775 DSI to LVDS bridge bindings > > + > > +maintainers: > > + - Vinay Simha BN <simhavcs@gmail.com> > > + > > +description: | > > + This binding supports DSI to LVDS bridge TC358775 > > + > > + MIPI DSI-RX Data 4-lane, CLK 1-lane with data rates up to 800 Mbps/lane. > > + Video frame size: > > + Up to 1600x1200 24-bit/pixel resolution for single-link LVDS display > > panel > > + limited by 135 MHz LVDS speed > > + Up to WUXGA (1920x1200 24-bit pixels) resolution for dual-link LVDS > > display > > + panel, limited by 270 MHz LVDS speed. > > + > > +properties: > > + compatible: > > + const: toshiba,tc358775 > > + > > + reg: > > + maxItems: 1 > > + description: i2c address of the bridge, 0x0f > > + > > + vdd-supply: > > + maxItems: 1 > > + description: 1.2V LVDS Power Supply > > + > > + vddio-supply: > > + maxItems: 1 > > + description: 1.8V IO Power Supply > > + > > + stby-gpios: > > + maxItems: 1 > > + description: Standby pin, Low active > > + > > + reset-gpios: > > + maxItems: 1 > > + description: Hardware reset, Low active > > + > > + ports: > > + type: object > > + description: > > + A node containing input and output port nodes with endpoint > > definitions > > + as documented in > > + Documentation/devicetree/bindings/media/video-interfaces.txt > > + properties: > > + "#address-cells": > > + const: 1 > > + > > + "#size-cells": > > + const: 0 > > + > > + port@0: > > + type: object > > + description: | > > + DSI Input. The remote endpoint phandle should be a > > + reference to a valid mipi_dsi_host device node. > > + > > + port@1: > > + type: object > > + description: | > > + Video port for LVDS output (panel or connector). > > + > > + port@2: > > + type: object > > + description: | > > + Video port for Dual link LVDS output (panel or connector). > > + > > + required: > > + - port@0 > > + - port@1 > > + > > +required: > > + - compatible > > + - reg > > + - vdd-supply > > + - vddio-supply > > + - stby-gpios > > + - reset-gpios > > + - ports > > + > > +examples: > > + - | > > + #include <dt-bindings/gpio/gpio.h> > > + > > + /* For single-link LVDS display panel */ > > + > > + i2c@78b8000 { > > + /* On High speed expansion */ > > + label = "HS-I2C2"; > > + reg = <0x078b8000 0x500>; > > + clock-frequency = <400000>; /* fastmode operation */ > > + #address-cells = <1>; > > + #size-cells = <0>; > > + > > + tc_bridge: bridge@f { > > + compatible = "toshiba,tc358775"; > > + reg = <0x0f>; > > + > > + vdd-supply = <&pm8916_l2>; > > + vddio-supply = <&pm8916_l6>; > > + > > + stby-gpios = <&msmgpio 99 GPIO_ACTIVE_LOW>; > > + reset-gpios = <&msmgpio 72 GPIO_ACTIVE_LOW>; > > + > > + ports { > > + #address-cells = <1>; > > + #size-cells = <0>; > > + > > + port@0 { > > + reg = <0>; > > + d2l_in_test: endpoint { > > + remote-endpoint = <&dsi0_out>; > > + }; > > + }; > > + > > + port@1 { > > + reg = <1>; > > + lvds_out: endpoint { > > + remote-endpoint = <&panel_in>; > > + }; > > + }; > > + }; > > + }; > > + }; > > + > > + dsi@1a98000 { > > + reg = <0x1a98000 0x25c>; > > + reg-names = "dsi_ctrl"; > > + > > + ports { > > + #address-cells = <1>; > > + #size-cells = <0>; > > + port@1 { > > + reg = <1>; > > + dsi0_out: endpoint { > > + remote-endpoint = <&d2l_in_test>; > > + data-lanes = <0 1 2 3>; > > + }; > > + }; > > + }; > > + }; > > + > > + - | > > + /* For dual-link LVDS display panel */ > > + > > + i2c@78b8000 { > > + /* On High speed expansion */ > > + label = "HS-I2C2"; > > + reg = <0x078b8000 0x500>; > > + clock-frequency = <400000>; /* fastmode operation */ > > + #address-cells = <1>; > > + #size-cells = <0>; > > + > > + tc_bridge_dual: bridge@f { > > + compatible = "toshiba,tc358775"; > > + reg = <0x0f>; > > + > > + vdd-supply = <&pm8916_l2>; > > + vddio-supply = <&pm8916_l6>; > > + > > + stby-gpios = <&msmgpio 99 GPIO_ACTIVE_LOW>; > > + reset-gpios = <&msmgpio 72 GPIO_ACTIVE_LOW>; > > + > > + ports { > > + #address-cells = <1>; > > + #size-cells = <0>; > > + > > + port@0 { > > + reg = <0>; > > + d2l_in_dual: endpoint { > > + remote-endpoint = <&dsi0_out_dual>; > > + }; > > + }; > > + > > + port@1 { > > + reg = <1>; > > + lvds0_out: endpoint { > > + remote-endpoint = <&panel_in0>; > > + }; > > + }; > > + > > + port@2 { > > + reg = <2>; > > + lvds1_out: endpoint { > > + remote-endpoint = <&panel_in1>; > > + }; > > + }; > > + }; > > + }; > > + }; > > + > > + dsi@1a98000 { > > + reg = <0x1a98000 0x25c>; > > + reg-names = "dsi_ctrl"; > > + > > + ports { > > + #address-cells = <1>; > > + #size-cells = <0>; > > + port@1 { > > + reg = <1>; > > + dsi0_out_dual: endpoint { > > + remote-endpoint = <&d2l_in_dual>; > > + data-lanes = <0 1 2 3>; > > + }; > > + }; > > + }; > > + }; > > +... > > -- > > 2.1.2 > > > > > > -- > regards, > vinaysimha > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel
Sam, Thanks. On Mon, Aug 10, 2020 at 11:08 PM Sam Ravnborg <sam@ravnborg.org> wrote: > Hi Vinay. > > On Wed, Jul 29, 2020 at 06:01:21PM +0530, Vinay Simha B N wrote: > > Hi All, > > > > Please Review the patch > > > > On Fri, Jul 10, 2020 at 7:11 PM Vinay Simha BN <simhavcs@gmail.com> > wrote: > > > > > - license modified to (GPL-2.0-only OR BSD-2-Clause) > > > - single-link and dual-link lvds description and > > > examples are added > > > - proper indentation > > > - VESA/JEIDA formats picked from panel-lvds dts > > > - dsi data-lanes property removed, it will be picked > > > from dsi0 ports > > > - dual-link lvds port added and implemented > > > - converted from .txt to .yaml > > > > > > Signed-off-by: Vinay Simha BN <simhavcs@gmail.com> > > > Reviewed-by: Sam Ravnborg <sam@ravnborg.org> > > > Reviewed-by: Rob Herring <robh@kernel.org> > > The binding is already reviewed by Rob and me - as you have recorded > above. It will be applied when the driver is ready. > > Sam > > > > --- > > > v1: > > > Initial version wast .txt file > > > > > > v2: > > > From txt to yaml file format > > > > > > v3: > > > * Andrzej Hajda review comments incorporated > > > dual port lvds implemented > > > > > > * Laurent Pinchart review comments incorporated > > > dsi lanes property removed and it is dynamically > > > picked from the dsi ports > > > VESA/JEIDA format picked from panel-lvds dts > > > > > > v4: > > > * Sam Ravnborg review comments incorporated > > > }' is indented properly in examples data-lanes > > > description for single-link and dual-link lvds > > > > > > v5: > > > * Sam Ravnborg review comments incorporated > > > license modified to (GPL-2.0-only OR BSD-2-Clause) > > > changelog added > > > > > > v6: > > > * No changes, revision version mentioned to inline with > > > driver file > > > > > > v7: > > > * change log added > > > Reviewed-by: Sam Ravnborg <sam@ravnborg.org> > > > > > > v8: > > > * Reviewed-by: Rob Herring <robh@kernel.org> > > > * change log modified in reverse chronological order > > > --- > > > .../bindings/display/bridge/toshiba,tc358775.yaml | 215 > > > +++++++++++++++++++++ > > > 1 file changed, 215 insertions(+) > > > create mode 100644 > > > Documentation/devicetree/bindings/display/bridge/toshiba,tc358775.yaml > > > > > > diff --git > > > > a/Documentation/devicetree/bindings/display/bridge/toshiba,tc358775.yaml > > > > b/Documentation/devicetree/bindings/display/bridge/toshiba,tc358775.yaml > > > new file mode 100644 > > > index 0000000..31f085d > > > --- /dev/null > > > +++ > > > > b/Documentation/devicetree/bindings/display/bridge/toshiba,tc358775.yaml > > > @@ -0,0 +1,215 @@ > > > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > > > +%YAML 1.2 > > > +--- > > > +$id: > http://devicetree.org/schemas/display/bridge/toshiba,tc358775.yaml# > > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > > + > > > +title: Toshiba TC358775 DSI to LVDS bridge bindings > > > + > > > +maintainers: > > > + - Vinay Simha BN <simhavcs@gmail.com> > > > + > > > +description: | > > > + This binding supports DSI to LVDS bridge TC358775 > > > + > > > + MIPI DSI-RX Data 4-lane, CLK 1-lane with data rates up to 800 > Mbps/lane. > > > + Video frame size: > > > + Up to 1600x1200 24-bit/pixel resolution for single-link LVDS display > > > panel > > > + limited by 135 MHz LVDS speed > > > + Up to WUXGA (1920x1200 24-bit pixels) resolution for dual-link LVDS > > > display > > > + panel, limited by 270 MHz LVDS speed. > > > + > > > +properties: > > > + compatible: > > > + const: toshiba,tc358775 > > > + > > > + reg: > > > + maxItems: 1 > > > + description: i2c address of the bridge, 0x0f > > > + > > > + vdd-supply: > > > + maxItems: 1 > > > + description: 1.2V LVDS Power Supply > > > + > > > + vddio-supply: > > > + maxItems: 1 > > > + description: 1.8V IO Power Supply > > > + > > > + stby-gpios: > > > + maxItems: 1 > > > + description: Standby pin, Low active > > > + > > > + reset-gpios: > > > + maxItems: 1 > > > + description: Hardware reset, Low active > > > + > > > + ports: > > > + type: object > > > + description: > > > + A node containing input and output port nodes with endpoint > > > definitions > > > + as documented in > > > + Documentation/devicetree/bindings/media/video-interfaces.txt > > > + properties: > > > + "#address-cells": > > > + const: 1 > > > + > > > + "#size-cells": > > > + const: 0 > > > + > > > + port@0: > > > + type: object > > > + description: | > > > + DSI Input. The remote endpoint phandle should be a > > > + reference to a valid mipi_dsi_host device node. > > > + > > > + port@1: > > > + type: object > > > + description: | > > > + Video port for LVDS output (panel or connector). > > > + > > > + port@2: > > > + type: object > > > + description: | > > > + Video port for Dual link LVDS output (panel or connector). > > > + > > > + required: > > > + - port@0 > > > + - port@1 > > > + > > > +required: > > > + - compatible > > > + - reg > > > + - vdd-supply > > > + - vddio-supply > > > + - stby-gpios > > > + - reset-gpios > > > + - ports > > > + > > > +examples: > > > + - | > > > + #include <dt-bindings/gpio/gpio.h> > > > + > > > + /* For single-link LVDS display panel */ > > > + > > > + i2c@78b8000 { > > > + /* On High speed expansion */ > > > + label = "HS-I2C2"; > > > + reg = <0x078b8000 0x500>; > > > + clock-frequency = <400000>; /* fastmode operation */ > > > + #address-cells = <1>; > > > + #size-cells = <0>; > > > + > > > + tc_bridge: bridge@f { > > > + compatible = "toshiba,tc358775"; > > > + reg = <0x0f>; > > > + > > > + vdd-supply = <&pm8916_l2>; > > > + vddio-supply = <&pm8916_l6>; > > > + > > > + stby-gpios = <&msmgpio 99 GPIO_ACTIVE_LOW>; > > > + reset-gpios = <&msmgpio 72 GPIO_ACTIVE_LOW>; > > > + > > > + ports { > > > + #address-cells = <1>; > > > + #size-cells = <0>; > > > + > > > + port@0 { > > > + reg = <0>; > > > + d2l_in_test: endpoint { > > > + remote-endpoint = <&dsi0_out>; > > > + }; > > > + }; > > > + > > > + port@1 { > > > + reg = <1>; > > > + lvds_out: endpoint { > > > + remote-endpoint = <&panel_in>; > > > + }; > > > + }; > > > + }; > > > + }; > > > + }; > > > + > > > + dsi@1a98000 { > > > + reg = <0x1a98000 0x25c>; > > > + reg-names = "dsi_ctrl"; > > > + > > > + ports { > > > + #address-cells = <1>; > > > + #size-cells = <0>; > > > + port@1 { > > > + reg = <1>; > > > + dsi0_out: endpoint { > > > + remote-endpoint = <&d2l_in_test>; > > > + data-lanes = <0 1 2 3>; > > > + }; > > > + }; > > > + }; > > > + }; > > > + > > > + - | > > > + /* For dual-link LVDS display panel */ > > > + > > > + i2c@78b8000 { > > > + /* On High speed expansion */ > > > + label = "HS-I2C2"; > > > + reg = <0x078b8000 0x500>; > > > + clock-frequency = <400000>; /* fastmode operation */ > > > + #address-cells = <1>; > > > + #size-cells = <0>; > > > + > > > + tc_bridge_dual: bridge@f { > > > + compatible = "toshiba,tc358775"; > > > + reg = <0x0f>; > > > + > > > + vdd-supply = <&pm8916_l2>; > > > + vddio-supply = <&pm8916_l6>; > > > + > > > + stby-gpios = <&msmgpio 99 GPIO_ACTIVE_LOW>; > > > + reset-gpios = <&msmgpio 72 GPIO_ACTIVE_LOW>; > > > + > > > + ports { > > > + #address-cells = <1>; > > > + #size-cells = <0>; > > > + > > > + port@0 { > > > + reg = <0>; > > > + d2l_in_dual: endpoint { > > > + remote-endpoint = <&dsi0_out_dual>; > > > + }; > > > + }; > > > + > > > + port@1 { > > > + reg = <1>; > > > + lvds0_out: endpoint { > > > + remote-endpoint = <&panel_in0>; > > > + }; > > > + }; > > > + > > > + port@2 { > > > + reg = <2>; > > > + lvds1_out: endpoint { > > > + remote-endpoint = <&panel_in1>; > > > + }; > > > + }; > > > + }; > > > + }; > > > + }; > > > + > > > + dsi@1a98000 { > > > + reg = <0x1a98000 0x25c>; > > > + reg-names = "dsi_ctrl"; > > > + > > > + ports { > > > + #address-cells = <1>; > > > + #size-cells = <0>; > > > + port@1 { > > > + reg = <1>; > > > + dsi0_out_dual: endpoint { > > > + remote-endpoint = <&d2l_in_dual>; > > > + data-lanes = <0 1 2 3>; > > > + }; > > > + }; > > > + }; > > > + }; > > > +... > > > -- > > > 2.1.2 > > > > > > > > > > -- > > regards, > > vinaysimha > > > _______________________________________________ > > dri-devel mailing list > > dri-devel@lists.freedesktop.org > > https://lists.freedesktop.org/mailman/listinfo/dri-devel > >
diff --git a/Documentation/devicetree/bindings/display/bridge/toshiba,tc358775.yaml b/Documentation/devicetree/bindings/display/bridge/toshiba,tc358775.yaml new file mode 100644 index 0000000..31f085d --- /dev/null +++ b/Documentation/devicetree/bindings/display/bridge/toshiba,tc358775.yaml @@ -0,0 +1,215 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/display/bridge/toshiba,tc358775.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Toshiba TC358775 DSI to LVDS bridge bindings + +maintainers: + - Vinay Simha BN <simhavcs@gmail.com> + +description: | + This binding supports DSI to LVDS bridge TC358775 + + MIPI DSI-RX Data 4-lane, CLK 1-lane with data rates up to 800 Mbps/lane. + Video frame size: + Up to 1600x1200 24-bit/pixel resolution for single-link LVDS display panel + limited by 135 MHz LVDS speed + Up to WUXGA (1920x1200 24-bit pixels) resolution for dual-link LVDS display + panel, limited by 270 MHz LVDS speed. + +properties: + compatible: + const: toshiba,tc358775 + + reg: + maxItems: 1 + description: i2c address of the bridge, 0x0f + + vdd-supply: + maxItems: 1 + description: 1.2V LVDS Power Supply + + vddio-supply: + maxItems: 1 + description: 1.8V IO Power Supply + + stby-gpios: + maxItems: 1 + description: Standby pin, Low active + + reset-gpios: + maxItems: 1 + description: Hardware reset, Low active + + ports: + type: object + description: + A node containing input and output port nodes with endpoint definitions + as documented in + Documentation/devicetree/bindings/media/video-interfaces.txt + properties: + "#address-cells": + const: 1 + + "#size-cells": + const: 0 + + port@0: + type: object + description: | + DSI Input. The remote endpoint phandle should be a + reference to a valid mipi_dsi_host device node. + + port@1: + type: object + description: | + Video port for LVDS output (panel or connector). + + port@2: + type: object + description: | + Video port for Dual link LVDS output (panel or connector). + + required: + - port@0 + - port@1 + +required: + - compatible + - reg + - vdd-supply + - vddio-supply + - stby-gpios + - reset-gpios + - ports + +examples: + - | + #include <dt-bindings/gpio/gpio.h> + + /* For single-link LVDS display panel */ + + i2c@78b8000 { + /* On High speed expansion */ + label = "HS-I2C2"; + reg = <0x078b8000 0x500>; + clock-frequency = <400000>; /* fastmode operation */ + #address-cells = <1>; + #size-cells = <0>; + + tc_bridge: bridge@f { + compatible = "toshiba,tc358775"; + reg = <0x0f>; + + vdd-supply = <&pm8916_l2>; + vddio-supply = <&pm8916_l6>; + + stby-gpios = <&msmgpio 99 GPIO_ACTIVE_LOW>; + reset-gpios = <&msmgpio 72 GPIO_ACTIVE_LOW>; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + d2l_in_test: endpoint { + remote-endpoint = <&dsi0_out>; + }; + }; + + port@1 { + reg = <1>; + lvds_out: endpoint { + remote-endpoint = <&panel_in>; + }; + }; + }; + }; + }; + + dsi@1a98000 { + reg = <0x1a98000 0x25c>; + reg-names = "dsi_ctrl"; + + ports { + #address-cells = <1>; + #size-cells = <0>; + port@1 { + reg = <1>; + dsi0_out: endpoint { + remote-endpoint = <&d2l_in_test>; + data-lanes = <0 1 2 3>; + }; + }; + }; + }; + + - | + /* For dual-link LVDS display panel */ + + i2c@78b8000 { + /* On High speed expansion */ + label = "HS-I2C2"; + reg = <0x078b8000 0x500>; + clock-frequency = <400000>; /* fastmode operation */ + #address-cells = <1>; + #size-cells = <0>; + + tc_bridge_dual: bridge@f { + compatible = "toshiba,tc358775"; + reg = <0x0f>; + + vdd-supply = <&pm8916_l2>; + vddio-supply = <&pm8916_l6>; + + stby-gpios = <&msmgpio 99 GPIO_ACTIVE_LOW>; + reset-gpios = <&msmgpio 72 GPIO_ACTIVE_LOW>; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + d2l_in_dual: endpoint { + remote-endpoint = <&dsi0_out_dual>; + }; + }; + + port@1 { + reg = <1>; + lvds0_out: endpoint { + remote-endpoint = <&panel_in0>; + }; + }; + + port@2 { + reg = <2>; + lvds1_out: endpoint { + remote-endpoint = <&panel_in1>; + }; + }; + }; + }; + }; + + dsi@1a98000 { + reg = <0x1a98000 0x25c>; + reg-names = "dsi_ctrl"; + + ports { + #address-cells = <1>; + #size-cells = <0>; + port@1 { + reg = <1>; + dsi0_out_dual: endpoint { + remote-endpoint = <&d2l_in_dual>; + data-lanes = <0 1 2 3>; + }; + }; + }; + }; +...