From 4b8f5d1b63f567ecb31e673b5e51f1cd7ce93fab Mon Sep 17 00:00:00 2001 From: VijayKumar Gn Date: Tue, 10 Jun 2014 15:05:59 -0500 Subject: [PATCH] arm/dts: Thea: Create DTS for Thea Titan LTE product, requires new DTS files for proper configuration Following are the Difference b/w Thea v/s Titan 1. mmi,user-reset-warning: GPIO_69: Not applicable for Thea 2. Thea is 8926, need to include 8926 specific DTSI files 3. DTV is not available - Remove GPIO_000/1/3 & nmi326@0 4. GPIO_69: Need to be configure as TP_AVDD_EN 5. GPIO_073: Need to Remove, Titan Uses this pin for TP_AVDD_EN & Not applicable for Thea 6. GPIO_034: Need to Remove, Thea uses for HAPTICS_CLK 7. GPIO_114: Need to be configure as FCAM_AVDD_EN 8. GPIO_21: Configure this GPIO pin with TESTPOINT configuration Tested: Tested on Titan-3G for Thea Build with Thea related LK Changes 1. ADB Shell Works Properly 2. Touch Not working - Expected, 3G uses different GPIO than Thea 3. DTV Driver is not getting initialized - As Expected 4. Front Camera Probe Failing - As Expected Change-Id: I504744cd2bfed9f134fd2e395b743719c133b9d4 Signed-off-by: VijayKumar Gn Reviewed-on: http://gerrit.mot.com/630577 Tested-by: Jira Key Reviewed-by: Ravikumar Vembu Reviewed-by: Kuldeep Prabhakar Ghan SLTApproved: Christopher Fries Submit-Approved: Jira Key --- .../boot/dts/msm8226-camera-sensor-titan.dtsi | 2 +- arch/arm/boot/dts/msm8926-thea-common.dtsi | 48 ++++++++++++ arch/arm/boot/dts/msm8926-thea-gpiomux.dtsi | 74 +++++++++++++++++++ arch/arm/boot/dts/msm8926-thea-p1.dts | 21 ++++++ arch/arm/mach-msm/Makefile.boot | 1 + 5 files changed, 145 insertions(+), 1 deletion(-) create mode 100644 arch/arm/boot/dts/msm8926-thea-common.dtsi create mode 100644 arch/arm/boot/dts/msm8926-thea-gpiomux.dtsi create mode 100644 arch/arm/boot/dts/msm8926-thea-p1.dts diff --git a/arch/arm/boot/dts/msm8226-camera-sensor-titan.dtsi b/arch/arm/boot/dts/msm8226-camera-sensor-titan.dtsi index a8c035bba2b94..2f9fcf779641b 100644 --- a/arch/arm/boot/dts/msm8226-camera-sensor-titan.dtsi +++ b/arch/arm/boot/dts/msm8226-camera-sensor-titan.dtsi @@ -80,7 +80,7 @@ status = "ok"; }; - qcom,camera@32 { + imx132: qcom,camera@32 { compatible = "qcom,imx132"; reg = <0x32>; qcom,slave-id = <0x6c 0x0 0x0132>; diff --git a/arch/arm/boot/dts/msm8926-thea-common.dtsi b/arch/arm/boot/dts/msm8926-thea-common.dtsi new file mode 100644 index 0000000000000..7e2181be1ccae --- /dev/null +++ b/arch/arm/boot/dts/msm8926-thea-common.dtsi @@ -0,0 +1,48 @@ +/* Copyright (c) 2014, Motorola Mobility LLC. 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. + */ + +/include/ "msm8226-titan-common.dtsi" +/include/ "msm8226-v1-pm.dtsi" +/include/ "msm8926-thea-gpiomux.dtsi" + +/ { + model = "Motorola QC-MSM8226 Thea"; + compatible = "qcom,msm8226-Thea", + "qcom,msm8226-moto", + "qcom,msm8226"; +}; + + +&soc { + + spi@f9923000 { + /delete-node/ nmi326@0; /* Remove DTV */ + }; +}; + +&vdd_touch_vreg { + /delete-property/ gpio; + gpio = <&msmgpio 69 0x0>; +}; + +&vddio_disp_vreg { + /delete-property/ gpio; + gpio = <&msmgpio 114 0x0>; +}; + +&imx132 { + /delete-property/ gpios; + gpios = <&msmgpio 26 0>, + <&msmgpio 36 0>, + <&msmgpio 114 0>, + <&msmgpio 35 0>; +}; diff --git a/arch/arm/boot/dts/msm8926-thea-gpiomux.dtsi b/arch/arm/boot/dts/msm8926-thea-gpiomux.dtsi new file mode 100644 index 0000000000000..a77a469394c6f --- /dev/null +++ b/arch/arm/boot/dts/msm8926-thea-gpiomux.dtsi @@ -0,0 +1,74 @@ +/* Copyright (c) 2014, Motorola Mobility LLC. 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. + */ + +&soc { + gpiomux { + /delete-node/ pin@fd51000; /* Remove GPIO_000 */ + /delete-node/ pin@fd51010; /* Remove GPIO_001 */ + /delete-node/ pin@fd51030; /* Remove GPIO_003 */ + /delete-node/ pin@fd51220; /* Remove GPIO_034 */ + /delete-node/ pin@fd51490; /* Remove GPIO_073 */ + + pin@fd51150 { + reg = <0xfd511150 0x10>; /* TESTPOINT */ + qcom,pin-num = <21>; + qcom,active@0 { + qcom,func = <1>; /* blsp1_0 */ + qcom,pull = <0>; /* none */ + qcom,drv = <3>; /* 8ma */ + qcom,dir = <0>; /* input */ + }; + qcom,suspend@1 { + qcom,func = <1>; /* blsp1_1 */ + qcom,pull = <0>; /* none */ + qcom,drv = <3>; /* 8ma */ + qcom,dir = <0>; /* input */ + }; + }; + + pin@fd51450 { + reg = <0xfd511450 0x10>; /* TP_AVDD_EN */ + qcom,pin-num = <69>; + qcom,active@0 { + qcom,func = <0>; /* gpio_in_out(69) */ + qcom,pull = <3>; /* pullup */ + qcom,drv = <0>; /* 2ma */ + qcom,dir = <1>; /* output high */ + }; + qcom,suspend@1 { + qcom,func = <0>; /* gpio_in_out(69) */ + qcom,pull = <1>; /* down */ + qcom,drv = <0>; /* 2ma */ + qcom,dir = <0>; /* input */ + }; + }; + + pin@fd51720 { + reg = <0xfd511720 0x10>; /* DISP_VDDIO_EN */ + qcom,pin-num = <114>; + qcom,active@0 { + qcom,func = <0>; /* gpio_in_out(114) */ + qcom,pull = <0>; /* none */ + qcom,drv = <0>; /* 2ma */ + qcom,dir = <1>; /* output high */ + }; + qcom,suspend@1 { + qcom,func = <0>; /* gpio_in_out(114) */ + qcom,pull = <0>; /* none */ + qcom,drv = <0>; /* 2ma */ + qcom,dir = <1>; /* output high */ + }; + }; + + + }; +}; diff --git a/arch/arm/boot/dts/msm8926-thea-p1.dts b/arch/arm/boot/dts/msm8926-thea-p1.dts new file mode 100644 index 0000000000000..f5992ab00a8e9 --- /dev/null +++ b/arch/arm/boot/dts/msm8926-thea-p1.dts @@ -0,0 +1,21 @@ +/* Copyright (c) 2014, Motorola Mobility LLC + * + * 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/ "msm8226-moto-reserve.dtsi" +/include/ "msm8926.dtsi" +/include/ "msm8926-thea-common.dtsi" + +/ { + qcom,msm-id = <145 0x51 0x8100>, <145 0x52 0x8100>, <145 0x53 0x8100>, <145 0x54 0x8100>, <145 0x55 0x8100>; +}; diff --git a/arch/arm/mach-msm/Makefile.boot b/arch/arm/mach-msm/Makefile.boot index 6a77814ebe3e2..25e08c71d1e80 100644 --- a/arch/arm/mach-msm/Makefile.boot +++ b/arch/arm/mach-msm/Makefile.boot @@ -153,6 +153,7 @@ endif # MSM8226 Motorola Devices ifeq ($(CONFIG_MMI_TITAN_DTB),y) dtb-$(CONFIG_ARCH_MSM8226) += msm8226-titan.dtb +dtb-$(CONFIG_ARCH_MSM8226) += msm8926-thea-p1.dtb else ifeq ($(CONFIG_MMI_PEREGRINE_DTB),y) dtb-$(CONFIG_ARCH_MSM8226) += msm8926-peregrine-p1.dtb dtb-$(CONFIG_ARCH_MSM8226) += msm8926-peregrine-p1c.dtb