[RFC PATCH 02/16] dt-bindings: display: rockchip: Add EBC binding

From: Samuel Holland
Date: Wed Apr 13 2022 - 18:19:47 EST


The Rockchip E-Book Controller (EBC) is a controller for Electrophoretic
Displays (EPDs). It is self-contained; it does not interact directly
with the VOP or the RGA.

While two of the regulator consumers here actually power the display
panel, not the EBC hardware, they are consumed here because they are
only needed during display refreshes. They do not match the normal
panel prepare/enable lifecycle.

Signed-off-by: Samuel Holland <samuel@xxxxxxxxxxxx>
---

.../display/rockchip/rockchip,rk3568-ebc.yaml | 106 ++++++++++++++++++
1 file changed, 106 insertions(+)
create mode 100644 Documentation/devicetree/bindings/display/rockchip/rockchip,rk3568-ebc.yaml

diff --git a/Documentation/devicetree/bindings/display/rockchip/rockchip,rk3568-ebc.yaml b/Documentation/devicetree/bindings/display/rockchip/rockchip,rk3568-ebc.yaml
new file mode 100644
index 000000000000..957ca874ab02
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/rockchip/rockchip,rk3568-ebc.yaml
@@ -0,0 +1,106 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/display/rockchip/rockchip,rk3568-ebc.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Rockchip SoC E-Book Controller (EBC)
+
+description:
+ Rockchip EBC is a controller for Electrophoretic Displays (EPDs).
+
+maintainers:
+ - Samuel Holland <samuel@xxxxxxxxxxxx>
+
+properties:
+ compatible:
+ enum:
+ - rockchip,rk3568-ebc
+
+ reg:
+ maxItems: 1
+
+ interrupts:
+ maxItems: 1
+
+ clocks:
+ items:
+ - description: AHB register clock
+ - description: Pixel clock
+
+ clock-names:
+ items:
+ - const: hclk
+ - const: dclk
+
+ resets:
+ items:
+ - description: hclk domain reset
+ - description: dclk domain reset
+
+ reset-names:
+ items:
+ - const: hclk
+ - const: dclk
+
+ io-channels:
+ maxItems: 1
+ description: I/O channel for panel temperature measurement
+
+ panel-supply:
+ description: Regulator supplying the panel's logic voltage
+
+ power-domains:
+ maxItems: 1
+
+ vcom-supply:
+ description: Regulator supplying the panel's compensation voltage
+
+ vdrive-supply:
+ description: Regulator supplying the panel's gate and source drivers
+
+ port:
+ $ref: /schemas/graph.yaml#/properties/port
+ description: OF graph port for the attached display panel
+
+required:
+ - compatible
+ - reg
+ - interrupts
+ - clocks
+ - clock-names
+ - resets
+ - reset-names
+ - power-domains
+ - panel-supply
+ - vcom-supply
+ - vdrive-supply
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/clock/rk3568-cru.h>
+ #include <dt-bindings/interrupt-controller/arm-gic.h>
+ #include <dt-bindings/power/rk3568-power.h>
+
+ ebc: ebc@fdec0000 {
+ compatible = "rockchip,rk3568-ebc";
+ reg = <0x0 0xfdec0000 0x0 0x5000>;
+ interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&cru HCLK_EBC>, <&cru DCLK_EBC>;
+ clock-names = "hclk", "dclk";
+ resets = <&cru SRST_H_EBC>, <&cru SRST_D_EBC>;
+ reset-names = "hclk", "dclk";
+ power-domains = <&power RK3568_PD_RGA>;
+
+ panel-supply = <&v3p3>;
+ vcom-supply = <&vcom>;
+ vdrive-supply = <&vdrive>;
+
+ port {
+ ebc_out_panel: endpoint {
+ remote-endpoint = <&panel_in_ebc>;
+ };
+ };
+ };
--
2.35.1