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 129 eeprom@52 { 130 compatible = "atmel,24c128"; 131 reg = <0x52>; 132 pagesize = <32>; 133 }; 134 135 bq27541@55 { 136 compatible = "ti,bq27541"; 137 reg = <0x55>; 138 }; 139 140}; 141 142&gsbi3 { 143 qcom,mode = <GSBI_PROT_I2C>; 144 status = "okay"; 145}; 146 147&gsbi3_i2c { 148 clock-frequency = <200000>; 149 status = "okay"; 150 151 trackpad@10 { 152 compatible = "elan,ekth3500"; 153 reg = <0x10>; 154 interrupt-parent = <&tlmm_pinmux>; 155 interrupts = <6 IRQ_TYPE_EDGE_FALLING>; 156 }; 157}; 158 159&gsbi6 { 160 qcom,mode = <GSBI_PROT_I2C_UART>; 161 status = "okay"; 162}; 163 164&gsbi6_serial { 165 pinctrl-names = "default"; 166 pinctrl-0 = <&gsbi6_uart_4pins>; 167 status = "okay"; 168}; 169 170&gsbi7 { 171 qcom,mode = <GSBI_PROT_I2C_UART>; 172 status = "okay"; 173}; 174 175&gsbi7_serial { 176 status = "okay"; 177}; 178 179&mdp { 180 status = "okay"; 181}; 182 183&mdp_dsi1_out { 184 remote-endpoint = <&dsi0_in>; 185}; 186 187&pm8821 { 188 interrupts-extended = <&tlmm_pinmux 76 IRQ_TYPE_LEVEL_LOW>; 189}; 190 191&pm8921 { 192 interrupts-extended = <&tlmm_pinmux 74 IRQ_TYPE_LEVEL_LOW>; 193}; 194 195&rpm { 196 regulators { 197 compatible = "qcom,rpm-pm8921-regulators"; 198 199 vdd_l1_l2_l12_l18-supply = <&pm8921_s4>; 200 vin_lvs1_3_6-supply = <&pm8921_s4>; 201 vin_lvs4_5_7-supply = <&pm8921_s4>; 202 203 vdd_l24-supply = <&pm8921_s1>; 204 vdd_l25-supply = <&pm8921_s1>; 205 vin_lvs2-supply = <&pm8921_s1>; 206 207 vdd_l26-supply = <&pm8921_s7>; 208 vdd_l27-supply = <&pm8921_s7>; 209 vdd_l28-supply = <&pm8921_s7>; 210 211 vdd_ncp-supply = <&pm8921_l6>; 212 213 /* Buck SMPS */ 214 pm8921_s1: s1 { 215 regulator-always-on; 216 regulator-min-microvolt = <1225000>; 217 regulator-max-microvolt = <1225000>; 218 qcom,switch-mode-frequency = <3200000>; 219 bias-pull-down; 220 }; 221 222 /* msm otg HSUSB_VDDCX */ 223 pm8921_s3: s3 { 224 regulator-min-microvolt = <500000>; 225 regulator-max-microvolt = <1150000>; 226 qcom,switch-mode-frequency = <4800000>; 227 }; 228 229 /* 230 * msm_sdcc.1-sdc-vdd_io 231 * tabla2x-slim-CDC_VDDA_RX 232 * tabla2x-slim-CDC_VDDA_TX 233 * tabla2x-slim-CDC_VDD_CP 234 * tabla2x-slim-VDDIO_CDC 235 */ 236 pm8921_s4: s4 { 237 regulator-min-microvolt = <1800000>; 238 regulator-max-microvolt = <1800000>; 239 qcom,switch-mode-frequency = <3200000>; 240 regulator-always-on; 241 }; 242 243 pm8921_s7: s7 { 244 regulator-min-microvolt = <1300000>; 245 regulator-max-microvolt = <1300000>; 246 qcom,switch-mode-frequency = <3200000>; 247 }; 248 249 /* mipi_dsi.1-dsi1_pll_vdda */ 250 pm8921_l2: l2 { 251 regulator-min-microvolt = <1200000>; 252 regulator-max-microvolt = <1200000>; 253 regulator-always-on; 254 }; 255 256 /* msm_otg-HSUSB_3p3 */ 257 pm8921_l3: l3 { 258 regulator-min-microvolt = <3075000>; 259 regulator-max-microvolt = <3075000>; 260 bias-pull-down; 261 }; 262 263 /* msm_otg-HSUSB_1p8 */ 264 pm8921_l4: l4 { 265 regulator-min-microvolt = <1800000>; 266 regulator-max-microvolt = <1800000>; 267 bias-pull-down; 268 }; 269 270 /* msm_sdcc.1-sdc_vdd */ 271 pm8921_l5: l5 { 272 regulator-min-microvolt = <2950000>; 273 regulator-max-microvolt = <2950000>; 274 regulator-always-on; 275 bias-pull-down; 276 }; 277 278 pm8921_l6: l6 { 279 regulator-min-microvolt = <2950000>; 280 regulator-max-microvolt = <2950000>; 281 }; 282 283 pm8921_l8: l8 { 284 }; 285 286 /* mipi_dsi.1-dsi1_avdd */ 287 pm8921_l11: l11 { 288 regulator-min-microvolt = <3000000>; 289 regulator-max-microvolt = <3000000>; 290 bias-pull-down; 291 regulator-always-on; 292 }; 293 294 /* pwm_power for backlight */ 295 pm8921_l17: l17 { 296 regulator-min-microvolt = <3000000>; 297 regulator-max-microvolt = <3000000>; 298 regulator-always-on; 299 }; 300 301 /* camera, qdsp6 */ 302 pm8921_l23: l23 { 303 regulator-min-microvolt = <1800000>; 304 regulator-max-microvolt = <1800000>; 305 bias-pull-down; 306 }; 307 308 /* 309 * tabla2x-slim-CDC_VDDA_A_1P2V 310 * tabla2x-slim-VDDD_CDC_D 311 */ 312 pm8921_l25: l25 { 313 regulator-min-microvolt = <1250000>; 314 regulator-max-microvolt = <1250000>; 315 bias-pull-down; 316 }; 317 318 pm8921_lvs1: lvs1 { 319 bias-pull-down; 320 }; 321 322 pm8921_lvs4: lvs4 { 323 bias-pull-down; 324 }; 325 326 pm8921_lvs5: lvs5 { 327 bias-pull-down; 328 }; 329 330 pm8921_lvs6: lvs6 { 331 bias-pull-down; 332 }; 333 /* 334 * mipi_dsi.1-dsi1_vddio 335 * pil_riva-pll_vdd 336 */ 337 pm8921_lvs7: lvs7 { 338 bias-pull-down; 339 }; 340 }; 341}; 342 343/* eMMC */ 344&sdcc1 { 345 vmmc-supply = <&pm8921_l5>; 346 vqmmc-supply = <&pm8921_s4>; 347 status = "okay"; 348}; 349 350&usb_hs1_phy { 351 v3p3-supply = <&pm8921_l3>; 352 v1p8-supply = <&pm8921_l4>; 353}; 354 355/* OTG */ 356&usb1 { 357 dr_mode = "otg"; 358 status = "okay"; 359}; 360