Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

dt-bindings: regulator: Add Fitipower FP9931/JD9930

Document the FP9931/JD9930. As the FP9931 is a clear subset of the JD9930,
define it as a fallback compatible. GPIO names are same as in the datasheet
except for the EN pad which is described as "enable".

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
Link: https://patch.msgid.link/20251115-fp9931-submit-v3-2-92f5d0772b68@kemnade.info
Signed-off-by: Mark Brown <broonie@kernel.org>

authored by

Andreas Kemnade and committed by
Mark Brown
80bbdefd 0d360d54

+110
+110
Documentation/devicetree/bindings/regulator/fitipower,fp9931.yaml
··· 1 + # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2 + %YAML 1.2 3 + --- 4 + $id: http://devicetree.org/schemas/regulator/fitipower,fp9931.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: FitiPower FP9931/JD9930 Power Management Integrated Circuit 8 + 9 + maintainers: 10 + - Andreas Kemnade <andreas@kemnade.info> 11 + 12 + description: 13 + FP9931 is a Power Management IC to provide Power for EPDs with one 3.3V 14 + switch, 2 symmetric LDOs behind 2 DC/DC converters, and one unsymmetric 15 + regulator for a compensation voltage. 16 + JD9930 has in addition some kind of night mode. 17 + 18 + properties: 19 + compatible: 20 + oneOf: 21 + - const: fitipower,fp9931 22 + 23 + - items: 24 + - const: fitipower,jd9930 25 + - const: fitipower,fp9931 26 + 27 + reg: 28 + maxItems: 1 29 + 30 + enable-gpios: 31 + maxItems: 1 32 + 33 + pg-gpios: 34 + maxItems: 1 35 + 36 + en-ts-gpios: 37 + maxItems: 1 38 + 39 + xon-gpios: 40 + maxItems: 1 41 + 42 + vin-supply: 43 + description: 44 + Supply for the whole chip. Some vendor kernels and devicetrees 45 + declare this as a non-existing GPIO named "pwrall". 46 + 47 + fitipower,tdly-ms: 48 + description: 49 + Power up soft start delay settings tDLY1-4 bitfields in the 50 + POWERON_DELAY register 51 + items: 52 + - enum: [0, 1, 2, 4] 53 + - enum: [0, 1, 2, 4] 54 + - enum: [0, 1, 2, 4] 55 + - enum: [0, 1, 2, 4] 56 + 57 + regulators: 58 + type: object 59 + additionalProperties: false 60 + patternProperties: 61 + "^(vcom|vposneg|v3p3)$": 62 + unevaluatedProperties: false 63 + type: object 64 + $ref: /schemas/regulator/regulator.yaml 65 + 66 + required: 67 + - compatible 68 + - reg 69 + - pg-gpios 70 + - enable-gpios 71 + 72 + additionalProperties: false 73 + 74 + examples: 75 + - | 76 + #include <dt-bindings/gpio/gpio.h> 77 + i2c { 78 + #address-cells = <1>; 79 + #size-cells = <0>; 80 + 81 + pmic@18 { 82 + compatible = "fitipower,fp9931"; 83 + reg = <0x18>; 84 + pinctrl-names = "default"; 85 + pinctrl-0 = <&pinctrl_fp9931_gpio>; 86 + vin-supply = <&epd_pmic_supply>; 87 + pg-gpios = <&gpio2 7 GPIO_ACTIVE_HIGH>; 88 + en-ts-gpios = <&gpio2 9 GPIO_ACTIVE_HIGH>; 89 + enable-gpios = <&gpio2 8 GPIO_ACTIVE_HIGH>; 90 + fitipower,tdly-ms = <2 2 4 4>; 91 + 92 + regulators { 93 + vcom { 94 + regulator-name = "vcom"; 95 + regulator-min-microvolt = <2352840>; 96 + regulator-max-microvolt = <2352840>; 97 + }; 98 + 99 + vposneg { 100 + regulator-name = "vposneg"; 101 + regulator-min-microvolt = <15060000>; 102 + regulator-max-microvolt = <15060000>; 103 + }; 104 + 105 + v3p3 { 106 + regulator-name = "v3p3"; 107 + }; 108 + }; 109 + }; 110 + };