[PATCH V1 1/1] regulator: Add awinic,aw3750x.yaml

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Ke Li <like@xxxxxxxxxx>

Signed-off-by: Ke Li <like@xxxxxxxxxx>
---
 .../bindings/regulator/awinic,aw3750x.yaml    | 151 ++++++++++++++++++
 1 file changed, 151 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/regulator/awinic,aw3750x.yaml

diff --git a/Documentation/devicetree/bindings/regulator/awinic,aw3750x.yaml b/Documentation/devicetree/bindings/regulator/awinic,aw3750x.yaml
new file mode 100644
index 000000000000..cdb3d9dbf88f
--- /dev/null
+++ b/Documentation/devicetree/bindings/regulator/awinic,aw3750x.yaml
@@ -0,0 +1,151 @@
+# SPDX-License-Identifier: GPL-2.0-only
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/regulator/awinic,aw3750x.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Awinic AW3750X Power Management IC
+
+maintainers:
+  - Weidong Wang <wangweidong.a@xxxxxxxxxx>
+  - Ke Li <like@xxxxxxxxxx>
+
+description: |
+  AW3750X is designed to generate both positive and negative bias voltages for.
+  TFT-LCD panels or other general dual-supply applications. It consists a highly
+  integrated synchronous boost converter with input voltage from 2.7V to 5.5V.
+
+properties:
+  compatible:
+    const: awinic,aw3750x_led
+
+  enp:
+    type: object
+    $ref: regulator.yaml#
+    description:
+      Properties for single LDO regulator.
+
+    properties:
+      regulator-name: true
+
+    required:
+      - regulator-name
+
+    unevaluatedProperties: false
+
+  enn:
+    type: object
+    $ref: regulator.yaml#
+    description:
+      Properties for single BOOST regulator.
+
+    properties:
+      regulator-name: true
+
+    required:
+      - regulator-name
+
+    unevaluatedProperties: false
+
+required:
+  - compatible
+  - enp
+  - enn
+
+additionalProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/pinctrl/mt8186-pinfunc.h>
+    #include <dt-bindings/gpio/gpio.h>
+
+    pio: pinctrl@10005000 {
+      aw_enn_default: aw_enn_default {
+        pins_cmd_dat {
+          pinmux = <PINMUX_GPIO7__FUNC_GPIO7>;
+          slew-rate = <1>;
+          output-low;
+        };
+      };
+
+      aw_enn_output_high: aw_enn_output_high {
+        pins_cmd_dat {
+          pinmux = <PINMUX_GPIO7__FUNC_GPIO7>;
+          slew-rate = <1>;
+          output-high;
+        };
+      };
+
+      aw_enn_output_low: aw_enn_output_low {
+        pins_cmd_dat {
+          pinmux = <PINMUX_GPIO7__FUNC_GPIO7>;
+          slew-rate = <1>;
+          output-low;
+        };
+      };
+
+      aw_enp_default: aw_enp_default {
+        pins_cmd_dat {
+          pinmux = <PINMUX_GPIO1__FUNC_GPIO1>;
+          slew-rate = <1>;
+          output-low;
+        };
+      };
+
+      aw_enp_output_high: aw_enp_output_high {
+        pins_cmd_dat {
+          pinmux = <PINMUX_GPIO1__FUNC_GPIO1>;
+          slew-rate = <1>;
+          output-high;
+        };
+      };
+
+      aw_enp_output_low: aw_enp_output_low {
+        pins_cmd_dat {
+          pinmux = <PINMUX_GPIO1__FUNC_GPIO1>;
+          slew-rate = <1>;
+          output-low;
+        };
+      };
+
+    };
+
+  - |
+    #include <dt-bindings/interrupt-controller/irq.h>
+
+    i2c {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        aw3750x@3e {
+            compatible = "awinic,aw3750x_led";
+            aw3750x_gpio_ctrl = <0>;
+            reg = <0x3e>;
+            outp = <0x0E>;
+            outn = <0x0E>;
+            enn-gpio = <&pio 7 0>;
+            enp-gpio = <&pio 1 0>;
+            pinctrl-names = "aw_enn_default", "aw_enn_output_high",
+                            "aw_enn_output_low", "aw_enp_default",
+                            "aw_enp_output_high", "aw_enp_output_low";
+            pinctrl-0 = <&aw_enn_default>;
+            pinctrl-1 = <&aw_enn_output_high>;
+            pinctrl-2 = <&aw_enn_output_low>;
+            pinctrl-3 = <&aw_enp_default>;
+            pinctrl-4 = <&aw_enp_output_high>;
+            pinctrl-5 = <&aw_enp_output_low>;
+
+            aw_lcdb_outp_vreg: enp {
+              label = "outp";
+              regulator-name = "outp";
+              regulator-min-microvolt = <4000000>;
+              regulator-max-microvolt = <6000000>;
+            };
+            aw_lcdb_outn_vreg: enn {
+              label = "outn";
+              regulator-name = "outn";
+              regulator-min-microvolt = <4000000>;
+              regulator-max-microvolt = <6000000>;
+            };
+        };
+    };
-- 
2.41.0




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux