[v1,1/2] dt-bindings: display: add sc7180 panel variant
diff mbox series

Message ID 1575010545-25971-2-git-send-email-harigovi@codeaurora.org
State New, archived
Headers show
Series
  • Add suppport for rm69299 Visionox panel driver and add devicetree bindings for visionox panel.
Related show

Commit Message

Harigovindan P Nov. 29, 2019, 6:55 a.m. UTC
Add a compatible string to support sc7180 panel version.

Signed-off-by: Harigovindan P <harigovi@codeaurora.org>
---
 .../bindings/display/visionox,rm69299.txt          | 68 ++++++++++++++++++++++
 1 file changed, 68 insertions(+)
 create mode 100755 Documentation/devicetree/bindings/display/visionox,rm69299.txt

Comments

Rob Clark Nov. 29, 2019, 4:48 p.m. UTC | #1
On Thu, Nov 28, 2019 at 10:56 PM Harigovindan P <harigovi@codeaurora.org> wrote:
>
> Add a compatible string to support sc7180 panel version.
>
> Signed-off-by: Harigovindan P <harigovi@codeaurora.org>
> ---
>  .../bindings/display/visionox,rm69299.txt          | 68 ++++++++++++++++++++++
>  1 file changed, 68 insertions(+)
>  create mode 100755 Documentation/devicetree/bindings/display/visionox,rm69299.txt
>
> diff --git a/Documentation/devicetree/bindings/display/visionox,rm69299.txt b/Documentation/devicetree/bindings/display/visionox,rm69299.txt
> new file mode 100755
> index 0000000..4622191
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/visionox,rm69299.txt
> @@ -0,0 +1,68 @@
> +Visionox model RM69299 DSI display driver
> +
> +The Visionox RM69299 is a generic display driver, currently only configured
> +for use in the 1080p display on the Qualcomm SC7180 MTP board.
> +
> +Required properties:
> +- compatible: should be "visionox,rm69299-1080p-display"
> +- vdda-supply: phandle of the regulator that provides the supply voltage
> +  Power IC supply
> +- vdd3p3-supply: phandle of the regulator that provides the supply voltage
> +  Power IC supply
> +- reset-gpios: phandle of gpio for reset line
> +  This should be 8mA, gpio can be configured using mux, pinctrl, pinctrl-names
> +  (active low)
> +- mode-gpios: phandle of the gpio for choosing the mode of the display
> +  for single DSI
> +- ports: This device has one video port driven by one DSI. Their connections
> +  are modeled using the OF graph bindings specified in
> +  Documentation/devicetree/bindings/graph.txt.
> +  - port@0: DSI input port driven by master DSI
> +
> +Example:
> +
> +       dsi@ae94000 {
> +               panel@0 {
> +                       compatible = "visionox,rm69299-1080p-display";
> +                       reg = <0>;
> +
> +                       vdda-supply = <&src_pp1800_l8c>;
> +                       vdd3p3-supply = <&src_pp2800_l18a>;
> +
> +                       pinctrl-names = "default", "suspend";
> +                       pinctrl-0 = <&disp_pins_default>;
> +                       pinctrl-1 = <&disp_pins_default>;
> +
> +                       reset-gpios = <&pm6150l_gpios 3 0>;
> +
> +                       display-timings {
> +                               timing0: timing-0 {
> +                                       /* originally
> +                                        * 268316160 Mhz,
> +                                        * but value below fits
> +                                        * better w/ downstream
> +                                        */
> +                                       clock-frequency = <158695680>;
> +                                       hactive = <1080>;
> +                                       vactive = <2248>;
> +                                       hfront-porch = <26>;
> +                                       hback-porch = <36>;
> +                                       hsync-len = <2>;
> +                                       vfront-porch = <56>;
> +                                       vback-porch = <4>;
> +                                       vsync-len = <4>;
> +                               };

why do we specify timings in dt?  Would the panel use different
timings on a different board?

BR,
-R

> +                       };
> +
> +                       ports {
> +                               #address-cells = <1>;
> +                               #size-cells = <0>;
> +                               port@0 {
> +                                       reg = <0>;
> +                                       panel0_in: endpoint {
> +                                               remote-endpoint = <&dsi0_out>;
> +                                       };
> +                               };
> +                       };
> +               };
> +       };
> --
> 2.7.4
>
> _______________________________________________
> Freedreno mailing list
> Freedreno@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/freedreno
Rob Herring Dec. 13, 2019, 9:47 p.m. UTC | #2
On Fri, Nov 29, 2019 at 12:25:44PM +0530, Harigovindan P wrote:
> Add a compatible string to support sc7180 panel version.
> 
> Signed-off-by: Harigovindan P <harigovi@codeaurora.org>
> ---
>  .../bindings/display/visionox,rm69299.txt          | 68 ++++++++++++++++++++++
>  1 file changed, 68 insertions(+)
>  create mode 100755 Documentation/devicetree/bindings/display/visionox,rm69299.txt

Source files should not have execute permission.

New bindings should be in DT schema format.

checkpatch.pl will tell you both of these things.

> 
> diff --git a/Documentation/devicetree/bindings/display/visionox,rm69299.txt b/Documentation/devicetree/bindings/display/visionox,rm69299.txt
> new file mode 100755
> index 0000000..4622191
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/visionox,rm69299.txt
> @@ -0,0 +1,68 @@
> +Visionox model RM69299 DSI display driver
> +
> +The Visionox RM69299 is a generic display driver, currently only configured
> +for use in the 1080p display on the Qualcomm SC7180 MTP board.
> +
> +Required properties:
> +- compatible: should be "visionox,rm69299-1080p-display"

RM69299 may be generic, but 1080p sounds like a specific panel.

Is there anything besides a 'display'? If not, '-display' is redundant.

> +- vdda-supply: phandle of the regulator that provides the supply voltage
> +  Power IC supply
> +- vdd3p3-supply: phandle of the regulator that provides the supply voltage
> +  Power IC supply
> +- reset-gpios: phandle of gpio for reset line
> +  This should be 8mA, gpio can be configured using mux, pinctrl, pinctrl-names
> +  (active low)
> +- mode-gpios: phandle of the gpio for choosing the mode of the display
> +  for single DSI

The modes are what?

> +- ports: This device has one video port driven by one DSI. Their connections
> +  are modeled using the OF graph bindings specified in
> +  Documentation/devicetree/bindings/graph.txt.
> +  - port@0: DSI input port driven by master DSI
> +
> +Example:
> +
> +	dsi@ae94000 {
> +		panel@0 {
> +			compatible = "visionox,rm69299-1080p-display";
> +			reg = <0>;
> +
> +			vdda-supply = <&src_pp1800_l8c>;
> +			vdd3p3-supply = <&src_pp2800_l18a>;
> +
> +			pinctrl-names = "default", "suspend";
> +			pinctrl-0 = <&disp_pins_default>;
> +			pinctrl-1 = <&disp_pins_default>;
> +
> +			reset-gpios = <&pm6150l_gpios 3 0>;
> +
> +			display-timings {
> +				timing0: timing-0 {
> +					/* originally
> +					 * 268316160 Mhz,
> +					 * but value below fits
> +					 * better w/ downstream
> +					 */
> +					clock-frequency = <158695680>;
> +					hactive = <1080>;
> +					vactive = <2248>;
> +					hfront-porch = <26>;
> +					hback-porch = <36>;
> +					hsync-len = <2>;
> +					vfront-porch = <56>;
> +					vback-porch = <4>;
> +					vsync-len = <4>;
> +				};
> +			};
> +
> +			ports {
> +				#address-cells = <1>;
> +				#size-cells = <0>;
> +				port@0 {
> +					reg = <0>;
> +					panel0_in: endpoint {
> +						remote-endpoint = <&dsi0_out>;
> +					};
> +				};
> +			};
> +		};
> +	};
> -- 
> 2.7.4
>

Patch
diff mbox series

diff --git a/Documentation/devicetree/bindings/display/visionox,rm69299.txt b/Documentation/devicetree/bindings/display/visionox,rm69299.txt
new file mode 100755
index 0000000..4622191
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/visionox,rm69299.txt
@@ -0,0 +1,68 @@ 
+Visionox model RM69299 DSI display driver
+
+The Visionox RM69299 is a generic display driver, currently only configured
+for use in the 1080p display on the Qualcomm SC7180 MTP board.
+
+Required properties:
+- compatible: should be "visionox,rm69299-1080p-display"
+- vdda-supply: phandle of the regulator that provides the supply voltage
+  Power IC supply
+- vdd3p3-supply: phandle of the regulator that provides the supply voltage
+  Power IC supply
+- reset-gpios: phandle of gpio for reset line
+  This should be 8mA, gpio can be configured using mux, pinctrl, pinctrl-names
+  (active low)
+- mode-gpios: phandle of the gpio for choosing the mode of the display
+  for single DSI
+- ports: This device has one video port driven by one DSI. Their connections
+  are modeled using the OF graph bindings specified in
+  Documentation/devicetree/bindings/graph.txt.
+  - port@0: DSI input port driven by master DSI
+
+Example:
+
+	dsi@ae94000 {
+		panel@0 {
+			compatible = "visionox,rm69299-1080p-display";
+			reg = <0>;
+
+			vdda-supply = <&src_pp1800_l8c>;
+			vdd3p3-supply = <&src_pp2800_l18a>;
+
+			pinctrl-names = "default", "suspend";
+			pinctrl-0 = <&disp_pins_default>;
+			pinctrl-1 = <&disp_pins_default>;
+
+			reset-gpios = <&pm6150l_gpios 3 0>;
+
+			display-timings {
+				timing0: timing-0 {
+					/* originally
+					 * 268316160 Mhz,
+					 * but value below fits
+					 * better w/ downstream
+					 */
+					clock-frequency = <158695680>;
+					hactive = <1080>;
+					vactive = <2248>;
+					hfront-porch = <26>;
+					hback-porch = <36>;
+					hsync-len = <2>;
+					vfront-porch = <56>;
+					vback-porch = <4>;
+					vsync-len = <4>;
+				};
+			};
+
+			ports {
+				#address-cells = <1>;
+				#size-cells = <0>;
+				port@0 {
+					reg = <0>;
+					panel0_in: endpoint {
+						remote-endpoint = <&dsi0_out>;
+					};
+				};
+			};
+		};
+	};