1690e367eSAndré Apitzsch// SPDX-License-Identifier: BSD-3-Clause 2690e367eSAndré Apitzsch 3690e367eSAndré Apitzsch/dts-v1/; 4690e367eSAndré Apitzsch 5690e367eSAndré Apitzsch#include "qcom-msm8226.dtsi" 6690e367eSAndré Apitzsch#include "pm8226.dtsi" 7690e367eSAndré Apitzsch 8690e367eSAndré Apitzsch/delete-node/ &smem_region; 9690e367eSAndré Apitzsch 10690e367eSAndré Apitzsch/ { 11690e367eSAndré Apitzsch model = "Motorola Moto G 4G (2013)"; 12690e367eSAndré Apitzsch compatible = "motorola,peregrine", "qcom,msm8926", "qcom,msm8226"; 13690e367eSAndré Apitzsch chassis-type = "handset"; 14690e367eSAndré Apitzsch 15690e367eSAndré Apitzsch aliases { 16690e367eSAndré Apitzsch mmc0 = &sdhc_1; /* SDC1 eMMC slot */ 17690e367eSAndré Apitzsch mmc1 = &sdhc_2; /* SDC2 SD card slot */ 18690e367eSAndré Apitzsch }; 19690e367eSAndré Apitzsch 20690e367eSAndré Apitzsch chosen { 21690e367eSAndré Apitzsch #address-cells = <1>; 22690e367eSAndré Apitzsch #size-cells = <1>; 23690e367eSAndré Apitzsch ranges; 24690e367eSAndré Apitzsch 25690e367eSAndré Apitzsch framebuffer0: framebuffer@3200000 { 26690e367eSAndré Apitzsch compatible = "simple-framebuffer"; 27690e367eSAndré Apitzsch reg = <0x03200000 0x800000>; 28690e367eSAndré Apitzsch width = <720>; 29690e367eSAndré Apitzsch height = <1280>; 30690e367eSAndré Apitzsch stride = <(720 * 3)>; 31690e367eSAndré Apitzsch format = "r8g8b8"; 32690e367eSAndré Apitzsch }; 33690e367eSAndré Apitzsch }; 34690e367eSAndré Apitzsch 35690e367eSAndré Apitzsch gpio-keys { 36690e367eSAndré Apitzsch compatible = "gpio-keys"; 37690e367eSAndré Apitzsch 38690e367eSAndré Apitzsch event-hall-sensor { 39690e367eSAndré Apitzsch label = "Hall Effect Sensor"; 40690e367eSAndré Apitzsch gpios = <&tlmm 51 GPIO_ACTIVE_LOW>; 41690e367eSAndré Apitzsch linux,input-type = <EV_SW>; 42690e367eSAndré Apitzsch linux,code = <SW_LID>; 43690e367eSAndré Apitzsch linux,can-disable; 44690e367eSAndré Apitzsch }; 45690e367eSAndré Apitzsch 46690e367eSAndré Apitzsch key-volume-up { 47690e367eSAndré Apitzsch label = "Volume Up"; 48690e367eSAndré Apitzsch gpios = <&tlmm 106 GPIO_ACTIVE_LOW>; 49690e367eSAndré Apitzsch linux,code = <KEY_VOLUMEUP>; 50690e367eSAndré Apitzsch debounce-interval = <15>; 51690e367eSAndré Apitzsch }; 52690e367eSAndré Apitzsch }; 53690e367eSAndré Apitzsch 54690e367eSAndré Apitzsch reserved-memory { 55690e367eSAndré Apitzsch #address-cells = <1>; 56690e367eSAndré Apitzsch #size-cells = <1>; 57690e367eSAndré Apitzsch ranges; 58690e367eSAndré Apitzsch 59690e367eSAndré Apitzsch framebuffer@3200000 { 60690e367eSAndré Apitzsch reg = <0x03200000 0x800000>; 61690e367eSAndré Apitzsch no-map; 62690e367eSAndré Apitzsch }; 63690e367eSAndré Apitzsch 64690e367eSAndré Apitzsch smem_region: smem@fa00000 { 65690e367eSAndré Apitzsch reg = <0x0fa00000 0x100000>; 66690e367eSAndré Apitzsch no-map; 67690e367eSAndré Apitzsch }; 68690e367eSAndré Apitzsch }; 69690e367eSAndré Apitzsch}; 70690e367eSAndré Apitzsch 7165ec35baSAndré Apitzsch&blsp1_i2c2 { 7265ec35baSAndré Apitzsch clock-frequency = <100000>; 73690e367eSAndré Apitzsch status = "okay"; 74690e367eSAndré Apitzsch 7565ec35baSAndré Apitzsch magnetometer@c { 7665ec35baSAndré Apitzsch compatible = "asahi-kasei,ak8963"; 7765ec35baSAndré Apitzsch reg = <0xc>; 7865ec35baSAndré Apitzsch interrupts-extended = <&tlmm 38 IRQ_TYPE_EDGE_FALLING>; 7965ec35baSAndré Apitzsch reset-gpios = <&tlmm 62 GPIO_ACTIVE_LOW>; 8065ec35baSAndré Apitzsch vdd-supply = <&pm8226_l19>; 8165ec35baSAndré Apitzsch pinctrl-0 = <&mag_int_default &mag_reset_default>; 8265ec35baSAndré Apitzsch pinctrl-names = "default"; 8365ec35baSAndré Apitzsch }; 8465ec35baSAndré Apitzsch 8565ec35baSAndré Apitzsch accelerometer@18 { 8665ec35baSAndré Apitzsch compatible = "st,lis3dh-accel"; 8765ec35baSAndré Apitzsch reg = <0x18>; 8865ec35baSAndré Apitzsch interrupts-extended = <&tlmm 1 IRQ_TYPE_EDGE_FALLING>; 8965ec35baSAndré Apitzsch vdd-supply = <&pm8226_l19>; 9065ec35baSAndré Apitzsch pinctrl-0 = <&accel_int_default>; 9165ec35baSAndré Apitzsch pinctrl-names = "default"; 9265ec35baSAndré Apitzsch st,drdy-int-pin = <1>; 9365ec35baSAndré Apitzsch }; 9465ec35baSAndré Apitzsch}; 9565ec35baSAndré Apitzsch 9665ec35baSAndré Apitzsch&blsp1_i2c3 { 9765ec35baSAndré Apitzsch clock-frequency = <400000>; 9865ec35baSAndré Apitzsch status = "okay"; 9965ec35baSAndré Apitzsch 10065ec35baSAndré Apitzsch regulator@3e { 10165ec35baSAndré Apitzsch compatible = "ti,tps65132"; 10265ec35baSAndré Apitzsch reg = <0x3e>; 10365ec35baSAndré Apitzsch pinctrl-0 = <®_lcd_default>; 10465ec35baSAndré Apitzsch pinctrl-names = "default"; 10565ec35baSAndré Apitzsch 10665ec35baSAndré Apitzsch reg_lcd_pos: outp { 10765ec35baSAndré Apitzsch regulator-name = "outp"; 10865ec35baSAndré Apitzsch regulator-min-microvolt = <4000000>; 10965ec35baSAndré Apitzsch regulator-max-microvolt = <6000000>; 11065ec35baSAndré Apitzsch regulator-active-discharge = <1>; 11165ec35baSAndré Apitzsch regulator-boot-on; 11265ec35baSAndré Apitzsch enable-gpios = <&tlmm 31 GPIO_ACTIVE_HIGH>; 11365ec35baSAndré Apitzsch }; 11465ec35baSAndré Apitzsch 11565ec35baSAndré Apitzsch reg_lcd_neg: outn { 11665ec35baSAndré Apitzsch regulator-name = "outn"; 11765ec35baSAndré Apitzsch regulator-min-microvolt = <4000000>; 11865ec35baSAndré Apitzsch regulator-max-microvolt = <6000000>; 11965ec35baSAndré Apitzsch regulator-active-discharge = <1>; 12065ec35baSAndré Apitzsch regulator-boot-on; 12165ec35baSAndré Apitzsch enable-gpios = <&tlmm 33 GPIO_ACTIVE_HIGH>; 12265ec35baSAndré Apitzsch }; 12365ec35baSAndré Apitzsch }; 12465ec35baSAndré Apitzsch 125690e367eSAndré Apitzsch sensor@48 { 126690e367eSAndré Apitzsch compatible = "ti,tmp108"; 127690e367eSAndré Apitzsch reg = <0x48>; 128*c9c86387SAndré Apitzsch interrupts-extended = <&tlmm 13 IRQ_TYPE_LEVEL_LOW>; 129*c9c86387SAndré Apitzsch pinctrl-0 = <&temp_alert_default>; 130*c9c86387SAndré Apitzsch pinctrl-names = "default"; 131*c9c86387SAndré Apitzsch #thermal-sensor-cells = <0>; 132690e367eSAndré Apitzsch }; 133690e367eSAndré Apitzsch}; 134690e367eSAndré Apitzsch 135690e367eSAndré Apitzsch&blsp1_uart3 { 136690e367eSAndré Apitzsch status = "okay"; 137690e367eSAndré Apitzsch}; 138690e367eSAndré Apitzsch 139690e367eSAndré Apitzsch&pm8226_resin { 140690e367eSAndré Apitzsch linux,code = <KEY_VOLUMEDOWN>; 141690e367eSAndré Apitzsch status = "okay"; 142690e367eSAndré Apitzsch}; 143690e367eSAndré Apitzsch 144690e367eSAndré Apitzsch&pm8226_vib { 145690e367eSAndré Apitzsch status = "okay"; 146690e367eSAndré Apitzsch}; 147690e367eSAndré Apitzsch 148690e367eSAndré Apitzsch&rpm_requests { 149690e367eSAndré Apitzsch regulators { 150690e367eSAndré Apitzsch compatible = "qcom,rpm-pm8226-regulators"; 151690e367eSAndré Apitzsch 152690e367eSAndré Apitzsch pm8226_s3: s3 { 153690e367eSAndré Apitzsch regulator-min-microvolt = <1200000>; 154690e367eSAndré Apitzsch regulator-max-microvolt = <1300000>; 155690e367eSAndré Apitzsch }; 156690e367eSAndré Apitzsch 157690e367eSAndré Apitzsch pm8226_s4: s4 { 158690e367eSAndré Apitzsch regulator-min-microvolt = <1800000>; 159690e367eSAndré Apitzsch regulator-max-microvolt = <2200000>; 160690e367eSAndré Apitzsch }; 161690e367eSAndré Apitzsch 162690e367eSAndré Apitzsch pm8226_s5: s5 { 163690e367eSAndré Apitzsch regulator-min-microvolt = <1150000>; 164690e367eSAndré Apitzsch regulator-max-microvolt = <1150000>; 165690e367eSAndré Apitzsch }; 166690e367eSAndré Apitzsch 167690e367eSAndré Apitzsch pm8226_l1: l1 { 168690e367eSAndré Apitzsch regulator-min-microvolt = <1225000>; 169690e367eSAndré Apitzsch regulator-max-microvolt = <1225000>; 170690e367eSAndré Apitzsch }; 171690e367eSAndré Apitzsch 172690e367eSAndré Apitzsch pm8226_l2: l2 { 173690e367eSAndré Apitzsch regulator-min-microvolt = <1200000>; 174690e367eSAndré Apitzsch regulator-max-microvolt = <1200000>; 175690e367eSAndré Apitzsch }; 176690e367eSAndré Apitzsch 177690e367eSAndré Apitzsch pm8226_l3: l3 { 178690e367eSAndré Apitzsch regulator-min-microvolt = <750000>; 179690e367eSAndré Apitzsch regulator-max-microvolt = <1337500>; 180690e367eSAndré Apitzsch }; 181690e367eSAndré Apitzsch 182690e367eSAndré Apitzsch pm8226_l4: l4 { 183690e367eSAndré Apitzsch regulator-min-microvolt = <1200000>; 184690e367eSAndré Apitzsch regulator-max-microvolt = <1200000>; 185690e367eSAndré Apitzsch }; 186690e367eSAndré Apitzsch 187690e367eSAndré Apitzsch pm8226_l5: l5 { 188690e367eSAndré Apitzsch regulator-min-microvolt = <1200000>; 189690e367eSAndré Apitzsch regulator-max-microvolt = <1200000>; 190690e367eSAndré Apitzsch }; 191690e367eSAndré Apitzsch 192690e367eSAndré Apitzsch pm8226_l6: l6 { 193690e367eSAndré Apitzsch regulator-min-microvolt = <1800000>; 194690e367eSAndré Apitzsch regulator-max-microvolt = <1800000>; 195690e367eSAndré Apitzsch regulator-allow-set-load; 196690e367eSAndré Apitzsch }; 197690e367eSAndré Apitzsch 198690e367eSAndré Apitzsch pm8226_l7: l7 { 199690e367eSAndré Apitzsch regulator-min-microvolt = <1850000>; 200690e367eSAndré Apitzsch regulator-max-microvolt = <1850000>; 201690e367eSAndré Apitzsch }; 202690e367eSAndré Apitzsch 203690e367eSAndré Apitzsch pm8226_l8: l8 { 204690e367eSAndré Apitzsch regulator-min-microvolt = <1800000>; 205690e367eSAndré Apitzsch regulator-max-microvolt = <1800000>; 206690e367eSAndré Apitzsch }; 207690e367eSAndré Apitzsch 208690e367eSAndré Apitzsch pm8226_l9: l9 { 209690e367eSAndré Apitzsch regulator-min-microvolt = <2050000>; 210690e367eSAndré Apitzsch regulator-max-microvolt = <2050000>; 211690e367eSAndré Apitzsch }; 212690e367eSAndré Apitzsch 213690e367eSAndré Apitzsch pm8226_l10: l10 { 214690e367eSAndré Apitzsch regulator-min-microvolt = <1800000>; 215690e367eSAndré Apitzsch regulator-max-microvolt = <1800000>; 216690e367eSAndré Apitzsch }; 217690e367eSAndré Apitzsch 218690e367eSAndré Apitzsch pm8226_l12: l12 { 219690e367eSAndré Apitzsch regulator-min-microvolt = <1800000>; 220690e367eSAndré Apitzsch regulator-max-microvolt = <1800000>; 221690e367eSAndré Apitzsch }; 222690e367eSAndré Apitzsch 223690e367eSAndré Apitzsch pm8226_l14: l14 { 224690e367eSAndré Apitzsch regulator-min-microvolt = <2750000>; 225690e367eSAndré Apitzsch regulator-max-microvolt = <2750000>; 226690e367eSAndré Apitzsch }; 227690e367eSAndré Apitzsch 228690e367eSAndré Apitzsch pm8226_l15: l15 { 229690e367eSAndré Apitzsch regulator-min-microvolt = <2800000>; 230690e367eSAndré Apitzsch regulator-max-microvolt = <2800000>; 231690e367eSAndré Apitzsch }; 232690e367eSAndré Apitzsch 233690e367eSAndré Apitzsch pm8226_l16: l16 { 234690e367eSAndré Apitzsch regulator-min-microvolt = <3000000>; 235690e367eSAndré Apitzsch regulator-max-microvolt = <3350000>; 236690e367eSAndré Apitzsch }; 237690e367eSAndré Apitzsch 238690e367eSAndré Apitzsch pm8226_l17: l17 { 239690e367eSAndré Apitzsch regulator-min-microvolt = <2950000>; 240690e367eSAndré Apitzsch regulator-max-microvolt = <2950000>; 241690e367eSAndré Apitzsch }; 242690e367eSAndré Apitzsch 243690e367eSAndré Apitzsch pm8226_l18: l18 { 244690e367eSAndré Apitzsch regulator-min-microvolt = <2950000>; 245690e367eSAndré Apitzsch regulator-max-microvolt = <2950000>; 246690e367eSAndré Apitzsch }; 247690e367eSAndré Apitzsch 248690e367eSAndré Apitzsch pm8226_l19: l19 { 249690e367eSAndré Apitzsch regulator-min-microvolt = <2850000>; 250690e367eSAndré Apitzsch regulator-max-microvolt = <2850000>; 251690e367eSAndré Apitzsch }; 252690e367eSAndré Apitzsch 253690e367eSAndré Apitzsch pm8226_l20: l20 { 254690e367eSAndré Apitzsch regulator-min-microvolt = <3075000>; 255690e367eSAndré Apitzsch regulator-max-microvolt = <3075000>; 256690e367eSAndré Apitzsch }; 257690e367eSAndré Apitzsch 258690e367eSAndré Apitzsch pm8226_l21: l21 { 259690e367eSAndré Apitzsch regulator-min-microvolt = <1800000>; 260690e367eSAndré Apitzsch regulator-max-microvolt = <2950000>; 261690e367eSAndré Apitzsch regulator-allow-set-load; 262690e367eSAndré Apitzsch }; 263690e367eSAndré Apitzsch 264690e367eSAndré Apitzsch pm8226_l22: l22 { 265690e367eSAndré Apitzsch regulator-min-microvolt = <1800000>; 266690e367eSAndré Apitzsch regulator-max-microvolt = <2950000>; 267690e367eSAndré Apitzsch }; 268690e367eSAndré Apitzsch 269690e367eSAndré Apitzsch pm8226_l23: l23 { 270690e367eSAndré Apitzsch regulator-min-microvolt = <1800000>; 271690e367eSAndré Apitzsch regulator-max-microvolt = <2950000>; 272690e367eSAndré Apitzsch }; 273690e367eSAndré Apitzsch 274690e367eSAndré Apitzsch pm8226_l24: l24 { 275690e367eSAndré Apitzsch regulator-min-microvolt = <1300000>; 276690e367eSAndré Apitzsch regulator-max-microvolt = <1350000>; 277690e367eSAndré Apitzsch }; 278690e367eSAndré Apitzsch 279690e367eSAndré Apitzsch pm8226_l25: l25 { 280690e367eSAndré Apitzsch regulator-min-microvolt = <1775000>; 281690e367eSAndré Apitzsch regulator-max-microvolt = <2125000>; 282690e367eSAndré Apitzsch }; 283690e367eSAndré Apitzsch 284690e367eSAndré Apitzsch pm8226_l26: l26 { 285690e367eSAndré Apitzsch regulator-min-microvolt = <1225000>; 286690e367eSAndré Apitzsch regulator-max-microvolt = <1225000>; 287690e367eSAndré Apitzsch }; 288690e367eSAndré Apitzsch 289690e367eSAndré Apitzsch pm8226_l27: l27 { 290690e367eSAndré Apitzsch regulator-min-microvolt = <2050000>; 291690e367eSAndré Apitzsch regulator-max-microvolt = <2050000>; 292690e367eSAndré Apitzsch }; 293690e367eSAndré Apitzsch 294690e367eSAndré Apitzsch pm8226_l28: l28 { 295690e367eSAndré Apitzsch regulator-min-microvolt = <1800000>; 296690e367eSAndré Apitzsch regulator-max-microvolt = <3400000>; 297690e367eSAndré Apitzsch regulator-boot-on; 298690e367eSAndré Apitzsch }; 299690e367eSAndré Apitzsch 300690e367eSAndré Apitzsch pm8226_lvs1: lvs1 { 301690e367eSAndré Apitzsch /* Pull-up for I2C lines */ 302690e367eSAndré Apitzsch regulator-always-on; 303690e367eSAndré Apitzsch }; 304690e367eSAndré Apitzsch }; 305690e367eSAndré Apitzsch}; 306690e367eSAndré Apitzsch 307690e367eSAndré Apitzsch&sdhc_1 { 308690e367eSAndré Apitzsch vmmc-supply = <&pm8226_l17>; 309690e367eSAndré Apitzsch vqmmc-supply = <&pm8226_l6>; 310690e367eSAndré Apitzsch 311690e367eSAndré Apitzsch bus-width = <8>; 312690e367eSAndré Apitzsch non-removable; 313690e367eSAndré Apitzsch 314690e367eSAndré Apitzsch status = "okay"; 315690e367eSAndré Apitzsch}; 316690e367eSAndré Apitzsch 317690e367eSAndré Apitzsch&sdhc_2 { 318690e367eSAndré Apitzsch vmmc-supply = <&pm8226_l18>; 319690e367eSAndré Apitzsch vqmmc-supply = <&pm8226_l21>; 320690e367eSAndré Apitzsch 321690e367eSAndré Apitzsch bus-width = <4>; 322690e367eSAndré Apitzsch cd-gpios = <&tlmm 115 GPIO_ACTIVE_HIGH>; 323690e367eSAndré Apitzsch 324690e367eSAndré Apitzsch status = "okay"; 325690e367eSAndré Apitzsch}; 326690e367eSAndré Apitzsch 327690e367eSAndré Apitzsch&smbb { 328690e367eSAndré Apitzsch qcom,fast-charge-safe-current = <2000000>; 329690e367eSAndré Apitzsch qcom,fast-charge-current-limit = <1900000>; 330690e367eSAndré Apitzsch qcom,fast-charge-safe-voltage = <4400000>; 331690e367eSAndré Apitzsch qcom,minimum-input-voltage = <4300000>; 332690e367eSAndré Apitzsch 333690e367eSAndré Apitzsch status = "okay"; 334690e367eSAndré Apitzsch}; 335690e367eSAndré Apitzsch 33665ec35baSAndré Apitzsch&tlmm { 33765ec35baSAndré Apitzsch accel_int_default: accel-int-default-state { 33865ec35baSAndré Apitzsch pins = "gpio1"; 33965ec35baSAndré Apitzsch function = "gpio"; 34065ec35baSAndré Apitzsch drive-strength = <2>; 34165ec35baSAndré Apitzsch bias-disable; 34265ec35baSAndré Apitzsch output-disable; 34365ec35baSAndré Apitzsch }; 34465ec35baSAndré Apitzsch 34565ec35baSAndré Apitzsch mag_int_default: mag-int-default-state { 34665ec35baSAndré Apitzsch pins = "gpio38"; 34765ec35baSAndré Apitzsch function = "gpio"; 34865ec35baSAndré Apitzsch drive-strength = <2>; 34965ec35baSAndré Apitzsch bias-disable; 35065ec35baSAndré Apitzsch output-disable; 35165ec35baSAndré Apitzsch }; 35265ec35baSAndré Apitzsch 35365ec35baSAndré Apitzsch mag_reset_default: mag-reset-default-state { 35465ec35baSAndré Apitzsch pins = "gpio62"; 35565ec35baSAndré Apitzsch function = "gpio"; 35665ec35baSAndré Apitzsch drive-strength = <2>; 35765ec35baSAndré Apitzsch bias-disable; 35865ec35baSAndré Apitzsch output-high; 35965ec35baSAndré Apitzsch }; 36065ec35baSAndré Apitzsch 36165ec35baSAndré Apitzsch reg_lcd_default: reg-lcd-default-state { 36265ec35baSAndré Apitzsch pins = "gpio31", "gpio33"; 36365ec35baSAndré Apitzsch function = "gpio"; 36465ec35baSAndré Apitzsch drive-strength = <2>; 36565ec35baSAndré Apitzsch bias-disable; 36665ec35baSAndré Apitzsch output-high; 36765ec35baSAndré Apitzsch }; 368*c9c86387SAndré Apitzsch 369*c9c86387SAndré Apitzsch temp_alert_default: temp-alert-default-state { 370*c9c86387SAndré Apitzsch pins = "gpio13"; 371*c9c86387SAndré Apitzsch function = "gpio"; 372*c9c86387SAndré Apitzsch drive-strength = <2>; 373*c9c86387SAndré Apitzsch bias-disable; 374*c9c86387SAndré Apitzsch output-disable; 375*c9c86387SAndré Apitzsch }; 37665ec35baSAndré Apitzsch}; 37765ec35baSAndré Apitzsch 378690e367eSAndré Apitzsch&usb { 379690e367eSAndré Apitzsch extcon = <&smbb>; 380690e367eSAndré Apitzsch dr_mode = "peripheral"; 381690e367eSAndré Apitzsch status = "okay"; 382690e367eSAndré Apitzsch}; 383690e367eSAndré Apitzsch 384690e367eSAndré Apitzsch&usb_hs_phy { 385690e367eSAndré Apitzsch extcon = <&smbb>; 386690e367eSAndré Apitzsch v1p8-supply = <&pm8226_l10>; 387690e367eSAndré Apitzsch v3p3-supply = <&pm8226_l20>; 388690e367eSAndré Apitzsch}; 389