* [PATCH 1/5] drm/panel: simple: add support for Ampire AM-800480AYTZQW-00H
@ 2018-01-02 9:02 Jagan Teki
2018-01-02 9:02 ` [PATCH 2/5] ARM: dts: imx6q-icore: Switch LVDS timings from panel-simple Jagan Teki
` (4 more replies)
0 siblings, 5 replies; 6+ messages in thread
From: Jagan Teki @ 2018-01-02 9:02 UTC (permalink / raw)
To: Shawn Guo
Cc: linux-arm-kernel, devicetree, linux-kernel, Sascha Hauer,
Fabio Estevam, Matteo Lisi, Michael Trimarchi, Jagan Teki
This adds support for the Ampire AM-800480AYTZQW-00H 7.0" WGA LCD,
which can be supported by the simple panel driver.
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
---
.../display/panel/ampire,am-800480aytzqw-00h.txt | 7 ++++++
drivers/gpu/drm/panel/panel-simple.c | 27 ++++++++++++++++++++++
2 files changed, 34 insertions(+)
create mode 100644 Documentation/devicetree/bindings/display/panel/ampire,am-800480aytzqw-00h.txt
diff --git a/Documentation/devicetree/bindings/display/panel/ampire,am-800480aytzqw-00h.txt b/Documentation/devicetree/bindings/display/panel/ampire,am-800480aytzqw-00h.txt
new file mode 100644
index 0000000..bfa7a70
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/panel/ampire,am-800480aytzqw-00h.txt
@@ -0,0 +1,7 @@
+Ampire AM-800480AYTZQW-00H 7.0" WVGA TFT LCD panel
+
+Required properties:
+- compatible: should be "ampire,am-800480aytzqw-00h"
+
+This binding is compatible with the simple-panel binding, which is specified
+in simple-panel.txt in this directory.
diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
index 5591984..2ecc14b 100644
--- a/drivers/gpu/drm/panel/panel-simple.c
+++ b/drivers/gpu/drm/panel/panel-simple.c
@@ -412,6 +412,30 @@ static const struct panel_desc ampire_am_480272h3tmqw_t01h = {
.bus_format = MEDIA_BUS_FMT_RGB888_1X24,
};
+static const struct display_timing ampire_am_800480aytzqw_00h_timing = {
+ .pixelclock = { 27700000, 29200000, 39600000 },
+ .hactive = { 800, 800, 800 },
+ .hfront_porch = { 12, 40, 212 },
+ .hback_porch = { 88, 88, 88 },
+ .hsync_len = { 1, 2, 40 },
+ .vactive = { 480, 480, 480 },
+ .vfront_porch = { 1, 13, 88 },
+ .vback_porch = { 32, 32, 32 },
+ .vsync_len = { 1, 2, 3 },
+ .flags = DISPLAY_FLAGS_DE_HIGH,
+};
+
+static const struct panel_desc ampire_am_800480aytzqw_00h = {
+ .timings = &ire_am_800480aytzqw_00h_timing,
+ .num_timings = 1,
+ .bpc = 6,
+ .size = {
+ .width = 154,
+ .height = 86,
+ },
+ .bus_format = MEDIA_BUS_FMT_RGB666_1X7X3_SPWG,
+};
+
static const struct drm_display_mode ampire_am800480r3tmqwa1h_mode = {
.clock = 33333,
.hdisplay = 800,
@@ -2028,6 +2052,9 @@ static const struct of_device_id platform_of_match[] = {
.compatible = "ampire,am-480272h3tmqw-t01h",
.data = &ire_am_480272h3tmqw_t01h,
}, {
+ .compatible = "ampire,am-800480aytzqw-00h",
+ .data = &ire_am_800480aytzqw_00h,
+ }, {
.compatible = "ampire,am800480r3tmqwa1h",
.data = &ire_am800480r3tmqwa1h,
}, {
--
2.7.4
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH 2/5] ARM: dts: imx6q-icore: Switch LVDS timings from panel-simple
2018-01-02 9:02 [PATCH 1/5] drm/panel: simple: add support for Ampire AM-800480AYTZQW-00H Jagan Teki
@ 2018-01-02 9:02 ` Jagan Teki
2018-01-02 9:02 ` [PATCH 3/5] ARM: dts: imx6dl-icore: Add LVDS node Jagan Teki
` (3 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: Jagan Teki @ 2018-01-02 9:02 UTC (permalink / raw)
To: Shawn Guo
Cc: linux-arm-kernel, devicetree, linux-kernel, Sascha Hauer,
Fabio Estevam, Matteo Lisi, Michael Trimarchi, Jagan Teki
Switch to use ampire,am-800480aytzqw-00h LVDS timings from
panel-simple instead hard coding the same in dts.
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
---
arch/arm/boot/dts/imx6q-icore.dts | 31 +++++++++++++++++--------------
arch/arm/boot/dts/imx6qdl-icore.dtsi | 2 +-
2 files changed, 18 insertions(+), 15 deletions(-)
diff --git a/arch/arm/boot/dts/imx6q-icore.dts b/arch/arm/boot/dts/imx6q-icore.dts
index 5613dd9..c8e464e 100644
--- a/arch/arm/boot/dts/imx6q-icore.dts
+++ b/arch/arm/boot/dts/imx6q-icore.dts
@@ -48,6 +48,17 @@
/ {
model = "Engicam i.CoreM6 Quad/Dual Starter Kit";
compatible = "engicam,imx6-icore", "fsl,imx6q";
+
+ panel {
+ compatible = "ampire,am-800480aytzqw-00h";
+ backlight = <&backlight_lvds>;
+
+ port {
+ panel_in: endpoint {
+ remote-endpoint = <&lvds0_out>;
+ };
+ };
+ };
};
&can1 {
@@ -71,22 +82,14 @@
status = "okay";
lvds-channel@0 {
- fsl,data-mapping = "spwg";
- fsl,data-width = <18>;
+ reg = <0>;
status = "okay";
- display-timings {
- native-mode = <&timing0>;
- timing0: timing0 {
- clock-frequency = <60000000>;
- hactive = <800>;
- vactive = <480>;
- hback-porch = <30>;
- hfront-porch = <30>;
- vback-porch = <5>;
- vfront-porch = <5>;
- hsync-len = <64>;
- vsync-len = <20>;
+ port@4 {
+ reg = <4>;
+
+ lvds0_out: endpoint {
+ remote-endpoint = <&panel_in>;
};
};
};
diff --git a/arch/arm/boot/dts/imx6qdl-icore.dtsi b/arch/arm/boot/dts/imx6qdl-icore.dtsi
index a1b469c..5fd9e00 100644
--- a/arch/arm/boot/dts/imx6qdl-icore.dtsi
+++ b/arch/arm/boot/dts/imx6qdl-icore.dtsi
@@ -49,7 +49,7 @@
reg = <0x10000000 0x80000000>;
};
- backlight {
+ backlight_lvds: backlight-lvds {
compatible = "pwm-backlight";
pwms = <&pwm3 0 100000>;
brightness-levels = <0 4 8 16 32 64 128 255>;
--
2.7.4
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH 3/5] ARM: dts: imx6dl-icore: Add LVDS node
2018-01-02 9:02 [PATCH 1/5] drm/panel: simple: add support for Ampire AM-800480AYTZQW-00H Jagan Teki
2018-01-02 9:02 ` [PATCH 2/5] ARM: dts: imx6q-icore: Switch LVDS timings from panel-simple Jagan Teki
@ 2018-01-02 9:02 ` Jagan Teki
2018-01-02 9:02 ` [PATCH 4/5] drm/panel: simple: Add support for KEO TX31D200VM0BAA Jagan Teki
` (2 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: Jagan Teki @ 2018-01-02 9:02 UTC (permalink / raw)
To: Shawn Guo
Cc: linux-arm-kernel, devicetree, linux-kernel, Sascha Hauer,
Fabio Estevam, Matteo Lisi, Michael Trimarchi, Jagan Teki
Add ampire,am-800480aytzqw-00h LVDS support by using
timings from panel-simple.
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
---
arch/arm/boot/dts/imx6dl-icore.dts | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)
diff --git a/arch/arm/boot/dts/imx6dl-icore.dts b/arch/arm/boot/dts/imx6dl-icore.dts
index 971f9fc..74bff84 100644
--- a/arch/arm/boot/dts/imx6dl-icore.dts
+++ b/arch/arm/boot/dts/imx6dl-icore.dts
@@ -48,6 +48,17 @@
/ {
model = "Engicam i.CoreM6 DualLite/Solo Starter Kit";
compatible = "engicam,imx6-icore", "fsl,imx6dl";
+
+ panel {
+ compatible = "ampire,am-800480aytzqw-00h";
+ backlight = <&backlight_lvds>;
+
+ port {
+ panel_in: endpoint {
+ remote-endpoint = <&lvds0_out>;
+ };
+ };
+ };
};
&can1 {
@@ -66,3 +77,20 @@
interrupts = <31 IRQ_TYPE_EDGE_FALLING>;
};
};
+
+&ldb {
+ status = "okay";
+
+ lvds-channel@0 {
+ reg = <0>;
+ status = "okay";
+
+ port@4 {
+ reg = <4>;
+
+ lvds0_out: endpoint {
+ remote-endpoint = <&panel_in>;
+ };
+ };
+ };
+};
--
2.7.4
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH 4/5] drm/panel: simple: Add support for KEO TX31D200VM0BAA
2018-01-02 9:02 [PATCH 1/5] drm/panel: simple: add support for Ampire AM-800480AYTZQW-00H Jagan Teki
2018-01-02 9:02 ` [PATCH 2/5] ARM: dts: imx6q-icore: Switch LVDS timings from panel-simple Jagan Teki
2018-01-02 9:02 ` [PATCH 3/5] ARM: dts: imx6dl-icore: Add LVDS node Jagan Teki
@ 2018-01-02 9:02 ` Jagan Teki
2018-01-02 9:02 ` [PATCH 5/5] ARM: dts: imx6q-icore-ofcap12: Switch LVDS timings from panel-simple Jagan Teki
2018-01-03 21:29 ` [PATCH 1/5] drm/panel: simple: add support for Ampire AM-800480AYTZQW-00H Rob Herring
4 siblings, 0 replies; 6+ messages in thread
From: Jagan Teki @ 2018-01-02 9:02 UTC (permalink / raw)
To: Shawn Guo
Cc: linux-arm-kernel, devicetree, linux-kernel, Sascha Hauer,
Fabio Estevam, Matteo Lisi, Michael Trimarchi, Jagan Teki
This adds support for the Kaohsiung Opto-Electronics.,
TX31D200VM0BAA 12.3" HSXGA LVDS panel, which can be
supported by the simple panel driver.
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
---
.../bindings/display/panel/koe,tx31d200vm0baa.txt | 7 ++++++
drivers/gpu/drm/panel/panel-simple.c | 27 ++++++++++++++++++++++
2 files changed, 34 insertions(+)
create mode 100644 Documentation/devicetree/bindings/display/panel/koe,tx31d200vm0baa.txt
diff --git a/Documentation/devicetree/bindings/display/panel/koe,tx31d200vm0baa.txt b/Documentation/devicetree/bindings/display/panel/koe,tx31d200vm0baa.txt
new file mode 100644
index 0000000..a51db2c
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/panel/koe,tx31d200vm0baa.txt
@@ -0,0 +1,7 @@
+Kaohsiung Opto-Electronics. TX31D200VM0BAA 12.3" HSXGA LVDS panel
+
+Required properties:
+- compatible: should be "koe,tx31d200vm0baa"
+
+This binding is compatible with the simple-panel binding, which is specified
+in simple-panel.txt in this directory.
diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
index 2ecc14b..8a0e4a8 100644
--- a/drivers/gpu/drm/panel/panel-simple.c
+++ b/drivers/gpu/drm/panel/panel-simple.c
@@ -1241,6 +1241,30 @@ static const struct panel_desc innolux_zj070na_01p = {
},
};
+static const struct display_timing koe_tx31d200vm0baa_timing = {
+ .pixelclock = { 39600000, 43200000, 48000000 },
+ .hactive = { 1280, 1280, 1280 },
+ .hfront_porch = { 16, 36, 56 },
+ .hback_porch = { 16, 36, 56 },
+ .hsync_len = { 8, 8, 8 },
+ .vactive = { 480, 480, 480 },
+ .vfront_porch = { 6, 21, 33.5 },
+ .vback_porch = { 6, 21, 33.5 },
+ .vsync_len = { 8, 8, 8 },
+ .flags = DISPLAY_FLAGS_DE_HIGH,
+};
+
+static const struct panel_desc koe_tx31d200vm0baa = {
+ .timings = &koe_tx31d200vm0baa_timing,
+ .num_timings = 1,
+ .bpc = 6,
+ .size = {
+ .width = 292,
+ .height = 109,
+ },
+ .bus_format = MEDIA_BUS_FMT_RGB666_1X7X3_SPWG,
+};
+
static const struct display_timing kyo_tcg121xglp_timing = {
.pixelclock = { 52000000, 65000000, 71000000 },
.hactive = { 1024, 1024, 1024 },
@@ -2151,6 +2175,9 @@ static const struct of_device_id platform_of_match[] = {
.compatible = "innolux,zj070na-01p",
.data = &innolux_zj070na_01p,
}, {
+ .compatible = "koe,tx31d200vm0baa",
+ .data = &koe_tx31d200vm0baa,
+ }, {
.compatible = "kyo,tcg121xglp",
.data = &kyo_tcg121xglp,
}, {
--
2.7.4
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH 5/5] ARM: dts: imx6q-icore-ofcap12: Switch LVDS timings from panel-simple
2018-01-02 9:02 [PATCH 1/5] drm/panel: simple: add support for Ampire AM-800480AYTZQW-00H Jagan Teki
` (2 preceding siblings ...)
2018-01-02 9:02 ` [PATCH 4/5] drm/panel: simple: Add support for KEO TX31D200VM0BAA Jagan Teki
@ 2018-01-02 9:02 ` Jagan Teki
2018-01-03 21:29 ` [PATCH 1/5] drm/panel: simple: add support for Ampire AM-800480AYTZQW-00H Rob Herring
4 siblings, 0 replies; 6+ messages in thread
From: Jagan Teki @ 2018-01-02 9:02 UTC (permalink / raw)
To: Shawn Guo
Cc: linux-arm-kernel, devicetree, linux-kernel, Sascha Hauer,
Fabio Estevam, Matteo Lisi, Michael Trimarchi, Jagan Teki
Switch to use koe_tx31d200vm0baa LVDS timings from
panel-simple instead hard coding the same in dts.
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
---
arch/arm/boot/dts/imx6q-icore-ofcap12.dts | 31 +++++++++++++++++--------------
1 file changed, 17 insertions(+), 14 deletions(-)
diff --git a/arch/arm/boot/dts/imx6q-icore-ofcap12.dts b/arch/arm/boot/dts/imx6q-icore-ofcap12.dts
index 9e230f5..6e27c81 100644
--- a/arch/arm/boot/dts/imx6q-icore-ofcap12.dts
+++ b/arch/arm/boot/dts/imx6q-icore-ofcap12.dts
@@ -48,28 +48,31 @@
/ {
model = "Engicam i.CoreM6 Quad/Dual OpenFrame Capacitive touch 12 Kit";
compatible = "engicam,imx6-icore", "fsl,imx6q";
+
+ panel {
+ compatible = "koe,tx31d200vm0baa";
+ backlight = <&backlight_lvds>;
+
+ port {
+ panel_in: endpoint {
+ remote-endpoint = <&lvds0_out>;
+ };
+ };
+ };
};
&ldb {
status = "okay";
lvds-channel@0 {
- fsl,data-mapping = "spwg";
- fsl,data-width = <18>;
+ reg = <0>;
status = "okay";
- display-timings {
- native-mode = <&timing0>;
- timing0: timing0 {
- clock-frequency = <46800000>;
- hactive = <1280>;
- vactive = <480>;
- hback-porch = <353>;
- hfront-porch = <47>;
- vback-porch = <39>;
- vfront-porch = <4>;
- hsync-len = <8>;
- vsync-len = <2>;
+ port@4 {
+ reg = <4>;
+
+ lvds0_out: endpoint {
+ remote-endpoint = <&panel_in>;
};
};
};
--
2.7.4
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH 1/5] drm/panel: simple: add support for Ampire AM-800480AYTZQW-00H
2018-01-02 9:02 [PATCH 1/5] drm/panel: simple: add support for Ampire AM-800480AYTZQW-00H Jagan Teki
` (3 preceding siblings ...)
2018-01-02 9:02 ` [PATCH 5/5] ARM: dts: imx6q-icore-ofcap12: Switch LVDS timings from panel-simple Jagan Teki
@ 2018-01-03 21:29 ` Rob Herring
4 siblings, 0 replies; 6+ messages in thread
From: Rob Herring @ 2018-01-03 21:29 UTC (permalink / raw)
To: Jagan Teki
Cc: Shawn Guo, linux-arm-kernel, devicetree, linux-kernel,
Sascha Hauer, Fabio Estevam, Matteo Lisi, Michael Trimarchi
On Tue, Jan 02, 2018 at 02:32:14PM +0530, Jagan Teki wrote:
> This adds support for the Ampire AM-800480AYTZQW-00H 7.0" WGA LCD,
> which can be supported by the simple panel driver.
>
> Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
> ---
> .../display/panel/ampire,am-800480aytzqw-00h.txt | 7 ++++++
> drivers/gpu/drm/panel/panel-simple.c | 27 ++++++++++++++++++++++
> 2 files changed, 34 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/display/panel/ampire,am-800480aytzqw-00h.txt
>
> diff --git a/Documentation/devicetree/bindings/display/panel/ampire,am-800480aytzqw-00h.txt b/Documentation/devicetree/bindings/display/panel/ampire,am-800480aytzqw-00h.txt
> new file mode 100644
> index 0000000..bfa7a70
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/panel/ampire,am-800480aytzqw-00h.txt
> @@ -0,0 +1,7 @@
> +Ampire AM-800480AYTZQW-00H 7.0" WVGA TFT LCD panel
> +
> +Required properties:
> +- compatible: should be "ampire,am-800480aytzqw-00h"
> +
> +This binding is compatible with the simple-panel binding, which is specified
> +in simple-panel.txt in this directory.
You need to be explicit as to which properties from it you are using.
Rob
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2018-01-03 21:29 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-01-02 9:02 [PATCH 1/5] drm/panel: simple: add support for Ampire AM-800480AYTZQW-00H Jagan Teki
2018-01-02 9:02 ` [PATCH 2/5] ARM: dts: imx6q-icore: Switch LVDS timings from panel-simple Jagan Teki
2018-01-02 9:02 ` [PATCH 3/5] ARM: dts: imx6dl-icore: Add LVDS node Jagan Teki
2018-01-02 9:02 ` [PATCH 4/5] drm/panel: simple: Add support for KEO TX31D200VM0BAA Jagan Teki
2018-01-02 9:02 ` [PATCH 5/5] ARM: dts: imx6q-icore-ofcap12: Switch LVDS timings from panel-simple Jagan Teki
2018-01-03 21:29 ` [PATCH 1/5] drm/panel: simple: add support for Ampire AM-800480AYTZQW-00H Rob Herring
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).