devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 0/4] Add support rockchip RGB output interface
@ 2017-10-09  8:06 Sandy Huang
  2017-10-09  8:06 ` [PATCH v3 1/4] devicetree/bindings: display: Add doucument for RGB panels Sandy Huang
  2017-10-09  8:06 ` [PATCH v3 2/4] devicetree/bindings: display: Add document for rockchip RGB output Sandy Huang
  0 siblings, 2 replies; 3+ messages in thread
From: Sandy Huang @ 2017-10-09  8:06 UTC (permalink / raw)
  To: Thierry Reding, David Airlie, Rob Herring, Mark Rutland, Mark Yao,
	Heiko Stuebner
  Cc: dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW,
	devicetree-u79uwXL29TY76Z2rM5mHXA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	linux-rockchip-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, Sandy Huang

This patches add support rockchip RGB output, Some Rockchip CRTCs, like rv1108,
can directly output parallel and serial RGB data to panel or to conversion chip.
So we add this driver to probe encoder and connector to support this case.

Sandy Huang (4):
  devicetree/bindings: display: Add doucument for RGB panels
  devicetree/bindings: display: Add document for rockchip RGB output
  drm/rockchip: Add support for Rockchip Soc RGB output interface
  drm/rockchip: vop: Add more RGB output interface type

 .../bindings/display/panel/panel-rgb.txt           | 116 +++++++
 .../bindings/display/rockchip/rockchip-rgb.txt     |  72 +++++
 drivers/gpu/drm/rockchip/Kconfig                   |   9 +
 drivers/gpu/drm/rockchip/Makefile                  |   1 +
 drivers/gpu/drm/rockchip/rockchip_drm_drv.c        |   2 +
 drivers/gpu/drm/rockchip/rockchip_drm_drv.h        |   1 +
 drivers/gpu/drm/rockchip/rockchip_drm_vop.h        |   2 +
 drivers/gpu/drm/rockchip/rockchip_rgb.c            | 343 +++++++++++++++++++++
 8 files changed, 546 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/display/panel/panel-rgb.txt
 create mode 100644 Documentation/devicetree/bindings/display/rockchip/rockchip-rgb.txt
 create mode 100644 drivers/gpu/drm/rockchip/rockchip_rgb.c

-- 
2.7.4


--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [PATCH v3 1/4] devicetree/bindings: display: Add doucument for RGB panels
  2017-10-09  8:06 [PATCH v3 0/4] Add support rockchip RGB output interface Sandy Huang
@ 2017-10-09  8:06 ` Sandy Huang
  2017-10-09  8:06 ` [PATCH v3 2/4] devicetree/bindings: display: Add document for rockchip RGB output Sandy Huang
  1 sibling, 0 replies; 3+ messages in thread
From: Sandy Huang @ 2017-10-09  8:06 UTC (permalink / raw)
  To: Thierry Reding, David Airlie, Rob Herring, Mark Rutland
  Cc: devicetree, dri-devel, linux-kernel

Describe the panel property rgb-mode for parallel and serial
RGB output interface, include the connection relations for each
mode.

Signed-off-by: Sandy Huang <hjc@rock-chips.com>
---
 .../bindings/display/panel/panel-rgb.txt           | 116 +++++++++++++++++++++
 1 file changed, 116 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/display/panel/panel-rgb.txt

diff --git a/Documentation/devicetree/bindings/display/panel/panel-rgb.txt b/Documentation/devicetree/bindings/display/panel/panel-rgb.txt
new file mode 100644
index 0000000..0c5b054
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/panel/panel-rgb.txt
@@ -0,0 +1,116 @@
+RGB Display Panel
+==================
+
+This describe the panel property rgb-mode for parallel and serial
+RGB output interface. rgb-mode should be "p888", "p666", "p565", "s888"
+and "s888-dummy", the following describe the connection relations.
+
+p888 mode:
+           ___     ___     ___     ___     ___     ___     ___
+dclk    __/   \___/   \___/   \___/   \___/   \___/   \___/   \___
+          ______  ______  ______  ______  ______  ______  ______
+DATA23  ><__R7__><__R7__><__R7__><__R7__><__R7__><__R7__><__R7__><
+DATA22  ><__R6__><__R6__><__R6__><__R6__><__R6__><__R6__><__R6__><
+DATA21  ><__R5__><__R5__><__R5__><__R5__><__R5__><__R5__><__R5__><
+DATA20  ><__R4__><__R4__><__R4__><__R4__><__R4__><__R4__><__R4__><
+DATA19  ><__R3__><__R3__><__R3__><__R3__><__R3__><__R3__><__R3__><
+DATA18  ><__R2__><__R2__><__R2__><__R2__><__R2__><__R2__><__R2__><
+DATA17  ><__R1__><__R1__><__R1__><__R1__><__R1__><__R1__><__R1__><
+DATA16  ><__R0__><__R0__><__R0__><__R0__><__R0__><__R0__><__R0__><
+          ______  ______  ______  ______  ______  ______  ______
+DATA15  ><__G7__><__G7__><__G7__><__G7__><__G7__><__G7__><__G7__><
+DATA14  ><__G6__><__G6__><__G6__><__G6__><__G6__><__G6__><__G6__><
+DATA13  ><__G5__><__G5__><__G5__><__G5__><__G5__><__G5__><__G5__><
+DATA12  ><__G4__><__G4__><__G4__><__G4__><__G4__><__G4__><__G4__><
+DATA11  ><__G3__><__G3__><__G3__><__G3__><__G3__><__G3__><__G3__><
+DATA10  ><__G2__><__G2__><__G2__><__G2__><__G2__><__G2__><__G2__><
+DATA9   ><__G1__><__G1__><__G1__><__G1__><__G1__><__G1__><__G1__><
+DATA8   ><__G0__><__G0__><__G0__><__G0__><__G0__><__G0__><__G0__><
+          ______  ______  ______  ______  ______  ______  ______
+DATA7   ><__B7__><__B7__><__B7__><__B7__><__B7__><__B7__><__B7__><
+DATA6   ><__B6__><__B6__><__B6__><__B6__><__B6__><__B6__><__B6__><
+DATA5   ><__B5__><__B5__><__B5__><__B5__><__B5__><__B5__><__B5__><
+DATA4   ><__B4__><__B4__><__B4__><__B4__><__B4__><__B4__><__B4__><
+DATA3   ><__B3__><__B3__><__B3__><__B3__><__B3__><__B3__><__B3__><
+DATA2   ><__B2__><__B2__><__B2__><__B2__><__B2__><__B2__><__B2__><
+DATA1   ><__B1__><__B1__><__B1__><__B1__><__B1__><__B1__><__B1__><
+DATA0   ><__B0__><__B0__><__B0__><__B0__><__B0__><__B0__><__B0__><
+pixel   |   n   |  n+1  |  n+3  |  n+4  |  n+5  |  n+6  |  n+7  |
+
+p666 mode:
+           ___     ___     ___     ___     ___     ___     ___
+dclk    __/   \___/   \___/   \___/   \___/   \___/   \___/   \___
+          ______  ______  ______  ______  ______  ______  ______
+DATA17  ><__R5__><__R5__><__R5__><__R5__><__R5__><__R5__><__R5__><
+DATA16  ><__R4__><__R4__><__R4__><__R4__><__R4__><__R4__><__R4__><
+DATA15  ><__R3__><__R3__><__R3__><__R3__><__R3__><__R3__><__R3__><
+DATA14  ><__R2__><__R2__><__R2__><__R2__><__R2__><__R2__><__R2__><
+DATA13  ><__R1__><__R1__><__R1__><__R1__><__R1__><__R1__><__R1__><
+DATA12  ><__R0__><__R0__><__R0__><__R0__><__R0__><__R0__><__R0__><
+          ______  ______  ______  ______  ______  ______  ______
+DATA11  ><__G5__><__G5__><__G5__><__G5__><__G5__><__G5__><__G5__><
+DATA10  ><__G4__><__G4__><__G4__><__G4__><__G4__><__G4__><__G4__><
+DATA9   ><__G3__><__G3__><__G3__><__G3__><__G3__><__G3__><__G3__><
+DATA8   ><__G2__><__G2__><__G2__><__G2__><__G2__><__G2__><__G2__><
+DATA7   ><__G1__><__G1__><__G1__><__G1__><__G1__><__G1__><__G1__><
+DATA6   ><__G0__><__G0__><__G0__><__G0__><__G0__><__G0__><__G0__><
+          ______  ______  ______  ______  ______  ______  ______
+DATA5   ><__B5__><__B5__><__B5__><__B5__><__B5__><__B5__><__B5__><
+DATA4   ><__B4__><__B4__><__B4__><__B4__><__B4__><__B4__><__B4__><
+DATA3   ><__B3__><__B3__><__B3__><__B3__><__B3__><__B3__><__B3__><
+DATA2   ><__B2__><__B2__><__B2__><__B2__><__B2__><__B2__><__B2__><
+DATA1   ><__B1__><__B1__><__B1__><__B1__><__B1__><__B1__><__B1__><
+DATA0   ><__B0__><__B0__><__B0__><__B0__><__B0__><__B0__><__B0__><
+pixel   |   n   |  n+1  |  n+3  |  n+4  |  n+5  |  n+6  |  n+7  |
+
+p565 mode:
+           ___     ___     ___     ___     ___     ___     ___
+dclk    __/   \___/   \___/   \___/   \___/   \___/   \___/   \___
+          ______  ______  ______  ______  ______  ______  ______
+DATA15  ><__R4__><__R4__><__R4__><__R4__><__R4__><__R4__><__R4__><
+DATA14  ><__R3__><__R3__><__R3__><__R3__><__R3__><__R3__><__R3__><
+DATA13  ><__R2__><__R2__><__R2__><__R2__><__R2__><__R2__><__R2__><
+DATA12  ><__R1__><__R1__><__R1__><__R1__><__R1__><__R1__><__R1__><
+DATA11  ><__R0__><__R0__><__R0__><__R0__><__R0__><__R0__><__R0__><
+          ______  ______  ______  ______  ______  ______  ______
+DATA10  ><__G5__><__G5__><__G5__><__G5__><__G5__><__G5__><__G5__><
+DATA9   ><__G4__><__G4__><__G4__><__G4__><__G4__><__G4__><__G4__><
+DATA8   ><__G3__><__G3__><__G3__><__G3__><__G3__><__G3__><__G3__><
+DATA7   ><__G2__><__G2__><__G2__><__G2__><__G2__><__G2__><__G2__><
+DATA6   ><__G1__><__G1__><__G1__><__G1__><__G1__><__G1__><__G1__><
+DATA5   ><__G0__><__G0__><__G0__><__G0__><__G0__><__G0__><__G0__><
+          ______  ______  ______  ______  ______  ______  ______
+DATA4   ><__B4__><__B4__><__B4__><__B4__><__B4__><__B4__><__B4__><
+DATA3   ><__B3__><__B3__><__B3__><__B3__><__B3__><__B3__><__B3__><
+DATA2   ><__B2__><__B2__><__B2__><__B2__><__B2__><__B2__><__B2__><
+DATA1   ><__B1__><__B1__><__B1__><__B1__><__B1__><__B1__><__B1__><
+DATA0   ><__B0__><__B0__><__B0__><__B0__><__B0__><__B0__><__B0__><
+pixel   |   n   |  n+1  |  n+3  |  n+4  |  n+5  |  n+6  |  n+7  |
+
+s888 mode:
+           ___     ___     ___     ___     ___     ___     ___
+dclk    __/   \___/   \___/   \___/   \___/   \___/   \___/   \___
+          ______  ______  ______  ______  ______  ______  ______
+DATA7   ><__R7__><__G7__><__B7__><__R7__><__G7__><__B7__><__R7__><
+DATA6   ><__R6__><__G6__><__B6__><__R6__><__G6__><__B6__><__R6__><
+DATA5   ><__R5__><__G5__><__B5__><__R5__><__G5__><__B5__><__R5__><
+DATA4   ><__R4__><__G4__><__B4__><__R4__><__G4__><__B4__><__R4__><
+DATA3   ><__R3__><__G3__><__B3__><__R3__><__G3__><__B3__><__R3__><
+DATA2   ><__R2__><__G2__><__B2__><__R2__><__G2__><__B2__><__R2__><
+DATA1   ><__R1__><__G1__><__B1__><__R1__><__G1__><__B1__><__R1__><
+DATA0   ><__R0__><__G0__><__B0__><__R0__><__G0__><__B0__><__R0__><
+pixel   | --------- n --------- | ------- n + 1 ------- | --------
+
+s888-dummy mode:
+           ___     ___     ___     ___     ___     ___     ___     ___
+dclk    __/   \___/   \___/   \___/   \___/   \___/   \___/   \___/   \___
+          ______  ______  ______  ______   ______  ______  ______  ______
+DATA7   ><__R7__><__G7__><__B7__><_NULL_><__R7__><__G7__><__B7__><_NULL_><
+DATA6   ><__R6__><__G6__><__B6__><_NULL_><__R6__><__G6__><__B6__><_NULL_><
+DATA5   ><__R5__><__G5__><__B5__><_NULL_><__R5__><__G5__><__B5__><_NULL_><
+DATA4   ><__R4__><__G4__><__B4__><_NULL_><__R4__><__G4__><__B4__><_NULL_><
+DATA3   ><__R3__><__G3__><__B3__><_NULL_><__R3__><__G3__><__B3__><_NULL_><
+DATA2   ><__R2__><__G2__><__B2__><_NULL_><__R2__><__G2__><__B2__><_NULL_><
+DATA1   ><__R1__><__G1__><__B1__><_NULL_><__R1__><__G1__><__B1__><_NULL_><
+DATA0   ><__R0__><__G0__><__B0__><_NULL_><__R0__><__G0__><__B0__><_NULL_><
+pixel   | ------------- n ------------- | ----------- n + 1 ----------- |
-- 
2.7.4


_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [PATCH v3 2/4] devicetree/bindings: display: Add document for rockchip RGB output
  2017-10-09  8:06 [PATCH v3 0/4] Add support rockchip RGB output interface Sandy Huang
  2017-10-09  8:06 ` [PATCH v3 1/4] devicetree/bindings: display: Add doucument for RGB panels Sandy Huang
@ 2017-10-09  8:06 ` Sandy Huang
  1 sibling, 0 replies; 3+ messages in thread
From: Sandy Huang @ 2017-10-09  8:06 UTC (permalink / raw)
  To: Mark Yao, David Airlie, Rob Herring, Mark Rutland, Heiko Stuebner
  Cc: Sandy Huang, dri-devel, devicetree, linux-arm-kernel,
	linux-rockchip, linux-kernel

This path add support rv1108 rgb output interface driver.

Signed-off-by: Sandy Huang <hjc@rock-chips.com>
---
Changes in v3:
 move rgb-mode to panel node which describe at:
 Documentation/devicetree/bindings/display/panel/panel-rgb.txt

Changes in v2:
 1. rename rockchip,rgb-mode to rgb-mode;
 2. delete reg for signle endpoint;
 .../bindings/display/rockchip/rockchip-rgb.txt     | 72 ++++++++++++++++++++++
 1 file changed, 72 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/display/rockchip/rockchip-rgb.txt

diff --git a/Documentation/devicetree/bindings/display/rockchip/rockchip-rgb.txt b/Documentation/devicetree/bindings/display/rockchip/rockchip-rgb.txt
new file mode 100644
index 0000000..d91a7bf
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/rockchip/rockchip-rgb.txt
@@ -0,0 +1,72 @@
+Rockchip RV1108 RGB interface
+================================
+
+Required properties:
+- compatible: matching the soc type:
+	- "rockchip,rv1108-rgb";
+
+Optional properties:
+- pinctrl-names: must contain a "lcdc" entry.
+- pinctrl-0: pin control group to be used for this interface.
+
+The rgb has two video ports described by:
+	Documentation/devicetree/bindings/media/video-interfaces.txt
+Their connections are modeled using the OF graph bindings specified in
+	Documentation/devicetree/bindings/graph.txt.
+
+- video port 0 for the VOP input, the remote endpoint maybe vopb/vopl/vop
+- video port 1 for either a panel or subsequent encoder
+
+the panel described by:
+	Documentation/devicetree/bindings/display/panel/simple-panel.txt
+rgb-mode nodes described by:
+	Documentation/devicetree/bindings/display/panel/panel-rgb.txt
+Panel other required properties:
+- ports for remote rgb output.
+
+Example:
+
+panel: panel {
+	compatible = "auo,b101ean01";
+	enable-gpios = <&gpio7 21 GPIO_ACTIVE_HIGH>;
+	rgb-mode = "p888";
+
+	ports {
+		panel_in_rgb: endpoint {
+			remote-endpoint = <&rgb_out_panel>;
+		};
+	};
+};
+
+For Rockchip RV1108:
+
+	rgb: rgb {
+		compatible = "rockchip,rv1108-rgb";
+		pinctrl-names = "lcdc";
+		pinctrl-0 = <&lcdc_ctl>;
+
+		ports {
+			#address-cells = <1>;
+			#size-cells = <0>;
+
+			rgb_in: port@0 {
+				reg = <0>;
+				#address-cells = <1>;
+				#size-cells = <0>;
+
+				rgb_in_vop: endpoint {
+					remote-endpoint = <&vop_out_rgb>;
+				};
+			};
+
+			rgb_out: port@1 {
+				reg = <1>;
+				#address-cells = <1>;
+				#size-cells = <0>;
+
+				rgb_out_panel: endpoint {
+					remote-endpoint = <&panel_in_rgb>;
+				};
+			};
+		};
+	};
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2017-10-09  8:06 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-10-09  8:06 [PATCH v3 0/4] Add support rockchip RGB output interface Sandy Huang
2017-10-09  8:06 ` [PATCH v3 1/4] devicetree/bindings: display: Add doucument for RGB panels Sandy Huang
2017-10-09  8:06 ` [PATCH v3 2/4] devicetree/bindings: display: Add document for rockchip RGB output Sandy Huang

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).