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