1// SPDX-License-Identifier: GPL-2.0 2#include <dt-bindings/gpio/gpio.h> 3#include <dt-bindings/input/input.h> 4#include <dt-bindings/pinctrl/qcom,pmic-gpio.h> 5 6#include "qcom-apq8064-v2.0.dtsi" 7#include "pm8821.dtsi" 8#include "pm8921.dtsi" 9 10/ { 11 model = "Asus Nexus7(flo)"; 12 compatible = "asus,nexus7-flo", "qcom,apq8064"; 13 chassis-type = "tablet"; 14 15 aliases { 16 serial0 = &gsbi7_serial; 17 serial1 = &gsbi6_serial; 18 }; 19 20 chosen { 21 stdout-path = "serial0:115200n8"; 22 }; 23 24 reserved-memory { 25 #address-cells = <1>; 26 #size-cells = <1>; 27 ranges; 28 29 ramoops@88d00000 { 30 compatible = "ramoops"; 31 reg = <0x88d00000 0x100000>; 32 record-size = <0x00020000>; 33 console-size = <0x00020000>; 34 ftrace-size = <0x00020000>; 35 }; 36 }; 37 38 ext_3p3v: regulator-ext-3p3v { 39 compatible = "regulator-fixed"; 40 regulator-min-microvolt = <3300000>; 41 regulator-max-microvolt = <3300000>; 42 regulator-name = "ext_3p3v"; 43 startup-delay-us = <0>; 44 gpio = <&tlmm_pinmux 77 GPIO_ACTIVE_HIGH>; 45 enable-active-high; 46 regulator-boot-on; 47 }; 48 49 gpio-keys { 50 compatible = "gpio-keys"; 51 key-volume-up { 52 label = "Volume Up"; 53 gpios = <&pm8921_gpio 4 GPIO_ACTIVE_HIGH>; 54 linux,code = <KEY_VOLUMEUP>; 55 }; 56 key-volume-down { 57 label = "Volume Down"; 58 gpios = <&pm8921_gpio 38 GPIO_ACTIVE_HIGH>; 59 linux,code = <KEY_VOLUMEDOWN>; 60 }; 61 }; 62 63 soc { 64 sram@2a03f000 { 65 compatible = "qcom,apq8064-imem", "syscon", "simple-mfd"; 66 reg = <0x2a03f000 0x1000>; 67 68 reboot-mode { 69 compatible = "syscon-reboot-mode"; 70 offset = <0x65c>; 71 72 mode-normal = <0x77665501>; 73 mode-bootloader = <0x77665500>; 74 mode-recovery = <0x77665502>; 75 }; 76 }; 77 }; 78}; 79 80&dsi0 { 81 vdda-supply = <&pm8921_l2>;/*VDD_MIPI1 to 4*/ 82 vdd-supply = <&pm8921_l8>; 83 vddio-supply = <&pm8921_lvs7>; 84 avdd-supply = <&pm8921_l11>; 85 status = "okay"; 86 87 panel@0 { 88 reg = <0>; 89 compatible = "jdi,lt070me05000"; 90 91 vddp-supply = <&pm8921_l17>; 92 iovcc-supply = <&pm8921_lvs7>; 93 94 enable-gpios = <&pm8921_gpio 36 GPIO_ACTIVE_HIGH>; 95 reset-gpios = <&tlmm_pinmux 54 GPIO_ACTIVE_LOW>; 96 dcdc-en-gpios = <&pm8921_gpio 23 GPIO_ACTIVE_HIGH>; 97 98 port { 99 panel_in: endpoint { 100 remote-endpoint = <&dsi0_out>; 101 }; 102 }; 103 }; 104}; 105 106&dsi0_in { 107 remote-endpoint = <&mdp_dsi1_out>; 108}; 109 110&dsi0_out { 111 remote-endpoint = <&panel_in>; 112 data-lanes = <0 1 2 3>; 113}; 114 115&dsi0_phy { 116 vddio-supply = <&pm8921_lvs7>;/*VDD_PLL2_1 to 7*/ 117 status = "okay"; 118}; 119 120&gsbi1 { 121 qcom,mode = <GSBI_PROT_I2C>; 122 status = "okay"; 123}; 124 125&gsbi1_i2c { 126 status = "okay"; 127 clock-frequency = <200000>; 128 pinctrl-0 = <&i2c1_pins>; 129 pinctrl-names = "default"; 130 131 eeprom@52 { 132 compatible = "atmel,24c128"; 133 reg = <0x52>; 134 pagesize = <32>; 135 }; 136 137 bq27541@55 { 138 compatible = "ti,bq27541"; 139 reg = <0x55>; 140 }; 141 142}; 143 144&gsbi3 { 145 qcom,mode = <GSBI_PROT_I2C>; 146 status = "okay"; 147}; 148 149&gsbi3_i2c { 150 clock-frequency = <200000>; 151 pinctrl-0 = <&i2c3_pins>; 152 pinctrl-names = "default"; 153 status = "okay"; 154 155 trackpad@10 { 156 compatible = "elan,ekth3500"; 157 reg = <0x10>; 158 interrupt-parent = <&tlmm_pinmux>; 159 interrupts = <6 IRQ_TYPE_EDGE_FALLING>; 160 }; 161}; 162 163&gsbi6 { 164 qcom,mode = <GSBI_PROT_I2C_UART>; 165 status = "okay"; 166}; 167 168&gsbi6_serial { 169 pinctrl-names = "default"; 170 pinctrl-0 = <&gsbi6_uart_4pins>; 171 status = "okay"; 172}; 173 174&gsbi7 { 175 qcom,mode = <GSBI_PROT_I2C_UART>; 176 status = "okay"; 177}; 178 179&gsbi7_serial { 180 status = "okay"; 181}; 182 183&mdp { 184 status = "okay"; 185}; 186 187&mdp_dsi1_out { 188 remote-endpoint = <&dsi0_in>; 189}; 190 191&pm8821 { 192 interrupts-extended = <&tlmm_pinmux 76 IRQ_TYPE_LEVEL_LOW>; 193}; 194 195&pm8921 { 196 interrupts-extended = <&tlmm_pinmux 74 IRQ_TYPE_LEVEL_LOW>; 197}; 198 199&rpm { 200 regulators { 201 compatible = "qcom,rpm-pm8921-regulators"; 202 203 vdd_l1_l2_l12_l18-supply = <&pm8921_s4>; 204 vin_lvs1_3_6-supply = <&pm8921_s4>; 205 vin_lvs4_5_7-supply = <&pm8921_s4>; 206 207 vdd_l24-supply = <&pm8921_s1>; 208 vdd_l25-supply = <&pm8921_s1>; 209 vin_lvs2-supply = <&pm8921_s1>; 210 211 vdd_l26-supply = <&pm8921_s7>; 212 vdd_l27-supply = <&pm8921_s7>; 213 vdd_l28-supply = <&pm8921_s7>; 214 215 vdd_ncp-supply = <&pm8921_l6>; 216 217 /* Buck SMPS */ 218 pm8921_s1: s1 { 219 regulator-always-on; 220 regulator-min-microvolt = <1225000>; 221 regulator-max-microvolt = <1225000>; 222 qcom,switch-mode-frequency = <3200000>; 223 bias-pull-down; 224 }; 225 226 /* msm otg HSUSB_VDDCX */ 227 pm8921_s3: s3 { 228 regulator-min-microvolt = <500000>; 229 regulator-max-microvolt = <1150000>; 230 qcom,switch-mode-frequency = <4800000>; 231 }; 232 233 /* 234 * msm_sdcc.1-sdc-vdd_io 235 * tabla2x-slim-CDC_VDDA_RX 236 * tabla2x-slim-CDC_VDDA_TX 237 * tabla2x-slim-CDC_VDD_CP 238 * tabla2x-slim-VDDIO_CDC 239 */ 240 pm8921_s4: s4 { 241 regulator-min-microvolt = <1800000>; 242 regulator-max-microvolt = <1800000>; 243 qcom,switch-mode-frequency = <3200000>; 244 regulator-always-on; 245 }; 246 247 pm8921_s7: s7 { 248 regulator-min-microvolt = <1300000>; 249 regulator-max-microvolt = <1300000>; 250 qcom,switch-mode-frequency = <3200000>; 251 }; 252 253 /* mipi_dsi.1-dsi1_pll_vdda */ 254 pm8921_l2: l2 { 255 regulator-min-microvolt = <1200000>; 256 regulator-max-microvolt = <1200000>; 257 regulator-always-on; 258 }; 259 260 /* msm_otg-HSUSB_3p3 */ 261 pm8921_l3: l3 { 262 regulator-min-microvolt = <3075000>; 263 regulator-max-microvolt = <3075000>; 264 bias-pull-down; 265 }; 266 267 /* msm_otg-HSUSB_1p8 */ 268 pm8921_l4: l4 { 269 regulator-min-microvolt = <1800000>; 270 regulator-max-microvolt = <1800000>; 271 bias-pull-down; 272 }; 273 274 /* msm_sdcc.1-sdc_vdd */ 275 pm8921_l5: l5 { 276 regulator-min-microvolt = <2950000>; 277 regulator-max-microvolt = <2950000>; 278 regulator-always-on; 279 bias-pull-down; 280 }; 281 282 pm8921_l6: l6 { 283 regulator-min-microvolt = <2950000>; 284 regulator-max-microvolt = <2950000>; 285 }; 286 287 pm8921_l8: l8 { 288 }; 289 290 /* mipi_dsi.1-dsi1_avdd */ 291 pm8921_l11: l11 { 292 regulator-min-microvolt = <3000000>; 293 regulator-max-microvolt = <3000000>; 294 bias-pull-down; 295 regulator-always-on; 296 }; 297 298 /* pwm_power for backlight */ 299 pm8921_l17: l17 { 300 regulator-min-microvolt = <3000000>; 301 regulator-max-microvolt = <3000000>; 302 regulator-always-on; 303 }; 304 305 /* camera, qdsp6 */ 306 pm8921_l23: l23 { 307 regulator-min-microvolt = <1800000>; 308 regulator-max-microvolt = <1800000>; 309 bias-pull-down; 310 }; 311 312 /* 313 * tabla2x-slim-CDC_VDDA_A_1P2V 314 * tabla2x-slim-VDDD_CDC_D 315 */ 316 pm8921_l25: l25 { 317 regulator-min-microvolt = <1250000>; 318 regulator-max-microvolt = <1250000>; 319 bias-pull-down; 320 }; 321 322 pm8921_lvs1: lvs1 { 323 bias-pull-down; 324 }; 325 326 pm8921_lvs4: lvs4 { 327 bias-pull-down; 328 }; 329 330 pm8921_lvs5: lvs5 { 331 bias-pull-down; 332 }; 333 334 pm8921_lvs6: lvs6 { 335 bias-pull-down; 336 }; 337 /* 338 * mipi_dsi.1-dsi1_vddio 339 * pil_riva-pll_vdd 340 */ 341 pm8921_lvs7: lvs7 { 342 bias-pull-down; 343 }; 344 }; 345}; 346 347/* eMMC */ 348&sdcc1 { 349 vmmc-supply = <&pm8921_l5>; 350 vqmmc-supply = <&pm8921_s4>; 351 status = "okay"; 352}; 353 354&usb_hs1_phy { 355 v3p3-supply = <&pm8921_l3>; 356 v1p8-supply = <&pm8921_l4>; 357}; 358 359/* OTG */ 360&usb1 { 361 dr_mode = "otg"; 362 status = "okay"; 363}; 364