Message ID | 1418200648-32656-13-git-send-email-Ying.Liu@freescale.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Wed, Dec 10, 2014 at 04:37:25PM +0800, Liu Ying wrote: [...] > diff --git a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi [...] > +&mipi_dsi { > + status = "okay"; > + > + panel@0 { > + compatible = "himax,hx8369a-dsi"; > + reg = <0>; > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_mipi_panel>; > + reset-gpios = <&gpio6 11 GPIO_ACTIVE_LOW>; > + reset-delay = <120>; > + bs2-gpios = <&gpio6 14 GPIO_ACTIVE_HIGH>; > + data-lanes = <2>; > + panel-width-mm = <45>; > + panel-height-mm = <76>; > + bs = <10>; > + status = "okay"; > + > + display-timings { > + native-mode = <&timing1>; > + timing1: truly-tft480800-16-e { This is the only place where Truly is mentioned. The panel vendor is either Truly or it is Himax, it can't be a mix. From this example and your patch description it seems like Truly is the manufacturer of the panel, hence the panel compatible should really be: compatible = "truly,tft480800-16-e"; That it uses an HX8369A chip internally is really secondary, at least regarding the binding. If we ever get need to support multiple panels with the same driver IC the proper solution would be to abstract that code out into a helper library that is used from the various panel drivers. Thierry
diff --git a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi index baf2f00..483aa5f 100644 --- a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi +++ b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi @@ -482,6 +482,13 @@ MX6QDL_PAD_SD4_DAT7__SD4_DATA7 0x17059 >; }; + + pinctrl_mipi_panel: mipipanelgrp { + fsl,pins = < + MX6QDL_PAD_NANDF_CS0__GPIO6_IO11 0x1b0b0 + MX6QDL_PAD_NANDF_CS1__GPIO6_IO14 0x1b0b0 + >; + }; }; gpio_leds { @@ -518,6 +525,40 @@ }; }; +&mipi_dsi { + status = "okay"; + + panel@0 { + compatible = "himax,hx8369a-dsi"; + reg = <0>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_mipi_panel>; + reset-gpios = <&gpio6 11 GPIO_ACTIVE_LOW>; + reset-delay = <120>; + bs2-gpios = <&gpio6 14 GPIO_ACTIVE_HIGH>; + data-lanes = <2>; + panel-width-mm = <45>; + panel-height-mm = <76>; + bs = <10>; + status = "okay"; + + display-timings { + native-mode = <&timing1>; + timing1: truly-tft480800-16-e { + clock-frequency = <26400000>; + hactive = <480>; + vactive = <800>; + hfront-porch = <8>; + hback-porch = <8>; + hsync-len = <8>; + vfront-porch = <6>; + vback-porch = <6>; + vsync-len = <6>; + }; + }; + }; +}; + &pcie { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_pcie>;
The TRULY TFT480800-16-E panel is driven by the Himax HX8369A driver IC. The driver IC supports several display/control interface modes, including the MIPI DSI video mode and command mode. Signed-off-by: Liu Ying <Ying.Liu@freescale.com> --- arch/arm/boot/dts/imx6qdl-sabresd.dtsi | 41 ++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+)