Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1191694 > unrolled thread

[PATCH v12 0/6] drm/layerscape: Add Freescale DCU DRM driver

Started byJianwei Wang <jianwei.wang.chn@gmail.com>
First post2015-07-24 12:40 +0200
Last post2015-07-24 12:50 +0200
Articles 7 — 2 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH v12 0/6] drm/layerscape: Add Freescale DCU DRM driver  Jianwei Wang <jianwei.wang.chn@gmail.com> - 2015-07-24 12:40 +0200
    [PATCH v12 2/6] devicetree: Add NEC to the vendor-prefix list Jianwei Wang <jianwei.wang.chn@gmail.com> - 2015-07-24 12:40 +0200
    [PATCH v12 4/6] arm/dts/ls1021a: Add DCU dts node Jianwei Wang <jianwei.wang.chn@gmail.com> - 2015-07-24 12:40 +0200
      Re: [PATCH v12 4/6] arm/dts/ls1021a: Add DCU dts node Shawn Guo <shawnguo@kernel.org> - 2015-07-25 05:30 +0200
    [PATCH v12 6/6] MAINTAINERS: add Freescale DCU DRM driver maintainer Jianwei Wang <jianwei.wang.chn@gmail.com> - 2015-07-24 12:40 +0200
    [PATCH v12 3/6] drm/panel: simple: Add support for NEC NL4827HC19-05B 480x272 panel Jianwei Wang <jianwei.wang.chn@gmail.com> - 2015-07-24 12:50 +0200
    [PATCH v12 5/6] arm/dts/ls1021a: Add a TFT LCD panel dts node Jianwei Wang <jianwei.wang.chn@gmail.com> - 2015-07-24 12:50 +0200

#1191694 — [PATCH v12 0/6] drm/layerscape: Add Freescale DCU DRM driver

FromJianwei Wang <jianwei.wang.chn@gmail.com>
Date2015-07-24 12:40 +0200
Subject[PATCH v12 0/6] drm/layerscape: Add Freescale DCU DRM driver
Message-ID<pPIyt-3am-7@gated-at.bofh.it>
Resend v12 for lack of patch 0/6

This patchset add support for Two Dimensional Animation and Compositing
Engine (2D-ACE) on the Freescale LS102x SoCs.

Changed in v12

-Add one patch for MAINTAINER entry for drm/layerscape
Adviced by Daniel Vetter
-Add #include <drm/drm_crtc_helper.h>

Changed in V11
-set regmap_config.cache_type to REGCACHE_FLAT
Advanced by Alexander Stein

Changed in V10
-adjust commit log, remove meaningless statement
-cleanup code for it's format and style.
-remove platform related code out, including of tcon(vf610) and scfg(ls1021a)
-remove useless sentences: encoder->crtc = crtc; and connector->encoder = encoder; and so on
-add vendor prefix for panel pandle
-make a DCU_CTRLDESCLN(x, y)  to avoid high repetition
-introduce per-SoC capability structure to avoid check on the OF node's compatible string
-Implement some functions: crtc enable and disable, enable and disable VBLANK, plane atomic_disable and atomic_enable -atomic_check and so on
-move DCU config sentence to the right place
-move get resources functions to  ->probe()
-move fsl,dcu.txt to video/ folder
-add big-endian describe
All advaced by Thierry Reding

Changed in V9

put node after calling of_drm_find_panel
split clk_prepare_enable() to clk_prepare() and clk_enable(), just call clk_prepare once, and check return value
check regmap_write/regmap_read return return value
remove useless ".owner    = THIS_MODULE,"
All advanced by Mark Yao

Changed in V8

- Remove useless code
    #define DRIVER_NAME     "fsl-dcu-drm"
    MODULE_ALIAS("platform:fsl-dcu-drm");
Adviced by Paul Bolle

Changed in V7

- Remove redundant functions and replace deprecated hooker
Adviced by Daniel Vetter
- Replace drm_platform_init with drm_dev_alloc/register
Adviced by Daniel Vetter

Changed in V6

- Add NEC nl4827hc19_05b panel to panel-simple.c
Adviced by Mark Yao
- Add DRIVER_ATOMIC for driver_features
Adviced by Mark Yao
- check fsl_dev if it's NULL at PM suspend/resume
Adviced by Mark Yao

Changed in V5

- Update commit message
- Add layer registers initialization
- Remove unused functions
- Rename driver folder
Adviced by Stefan Agner
- Move pixel clock control functions to fsl_dcu_drm_drv.c
- remove redundant enable the clock implicitly using regmap
- Add maintainer message

Changed in V4:

-This version doesn't have functionality changed
 Just a minor adjustment.

Changed in V3:

- Test driver on Vybrid board and add compatible string
- Remove unused functions
- set default crtc for encoder
- replace legacy functions with atomic help functions
Adviced by Daniel Vetter
- Set the unique name of the DRM device
- Implement irq handle function for vblank interrupt

Changed in v2:
- Add atomic support
Adviced by Daniel Vetter
- Modify bindings file
- Rename node for compatibility
- Move platform related code out for compatibility
Adviced by Stefan Agner

.../devicetree/bindings/video/fsl,dcu.txt          |  22 ++
drivers/gpu/drm/Kconfig                            |   2 +
drivers/gpu/drm/Makefile                           |   1 +
drivers/gpu/drm/fsl-dcu/Kconfig                    |  18 +
drivers/gpu/drm/fsl-dcu/Makefile                   |   7 +
drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_crtc.c         | 208 +++++++++++
drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_crtc.h         |  19 +
drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c          | 404 +++++++++++++++++++++
drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.h          | 197 ++++++++++
drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_fbdev.c        |  23 ++
drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_kms.c          |  43 +++
drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_output.h       |  33 ++
drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.c        | 261 +++++++++++++
drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.h        |  17 +
drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_rgb.c          | 182 ++++++++++
15 files changed, 1437 insertions(+)
create mode 100644 Documentation/devicetree/bindings/video/fsl,dcu.txt
create mode 100644 drivers/gpu/drm/fsl-dcu/Kconfig
create mode 100644 drivers/gpu/drm/fsl-dcu/Makefile
create mode 100644 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_crtc.c
create mode 100644 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_crtc.h
create mode 100644 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c
create mode 100644 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.h
create mode 100644 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_fbdev.c
create mode 100644 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_kms.c
create mode 100644 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_output.h
create mode 100644 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.c
create mode 100644 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.h
create mode 100644 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_rgb.c
 

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [next] | [standalone]


#1191695 — [PATCH v12 2/6] devicetree: Add NEC to the vendor-prefix list

FromJianwei Wang <jianwei.wang.chn@gmail.com>
Date2015-07-24 12:40 +0200
Subject[PATCH v12 2/6] devicetree: Add NEC to the vendor-prefix list
Message-ID<pPIyt-3am-9@gated-at.bofh.it>
In reply to#1191694
NEC represent NEC LCD Technologies, Ltd.

Signed-off-by: Alison Wang <b18965@freescale.com>
Signed-off-by: Xiubo Li <lixiubo@cmss.chinamobile.com>
Signed-off-by: Jianwei Wang <jianwei.wang.chn@gmail.com>
---
 Documentation/devicetree/bindings/vendor-prefixes.txt | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt
index 8033919..9f22b3e 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.txt
+++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
@@ -131,6 +131,7 @@ mundoreader	Mundo Reader S.L.
 murata	Murata Manufacturing Co., Ltd.
 mxicy	Macronix International Co., Ltd.
 national	National Semiconductor
+nec	NEC LCD Technologies, Ltd.
 neonode		Neonode Inc.
 netgear	NETGEAR
 netlogic	Broadcom Corporation (formerly NetLogic Microsystems)
-- 
2.1.0.27.g96db324

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1191698 — [PATCH v12 4/6] arm/dts/ls1021a: Add DCU dts node

FromJianwei Wang <jianwei.wang.chn@gmail.com>
Date2015-07-24 12:40 +0200
Subject[PATCH v12 4/6] arm/dts/ls1021a: Add DCU dts node
Message-ID<pPIyu-3am-21@gated-at.bofh.it>
In reply to#1191694
Add DCU node, DCU is a display controller of Freescale
named 2D-ACE.

Signed-off-by: Alison Wang <b18965@freescale.com>
Signed-off-by: Xiubo Li <lixiubo@cmss.chinamobile.com>
Signed-off-by: Jianwei Wang <jianwei.wang.chn@gmail.com>
---
 arch/arm/boot/dts/ls1021a.dtsi | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/arch/arm/boot/dts/ls1021a.dtsi b/arch/arm/boot/dts/ls1021a.dtsi
index c70bb27..6d6e3e2 100644
--- a/arch/arm/boot/dts/ls1021a.dtsi
+++ b/arch/arm/boot/dts/ls1021a.dtsi
@@ -383,6 +383,16 @@
 				 <&platform_clk 1>;
 		};
 
+		dcu: dcu@2ce0000 {
+			compatible = "fsl,ls1021a-dcu";
+			reg = <0x0 0x2ce0000 0x0 0x10000>;
+			interrupts = <GIC_SPI 172 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&platform_clk 0>;
+			clock-names = "dcu";
+			big-endian;
+			status = "disabled";
+		};
+
 		mdio0: mdio@2d24000 {
 			compatible = "gianfar";
 			device_type = "mdio";
-- 
2.1.0.27.g96db324

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1192275 — Re: [PATCH v12 4/6] arm/dts/ls1021a: Add DCU dts node

FromShawn Guo <shawnguo@kernel.org>
Date2015-07-25 05:30 +0200
SubjectRe: [PATCH v12 4/6] arm/dts/ls1021a: Add DCU dts node
Message-ID<pPYjU-Nq-1@gated-at.bofh.it>
In reply to#1191698
On Fri, Jul 24, 2015 at 06:34:12PM +0800, Jianwei Wang wrote:
> Add DCU node, DCU is a display controller of Freescale
> named 2D-ACE.
> 
> Signed-off-by: Alison Wang <b18965@freescale.com>
> Signed-off-by: Xiubo Li <lixiubo@cmss.chinamobile.com>
> Signed-off-by: Jianwei Wang <jianwei.wang.chn@gmail.com>

For dts patches sent to me, please use prefix like "ARM: dts: ls1021a:
..." in the subject.

Shawn

> ---
>  arch/arm/boot/dts/ls1021a.dtsi | 10 ++++++++++
>  1 file changed, 10 insertions(+)
> 
> diff --git a/arch/arm/boot/dts/ls1021a.dtsi b/arch/arm/boot/dts/ls1021a.dtsi
> index c70bb27..6d6e3e2 100644
> --- a/arch/arm/boot/dts/ls1021a.dtsi
> +++ b/arch/arm/boot/dts/ls1021a.dtsi
> @@ -383,6 +383,16 @@
>  				 <&platform_clk 1>;
>  		};
>  
> +		dcu: dcu@2ce0000 {
> +			compatible = "fsl,ls1021a-dcu";
> +			reg = <0x0 0x2ce0000 0x0 0x10000>;
> +			interrupts = <GIC_SPI 172 IRQ_TYPE_LEVEL_HIGH>;
> +			clocks = <&platform_clk 0>;
> +			clock-names = "dcu";
> +			big-endian;
> +			status = "disabled";
> +		};
> +
>  		mdio0: mdio@2d24000 {
>  			compatible = "gianfar";
>  			device_type = "mdio";
> -- 
> 2.1.0.27.g96db324
> 
> 
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1191702 — [PATCH v12 6/6] MAINTAINERS: add Freescale DCU DRM driver maintainer

FromJianwei Wang <jianwei.wang.chn@gmail.com>
Date2015-07-24 12:40 +0200
Subject[PATCH v12 6/6] MAINTAINERS: add Freescale DCU DRM driver maintainer
Message-ID<pPIyu-3am-35@gated-at.bofh.it>
In reply to#1191694
Add Alison and myself as maintainers of the Freescale DCU DRM driver.

Signed-off-by: Alison Wang <b18965@freescale.com>
Signed-off-by: Xiubo Li <lixiubo@cmss.chinamobile.com>
Signed-off-by: Jianwei Wang <jianwei.wang.chn@gmail.com>
---
 MAINTAINERS | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/MAINTAINERS b/MAINTAINERS
index 6761318..387a84a 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -3397,6 +3397,15 @@ F:	drivers/gpu/drm/exynos/
 F:	include/drm/exynos*
 F:	include/uapi/drm/exynos*
 
+DRM DRIVERS FOR FREESCALE DCU
+M:	Jianwei Wang <jianwei.wang.chn@gmail.com>
+M:	Alison Wang <alison.wang@freescale.com>
+L:	dri-devel@lists.freedesktop.org
+S:	Supported
+F:	drivers/gpu/drm/fsl-dcu/
+F:	Documentation/devicetree/bindings/video/fsl,dcu.txt
+F:	Documentation/devicetree/bindings/panel/nec,nl4827hc19_05b.txt
+
 DRM DRIVERS FOR FREESCALE IMX
 M:	Philipp Zabel <p.zabel@pengutronix.de>
 L:	dri-devel@lists.freedesktop.org
-- 
2.1.0.27.g96db324

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1191707 — [PATCH v12 3/6] drm/panel: simple: Add support for NEC NL4827HC19-05B 480x272 panel

FromJianwei Wang <jianwei.wang.chn@gmail.com>
Date2015-07-24 12:50 +0200
Subject[PATCH v12 3/6] drm/panel: simple: Add support for NEC NL4827HC19-05B 480x272 panel
Message-ID<pPII9-3lR-1@gated-at.bofh.it>
In reply to#1191694
This adds support for the NEC NL4827HC19-05B 480x272 panel to the DRM
simple panel driver.

Signed-off-by: Alison Wang <b18965@freescale.com>
Signed-off-by: Xiubo Li <lixiubo@cmss.chinamobile.com>
Signed-off-by: Jianwei Wang <jianwei.wang.chn@gmail.com>
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
---
 .../bindings/panel/nec,nl4827hc19_05b.txt          |  7 ++++++
 drivers/gpu/drm/panel/panel-simple.c               | 26 ++++++++++++++++++++++
 2 files changed, 33 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/panel/nec,nl4827hc19_05b.txt

diff --git a/Documentation/devicetree/bindings/panel/nec,nl4827hc19_05b.txt b/Documentation/devicetree/bindings/panel/nec,nl4827hc19_05b.txt
new file mode 100644
index 0000000..20e9473
--- /dev/null
+++ b/Documentation/devicetree/bindings/panel/nec,nl4827hc19_05b.txt
@@ -0,0 +1,7 @@
+NEC LCD Technologies,Ltd. WQVGA TFT LCD panel
+
+Required properties:
+- compatible: should be "nec,nl4827hc19_05b"
+
+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 f94201b..db61dd1 100644
--- a/drivers/gpu/drm/panel/panel-simple.c
+++ b/drivers/gpu/drm/panel/panel-simple.c
@@ -943,6 +943,29 @@ static const struct panel_desc lg_lp129qe = {
 	},
 };
 
+static const struct drm_display_mode nec_nl4827hc19_05b_mode = {
+	.clock = 10870,
+	.hdisplay = 480,
+	.hsync_start = 480 + 2,
+	.hsync_end = 480 + 2 + 41,
+	.htotal = 480 + 2 + 41 + 2,
+	.vdisplay = 272,
+	.vsync_start = 272 + 2,
+	.vsync_end = 272 + 2 + 4,
+	.vtotal = 272 + 2 + 4 + 2,
+	.vrefresh = 74,
+};
+
+static const struct panel_desc nec_nl4827hc19_05b = {
+	.modes = &nec_nl4827hc19_05b_mode,
+	.num_modes = 1,
+	.size = {
+		.width = 95,
+		.height = 54,
+	},
+	.bus_format = MEDIA_BUS_FMT_RGB888_1X24
+};
+
 static const struct drm_display_mode ortustech_com43h4m85ulc_mode  = {
 	.clock = 25000,
 	.hdisplay = 480,
@@ -1113,6 +1136,9 @@ static const struct of_device_id platform_of_match[] = {
 		.compatible = "lg,lp129qe",
 		.data = &lg_lp129qe,
 	}, {
+		.compatible = "nec,nl4827hc19_05b",
+		.data = &nec_nl4827hc19_05b,
+	}, {
 		.compatible = "ortustech,com43h4m85ulc",
 		.data = &ortustech_com43h4m85ulc,
 	}, {
-- 
2.1.0.27.g96db324

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1191710 — [PATCH v12 5/6] arm/dts/ls1021a: Add a TFT LCD panel dts node

FromJianwei Wang <jianwei.wang.chn@gmail.com>
Date2015-07-24 12:50 +0200
Subject[PATCH v12 5/6] arm/dts/ls1021a: Add a TFT LCD panel dts node
Message-ID<pPIIa-3lR-21@gated-at.bofh.it>
In reply to#1191694
Add a TFT LCD panel. the TFT LCD panel is WQVGA "480x272",
and the bpp is 24.

Signed-off-by: Alison Wang <b18965@freescale.com>
Signed-off-by: Xiubo Li <lixiubo@cmss.chinamobile.com>
Signed-off-by: Jianwei Wang <jianwei.wang.chn@gmail.com>
---
 arch/arm/boot/dts/ls1021a-twr.dts | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/arch/arm/boot/dts/ls1021a-twr.dts b/arch/arm/boot/dts/ls1021a-twr.dts
index a2c591e..2443329 100644
--- a/arch/arm/boot/dts/ls1021a-twr.dts
+++ b/arch/arm/boot/dts/ls1021a-twr.dts
@@ -56,6 +56,17 @@
 		enet0_sgmii_phy = &sgmii_phy2;
 		enet1_sgmii_phy = &sgmii_phy0;
 	};
+
+	panel: panel {
+		compatible = "nec,nl4827hc19_05b";
+	};
+
+};
+
+&dcu {
+	fsl,panel = <&panel>;
+	status = "okay";
+
 };
 
 &dspi1 {
-- 
2.1.0.27.g96db324

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web