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

dt-bindings: mfd: Add bindings child nodes for the Mediatek MT6360

Add bindings child nodes for the Mediatek MT6360

Signed-off-by: Gene Chen <gene_chen@richtek.com>
Link: https://lore.kernel.org/all/YmqTzlrVL5KaVPuz@robh.at.kernel.org/
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220516062127.99647-1-gene.chen.richtek@gmail.com

authored by

Gene Chen and committed by
Rob Herring
57274439 52bf4b71

+189
+189
Documentation/devicetree/bindings/mfd/mediatek,mt6360.yaml
··· 37 37 description: 38 38 The first cell is the IRQ number. 39 39 40 + regulators: 41 + $ref: /schemas/regulator/mt6360-regulator.yaml# 42 + 43 + charger: 44 + $ref: /schemas/power/supply/mt6360_charger.yaml# 45 + 46 + tcpc: 47 + $ref: /schemas/usb/mediatek,mt6360-tcpc.yaml# 48 + 49 + led-controller: 50 + $ref: /schemas/leds/leds-mt6360.yaml# 51 + 40 52 required: 41 53 - compatible 42 54 - reg ··· 63 51 - | 64 52 #include <dt-bindings/interrupt-controller/irq.h> 65 53 #include <dt-bindings/regulator/mediatek,mt6360-regulator.h> 54 + #include <dt-bindings/leds/common.h> 55 + #include <dt-bindings/usb/pd.h> 66 56 i2c { 67 57 #address-cells = <1>; 68 58 #size-cells = <0>; ··· 77 63 interrupt-names = "IRQB"; 78 64 interrupt-controller; 79 65 #interrupt-cells = <1>; 66 + 67 + mt6360_charger: charger { 68 + compatible = "mediatek,mt6360-chg"; 69 + richtek,vinovp-microvolt = <14500000>; 70 + 71 + otg_vbus_regulator: usb-otg-vbus-regulator { 72 + regulator-compatible = "usb-otg-vbus"; 73 + regulator-name = "usb-otg-vbus"; 74 + regulator-min-microvolt = <4425000>; 75 + regulator-max-microvolt = <5825000>; 76 + }; 77 + }; 78 + 79 + led-controller { 80 + compatible = "mediatek,mt6360-led"; 81 + #address-cells = <1>; 82 + #size-cells = <0>; 83 + 84 + multi-led@0 { 85 + reg = <0>; 86 + function = LED_FUNCTION_INDICATOR; 87 + color = <LED_COLOR_ID_RGB>; 88 + led-max-microamp = <24000>; 89 + #address-cells = <1>; 90 + #size-cells = <0>; 91 + led@0 { 92 + reg = <0>; 93 + color = <LED_COLOR_ID_RED>; 94 + }; 95 + led@1 { 96 + reg = <1>; 97 + color = <LED_COLOR_ID_GREEN>; 98 + }; 99 + led@2 { 100 + reg = <2>; 101 + color = <LED_COLOR_ID_BLUE>; 102 + }; 103 + }; 104 + led@3 { 105 + reg = <3>; 106 + function = LED_FUNCTION_INDICATOR; 107 + color = <LED_COLOR_ID_WHITE>; 108 + led-max-microamp = <150000>; 109 + }; 110 + led@4 { 111 + reg = <4>; 112 + function = LED_FUNCTION_FLASH; 113 + color = <LED_COLOR_ID_WHITE>; 114 + function-enumerator = <1>; 115 + led-max-microamp = <200000>; 116 + flash-max-microamp = <500000>; 117 + flash-max-timeout-us = <1024000>; 118 + }; 119 + led@5 { 120 + reg = <5>; 121 + function = LED_FUNCTION_FLASH; 122 + color = <LED_COLOR_ID_WHITE>; 123 + function-enumerator = <2>; 124 + led-max-microamp = <200000>; 125 + flash-max-microamp = <500000>; 126 + flash-max-timeout-us = <1024000>; 127 + }; 128 + }; 129 + 130 + regulators { 131 + compatible = "mediatek,mt6360-regulator"; 132 + LDO_VIN3-supply = <&BUCK2>; 133 + buck1 { 134 + regulator-compatible = "BUCK1"; 135 + regulator-name = "mt6360,buck1"; 136 + regulator-min-microvolt = <300000>; 137 + regulator-max-microvolt = <1300000>; 138 + regulator-allowed-modes = <MT6360_OPMODE_NORMAL 139 + MT6360_OPMODE_LP 140 + MT6360_OPMODE_ULP>; 141 + }; 142 + BUCK2: buck2 { 143 + regulator-compatible = "BUCK2"; 144 + regulator-name = "mt6360,buck2"; 145 + regulator-min-microvolt = <300000>; 146 + regulator-max-microvolt = <1300000>; 147 + regulator-allowed-modes = <MT6360_OPMODE_NORMAL 148 + MT6360_OPMODE_LP 149 + MT6360_OPMODE_ULP>; 150 + }; 151 + ldo6 { 152 + regulator-compatible = "LDO6"; 153 + regulator-name = "mt6360,ldo6"; 154 + regulator-min-microvolt = <500000>; 155 + regulator-max-microvolt = <2100000>; 156 + regulator-allowed-modes = <MT6360_OPMODE_NORMAL 157 + MT6360_OPMODE_LP>; 158 + }; 159 + ldo7 { 160 + regulator-compatible = "LDO7"; 161 + regulator-name = "mt6360,ldo7"; 162 + regulator-min-microvolt = <500000>; 163 + regulator-max-microvolt = <2100000>; 164 + regulator-allowed-modes = <MT6360_OPMODE_NORMAL 165 + MT6360_OPMODE_LP>; 166 + }; 167 + ldo1 { 168 + regulator-compatible = "LDO1"; 169 + regulator-name = "mt6360,ldo1"; 170 + regulator-min-microvolt = <1200000>; 171 + regulator-max-microvolt = <3600000>; 172 + regulator-allowed-modes = <MT6360_OPMODE_NORMAL 173 + MT6360_OPMODE_LP>; 174 + }; 175 + ldo2 { 176 + regulator-compatible = "LDO2"; 177 + regulator-name = "mt6360,ldo2"; 178 + regulator-min-microvolt = <1200000>; 179 + regulator-max-microvolt = <3600000>; 180 + regulator-allowed-modes = <MT6360_OPMODE_NORMAL 181 + MT6360_OPMODE_LP>; 182 + }; 183 + ldo3 { 184 + regulator-compatible = "LDO3"; 185 + regulator-name = "mt6360,ldo3"; 186 + regulator-min-microvolt = <1200000>; 187 + regulator-max-microvolt = <3600000>; 188 + regulator-allowed-modes = <MT6360_OPMODE_NORMAL 189 + MT6360_OPMODE_LP>; 190 + }; 191 + ldo5 { 192 + regulator-compatible = "LDO5"; 193 + regulator-name = "mt6360,ldo5"; 194 + regulator-min-microvolt = <2700000>; 195 + regulator-max-microvolt = <3600000>; 196 + regulator-allowed-modes = <MT6360_OPMODE_NORMAL 197 + MT6360_OPMODE_LP>; 198 + }; 199 + }; 200 + 201 + tcpc { 202 + compatible = "mediatek,mt6360-tcpc"; 203 + interrupts-extended = <&gpio26 3 IRQ_TYPE_LEVEL_LOW>; 204 + interrupt-names = "PD_IRQB"; 205 + 206 + connector { 207 + compatible = "usb-c-connector"; 208 + label = "USB-C"; 209 + data-role = "dual"; 210 + power-role = "dual"; 211 + try-power-role = "sink"; 212 + source-pdos = <PDO_FIXED(5000, 1000, PDO_FIXED_DUAL_ROLE | PDO_FIXED_DATA_SWAP)>; 213 + sink-pdos = <PDO_FIXED(5000, 2000, PDO_FIXED_DUAL_ROLE | PDO_FIXED_DATA_SWAP)>; 214 + op-sink-microwatt = <10000000>; 215 + 216 + ports { 217 + #address-cells = <1>; 218 + #size-cells = <0>; 219 + 220 + port@0 { 221 + reg = <0>; 222 + endpoint { 223 + remote-endpoint = <&usb_hs>; 224 + }; 225 + }; 226 + port@1 { 227 + reg = <1>; 228 + endpoint { 229 + remote-endpoint = <&usb_ss>; 230 + }; 231 + }; 232 + port@2 { 233 + reg = <2>; 234 + endpoint { 235 + remote-endpoint = <&dp_aux>; 236 + }; 237 + }; 238 + }; 239 + }; 240 + }; 80 241 }; 81 242 };