| /* Copyright (c) 2012, The Linux Foundation. All rights reserved. |
| * |
| * This program is free software; you can redistribute it and/or modify |
| * it under the terms of the GNU General Public License version 2 and |
| * only version 2 as published by the Free Software Foundation. |
| * |
| * This program is distributed in the hope that it will be useful, |
| * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| * GNU General Public License for more details. |
| */ |
| |
| /dts-v1/; |
| |
| /include/ "msm8974.dtsi" |
| /include/ "dsi-panel-toshiba-720p-video.dtsi" |
| |
| / { |
| model = "Qualcomm MSM 8974 MTP"; |
| compatible = "qcom,msm8974-mtp", "qcom,msm8974"; |
| qcom,msm-id = <126 8 0>; |
| |
| serial@f991e000 { |
| status = "ok"; |
| }; |
| |
| qcom,mdss_dsi@fd922800 { |
| qcom,mdss_dsi_toshiba_720p_video { |
| status = "ok"; |
| }; |
| }; |
| |
| i2c@f9924000 { |
| atmel_mxt_ts@4a { |
| compatible = "atmel,mxt-ts"; |
| reg = <0x4a>; |
| interrupt-parent = <&msmgpio>; |
| interrupts = <61 0x2>; |
| vdd_ana-supply = <&pm8941_l18>; |
| vcc_i2c-supply = <&pm8941_lvs1>; |
| atmel,reset-gpio = <&msmgpio 60 0x00>; |
| atmel,irq-gpio = <&msmgpio 61 0x00>; |
| atmel,panel-coords = <0 0 760 1424>; |
| atmel,display-coords = <0 0 720 1280>; |
| atmel,i2c-pull-up = <1>; |
| atmel,cfg_1 { |
| atmel,family-id = <0x82>; |
| atmel,variant-id = <0x19>; |
| atmel,version = <0x10>; |
| atmel,build = <0xaa>; |
| atmel,config = [ |
| /* Object 6, Instance = 0 */ |
| 00 00 00 00 00 00 |
| /* Object 38, Instance = 0 */ |
| 15 00 02 10 08 0C 00 00 |
| /* Object 7, Instance = 0 */ |
| FF FF 32 03 |
| /* Object 8, Instance = 0 */ |
| 0F 00 0A 0A 00 00 0A 00 00 00 |
| /* Object 9, Instance = 0 */ |
| 83 00 00 18 0E 00 70 32 02 01 |
| 00 03 01 01 05 0A 0A 0A 90 05 |
| F8 02 00 00 0F 0F 00 00 48 2D |
| 07 0C 00 00 00 00 |
| /* Object 15, Instance = 0 */ |
| 00 00 00 00 00 00 00 00 00 00 |
| 00 |
| /* Object 18, Instance = 0 */ |
| 00 00 |
| /* Object 19, Instance = 0 */ |
| 00 00 00 00 00 00 |
| /* Object 23, Instance = 0 */ |
| 00 00 00 00 00 00 00 00 00 00 |
| 00 00 00 00 00 |
| /* Object 25, Instance = 0 */ |
| 00 00 00 00 00 00 00 00 00 00 |
| 00 00 00 00 00 |
| /* Object 40, Instance = 0 */ |
| 00 00 00 00 00 |
| /* Object 42, Instance = 0 */ |
| 00 00 00 00 00 00 00 00 00 00 |
| /* Object 46, Instance = 0 */ |
| 00 00 10 10 00 00 03 00 00 01 |
| /* Object 47, Instance = 0 */ |
| 08 0A 28 0A 02 0A 00 8C 00 20 |
| 00 00 00 |
| /* Object 55, Instance = 0 */ |
| 00 00 00 00 00 00 |
| /* Object 56, Instance = 0 */ |
| 03 00 01 18 05 05 05 05 05 05 |
| 05 05 05 05 05 05 05 05 05 05 |
| 05 05 05 05 05 05 05 05 00 00 |
| 00 00 00 00 00 00 00 00 00 00 |
| 00 00 |
| /* Object 57, Instance = 0 */ |
| 00 00 00 |
| /* Object 61, Instance = 0 */ |
| 00 00 00 00 00 |
| /* Object 61, Instance = 1 */ |
| 00 00 00 00 00 |
| /* Object 62, Instance = 0 */ |
| 7F 03 00 16 00 00 00 00 00 00 |
| 04 08 10 18 05 00 0A 05 05 50 |
| 14 19 34 1A 64 00 00 04 40 00 |
| 00 00 00 00 30 32 02 00 01 00 |
| 05 00 00 00 00 00 00 00 00 00 |
| 00 00 0C 00 |
| ]; |
| }; |
| }; |
| }; |
| |
| gpio_keys { |
| compatible = "gpio-keys"; |
| input-name = "gpio-keys"; |
| |
| camera_snapshot { |
| label = "camera_snapshot"; |
| gpios = <&pm8941_gpios 3 0x1>; |
| linux,input-type = <1>; |
| linux,code = <0x2fe>; |
| gpio-key,wakeup; |
| debounce-interval = <15>; |
| }; |
| |
| camera_focus { |
| label = "camera_focus"; |
| gpios = <&pm8941_gpios 4 0x1>; |
| linux,input-type = <1>; |
| linux,code = <0x210>; |
| gpio-key,wakeup; |
| debounce-interval = <15>; |
| }; |
| |
| vol_up { |
| label = "volume_up"; |
| gpios = <&pm8941_gpios 5 0x1>; |
| linux,input-type = <1>; |
| linux,code = <115>; |
| gpio-key,wakeup; |
| debounce-interval = <15>; |
| }; |
| }; |
| |
| spi@f9923000 { |
| ethernet-switch@2 { |
| compatible = "micrel,ks8851"; |
| reg = <2>; |
| interrupt-parent = <&msmgpio>; |
| interrupts = <94 0>; |
| spi-max-frequency = <4800000>; |
| rst-gpio = <&pm8941_mpps 6 0>; |
| vdd-io-supply = <&spi_eth_vreg>; |
| vdd-phy-supply = <&spi_eth_vreg>; |
| }; |
| }; |
| }; |
| |
| &sdcc2 { |
| #address-cells = <0>; |
| interrupt-parent = <&sdcc2>; |
| interrupts = <0 1 2>; |
| #interrupt-cells = <1>; |
| interrupt-map-mask = <0xffffffff>; |
| interrupt-map = <0 &intc 0 125 0 |
| 1 &intc 0 220 0 |
| 2 &msmgpio 62 0x3>; |
| interrupt-names = "core_irq", "bam_irq", "status_irq"; |
| cd-gpios = <&msmgpio 62 0x1>; |
| }; |
| |
| &pm8941_gpios { |
| gpio@c000 { /* GPIO 1 */ |
| }; |
| |
| gpio@c100 { /* GPIO 2 */ |
| }; |
| |
| gpio@c200 { /* GPIO 3 */ |
| qcom,mode = <0>; |
| qcom,pull = <0>; |
| qcom,vin-sel = <2>; |
| qcom,select = <0>; |
| }; |
| |
| gpio@c300 { /* GPIO 4 */ |
| qcom,mode = <0>; |
| qcom,pull = <0>; |
| qcom,vin-sel = <2>; |
| qcom,select = <0>; |
| }; |
| |
| gpio@c400 { /* GPIO 5 */ |
| qcom,mode = <0>; |
| qcom,pull = <0>; |
| qcom,vin-sel = <2>; |
| qcom,select = <0>; |
| }; |
| |
| gpio@c500 { /* GPIO 6 */ |
| }; |
| |
| gpio@c600 { /* GPIO 7 */ |
| }; |
| |
| gpio@c700 { /* GPIO 8 */ |
| }; |
| |
| gpio@c800 { /* GPIO 9 */ |
| }; |
| |
| gpio@c900 { /* GPIO 10 */ |
| }; |
| |
| gpio@ca00 { /* GPIO 11 */ |
| }; |
| |
| gpio@cb00 { /* GPIO 12 */ |
| }; |
| |
| gpio@cc00 { /* GPIO 13 */ |
| }; |
| |
| gpio@cd00 { /* GPIO 14 */ |
| }; |
| |
| gpio@ce00 { /* GPIO 15 */ |
| qcom,mode = <1>; |
| qcom,output-type = <0>; |
| qcom,pull = <5>; |
| qcom,vin-sel = <2>; |
| qcom,out-strength = <3>; |
| qcom,src-select = <2>; |
| qcom,master-en = <1>; |
| }; |
| |
| gpio@cf00 { /* GPIO 16 */ |
| }; |
| |
| gpio@d000 { /* GPIO 17 */ |
| }; |
| |
| gpio@d100 { /* GPIO 18 */ |
| }; |
| |
| gpio@d200 { /* GPIO 19 */ |
| qcom,mode = <1>; /* QPNP_PIN_MODE_DIG_OUT */ |
| qcom,output-type = <0>; /* QPNP_PIN_OUT_BUF_CMOS */ |
| qcom,pull = <5>; /* QPNP_PIN_PULL_NO */ |
| qcom,vin-sel = <2>; /* QPNP_PIN_VIN2 */ |
| qcom,out-strength = <2>; /* QPNP_PIN_OUT_STRENGTH_MED */ |
| qcom,src-select = <0>; /* QPNP_PIN_SEL_FUNC_CONSTANT */ |
| qcom,master-en = <1>; |
| }; |
| |
| gpio@d300 { /* GPIO 20 */ |
| }; |
| |
| gpio@d400 { /* GPIO 21 */ |
| }; |
| |
| gpio@d500 { /* GPIO 22 */ |
| }; |
| |
| gpio@d600 { /* GPIO 23 */ |
| }; |
| |
| gpio@d700 { /* GPIO 24 */ |
| }; |
| |
| gpio@d800 { /* GPIO 25 */ |
| }; |
| |
| gpio@d900 { /* GPIO 26 */ |
| }; |
| |
| gpio@da00 { /* GPIO 27 */ |
| }; |
| |
| gpio@db00 { /* GPIO 28 */ |
| }; |
| |
| gpio@dc00 { /* GPIO 29 */ |
| qcom,pull = <0>; /* set to default pull */ |
| qcom,master-en = <1>; |
| qcom,vin-sel = <2>; /* select 1.8 V source */ |
| }; |
| |
| gpio@dd00 { /* GPIO 30 */ |
| }; |
| |
| gpio@de00 { /* GPIO 31 */ |
| }; |
| |
| gpio@df00 { /* GPIO 32 */ |
| }; |
| |
| gpio@e000 { /* GPIO 33 */ |
| }; |
| |
| gpio@e100 { /* GPIO 34 */ |
| }; |
| |
| gpio@e200 { /* GPIO 35 */ |
| }; |
| |
| gpio@e300 { /* GPIO 36 */ |
| }; |
| }; |
| |
| &pm8941_mpps { |
| |
| mpp@a000 { /* MPP 1 */ |
| }; |
| |
| mpp@a100 { /* MPP 2 */ |
| }; |
| |
| mpp@a200 { /* MPP 3 */ |
| }; |
| |
| mpp@a300 { /* MPP 4 */ |
| }; |
| |
| mpp@a400 { /* MPP 5 */ |
| /* SPI_ETH config */ |
| qcom,mode = <1>; /* DIG_OUT */ |
| qcom,output-type = <0>; /* CMOS */ |
| qcom,vin-sel = <2>; /* PM8941_S3 1.8V > 1.6V */ |
| qcom,src-select = <0>; /* CONSTANT */ |
| qcom,master-en = <1>; /* ENABLE MPP */ |
| }; |
| |
| mpp@a500 { /* MPP 6 */ |
| /* SPI_ETH_RST config */ |
| qcom,mode = <1>; /* DIG_OUT */ |
| qcom,output-type = <0>; /* CMOS */ |
| qcom,vin-sel = <2>; /* PM8941_S3 1.8V > 1.6V */ |
| qcom,src-select = <0>; /* CONSTANT */ |
| qcom,master-en = <1>; /* ENABLE MPP */ |
| }; |
| |
| mpp@a600 { /* MPP 7 */ |
| }; |
| |
| mpp@a700 { /* MPP 8 */ |
| }; |
| }; |
| |
| &pm8841_mpps { |
| |
| mpp@a000 { /* MPP 1 */ |
| }; |
| |
| mpp@a100 { /* MPP 2 */ |
| }; |
| |
| mpp@a200 { /* MPP 3 */ |
| }; |
| |
| mpp@a300 { /* MPP 4 */ |
| }; |
| }; |