1 // SPDX-License-Identifier: GPL-2.0-only 1 // SPDX-License-Identifier: GPL-2.0-only 2 /* 2 /* 3 * Copyright (c) 2022, Collabora Ltd 3 * Copyright (c) 2022, Collabora Ltd 4 * Author: AngeloGioacchino Del Regno <angelogi 4 * Author: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> 5 */ 5 */ 6 6 7 /dts-v1/; 7 /dts-v1/; 8 #include <dt-bindings/gpio/gpio.h> 8 #include <dt-bindings/gpio/gpio.h> 9 #include "mt6795.dtsi" 9 #include "mt6795.dtsi" 10 #include "mt6331.dtsi" 10 #include "mt6331.dtsi" 11 11 12 / { 12 / { 13 model = "Sony Xperia M5"; 13 model = "Sony Xperia M5"; 14 compatible = "sony,xperia-m5", "mediat 14 compatible = "sony,xperia-m5", "mediatek,mt6795"; 15 chassis-type = "handset"; 15 chassis-type = "handset"; 16 16 17 aliases { 17 aliases { 18 mmc0 = &mmc0; 18 mmc0 = &mmc0; 19 mmc1 = &mmc1; 19 mmc1 = &mmc1; 20 mmc2 = &mmc2; 20 mmc2 = &mmc2; 21 serial0 = &uart0; 21 serial0 = &uart0; 22 serial1 = &uart1; 22 serial1 = &uart1; 23 }; 23 }; 24 24 25 backlight_lcd0: backlight { 25 backlight_lcd0: backlight { 26 compatible = "led-backlight"; 26 compatible = "led-backlight"; 27 leds = <&disp_led_pwm>, <&pmic 27 leds = <&disp_led_pwm>, <&pmic_bl_led>; 28 28 29 default-brightness-level = <30 29 default-brightness-level = <300>; 30 }; 30 }; 31 31 32 led-controller-display { 32 led-controller-display { 33 compatible = "pwm-leds"; 33 compatible = "pwm-leds"; 34 34 35 disp_led_pwm: led-0 { 35 disp_led_pwm: led-0 { 36 label = "backlight-pwm 36 label = "backlight-pwm"; 37 pwms = <&pwm0 0 500000 37 pwms = <&pwm0 0 500000>; 38 max-brightness = <1024 38 max-brightness = <1024>; 39 }; 39 }; 40 }; 40 }; 41 41 42 memory@40000000 { 42 memory@40000000 { 43 device_type = "memory"; 43 device_type = "memory"; 44 reg = <0 0x40000000 0 0x1e8000 44 reg = <0 0x40000000 0 0x1e800000>; 45 }; 45 }; 46 46 47 reserved_memory: reserved-memory { 47 reserved_memory: reserved-memory { 48 #address-cells = <2>; 48 #address-cells = <2>; 49 #size-cells = <2>; 49 #size-cells = <2>; 50 ranges; 50 ranges; 51 51 52 /* 128 KiB reserved for ARM Tr 52 /* 128 KiB reserved for ARM Trusted Firmware (BL31) */ 53 bl31_secmon_reserved: secmon@4 53 bl31_secmon_reserved: secmon@43000000 { 54 reg = <0 0x43000000 0 54 reg = <0 0x43000000 0 0x30000>; 55 no-map; 55 no-map; 56 }; 56 }; 57 57 58 /* preloader and bootloader re 58 /* preloader and bootloader regions cannot be touched */ 59 preloader-region@44800000 { 59 preloader-region@44800000 { 60 reg = <0 0x44800000 0 60 reg = <0 0x44800000 0 0x100000>; 61 no-map; 61 no-map; 62 }; 62 }; 63 63 64 bootloader-region@46000000 { 64 bootloader-region@46000000 { 65 reg = <0 0x46000000 0 65 reg = <0 0x46000000 0 0x400000>; 66 no-map; 66 no-map; 67 }; 67 }; 68 }; 68 }; 69 69 70 vreg_disp_avdd: regulator-disp-avdd { 70 vreg_disp_avdd: regulator-disp-avdd { 71 compatible = "regulator-fixed" 71 compatible = "regulator-fixed"; 72 regulator-name = "disp_avdd"; 72 regulator-name = "disp_avdd"; 73 regulator-min-microvolt = <500 73 regulator-min-microvolt = <5000000>; 74 regulator-max-microvolt = <500 74 regulator-max-microvolt = <5000000>; 75 gpio = <&pio 138 GPIO_ACTIVE_H 75 gpio = <&pio 138 GPIO_ACTIVE_HIGH>; 76 enable-active-high; 76 enable-active-high; 77 }; 77 }; 78 78 79 vreg_disp_avee: regulator-disp-avee { 79 vreg_disp_avee: regulator-disp-avee { 80 compatible = "regulator-fixed" 80 compatible = "regulator-fixed"; 81 regulator-name = "disp_avee"; 81 regulator-name = "disp_avee"; 82 regulator-min-microvolt = <500 82 regulator-min-microvolt = <5000000>; 83 regulator-max-microvolt = <500 83 regulator-max-microvolt = <5000000>; 84 gpio = <&pio 139 GPIO_ACTIVE_H 84 gpio = <&pio 139 GPIO_ACTIVE_HIGH>; 85 enable-active-high; 85 enable-active-high; 86 }; 86 }; 87 87 88 vreg_disp_vddh: regulator-disp-vddh { 88 vreg_disp_vddh: regulator-disp-vddh { 89 compatible = "regulator-fixed" 89 compatible = "regulator-fixed"; 90 regulator-name = "disp_vddh"; 90 regulator-name = "disp_vddh"; 91 regulator-min-microvolt = <180 91 regulator-min-microvolt = <1800000>; 92 regulator-max-microvolt = <180 92 regulator-max-microvolt = <1800000>; 93 regulator-always-on; 93 regulator-always-on; 94 regulator-boot-on; 94 regulator-boot-on; 95 }; 95 }; 96 }; 96 }; 97 97 98 &dsi0 { 98 &dsi0 { 99 status = "okay"; 99 status = "okay"; 100 #address-cells = <1>; 100 #address-cells = <1>; 101 #size-cells = <0>; 101 #size-cells = <0>; 102 102 103 panel: panel@0 { 103 panel: panel@0 { 104 compatible = "sharp,ls060t1sx0 104 compatible = "sharp,ls060t1sx01"; 105 reg = <0>; 105 reg = <0>; 106 avdd-supply = <&vreg_disp_avdd 106 avdd-supply = <&vreg_disp_avdd>; 107 avee-supply = <&vreg_disp_avee 107 avee-supply = <&vreg_disp_avee>; 108 vddi-supply = <&mt6331_vgp3_re 108 vddi-supply = <&mt6331_vgp3_reg>; 109 vddh-supply = <&vreg_disp_vddh 109 vddh-supply = <&vreg_disp_vddh>; 110 reset-gpios = <&pio 106 GPIO_A 110 reset-gpios = <&pio 106 GPIO_ACTIVE_LOW>; 111 backlight = <&backlight_lcd0>; 111 backlight = <&backlight_lcd0>; 112 112 113 pinctrl-0 = <&disp_rst_pins>; 113 pinctrl-0 = <&disp_rst_pins>; 114 pinctrl-names = "default"; 114 pinctrl-names = "default"; 115 115 116 port { 116 port { 117 panel_in: endpoint { 117 panel_in: endpoint { 118 remote-endpoin 118 remote-endpoint = <&dsi0_out>; 119 }; 119 }; 120 }; 120 }; 121 }; 121 }; 122 122 123 port { 123 port { 124 dsi0_out: endpoint { 124 dsi0_out: endpoint { 125 remote-endpoint = <&pa 125 remote-endpoint = <&panel_in>; 126 }; 126 }; 127 }; 127 }; 128 }; 128 }; 129 129 130 &fhctl { 130 &fhctl { 131 clocks = <&apmixedsys CLK_APMIXED_MAIN 131 clocks = <&apmixedsys CLK_APMIXED_MAINPLL>, <&apmixedsys CLK_APMIXED_MPLL>, 132 <&apmixedsys CLK_APMIXED_MSDC 132 <&apmixedsys CLK_APMIXED_MSDCPLL>; 133 mediatek,hopping-ssc-percent = <8>, <5 133 mediatek,hopping-ssc-percent = <8>, <5>, <8>; 134 status = "okay"; 134 status = "okay"; 135 }; 135 }; 136 136 137 &i2c0 { 137 &i2c0 { 138 pinctrl-names = "default"; 138 pinctrl-names = "default"; 139 pinctrl-0 = <&i2c0_pins>; 139 pinctrl-0 = <&i2c0_pins>; 140 status = "okay"; 140 status = "okay"; 141 }; 141 }; 142 142 143 &i2c1 { 143 &i2c1 { 144 pinctrl-names = "default"; 144 pinctrl-names = "default"; 145 pinctrl-0 = <&i2c1_pins>; 145 pinctrl-0 = <&i2c1_pins>; 146 status = "okay"; 146 status = "okay"; 147 147 148 accelerometer@10 { 148 accelerometer@10 { 149 compatible = "bosch,bma255"; 149 compatible = "bosch,bma255"; 150 reg = <0x10>; 150 reg = <0x10>; 151 pinctrl-names = "default"; 151 pinctrl-names = "default"; 152 pinctrl-0 = <&accel_pins>; 152 pinctrl-0 = <&accel_pins>; 153 }; 153 }; 154 154 155 magnetometer@12 { 155 magnetometer@12 { 156 compatible = "bosch,bmm150"; 156 compatible = "bosch,bmm150"; 157 reg = <0x12>; 157 reg = <0x12>; 158 }; 158 }; 159 }; 159 }; 160 160 161 &i2c2 { 161 &i2c2 { 162 pinctrl-names = "default"; 162 pinctrl-names = "default"; 163 pinctrl-0 = <&i2c2_pins>; 163 pinctrl-0 = <&i2c2_pins>; 164 status = "okay"; 164 status = "okay"; 165 165 166 touchscreen@20 { 166 touchscreen@20 { 167 compatible = "syna,rmi4-i2c"; 167 compatible = "syna,rmi4-i2c"; 168 reg = <0x20>; 168 reg = <0x20>; 169 #address-cells = <1>; 169 #address-cells = <1>; 170 #size-cells = <0>; 170 #size-cells = <0>; 171 interrupts-extended = <&pio 6 171 interrupts-extended = <&pio 6 IRQ_TYPE_EDGE_FALLING>; 172 pinctrl-names = "default"; 172 pinctrl-names = "default"; 173 pinctrl-0 = <&ts_pins>; 173 pinctrl-0 = <&ts_pins>; 174 syna,startup-delay-ms = <160>; 174 syna,startup-delay-ms = <160>; 175 syna,reset-delay-ms = <90>; 175 syna,reset-delay-ms = <90>; 176 176 177 rmi4-f01@1 { 177 rmi4-f01@1 { 178 reg = <0x1>; 178 reg = <0x1>; 179 syna,nosleep-mode = <1 179 syna,nosleep-mode = <1>; 180 }; 180 }; 181 181 182 rmi4-f12@12 { 182 rmi4-f12@12 { 183 reg = <0x12>; 183 reg = <0x12>; 184 syna,sensor-type = <1> 184 syna,sensor-type = <1>; 185 }; 185 }; 186 }; 186 }; 187 }; 187 }; 188 188 189 &i2c3 { 189 &i2c3 { 190 pinctrl-names = "default"; 190 pinctrl-names = "default"; 191 pinctrl-0 = <&i2c3_pins>; 191 pinctrl-0 = <&i2c3_pins>; 192 status = "okay"; 192 status = "okay"; 193 193 194 pn547: nfc@28 { 194 pn547: nfc@28 { 195 compatible = "nxp,pn544-i2c"; 195 compatible = "nxp,pn544-i2c"; 196 reg = <0x28>; 196 reg = <0x28>; 197 interrupts-extended = <&pio 3 197 interrupts-extended = <&pio 3 IRQ_TYPE_EDGE_RISING>; 198 pinctrl-names = "default"; 198 pinctrl-names = "default"; 199 pinctrl-0 = <&nfc_pins>; 199 pinctrl-0 = <&nfc_pins>; 200 enable-gpios = <&pio 149 GPIO_ 200 enable-gpios = <&pio 149 GPIO_ACTIVE_HIGH>; 201 firmware-gpios = <&pio 94 GPIO 201 firmware-gpios = <&pio 94 GPIO_ACTIVE_HIGH>; 202 }; 202 }; 203 203 204 proximity@48 { 204 proximity@48 { 205 compatible = "sensortek,stk331 205 compatible = "sensortek,stk3310"; 206 reg = <0x48>; 206 reg = <0x48>; 207 interrupts-extended = <&pio 8 207 interrupts-extended = <&pio 8 IRQ_TYPE_EDGE_FALLING>; 208 pinctrl-names = "default"; 208 pinctrl-names = "default"; 209 pinctrl-0 = <&proximity_pins>; 209 pinctrl-0 = <&proximity_pins>; 210 }; 210 }; 211 }; 211 }; 212 212 213 &mmc0 { 213 &mmc0 { 214 /* eMMC controller */ 214 /* eMMC controller */ 215 mediatek,latch-ck = <0x14>; /* hs400 * 215 mediatek,latch-ck = <0x14>; /* hs400 */ 216 mediatek,hs200-cmd-int-delay = <1>; 216 mediatek,hs200-cmd-int-delay = <1>; 217 mediatek,hs400-cmd-int-delay = <1>; 217 mediatek,hs400-cmd-int-delay = <1>; 218 mediatek,hs400-ds-dly3 = <0x1a>; 218 mediatek,hs400-ds-dly3 = <0x1a>; 219 non-removable; 219 non-removable; 220 pinctrl-names = "default", "state_uhs" 220 pinctrl-names = "default", "state_uhs"; 221 pinctrl-0 = <&mmc0_pins_default>; 221 pinctrl-0 = <&mmc0_pins_default>; 222 pinctrl-1 = <&mmc0_pins_uhs>; 222 pinctrl-1 = <&mmc0_pins_uhs>; 223 vmmc-supply = <&mt6331_vemc33_reg>; 223 vmmc-supply = <&mt6331_vemc33_reg>; 224 vqmmc-supply = <&mt6331_vio18_reg>; 224 vqmmc-supply = <&mt6331_vio18_reg>; 225 status = "okay"; 225 status = "okay"; 226 }; 226 }; 227 227 228 &mmc1 { 228 &mmc1 { 229 /* MicroSD card slot */ 229 /* MicroSD card slot */ 230 vmmc-supply = <&mt6331_vmc_reg>; 230 vmmc-supply = <&mt6331_vmc_reg>; 231 vqmmc-supply = <&mt6331_vmch_reg>; 231 vqmmc-supply = <&mt6331_vmch_reg>; 232 status = "okay"; 232 status = "okay"; 233 }; 233 }; 234 234 235 &mmc2 { 235 &mmc2 { 236 /* SDIO WiFi on MMC2 */ 236 /* SDIO WiFi on MMC2 */ 237 vmmc-supply = <&mt6331_vmc_reg>; 237 vmmc-supply = <&mt6331_vmc_reg>; 238 vqmmc-supply = <&mt6331_vmch_reg>; 238 vqmmc-supply = <&mt6331_vmch_reg>; 239 status = "okay"; 239 status = "okay"; 240 }; 240 }; 241 241 242 &mt6331_vgp3_reg { 242 &mt6331_vgp3_reg { 243 regulator-min-microvolt = <1800000>; 243 regulator-min-microvolt = <1800000>; 244 }; 244 }; 245 245 246 &pio { 246 &pio { 247 disp_rst_pins: lcm-pins { 247 disp_rst_pins: lcm-pins { 248 pins-rst { 248 pins-rst { 249 pinmux = <PINMUX_GPIO1 249 pinmux = <PINMUX_GPIO106__FUNC_GPIO106>; 250 }; 250 }; 251 }; 251 }; 252 252 253 mmc0_pins_default: emmc-sdr-pins { 253 mmc0_pins_default: emmc-sdr-pins { 254 pins-cmd-dat { 254 pins-cmd-dat { 255 pinmux = <PINMUX_GPIO1 255 pinmux = <PINMUX_GPIO154__FUNC_MSDC0_DAT0>, 256 <PINMUX_GPIO1 256 <PINMUX_GPIO155__FUNC_MSDC0_DAT1>, 257 <PINMUX_GPIO1 257 <PINMUX_GPIO156__FUNC_MSDC0_DAT2>, 258 <PINMUX_GPIO1 258 <PINMUX_GPIO157__FUNC_MSDC0_DAT3>, 259 <PINMUX_GPIO1 259 <PINMUX_GPIO158__FUNC_MSDC0_DAT4>, 260 <PINMUX_GPIO1 260 <PINMUX_GPIO159__FUNC_MSDC0_DAT5>, 261 <PINMUX_GPIO1 261 <PINMUX_GPIO160__FUNC_MSDC0_DAT6>, 262 <PINMUX_GPIO1 262 <PINMUX_GPIO161__FUNC_MSDC0_DAT7>, 263 <PINMUX_GPIO1 263 <PINMUX_GPIO162__FUNC_MSDC0_CMD>; 264 input-enable; 264 input-enable; 265 bias-pull-up = <MTK_PU 265 bias-pull-up = <MTK_PUPD_SET_R1R0_01>; 266 }; 266 }; 267 267 268 pins-clk { 268 pins-clk { 269 pinmux = <PINMUX_GPIO1 269 pinmux = <PINMUX_GPIO163__FUNC_MSDC0_CLK>; 270 bias-pull-down = <MTK_ 270 bias-pull-down = <MTK_PUPD_SET_R1R0_10>; 271 }; 271 }; 272 272 273 pins-rst { 273 pins-rst { 274 pinmux = <PINMUX_GPIO1 274 pinmux = <PINMUX_GPIO165__FUNC_MSDC0_RSTB>; 275 bias-pull-up = <MTK_PU 275 bias-pull-up = <MTK_PUPD_SET_R1R0_10>; 276 }; 276 }; 277 }; 277 }; 278 278 279 mmc0_pins_uhs: emmc-uhs-pins { 279 mmc0_pins_uhs: emmc-uhs-pins { 280 pins-cmd-dat { 280 pins-cmd-dat { 281 pinmux = <PINMUX_GPIO1 281 pinmux = <PINMUX_GPIO154__FUNC_MSDC0_DAT0>, 282 <PINMUX_GPIO1 282 <PINMUX_GPIO155__FUNC_MSDC0_DAT1>, 283 <PINMUX_GPIO1 283 <PINMUX_GPIO156__FUNC_MSDC0_DAT2>, 284 <PINMUX_GPIO1 284 <PINMUX_GPIO157__FUNC_MSDC0_DAT3>, 285 <PINMUX_GPIO1 285 <PINMUX_GPIO158__FUNC_MSDC0_DAT4>, 286 <PINMUX_GPIO1 286 <PINMUX_GPIO159__FUNC_MSDC0_DAT5>, 287 <PINMUX_GPIO1 287 <PINMUX_GPIO160__FUNC_MSDC0_DAT6>, 288 <PINMUX_GPIO1 288 <PINMUX_GPIO161__FUNC_MSDC0_DAT7>, 289 <PINMUX_GPIO1 289 <PINMUX_GPIO162__FUNC_MSDC0_CMD>; 290 input-enable; 290 input-enable; 291 drive-strength = <6>; !! 291 drive-strength = <MTK_DRIVE_6mA>; 292 bias-pull-up = <MTK_PU 292 bias-pull-up = <MTK_PUPD_SET_R1R0_01>; 293 }; 293 }; 294 294 295 pins-clk { 295 pins-clk { 296 pinmux = <PINMUX_GPIO1 296 pinmux = <PINMUX_GPIO163__FUNC_MSDC0_CLK>; 297 drive-strength = <6>; !! 297 drive-strength = <MTK_DRIVE_6mA>; 298 bias-pull-down = <MTK_ 298 bias-pull-down = <MTK_PUPD_SET_R1R0_10>; 299 }; 299 }; 300 300 301 pins-rst { 301 pins-rst { 302 pinmux = <PINMUX_GPIO1 302 pinmux = <PINMUX_GPIO165__FUNC_MSDC0_RSTB>; 303 drive-strength = <6>; !! 303 drive-strength = <MTK_DRIVE_6mA>; 304 bias-pull-up = <MTK_PU 304 bias-pull-up = <MTK_PUPD_SET_R1R0_10>; 305 }; 305 }; 306 306 307 pins-ds { 307 pins-ds { 308 pinmux = <PINMUX_GPIO1 308 pinmux = <PINMUX_GPIO164__FUNC_MSDC0_DSL>; 309 drive-strength = <6>; !! 309 drive-strength = <MTK_DRIVE_6mA>; 310 bias-pull-down = <MTK_ 310 bias-pull-down = <MTK_PUPD_SET_R1R0_10>; 311 }; 311 }; 312 }; 312 }; 313 313 314 nfc_pins: nfc-pins { 314 nfc_pins: nfc-pins { 315 pins-irq { 315 pins-irq { 316 pinmux = <PINMUX_GPIO3 316 pinmux = <PINMUX_GPIO3__FUNC_GPIO3>; 317 bias-pull-down; 317 bias-pull-down; 318 input-enable; 318 input-enable; 319 }; 319 }; 320 320 321 pins-fw-ven { 321 pins-fw-ven { 322 pinmux = <PINMUX_GPIO9 322 pinmux = <PINMUX_GPIO94__FUNC_GPIO94>, 323 <PINMUX_GPIO1 323 <PINMUX_GPIO149__FUNC_GPIO149>; 324 }; 324 }; 325 }; 325 }; 326 326 327 ts_pins: touchscreen-pins { 327 ts_pins: touchscreen-pins { 328 pins-irq { 328 pins-irq { 329 pinmux = <PINMUX_GPIO6 329 pinmux = <PINMUX_GPIO6__FUNC_GPIO6>; 330 bias-pull-up; 330 bias-pull-up; 331 input-enable; 331 input-enable; 332 }; 332 }; 333 333 334 pins-rst { 334 pins-rst { 335 pinmux = <PINMUX_GPIO1 335 pinmux = <PINMUX_GPIO102__FUNC_GPIO102>; 336 output-high; 336 output-high; 337 }; 337 }; 338 }; 338 }; 339 339 340 proximity_pins: proximity-pins { 340 proximity_pins: proximity-pins { 341 pins-irq { 341 pins-irq { 342 pinmux = <PINMUX_GPIO8 342 pinmux = <PINMUX_GPIO8__FUNC_GPIO8>; 343 bias-pull-up; 343 bias-pull-up; 344 input-enable; 344 input-enable; 345 }; 345 }; 346 }; 346 }; 347 347 348 accel_pins: accelerometer-pins { 348 accel_pins: accelerometer-pins { 349 pins-irq { 349 pins-irq { 350 pinmux = <PINMUX_GPIO1 350 pinmux = <PINMUX_GPIO12__FUNC_GPIO12>; 351 bias-pull-up; 351 bias-pull-up; 352 input-enable; 352 input-enable; 353 }; 353 }; 354 }; 354 }; 355 355 356 i2c0_pins: i2c0-pins { 356 i2c0_pins: i2c0-pins { 357 pins-bus { 357 pins-bus { 358 pinmux = <PINMUX_GPIO4 358 pinmux = <PINMUX_GPIO45__FUNC_SDA0>, 359 <PINMUX_GPIO4 359 <PINMUX_GPIO46__FUNC_SCL0>; 360 input-enable; 360 input-enable; 361 }; 361 }; 362 }; 362 }; 363 363 364 i2c1_pins: i2c1-pins { 364 i2c1_pins: i2c1-pins { 365 pins-bus { 365 pins-bus { 366 pinmux = <PINMUX_GPIO1 366 pinmux = <PINMUX_GPIO125__FUNC_SDA1>, 367 <PINMUX_GPIO1 367 <PINMUX_GPIO126__FUNC_SCL1>; 368 bias-disable; 368 bias-disable; 369 }; 369 }; 370 }; 370 }; 371 371 372 i2c2_pins: i2c2-pins { 372 i2c2_pins: i2c2-pins { 373 pins-bus { 373 pins-bus { 374 pinmux = <PINMUX_GPIO4 374 pinmux = <PINMUX_GPIO43__FUNC_SDA2>, 375 <PINMUX_GPIO4 375 <PINMUX_GPIO44__FUNC_SCL2>; 376 bias-disable; 376 bias-disable; 377 }; 377 }; 378 }; 378 }; 379 379 380 i2c3_pins: i2c3-pins { 380 i2c3_pins: i2c3-pins { 381 pins-bus { 381 pins-bus { 382 pinmux = <PINMUX_GPIO1 382 pinmux = <PINMUX_GPIO136__FUNC_SDA3>, 383 <PINMUX_GPIO1 383 <PINMUX_GPIO137__FUNC_SCL3>; 384 bias-disable; 384 bias-disable; 385 }; 385 }; 386 }; 386 }; 387 387 388 i2c4_pins: i2c4-pins { 388 i2c4_pins: i2c4-pins { 389 pins-bus { 389 pins-bus { 390 pinmux = <PINMUX_GPIO1 390 pinmux = <PINMUX_GPIO100__FUNC_SDA4>, 391 <PINMUX_GPIO1 391 <PINMUX_GPIO101__FUNC_SCL4>; 392 bias-disable; 392 bias-disable; 393 }; 393 }; 394 }; 394 }; 395 395 396 uart0_pins: uart0-pins { 396 uart0_pins: uart0-pins { 397 pins-rx { 397 pins-rx { 398 pinmux = <PINMUX_GPIO1 398 pinmux = <PINMUX_GPIO113__FUNC_URXD0>; 399 bias-pull-up; 399 bias-pull-up; 400 input-enable; 400 input-enable; 401 }; 401 }; 402 pins-tx { 402 pins-tx { 403 pinmux = <PINMUX_GPIO1 403 pinmux = <PINMUX_GPIO114__FUNC_UTXD0>; 404 output-high; 404 output-high; 405 }; 405 }; 406 }; 406 }; 407 407 408 uart2_pins: uart2-pins { 408 uart2_pins: uart2-pins { 409 pins-rx { 409 pins-rx { 410 pinmux = <PINMUX_GPIO3 410 pinmux = <PINMUX_GPIO31__FUNC_URXD2>; 411 bias-pull-up; 411 bias-pull-up; 412 input-enable; 412 input-enable; 413 }; 413 }; 414 pins-tx { 414 pins-tx { 415 pinmux = <PINMUX_GPIO3 415 pinmux = <PINMUX_GPIO32__FUNC_UTXD2>; 416 }; 416 }; 417 }; 417 }; 418 }; 418 }; 419 419 420 &pmic { 420 &pmic { 421 /* 421 /* 422 * Smartphones, including the Xperia M 422 * Smartphones, including the Xperia M5, are equipped with a companion 423 * MT6332 PMIC: when this is present, 423 * MT6332 PMIC: when this is present, the main MT6331 PMIC will fire 424 * an interrupt on the companion, so w 424 * an interrupt on the companion, so we use the MT6332 IRQ GPIO. 425 */ 425 */ 426 interrupts = <GIC_SPI 160 IRQ_TYPE_LEV 426 interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>; 427 427 428 mt6332-led { 428 mt6332-led { 429 compatible = "mediatek,mt6332- 429 compatible = "mediatek,mt6332-led"; 430 #address-cells = <1>; 430 #address-cells = <1>; 431 #size-cells = <0>; 431 #size-cells = <0>; 432 432 433 pmic_bl_led: led@0 { 433 pmic_bl_led: led@0 { 434 reg = <0>; 434 reg = <0>; 435 label = "backlight-pmi 435 label = "backlight-pmic"; 436 }; 436 }; 437 }; 437 }; 438 }; 438 }; 439 439 440 &pwm0 { 440 &pwm0 { 441 status = "okay"; 441 status = "okay"; 442 }; 442 }; 443 443 444 &uart0 { 444 &uart0 { 445 status = "okay"; 445 status = "okay"; 446 446 447 pinctrl-names = "default"; 447 pinctrl-names = "default"; 448 pinctrl-0 = <&uart0_pins>; 448 pinctrl-0 = <&uart0_pins>; 449 }; 449 }; 450 450 451 &uart2 { 451 &uart2 { 452 status = "okay"; 452 status = "okay"; 453 453 454 pinctrl-names = "default"; 454 pinctrl-names = "default"; 455 pinctrl-0 = <&uart2_pins>; 455 pinctrl-0 = <&uart2_pins>; 456 }; 456 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.