From: Teguh Sobirin <[email protected]>

Document the Ilitek IL97680A panels in the Retroid Pocket Nova and the
bottom display of the Retroid Pocket Duo. Both are 1280x960 MIPI DSI
command-mode panels, with different supply configurations.

Link: 
https://github.com/RetroidPocket/linux/commit/9bfe85be2179d03338d09b8900f3b1916999ef15
Signed-off-by: Teguh Sobirin <[email protected]>
Assisted-by: LLM
Signed-off-by: Jacob Pyke <[email protected]>
---
 .../display/panel/ilitek,il97680a.yaml        | 121 ++++++++++++++++++
 MAINTAINERS                                   |   6 +
 2 files changed, 127 insertions(+)
 create mode 100644 
Documentation/devicetree/bindings/display/panel/ilitek,il97680a.yaml

diff --git 
a/Documentation/devicetree/bindings/display/panel/ilitek,il97680a.yaml 
b/Documentation/devicetree/bindings/display/panel/ilitek,il97680a.yaml
new file mode 100644
index 
0000000000000000000000000000000000000000..70a1bdccef75ea3ee6335304ede771ff711991de
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/panel/ilitek,il97680a.yaml
@@ -0,0 +1,121 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/display/panel/ilitek,il97680a.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Ilitek IL97680A based DSI panels
+
+maintainers:
+  - Teguh Sobirin <[email protected]>
+  - Jacob Pyke <[email protected]>
+
+description:
+  The Ilitek IL97680A is a DSI display driver IC driving the 1280x960
+  command mode panels of the RetroidPocket handhelds.
+
+allOf:
+  - $ref: panel-common.yaml#
+  - if:
+      properties:
+        compatible:
+          const: retroidpocket,rpnova-panel
+    then:
+      required:
+        - vdd18-supply
+        - vdd28-supply
+    else:
+      properties:
+        vdd18-supply: false
+        vdd28-supply: false
+
+properties:
+  compatible:
+    enum:
+      - retroidpocket,rpduo-panel-bottom
+      - retroidpocket,rpnova-panel
+
+  reg:
+    maxItems: 1
+
+  vdd-supply:
+    description: Core voltage supply
+
+  vddio-supply:
+    description: I/O voltage supply
+
+  vci-supply:
+    description: Analog voltage supply
+
+  vdd18-supply:
+    description: 1.8V supply of the panel module
+
+  vdd28-supply:
+    description: 2.8V supply of the panel module
+
+  reset-gpios: true
+  rotation: true
+  port: true
+
+required:
+  - compatible
+  - reg
+  - vdd-supply
+  - vddio-supply
+  - vci-supply
+  - reset-gpios
+  - port
+
+additionalProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/gpio/gpio.h>
+
+    dsi {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        panel@0 {
+            compatible = "retroidpocket,rpnova-panel";
+            reg = <0>;
+
+            vdd-supply = <&vreg_l11b_1p2>;
+            vddio-supply = <&vreg_l12b_1p8>;
+            vci-supply = <&vreg_l13b_3p0>;
+            vdd18-supply = <&vdd_disp_1v8>;
+            vdd28-supply = <&vdd_disp_2v8>;
+
+            reset-gpios = <&tlmm 133 GPIO_ACTIVE_LOW>;
+
+            port {
+                panel_in: endpoint {
+                    remote-endpoint = <&dsi0_out>;
+                };
+            };
+        };
+    };
+  - |
+    #include <dt-bindings/gpio/gpio.h>
+
+    dsi {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        panel@0 {
+            compatible = "retroidpocket,rpduo-panel-bottom";
+            reg = <0>;
+
+            vdd-supply = <&vreg_l1g>;
+            vddio-supply = <&vdd_disp_s_1v8>;
+            vci-supply = <&vdd_disp_s_3v0>;
+            reset-gpios = <&tlmm 73 GPIO_ACTIVE_LOW>;
+
+            port {
+                duo_panel_in: endpoint {
+                    remote-endpoint = <&dsi1_out>;
+                };
+            };
+        };
+    };
+...
diff --git a/MAINTAINERS b/MAINTAINERS
index 
b9424b630ac34ae6b1774416ef4cb3ef1a8ebe63..d1be1cf2b93c4fa57ffcb6a17aaf2e14dad0deed
 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -8235,6 +8235,12 @@ S:       Maintained
 T:     git https://gitlab.freedesktop.org/drm/misc/kernel.git
 F:     drivers/gpu/drm/hyperv
 
+DRM DRIVER FOR ILITEK IL97680A PANELS
+M:     Jacob Pyke <[email protected]>
+L:     [email protected]
+S:     Maintained
+F:     Documentation/devicetree/bindings/display/panel/ilitek,il97680a.yaml
+
 DRM DRIVER FOR ILITEK ILI9225 PANELS
 M:     David Lechner <[email protected]>
 S:     Maintained

Reply via email to