1 // SPDX-License-Identifier: GPL-2.0-only 1 // SPDX-License-Identifier: GPL-2.0-only 2 /* !! 2 // Copyright (C) 2021 Stephan Gerhold 3 * Copyright (C) 2021 Stephan Gerhold << 4 */ << 5 3 6 /dts-v1/; 4 /dts-v1/; 7 5 8 #include "msm8916-pm8916.dtsi" 6 #include "msm8916-pm8916.dtsi" 9 #include <dt-bindings/gpio/gpio.h> 7 #include <dt-bindings/gpio/gpio.h> 10 #include <dt-bindings/input/input.h> 8 #include <dt-bindings/input/input.h> 11 #include <dt-bindings/interrupt-controller/irq 9 #include <dt-bindings/interrupt-controller/irq.h> 12 #include <dt-bindings/leds/common.h> 10 #include <dt-bindings/leds/common.h> 13 #include <dt-bindings/sound/apq8016-lpass.h> 11 #include <dt-bindings/sound/apq8016-lpass.h> 14 12 15 /* 13 /* 16 * Note: The original firmware from Huawei can 14 * Note: The original firmware from Huawei can only boot 32-bit kernels. 17 * To boot this device tree using arm64 it is 15 * To boot this device tree using arm64 it is necessary to flash 64-bit TZ/HYP 18 * firmware (e.g. taken from the DragonBoard 4 16 * firmware (e.g. taken from the DragonBoard 410c). 19 * See https://wiki.postmarketos.org/wiki/Huaw 17 * See https://wiki.postmarketos.org/wiki/Huawei_Ascend_G7_(huawei-g7) 20 * for suggested installation instructions. 18 * for suggested installation instructions. 21 */ 19 */ 22 20 23 / { 21 / { 24 model = "Huawei Ascend G7"; 22 model = "Huawei Ascend G7"; 25 compatible = "huawei,g7", "qcom,msm891 23 compatible = "huawei,g7", "qcom,msm8916"; 26 chassis-type = "handset"; 24 chassis-type = "handset"; 27 25 28 aliases { 26 aliases { 29 mmc0 = &sdhc_1; /* eMMC */ !! 27 serial0 = &blsp1_uart2; 30 mmc1 = &sdhc_2; /* SD card */ << 31 serial0 = &blsp_uart2; << 32 }; 28 }; 33 29 34 chosen { 30 chosen { 35 stdout-path = "serial0"; 31 stdout-path = "serial0"; 36 }; 32 }; 37 33 38 gpio-keys { 34 gpio-keys { 39 compatible = "gpio-keys"; 35 compatible = "gpio-keys"; 40 36 41 pinctrl-names = "default"; 37 pinctrl-names = "default"; 42 pinctrl-0 = <&gpio_keys_defaul 38 pinctrl-0 = <&gpio_keys_default>; 43 39 44 label = "GPIO Buttons"; 40 label = "GPIO Buttons"; 45 41 46 button-volume-up { 42 button-volume-up { 47 label = "Volume Up"; 43 label = "Volume Up"; 48 gpios = <&tlmm 107 GPI !! 44 gpios = <&msmgpio 107 GPIO_ACTIVE_LOW>; 49 linux,code = <KEY_VOLU 45 linux,code = <KEY_VOLUMEUP>; 50 }; 46 }; 51 }; 47 }; 52 48 53 leds { 49 leds { 54 compatible = "gpio-leds"; 50 compatible = "gpio-leds"; 55 51 56 pinctrl-names = "default"; 52 pinctrl-names = "default"; 57 pinctrl-0 = <&gpio_leds_defaul 53 pinctrl-0 = <&gpio_leds_default>; 58 54 59 led-0 { 55 led-0 { 60 gpios = <&tlmm 8 GPIO_ !! 56 gpios = <&msmgpio 8 GPIO_ACTIVE_HIGH>; 61 color = <LED_COLOR_ID_ 57 color = <LED_COLOR_ID_RED>; 62 default-state = "off"; 58 default-state = "off"; 63 function = LED_FUNCTIO 59 function = LED_FUNCTION_INDICATOR; 64 }; 60 }; 65 61 66 led-1 { 62 led-1 { 67 gpios = <&tlmm 9 GPIO_ !! 63 gpios = <&msmgpio 9 GPIO_ACTIVE_HIGH>; 68 color = <LED_COLOR_ID_ 64 color = <LED_COLOR_ID_GREEN>; 69 default-state = "off"; 65 default-state = "off"; 70 function = LED_FUNCTIO 66 function = LED_FUNCTION_INDICATOR; 71 }; 67 }; 72 68 73 led-2 { 69 led-2 { 74 gpios = <&tlmm 10 GPIO !! 70 gpios = <&msmgpio 10 GPIO_ACTIVE_HIGH>; 75 color = <LED_COLOR_ID_ 71 color = <LED_COLOR_ID_BLUE>; 76 default-state = "off"; 72 default-state = "off"; 77 function = LED_FUNCTIO 73 function = LED_FUNCTION_INDICATOR; 78 }; 74 }; 79 }; 75 }; 80 76 81 usb_id: usb-id { 77 usb_id: usb-id { 82 compatible = "linux,extcon-usb 78 compatible = "linux,extcon-usb-gpio"; 83 id-gpios = <&tlmm 117 GPIO_ACT !! 79 id-gpio = <&msmgpio 117 GPIO_ACTIVE_HIGH>; 84 pinctrl-names = "default"; 80 pinctrl-names = "default"; 85 pinctrl-0 = <&usb_id_default>; 81 pinctrl-0 = <&usb_id_default>; 86 }; 82 }; 87 }; 83 }; 88 84 89 &blsp_i2c2 { 85 &blsp_i2c2 { 90 status = "okay"; 86 status = "okay"; 91 87 92 magnetometer@c { 88 magnetometer@c { 93 compatible = "asahi-kasei,ak09 89 compatible = "asahi-kasei,ak09911"; 94 reg = <0x0c>; 90 reg = <0x0c>; 95 91 96 vdd-supply = <&pm8916_l17>; 92 vdd-supply = <&pm8916_l17>; 97 vid-supply = <&pm8916_l6>; 93 vid-supply = <&pm8916_l6>; 98 94 99 reset-gpios = <&tlmm 36 GPIO_A !! 95 reset-gpios = <&msmgpio 36 GPIO_ACTIVE_LOW>; 100 96 101 pinctrl-names = "default"; 97 pinctrl-names = "default"; 102 pinctrl-0 = <&mag_reset_defaul 98 pinctrl-0 = <&mag_reset_default>; 103 }; 99 }; 104 100 105 accelerometer@1e { 101 accelerometer@1e { 106 compatible = "kionix,kx023-102 102 compatible = "kionix,kx023-1025"; 107 reg = <0x1e>; 103 reg = <0x1e>; 108 104 109 interrupt-parent = <&tlmm>; !! 105 interrupt-parent = <&msmgpio>; 110 interrupts = <115 IRQ_TYPE_EDG 106 interrupts = <115 IRQ_TYPE_EDGE_RISING>; 111 107 112 vdd-supply = <&pm8916_l17>; 108 vdd-supply = <&pm8916_l17>; 113 vddio-supply = <&pm8916_l6>; 109 vddio-supply = <&pm8916_l6>; 114 110 115 pinctrl-names = "default"; 111 pinctrl-names = "default"; 116 pinctrl-0 = <&accel_irq_defaul 112 pinctrl-0 = <&accel_irq_default>; 117 113 118 mount-matrix = "-1", "0", "0", 114 mount-matrix = "-1", "0", "0", 119 "0", "1", "0", 115 "0", "1", "0", 120 "0", "0", "1"; 116 "0", "0", "1"; 121 }; 117 }; 122 118 123 proximity@39 { 119 proximity@39 { 124 compatible = "avago,apds9930"; 120 compatible = "avago,apds9930"; 125 reg = <0x39>; 121 reg = <0x39>; 126 122 127 interrupt-parent = <&tlmm>; !! 123 interrupt-parent = <&msmgpio>; 128 interrupts = <113 IRQ_TYPE_EDG 124 interrupts = <113 IRQ_TYPE_EDGE_FALLING>; 129 125 130 vdd-supply = <&pm8916_l17>; 126 vdd-supply = <&pm8916_l17>; 131 vddio-supply = <&pm8916_l6>; 127 vddio-supply = <&pm8916_l6>; 132 128 133 led-max-microamp = <100000>; 129 led-max-microamp = <100000>; 134 amstaos,proximity-diodes = <1> 130 amstaos,proximity-diodes = <1>; 135 131 136 pinctrl-names = "default"; 132 pinctrl-names = "default"; 137 pinctrl-0 = <&prox_irq_default 133 pinctrl-0 = <&prox_irq_default>; 138 }; 134 }; 139 135 140 regulator@3e { 136 regulator@3e { 141 compatible = "ti,tps65132"; 137 compatible = "ti,tps65132"; 142 reg = <0x3e>; 138 reg = <0x3e>; 143 139 144 pinctrl-names = "default"; 140 pinctrl-names = "default"; 145 pinctrl-0 = <®_lcd_en_defau 141 pinctrl-0 = <®_lcd_en_default>; 146 142 147 reg_lcd_pos: outp { 143 reg_lcd_pos: outp { 148 regulator-name = "outp 144 regulator-name = "outp"; 149 regulator-min-microvol 145 regulator-min-microvolt = <5400000>; 150 regulator-max-microvol 146 regulator-max-microvolt = <5400000>; 151 enable-gpios = <&tlmm !! 147 enable-gpios = <&msmgpio 97 GPIO_ACTIVE_HIGH>; 152 regulator-active-disch 148 regulator-active-discharge = <1>; 153 }; 149 }; 154 150 155 reg_lcd_neg: outn { 151 reg_lcd_neg: outn { 156 regulator-name = "outn 152 regulator-name = "outn"; 157 regulator-min-microvol 153 regulator-min-microvolt = <5400000>; 158 regulator-max-microvol 154 regulator-max-microvolt = <5400000>; 159 enable-gpios = <&tlmm !! 155 enable-gpios = <&msmgpio 32 GPIO_ACTIVE_HIGH>; 160 regulator-active-disch 156 regulator-active-discharge = <1>; 161 }; 157 }; 162 }; 158 }; 163 }; 159 }; 164 160 165 &blsp_i2c5 { 161 &blsp_i2c5 { 166 status = "okay"; 162 status = "okay"; 167 163 168 rmi4@70 { 164 rmi4@70 { 169 compatible = "syna,rmi4-i2c"; 165 compatible = "syna,rmi4-i2c"; 170 reg = <0x70>; 166 reg = <0x70>; 171 #address-cells = <1>; 167 #address-cells = <1>; 172 #size-cells = <0>; 168 #size-cells = <0>; 173 169 174 interrupt-parent = <&tlmm>; !! 170 interrupt-parent = <&msmgpio>; 175 interrupts = <13 IRQ_TYPE_EDGE 171 interrupts = <13 IRQ_TYPE_EDGE_FALLING>; 176 172 177 vdd-supply = <&pm8916_l17>; 173 vdd-supply = <&pm8916_l17>; 178 vio-supply = <&pm8916_l16>; 174 vio-supply = <&pm8916_l16>; 179 175 180 pinctrl-names = "default"; 176 pinctrl-names = "default"; 181 pinctrl-0 = <&ts_irq_default>; 177 pinctrl-0 = <&ts_irq_default>; 182 178 183 syna,startup-delay-ms = <100>; 179 syna,startup-delay-ms = <100>; 184 180 185 rmi4-f01@1 { 181 rmi4-f01@1 { 186 reg = <0x1>; 182 reg = <0x1>; 187 syna,nosleep-mode = <1 183 syna,nosleep-mode = <1>; /* Allow sleeping */ 188 }; 184 }; 189 185 190 rmi4-f11@11 { 186 rmi4-f11@11 { 191 reg = <0x11>; 187 reg = <0x11>; 192 syna,sensor-type = <1> 188 syna,sensor-type = <1>; /* Touchscreen */ 193 }; 189 }; 194 }; 190 }; 195 }; 191 }; 196 192 197 &blsp_i2c6 { 193 &blsp_i2c6 { 198 status = "okay"; 194 status = "okay"; 199 195 200 nfc@28 { 196 nfc@28 { 201 compatible = "nxp,pn547", "nxp 197 compatible = "nxp,pn547", "nxp,nxp-nci-i2c"; 202 reg = <0x28>; 198 reg = <0x28>; 203 199 204 interrupt-parent = <&tlmm>; !! 200 interrupt-parent = <&msmgpio>; 205 interrupts = <21 IRQ_TYPE_EDGE 201 interrupts = <21 IRQ_TYPE_EDGE_RISING>; 206 202 207 enable-gpios = <&tlmm 20 GPIO_ !! 203 enable-gpios = <&msmgpio 20 GPIO_ACTIVE_HIGH>; 208 firmware-gpios = <&tlmm 2 GPIO !! 204 firmware-gpios = <&msmgpio 2 GPIO_ACTIVE_HIGH>; 209 205 210 pinctrl-names = "default"; 206 pinctrl-names = "default"; 211 pinctrl-0 = <&nfc_default>; 207 pinctrl-0 = <&nfc_default>; 212 }; 208 }; 213 }; 209 }; 214 210 215 &blsp_uart2 { !! 211 &blsp1_uart2 { 216 status = "okay"; 212 status = "okay"; 217 }; 213 }; 218 214 219 &lpass { 215 &lpass { 220 status = "okay"; 216 status = "okay"; 221 }; 217 }; 222 218 223 &lpass_codec { << 224 status = "okay"; << 225 }; << 226 << 227 &pm8916_codec { << 228 status = "okay"; << 229 qcom,micbias-lvl = <2800>; << 230 qcom,mbhc-vthreshold-low = <75 150 237 << 231 qcom,mbhc-vthreshold-high = <75 150 23 << 232 qcom,hphl-jack-type-normally-open; << 233 }; << 234 << 235 &pm8916_l8 { << 236 regulator-min-microvolt = <2950000>; << 237 regulator-max-microvolt = <2950000>; << 238 }; << 239 << 240 &pm8916_resin { 219 &pm8916_resin { 241 status = "okay"; 220 status = "okay"; 242 linux,code = <KEY_VOLUMEDOWN>; 221 linux,code = <KEY_VOLUMEDOWN>; 243 }; 222 }; 244 223 245 &pm8916_rpm_regulators { !! 224 &pm8916_vib { 246 pm8916_l16: l16 { !! 225 status = "okay"; 247 regulator-min-microvolt = <180 << 248 regulator-max-microvolt = <180 << 249 }; << 250 << 251 pm8916_l17: l17 { << 252 regulator-min-microvolt = <285 << 253 regulator-max-microvolt = <285 << 254 }; << 255 }; 226 }; 256 227 257 &pm8916_vib { !! 228 &pronto { 258 status = "okay"; 229 status = "okay"; 259 }; 230 }; 260 231 261 &sdhc_1 { 232 &sdhc_1 { 262 status = "okay"; 233 status = "okay"; >> 234 >> 235 pinctrl-names = "default", "sleep"; >> 236 pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on>; >> 237 pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off>; 263 }; 238 }; 264 239 265 &sdhc_2 { 240 &sdhc_2 { 266 status = "okay"; 241 status = "okay"; 267 242 268 pinctrl-names = "default", "sleep"; 243 pinctrl-names = "default", "sleep"; 269 pinctrl-0 = <&sdc2_default &sdc2_cd_de !! 244 pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdhc2_cd_default>; 270 pinctrl-1 = <&sdc2_sleep &sdc2_cd_defa !! 245 pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off &sdhc2_cd_default>; 271 246 272 /* 247 /* 273 * The Huawei device tree sets cd-gpio !! 248 * The Huawei device tree sets cd-gpios = <&msmgpio 38 GPIO_ACTIVE_HIGH>. 274 * However, gpio38 does not change its 249 * However, gpio38 does not change its state when inserting/removing the 275 * SD card, it's just low all the time 250 * SD card, it's just low all the time. The Huawei kernel seems to use 276 * polling for SD card detection inste 251 * polling for SD card detection instead. 277 * 252 * 278 * However, looking closer at the GPIO 253 * However, looking closer at the GPIO debug output it turns out that 279 * gpio56 switches its state when inse 254 * gpio56 switches its state when inserting/removing the SD card. 280 * It behaves just like gpio38 normall 255 * It behaves just like gpio38 normally does. Usually GPIO56 is used as 281 * "UIM2_PRESENT", i.e. to check if a 256 * "UIM2_PRESENT", i.e. to check if a second SIM card is inserted. 282 * Maybe Huawei decided to replace the 257 * Maybe Huawei decided to replace the second SIM card slot with the 283 * SD card slot and forgot to re-route 258 * SD card slot and forgot to re-route to gpio38. 284 */ 259 */ 285 cd-gpios = <&tlmm 56 GPIO_ACTIVE_LOW>; !! 260 cd-gpios = <&msmgpio 56 GPIO_ACTIVE_LOW>; 286 }; 261 }; 287 262 288 &sound { 263 &sound { 289 status = "okay"; 264 status = "okay"; 290 265 291 model = "msm8916"; 266 model = "msm8916"; 292 audio-routing = 267 audio-routing = 293 "AMIC1", "MIC BIAS External1", 268 "AMIC1", "MIC BIAS External1", 294 "AMIC2", "MIC BIAS External2", 269 "AMIC2", "MIC BIAS External2", 295 "AMIC3", "MIC BIAS External1"; 270 "AMIC3", "MIC BIAS External1"; 296 271 297 pinctrl-names = "default", "sleep"; 272 pinctrl-names = "default", "sleep"; 298 pinctrl-0 = <&cdc_pdm_default>; !! 273 pinctrl-0 = <&cdc_pdm_lines_act>; 299 pinctrl-1 = <&cdc_pdm_sleep>; !! 274 pinctrl-1 = <&cdc_pdm_lines_sus>; 300 275 301 primary-dai-link { 276 primary-dai-link { 302 link-name = "WCD"; 277 link-name = "WCD"; 303 cpu { 278 cpu { 304 sound-dai = <&lpass MI 279 sound-dai = <&lpass MI2S_PRIMARY>; 305 }; 280 }; 306 codec { 281 codec { 307 sound-dai = <&lpass_co !! 282 sound-dai = <&lpass_codec 0>, <&wcd_codec 0>; 308 }; 283 }; 309 }; 284 }; 310 285 311 tertiary-dai-link { 286 tertiary-dai-link { 312 link-name = "WCD-Capture"; 287 link-name = "WCD-Capture"; 313 cpu { 288 cpu { 314 sound-dai = <&lpass MI 289 sound-dai = <&lpass MI2S_TERTIARY>; 315 }; 290 }; 316 codec { 291 codec { 317 sound-dai = <&lpass_co !! 292 sound-dai = <&lpass_codec 1>, <&wcd_codec 1>; 318 }; 293 }; 319 }; 294 }; 320 }; 295 }; 321 296 322 &usb { 297 &usb { 323 status = "okay"; 298 status = "okay"; 324 extcon = <&usb_id>, <&usb_id>; 299 extcon = <&usb_id>, <&usb_id>; 325 }; 300 }; 326 301 327 &usb_hs_phy { 302 &usb_hs_phy { 328 extcon = <&usb_id>; 303 extcon = <&usb_id>; 329 }; 304 }; 330 305 331 &venus { !! 306 &wcd_codec { 332 status = "okay"; !! 307 qcom,micbias-lvl = <2800>; >> 308 qcom,mbhc-vthreshold-low = <75 150 237 450 500>; >> 309 qcom,mbhc-vthreshold-high = <75 150 237 450 500>; >> 310 qcom,hphl-jack-type-normally-open; 333 }; 311 }; 334 312 335 &venus_mem { !! 313 &smd_rpm_regulators { 336 status = "okay"; !! 314 vdd_l1_l2_l3-supply = <&pm8916_s3>; 337 }; !! 315 vdd_l4_l5_l6-supply = <&pm8916_s4>; >> 316 vdd_l7-supply = <&pm8916_s4>; 338 317 339 &wcnss { !! 318 s3 { 340 status = "okay"; !! 319 regulator-min-microvolt = <1200000>; 341 }; !! 320 regulator-max-microvolt = <1300000>; >> 321 }; 342 322 343 &wcnss_iris { !! 323 s4 { 344 compatible = "qcom,wcn3620"; !! 324 regulator-min-microvolt = <1800000>; 345 }; !! 325 regulator-max-microvolt = <2100000>; >> 326 }; 346 327 347 &wcnss_mem { !! 328 l1 { 348 status = "okay"; !! 329 regulator-min-microvolt = <1225000>; >> 330 regulator-max-microvolt = <1225000>; >> 331 }; >> 332 >> 333 l2 { >> 334 regulator-min-microvolt = <1200000>; >> 335 regulator-max-microvolt = <1200000>; >> 336 }; >> 337 >> 338 l4 { >> 339 regulator-min-microvolt = <2050000>; >> 340 regulator-max-microvolt = <2050000>; >> 341 }; >> 342 >> 343 l5 { >> 344 regulator-min-microvolt = <1800000>; >> 345 regulator-max-microvolt = <1800000>; >> 346 }; >> 347 >> 348 l6 { >> 349 regulator-min-microvolt = <1800000>; >> 350 regulator-max-microvolt = <1800000>; >> 351 }; >> 352 >> 353 l7 { >> 354 regulator-min-microvolt = <1800000>; >> 355 regulator-max-microvolt = <1800000>; >> 356 }; >> 357 >> 358 l8 { >> 359 regulator-min-microvolt = <2950000>; >> 360 regulator-max-microvolt = <2950000>; >> 361 }; >> 362 >> 363 l9 { >> 364 regulator-min-microvolt = <3300000>; >> 365 regulator-max-microvolt = <3300000>; >> 366 }; >> 367 >> 368 l10 { >> 369 regulator-min-microvolt = <2700000>; >> 370 regulator-max-microvolt = <2800000>; >> 371 }; >> 372 >> 373 l11 { >> 374 regulator-min-microvolt = <1800000>; >> 375 regulator-max-microvolt = <2950000>; >> 376 regulator-allow-set-load; >> 377 regulator-system-load = <200000>; >> 378 }; >> 379 >> 380 l12 { >> 381 regulator-min-microvolt = <1800000>; >> 382 regulator-max-microvolt = <2950000>; >> 383 }; >> 384 >> 385 l13 { >> 386 regulator-min-microvolt = <3075000>; >> 387 regulator-max-microvolt = <3075000>; >> 388 }; >> 389 >> 390 l14 { >> 391 regulator-min-microvolt = <1800000>; >> 392 regulator-max-microvolt = <3300000>; >> 393 }; >> 394 >> 395 l15 { >> 396 regulator-min-microvolt = <1800000>; >> 397 regulator-max-microvolt = <3300000>; >> 398 }; >> 399 >> 400 l16 { >> 401 regulator-min-microvolt = <1800000>; >> 402 regulator-max-microvolt = <1800000>; >> 403 }; >> 404 >> 405 l17 { >> 406 regulator-min-microvolt = <2850000>; >> 407 regulator-max-microvolt = <2850000>; >> 408 }; >> 409 >> 410 l18 { >> 411 regulator-min-microvolt = <2700000>; >> 412 regulator-max-microvolt = <2700000>; >> 413 }; 349 }; 414 }; 350 415 351 &tlmm { !! 416 &msmgpio { 352 accel_irq_default: accel-irq-default-s !! 417 accel_irq_default: accel-irq-default { 353 pins = "gpio115"; 418 pins = "gpio115"; 354 function = "gpio"; 419 function = "gpio"; 355 420 356 drive-strength = <2>; 421 drive-strength = <2>; 357 bias-disable; 422 bias-disable; 358 }; 423 }; 359 424 360 gpio_keys_default: gpio-keys-default-s !! 425 gpio_keys_default: gpio-keys-default { 361 pins = "gpio107"; 426 pins = "gpio107"; 362 function = "gpio"; 427 function = "gpio"; 363 428 364 drive-strength = <2>; 429 drive-strength = <2>; 365 bias-pull-up; 430 bias-pull-up; 366 }; 431 }; 367 432 368 gpio_leds_default: gpio-leds-default-s !! 433 gpio_leds_default: gpio-leds-default { 369 pins = "gpio8", "gpio9", "gpio 434 pins = "gpio8", "gpio9", "gpio10"; 370 function = "gpio"; 435 function = "gpio"; 371 436 372 drive-strength = <2>; 437 drive-strength = <2>; 373 bias-disable; 438 bias-disable; 374 }; 439 }; 375 440 376 nfc_default: nfc-default-state { !! 441 nfc_default: nfc-default { 377 pins = "gpio2", "gpio20", "gpi 442 pins = "gpio2", "gpio20", "gpio21"; 378 function = "gpio"; 443 function = "gpio"; 379 444 380 drive-strength = <2>; 445 drive-strength = <2>; 381 bias-disable; 446 bias-disable; 382 }; 447 }; 383 448 384 mag_reset_default: mag-reset-default-s !! 449 mag_reset_default: mag-reset-default { 385 pins = "gpio36"; 450 pins = "gpio36"; 386 function = "gpio"; 451 function = "gpio"; 387 452 388 drive-strength = <2>; 453 drive-strength = <2>; 389 bias-disable; 454 bias-disable; 390 }; 455 }; 391 456 392 prox_irq_default: prox-irq-default-sta !! 457 prox_irq_default: prox-irq-default { 393 pins = "gpio113"; 458 pins = "gpio113"; 394 function = "gpio"; 459 function = "gpio"; 395 460 396 drive-strength = <2>; 461 drive-strength = <2>; 397 bias-disable; 462 bias-disable; 398 }; 463 }; 399 464 400 reg_lcd_en_default: reg-lcd-en-default !! 465 reg_lcd_en_default: reg-lcd-en-default { 401 pins = "gpio32", "gpio97"; 466 pins = "gpio32", "gpio97"; 402 function = "gpio"; 467 function = "gpio"; 403 468 404 drive-strength = <2>; 469 drive-strength = <2>; 405 bias-disable; 470 bias-disable; 406 }; 471 }; 407 472 408 sdc2_cd_default: sdc2-cd-default-state !! 473 sdhc2_cd_default: sdhc2-cd-default { 409 pins = "gpio56"; 474 pins = "gpio56"; 410 function = "gpio"; 475 function = "gpio"; 411 476 412 drive-strength = <2>; 477 drive-strength = <2>; 413 bias-disable; 478 bias-disable; 414 }; 479 }; 415 480 416 ts_irq_default: ts-irq-default-state { !! 481 ts_irq_default: ts-irq-default { 417 pins = "gpio13"; 482 pins = "gpio13"; 418 function = "gpio"; 483 function = "gpio"; 419 484 420 drive-strength = <2>; 485 drive-strength = <2>; 421 bias-disable; 486 bias-disable; 422 }; 487 }; 423 488 424 usb_id_default: usb-id-default-state { !! 489 usb_id_default: usb-id-default { 425 pins = "gpio117"; 490 pins = "gpio117"; 426 function = "gpio"; 491 function = "gpio"; 427 492 428 drive-strength = <8>; 493 drive-strength = <8>; 429 bias-pull-up; 494 bias-pull-up; 430 }; 495 }; 431 }; 496 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.