diff options
author | Chetan C R <cravin@codeaurora.org> | 2018-09-05 13:51:00 +0530 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2018-10-23 00:15:02 -0700 |
commit | fe28e76e32363df973288beef2cfc17f672118fa (patch) | |
tree | 1ef1635728a0b09ca6515b6bceac96037b6767df | |
parent | 6a163984cd177044c9f48abba33ef9eb343257ba (diff) |
ARM: dts: msm: Add device tree support for msm8940LA.UM.7.6.2.r1-03700-89xx.0
Add initial set of device tree files to build the
msm8940 target. This implementation is based on
snapshot of the msm8940 device tree from msm-3.18.
commit d0eb392e8733c
("ARM: dts: msm: Add support for MSM8940").
Change-Id: Icc0d37dbde746b9ad82286c192585d7d047ba70e
Signed-off-by: Naitik Bharadiya <bharad@codeaurora.org>
Signed-off-by: Chetan C R <cravin@codeaurora.org>
-rw-r--r-- | Documentation/devicetree/bindings/arm/msm/msm.txt | 4 | ||||
-rw-r--r-- | arch/arm/mach-qcom/Kconfig | 29 | ||||
-rw-r--r-- | arch/arm/mach-qcom/Makefile | 1 | ||||
-rw-r--r-- | arch/arm/mach-qcom/board-msm8940.c | 32 | ||||
-rw-r--r-- | arch/arm64/Kconfig.platforms | 9 | ||||
-rw-r--r-- | arch/arm64/boot/dts/qcom/Makefile | 4 | ||||
-rw-r--r-- | arch/arm64/boot/dts/qcom/msm8940-mtp.dtsi | 18 | ||||
-rw-r--r-- | arch/arm64/boot/dts/qcom/msm8940-pinctrl.dtsi | 17 | ||||
-rw-r--r-- | arch/arm64/boot/dts/qcom/msm8940-pmi8937-mtp.dts | 24 | ||||
-rw-r--r-- | arch/arm64/boot/dts/qcom/msm8940-pmi8937-mtp.dtsi | 43 | ||||
-rw-r--r-- | arch/arm64/boot/dts/qcom/msm8940-pmi8940-mtp.dts | 25 | ||||
-rw-r--r-- | arch/arm64/boot/dts/qcom/msm8940-pmi8940-mtp.dtsi | 18 | ||||
-rw-r--r-- | arch/arm64/boot/dts/qcom/msm8940-pmi8940.dtsi | 25 | ||||
-rw-r--r-- | arch/arm64/boot/dts/qcom/msm8940-pmi8950-mtp.dts | 24 | ||||
-rw-r--r-- | arch/arm64/boot/dts/qcom/msm8940-pmi8950-mtp.dtsi | 18 | ||||
-rw-r--r-- | arch/arm64/boot/dts/qcom/msm8940.dtsi | 667 | ||||
-rw-r--r-- | drivers/pinctrl/qcom/Kconfig | 10 | ||||
-rw-r--r-- | drivers/soc/qcom/socinfo.c | 7 | ||||
-rw-r--r-- | include/soc/qcom/socinfo.h | 4 |
19 files changed, 979 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/arm/msm/msm.txt b/Documentation/devicetree/bindings/arm/msm/msm.txt index 0319e2fb2c6d..ab58089ad2cc 100644 --- a/Documentation/devicetree/bindings/arm/msm/msm.txt +++ b/Documentation/devicetree/bindings/arm/msm/msm.txt @@ -68,6 +68,9 @@ SoCs: - MSM8917 compatible = "qcom,msm8917" +- MSM8940 + compatible = "qcom,msm8940" + - MSM8936 compatible = "qcom,msm8936" @@ -279,6 +282,7 @@ compatible = "qcom,msm8917-mtp" compatible = "qcom,msm8917-rumi" compatible = "qcom,msm8917-qrd" compatible = "qcom,msm8917-qrd-sku5" +compatible = "qcom,msm8940-mtp" compatible = "qcom,msm8926-cdp" compatible = "qcom,msm8926-mtp" compatible = "qcom,msm8926-qrd" diff --git a/arch/arm/mach-qcom/Kconfig b/arch/arm/mach-qcom/Kconfig index 6b4373368b62..dcf6cf7361b2 100644 --- a/arch/arm/mach-qcom/Kconfig +++ b/arch/arm/mach-qcom/Kconfig @@ -126,6 +126,35 @@ config ARCH_MSM8917 select HAVE_CLK_PREPARE select COMMON_CLK_MSM +config ARCH_MSM8940 + bool "MSM8940" + select MSM_CORTEX_A53 + select ARCH_MSM_CORTEXMP + select CPU_V7 + select HAVE_SMP + select ARM_GIC + select MSM_IRQ + select SPARSE_IRQ + select MULTI_IRQ_HANDLER + select HAVE_ARM_ARCH_TIMER + select MAY_HAVE_SPARSE_IRQ + select PINCTRL + select PINCTRL_MSM_TLMM + select USE_PINCTRL_IRQ + select MSM_PM if PM + select QMI_ENCDEC + select CPU_FREQ + select CPU_FREQ_MSM + select PM_DEVFREQ + select MSM_DEVFREQ_DEVBW + select DEVFREQ_SIMPLE_DEV + select DEVFREQ_GOV_MSM_BW_HWMON + select MSM_BIMC_BWMON + select MSM_QDSP6V2_CODECS + select MSM_AUDIO_QDSP6V2 if SND_SOC + select ARM_HAS_SG_CHAIN + select MSM_JTAGV8 if CORESIGHT_ETMV4 + config ARCH_SDM439 bool "Enable support for SDM439" select CPU_V7 diff --git a/arch/arm/mach-qcom/Makefile b/arch/arm/mach-qcom/Makefile index 3ef169f806c9..f5a512192681 100644 --- a/arch/arm/mach-qcom/Makefile +++ b/arch/arm/mach-qcom/Makefile @@ -6,6 +6,7 @@ obj-$(CONFIG_ARCH_MSM8953) += board-msm8953.o obj-$(CONFIG_ARCH_MSM8937) += board-msm8937.o obj-$(CONFIG_ARCH_MSM8909) += board-msm8909.o obj-$(CONFIG_ARCH_MSM8917) += board-msm8917.o +obj-$(CONFIG_ARCH_MSM8940) += board-msm8940.o obj-$(CONFIG_ARCH_SDM429) += board-sdm429.o obj-$(CONFIG_ARCH_SDM439) += board-sdm439.o obj-$(CONFIG_ARCH_SDM450) += board-sdm450.o diff --git a/arch/arm/mach-qcom/board-msm8940.c b/arch/arm/mach-qcom/board-msm8940.c new file mode 100644 index 000000000000..3e60902551aa --- /dev/null +++ b/arch/arm/mach-qcom/board-msm8940.c @@ -0,0 +1,32 @@ +/* + * Copyright (c) 2016, 2018, 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. + */ + +#include <linux/kernel.h> +#include <asm/mach/arch.h> +#include "board-dt.h" + +static const char *msm8940_dt_match[] __initconst = { + "qcom,msm8940", + NULL +}; + +static void __init msm8940_init(void) +{ + board_dt_populate(NULL); +} + +DT_MACHINE_START(MSM8940_DT, + "Qualcomm Technologies, Inc. MSM8940-PMI8950 MTP") + .init_machine = msm8940_init, + .dt_compat = msm8940_dt_match, +MACHINE_END diff --git a/arch/arm64/Kconfig.platforms b/arch/arm64/Kconfig.platforms index 4c013ad50189..85546410ed4d 100644 --- a/arch/arm64/Kconfig.platforms +++ b/arch/arm64/Kconfig.platforms @@ -166,6 +166,15 @@ config ARCH_MSM8937 This enables support for the MSM8937 chipset. If you do not wish to build a kernel that runs on this chipset, say 'N' here. +config ARCH_MSM8940 + bool "Enable Support for Qualcomm Technologies Inc. MSM8940" + depends on ARCH_QCOM + select CPU_FREQ_QCOM + select COMMON_CLK_MSM + help + This enables support for the MSM8940 chipset. If you do not + wish to build a kernel that runs on this chipset, say 'N' here. + config ARCH_MSM8917 bool "Enable Support for Qualcomm Technologies Inc. MSM8917" depends on ARCH_QCOM diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile index 8b0013f6c989..b6bdfa373a51 100644 --- a/arch/arm64/boot/dts/qcom/Makefile +++ b/arch/arm64/boot/dts/qcom/Makefile @@ -522,6 +522,10 @@ dtb-$(CONFIG_ARCH_MSM8937) += msm8937-pmi8950-mtp.dtb \ msm8937-interposer-sdm429-cdp.dtb \ msm8937-interposer-sdm429-mtp.dtb +dtb-$(CONFIG_ARCH_MSM8940) += msm8940-pmi8937-mtp.dtb \ + msm8940-pmi8950-mtp.dtb \ + msm8940-pmi8940-mtp.dtb + dtb-$(CONFIG_ARCH_MSM8917) += msm8917-pmi8950-mtp.dtb \ msm8917-pmi8950-cdp.dtb \ msm8917-pmi8950-rcm.dtb \ diff --git a/arch/arm64/boot/dts/qcom/msm8940-mtp.dtsi b/arch/arm64/boot/dts/qcom/msm8940-mtp.dtsi new file mode 100644 index 000000000000..4414279a0433 --- /dev/null +++ b/arch/arm64/boot/dts/qcom/msm8940-mtp.dtsi @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2016, 2018, 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. + */ + +#include "msm8937-mtp.dtsi" +#include "msm8940-pinctrl.dtsi" + +&soc { +}; diff --git a/arch/arm64/boot/dts/qcom/msm8940-pinctrl.dtsi b/arch/arm64/boot/dts/qcom/msm8940-pinctrl.dtsi new file mode 100644 index 000000000000..55933b93a1f3 --- /dev/null +++ b/arch/arm64/boot/dts/qcom/msm8940-pinctrl.dtsi @@ -0,0 +1,17 @@ +/* + * Copyright (c) 2016, 2018, 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. + */ + +#include "msm8937-pinctrl.dtsi" + +&soc { +}; diff --git a/arch/arm64/boot/dts/qcom/msm8940-pmi8937-mtp.dts b/arch/arm64/boot/dts/qcom/msm8940-pmi8937-mtp.dts new file mode 100644 index 000000000000..386badde33b1 --- /dev/null +++ b/arch/arm64/boot/dts/qcom/msm8940-pmi8937-mtp.dts @@ -0,0 +1,24 @@ +/* + * Copyright (c) 2016, 2018, 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 "msm8940.dtsi" +#include "msm8940-pmi8937-mtp.dtsi" + +/ { + model = "Qualcomm Technologies, Inc. MSM8940-PMI8937 MTP"; + compatible = "qcom,msm8940-mtp", "qcom,msm8940", "qcom,mtp"; + qcom,board-id= <8 0>; + qcom,pmic-id = <0x10019 0x020037 0x0 0x0>; +}; diff --git a/arch/arm64/boot/dts/qcom/msm8940-pmi8937-mtp.dtsi b/arch/arm64/boot/dts/qcom/msm8940-pmi8937-mtp.dtsi new file mode 100644 index 000000000000..a1e7bcbd556b --- /dev/null +++ b/arch/arm64/boot/dts/qcom/msm8940-pmi8937-mtp.dtsi @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2016, 2018, 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. + */ + +#include "pmi8937.dtsi" +#include "msm8937-mtp.dtsi" +#include "msm8940-mtp.dtsi" + +&soc { + led_flash0: qcom,camera-flash { + cell-index = <0>; + compatible = "qcom,camera-flash"; + qcom,flash-type = <1>; + qcom,flash-source = <&pmi8937_flash0 &pmi8937_flash1>; + qcom,torch-source = <&pmi8937_torch0 &pmi8937_torch1>; + qcom,switch-source = <&pmi8937_switch>; + }; +}; + +&vendor { + mtp_batterydata: qcom,battery-data { + qcom,batt-id-range-pct = <15>; + #include "batterydata-itech-3000mah.dtsi" + #include "batterydata-ascent-3450mAh.dtsi" + }; +}; + +&qpnp_fg { + qcom,battery-data = <&mtp_batterydata>; +}; + +&qpnp_smbcharger { + qcom,battery-data = <&mtp_batterydata>; +}; diff --git a/arch/arm64/boot/dts/qcom/msm8940-pmi8940-mtp.dts b/arch/arm64/boot/dts/qcom/msm8940-pmi8940-mtp.dts new file mode 100644 index 000000000000..51a34d488ab3 --- /dev/null +++ b/arch/arm64/boot/dts/qcom/msm8940-pmi8940-mtp.dts @@ -0,0 +1,25 @@ +/* + * Copyright (c) 2016, 2018, 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 "msm8940.dtsi" +#include "msm8940-mtp.dtsi" +#include "msm8940-pmi8940.dtsi" + +/ { + model = "Qualcomm Technologies, Inc. MSM8940-PMI8940 MTP"; + compatible = "qcom,msm8940-mtp", "qcom,msm8940", "qcom,mtp"; + qcom,board-id= <8 0>; + qcom,pmic-id = <0x10019 0x020040 0x0 0x0>; +}; diff --git a/arch/arm64/boot/dts/qcom/msm8940-pmi8940-mtp.dtsi b/arch/arm64/boot/dts/qcom/msm8940-pmi8940-mtp.dtsi new file mode 100644 index 000000000000..3cc12e360fcf --- /dev/null +++ b/arch/arm64/boot/dts/qcom/msm8940-pmi8940-mtp.dtsi @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2016, 2018, 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. + */ + +#include "msm8937-pmi8940-mtp.dtsi" +#include "msm8940-mtp.dtsi" + +&soc { +}; diff --git a/arch/arm64/boot/dts/qcom/msm8940-pmi8940.dtsi b/arch/arm64/boot/dts/qcom/msm8940-pmi8940.dtsi new file mode 100644 index 000000000000..d9baecaa36b4 --- /dev/null +++ b/arch/arm64/boot/dts/qcom/msm8940-pmi8940.dtsi @@ -0,0 +1,25 @@ +/* + * Copyright (c) 2018, 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. + */ +#include "pmi8940.dtsi" + +&soc { + led_flash0: qcom,camera-flash { + cell-index = <0>; + compatible = "qcom,camera-flash"; + qcom,flash-type = <1>; + qcom,flash-source = <&pmi8940_flash0 &pmi8940_flash1>; + qcom,torch-source = <&pmi8940_torch0 &pmi8940_torch1>; + qcom,switch-source = <&pmi8940_switch>; + }; +}; + diff --git a/arch/arm64/boot/dts/qcom/msm8940-pmi8950-mtp.dts b/arch/arm64/boot/dts/qcom/msm8940-pmi8950-mtp.dts new file mode 100644 index 000000000000..ff6d208ae132 --- /dev/null +++ b/arch/arm64/boot/dts/qcom/msm8940-pmi8950-mtp.dts @@ -0,0 +1,24 @@ +/* + * Copyright (c) 2016, 2018, 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 "msm8940.dtsi" +#include "msm8940-pmi8950-mtp.dtsi" + +/ { + model = "Qualcomm Technologies, Inc. MSM8940-PMI8950 MTP"; + compatible = "qcom,msm8940-mtp", "qcom,msm8940", "qcom,mtp"; + qcom,board-id= <8 0>; + qcom,pmic-id = <0x10019 0x020011 0x0 0x0>; +}; diff --git a/arch/arm64/boot/dts/qcom/msm8940-pmi8950-mtp.dtsi b/arch/arm64/boot/dts/qcom/msm8940-pmi8950-mtp.dtsi new file mode 100644 index 000000000000..5f3f3b72f339 --- /dev/null +++ b/arch/arm64/boot/dts/qcom/msm8940-pmi8950-mtp.dtsi @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2016, 2018, 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. + */ + +#include "msm8937-pmi8950-mtp.dtsi" +#include "msm8940-mtp.dtsi" + +&soc { +}; diff --git a/arch/arm64/boot/dts/qcom/msm8940.dtsi b/arch/arm64/boot/dts/qcom/msm8940.dtsi new file mode 100644 index 000000000000..b7a5e0287098 --- /dev/null +++ b/arch/arm64/boot/dts/qcom/msm8940.dtsi @@ -0,0 +1,667 @@ +/* + * Copyright (c) 2016-2018, 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. + */ + +#include "skeleton64.dtsi" +#include "msm8937.dtsi" + +/ { + model = "Qualcomm Technologies, Inc. MSM8940"; + compatible = "qcom,msm8940"; + qcom,msm-id = <313 0x0>; + + soc: soc { }; + +}; + +&usb_otg { + + /delete-property/ clocks; + clocks = <&clock_gcc clk_gcc_usb_hs_ahb_clk>, + <&clock_gcc clk_gcc_usb_hs_system_clk>, + <&clock_gcc clk_gcc_usb2a_phy_sleep_clk>, + <&clock_gcc clk_bimc_usb_clk>, + <&clock_gcc clk_snoc_usb_clk>, + <&clock_gcc clk_pnoc_usb_clk>, + <&clock_gcc clk_gcc_qusb2_phy_clk>, + <&clock_gcc clk_gcc_usb2_hs_phy_only_clk>, + <&clock_gcc clk_gcc_usb_hs_phy_cfg_ahb_clk>, + <&clock_gcc clk_xo_otg_clk>; + + qcom,usbbam@78c4000 { + /delete-property/ qcom,reset-bam-on-disconnect; + /delete-node/ qcom,pipe0; + qcom,pipe0 { + label = "hsusb-ipa-out-0"; + qcom,usb-bam-mem-type = <1>; + qcom,dir = <0>; + qcom,pipe-num = <0>; + qcom,peer-bam = <1>; + qcom,src-bam-pipe-index = <1>; + qcom,data-fifo-size = <0x8000>; + qcom,descriptor-fifo-size = <0x2000>; + }; + qcom,pipe1 { + label = "hsusb-ipa-in-0"; + qcom,usb-bam-mem-type = <1>; + qcom,dir = <1>; + qcom,pipe-num = <0>; + qcom,peer-bam = <1>; + qcom,dst-bam-pipe-index = <0>; + qcom,data-fifo-size = <0x8000>; + qcom,descriptor-fifo-size = <0x2000>; + }; + qcom,pipe2 { + label = "hsusb-qdss-in-0"; + qcom,usb-bam-mem-type = <2>; + qcom,dir = <1>; + qcom,pipe-num = <0>; + qcom,peer-bam = <0>; + qcom,peer-bam-physical-address = <0x6044000>; + qcom,src-bam-pipe-index = <0>; + qcom,dst-bam-pipe-index = <2>; + qcom,data-fifo-offset = <0x0>; + qcom,data-fifo-size = <0xe00>; + qcom,descriptor-fifo-offset = <0xe00>; + qcom,descriptor-fifo-size = <0x200>; + }; + qcom,pipe3 { + label = "hsusb-dpl-ipa-in-1"; + qcom,usb-bam-mem-type = <1>; + qcom,dir = <1>; + qcom,pipe-num = <1>; + qcom,peer-bam = <1>; + qcom,dst-bam-pipe-index = <3>; + qcom,data-fifo-size = <0x8000>; + qcom,descriptor-fifo-size = <0x2000>; + }; + }; +}; + +&ad_hoc_bus { + mas_ipa: mas-ipa { + cell-id = <MSM_BUS_MASTER_IPA>; + label = "mas-ipa"; + qcom,buswidth = <8>; + qcom,agg-ports = <1>; + qcom,ap-owned; + qcom,qport = <14>; + qcom,qos-mode = "fixed"; + qcom,connections = <&snoc_int_1 &slv_snoc_bimc_1>; + qcom,prio1 = <0>; + qcom,prio0 = <0>; + qcom,bus-dev = <&fab_snoc>; + qcom,mas-rpm-id = <ICBID_MASTER_IPA>; + }; +}; + +&soc { + devfreq_spdm_cpu { + compatible = "qcom,devfreq_spdm"; + qcom,bw-dwnstep = <4000>; + qcom,max-vote = <4000>; + }; +}; + +&clock_gcc { + compatible = "qcom,gcc-8940"; +}; + +&clock_debug { + compatible = "qcom,cc-debug-8940"; +}; + +&clock_gcc_mdss { + compatible = "qcom,gcc-mdss-8940"; +}; + +&bam_dmux { + status = "disabled"; +}; + +&soc { + ipa_hw: qcom,ipa@07900000 { + compatible = "qcom,ipa"; + reg = <0x07900000 0x4effc>, <0x07904000 0x26934>; + reg-names = "ipa-base", "bam-base"; + interrupts = <0 228 0>, + <0 230 0>; + interrupt-names = "ipa-irq", "bam-irq"; + qcom,ipa-hw-ver = <6>; /* IPA core version = IPAv2.6L */ + qcom,ipa-hw-mode = <0>; /* IPA hw type = Normal */ + qcom,wan-rx-ring-size = <192>; /* IPA WAN-rx-ring-size*/ + qcom,lan-rx-ring-size = <192>; /* IPA LAN-rx-ring-size*/ + clock-names = "core_clk"; + clocks = <&clock_gcc clk_ipa_clk>; + qcom,ee = <0>; + qcom,use-ipa-tethering-bridge; + qcom,modem-cfg-emb-pipe-flt; + qcom,msm-bus,name = "ipa"; + qcom,msm-bus,num-cases = <3>; + qcom,msm-bus,num-paths = <1>; + qcom,msm-bus,vectors-KBps = + <90 512 0 0>, /* No BIMC vote (ab=0 Mbps, ib=0 Mbps ~ 0MHZ) */ + <90 512 100000 800000>, /* SVS (ab=100, ib=800 ~ 50MHz) */ + <90 512 100000 1200000>; /* PERF (ab=100, ib=1200 ~ 75MHz) */ + qcom,bus-vector-names = "MIN", "SVS", "PERF"; + qcom,rx-polling-sleep-ms = <2>; /* Polling sleep interval */ + qcom,ipa-polling-iteration = <5>; /* Polling Iteration */ + }; + + qcom,rmnet-ipa { + compatible = "qcom,rmnet-ipa"; + qcom,rmnet-ipa-ssr; + qcom,ipa-loaduC; + qcom,ipa-advertise-sg-support; + }; + + qcom,rmtfs_sharedmem@00000000 { + reg = <0x00000000 0x00180000>; + }; + + /* remove 8937 MEM ACC node */ + /delete-node/ regulator@01946004; + + mem_acc_vreg_corner: regulator@01946004 { + compatible = "qcom,mem-acc-regulator"; + reg = <0xa4000 0x1000>; + reg-names = "efuse_addr"; + regulator-name = "mem_acc_corner"; + regulator-min-microvolt = <1>; + regulator-max-microvolt = <3>; + + qcom,acc-reg-addr-list = + <0x01942138 0x01942130 0x01942120 + 0x01942124 0x01942128>; + + qcom,acc-init-reg-config = <1 0xfff>; + + qcom,num-acc-corners = <3>; + qcom,boot-acc-corner = <2>; + qcom,corner1-reg-config = + /* SVS+ => SVS+ */ + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + /* SVS+ => NOM */ + < 2 0x555555>, < 3 0x1041041>, < 4 0x1041041>, + < 5 0x0000041>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + /* SVS+ => TURBO/NOM+ */ + < 2 0x555555 >, < 3 0x1041041>, < 4 0x1041041>, + < 5 0x0000041>, < 3 0x0>, < 4 0x0>, + < 5 0x0>; + + qcom,corner2-reg-config = + /* NOM => SVS+ */ + < 2 0x555555>, < 3 0x30C30C3>, < 4 0x30C30C3>, + < 5 0x00000C3>, + /* NOM => NOM */ + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + /* NOM => TURBO/NOM+ */ + < 2 0x555555>, < 3 0x0>, < 4 0x0>, + < 5 0x0>; + + qcom,corner3-reg-config = + /* TURBO/NOM+ => SVS+ */ + < 2 0x555555>, < 3 0x1041041>, < 4 0x1041041>, + < 5 0x0000041>, < 3 0x30C30C3>, < 4 0x30C30C3>, + < 5 0x00000C3>, + /* TURBO/NOM+ => NOM */ + < 2 0x555555>, < 3 0x1041041>, < 4 0x1041041>, + < 5 0x0000041>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + /* TURBO/NOM+ => TURBO/NOM+ */ + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>; + + qcom,override-acc-range-fuse-list = + <37 40 3 0>, /* foundry id */ + <36 30 8 0>, /* iddq apc on */ + <67 0 6 0>; /* turbo targ volt */ + + qcom,override-fuse-range-map = + <0 0>, < 0 0>, <49 63>, + <1 1>, < 0 0>, <50 63>, + <5 5>, < 0 0>, <51 63>, + <0 1>, < 95 255>, < 0 63>, + <5 5>, <100 255>, < 0 63>; + + qcom,override-corner1-addr-val-map = + /* 1st fuse version tuple matched */ + /* SVS+ => SVS+ */ + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + /* SVS+ => NOM */ + < 2 0x555555>, < 3 0x1041041>, < 4 0x1041041>, + < 5 0x0000041>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + /* SVS+ => TURBO/NOM+ */ + < 2 0x555555 >, < 3 0x1041041>, < 4 0x1041041>, + < 5 0x0000041>, < 3 0x1>, < 4 0x1000>, + < 5 0x0>, + + /* 2nd fuse version tuple matched */ + /* SVS+ => SVS+ */ + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + /* SVS+ => NOM */ + < 2 0x555555>, < 3 0x1041041>, < 4 0x1041041>, + < 5 0x0000041>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + /* SVS+ => TURBO/NOM+ */ + < 2 0x555555 >, < 3 0x1041041>, < 4 0x1041041>, + < 5 0x0000041>, < 3 0x1>, < 4 0x1000>, + < 5 0x0>, + + /* 3rd fuse version tuple matched */ + /* SVS+ => SVS+ */ + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + /* SVS+ => NOM */ + < 2 0x555555>, < 3 0x1041041>, < 4 0x1041041>, + < 5 0x0000041>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + /* SVS+ => TURBO/NOM+ */ + < 2 0x555555 >, < 3 0x1041041>, < 4 0x1041041>, + < 5 0x0000041>, < 3 0x1>, < 4 0x1000>, + < 5 0x0>, + + /* 4th fuse version tuple matched */ + /* SVS+ => SVS+ */ + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + /* SVS+ => NOM */ + < 2 0x555555>, < 3 0x1041041>, < 4 0x1041041>, + < 5 0x0000041>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + /* SVS+ => TURBO/NOM+ */ + < 2 0x555555 >, < 3 0x1041041>, < 4 0x1041041>, + < 5 0x0000041>, < 3 0x1>, < 4 0x1000>, + < 5 0x0>, + + /* 5th fuse version tuple matched */ + /* SVS+ => SVS+ */ + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + /* SVS+ => NOM */ + < 2 0x555555>, < 3 0x1041041>, < 4 0x1041041>, + < 5 0x0000041>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + /* SVS+ => TURBO/NOM+ */ + < 2 0x555555 >, < 3 0x1041041>, < 4 0x1041041>, + < 5 0x0000041>, < 3 0x1>, < 4 0x1000>, + < 5 0x0>; + + qcom,override-corner2-addr-val-map = + /* 1st fuse version tuple matched */ + /* NOM => SVS+ */ + < 2 0x555555>, < 3 0x30C30C3>, < 4 0x30C30C3>, + < 5 0x00000C3>, + /* NOM => NOM */ + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + /* NOM => TURBO/NOM+ */ + < 2 0x555555>, < 3 0x1>, < 4 0x1000>, + < 5 0x0>, + + /* 2nd fuse version tuple matched */ + /* NOM => SVS+ */ + < 2 0x555555>, < 3 0x30C30C3>, < 4 0x30C30C3>, + < 5 0x00000C3>, + /* NOM => NOM */ + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + /* NOM => TURBO/NOM+ */ + < 2 0x555555>, < 3 0x1>, < 4 0x1000>, + < 5 0x0>, + + /* 3rd fuse version tuple matched */ + /* NOM => SVS+ */ + < 2 0x555555>, < 3 0x30C30C3>, < 4 0x30C30C3>, + < 5 0x00000C3>, + /* NOM => NOM */ + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + /* NOM => TURBO/NOM+ */ + < 2 0x555555>, < 3 0x1>, < 4 0x1000>, + < 5 0x0>, + + /* 4th fuse version tuple matched */ + /* NOM => SVS+ */ + < 2 0x555555>, < 3 0x30C30C3>, < 4 0x30C30C3>, + < 5 0x00000C3>, + /* NOM => NOM */ + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + /* NOM => TURBO/NOM+ */ + < 2 0x555555>, < 3 0x1>, < 4 0x1000>, + < 5 0x0>, + + /* 5th fuse version tuple matched */ + /* NOM => SVS+ */ + < 2 0x555555>, < 3 0x30C30C3>, < 4 0x30C30C3>, + < 5 0x00000C3>, + /* NOM => NOM */ + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + /* NOM => TURBO/NOM+ */ + < 2 0x555555>, < 3 0x1>, < 4 0x1000>, + < 5 0x0>; + + qcom,override-corner3-addr-val-map = + /* 1st fuse version tuple matched */ + /* TURBO/NOM+ => SVS+ */ + < 2 0x555555>, < 3 0x1041041>, < 4 0x1041041>, + < 5 0x0000041>, < 3 0x30C30C3>, < 4 0x30C30C3>, + < 5 0x00000C3>, + /* TURBO/NOM+ => NOM */ + < 2 0x555555>, < 3 0x1041041>, < 4 0x1041041>, + < 5 0x0000041>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + /* TURBO/NOM+ => TURBO/NOM+ */ + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + + /* 2nd fuse version tuple matched */ + /* TURBO/NOM+ => SVS+ */ + < 2 0x555555>, < 3 0x1041041>, < 4 0x1041041>, + < 5 0x0000041>, < 3 0x30C30C3>, < 4 0x30C30C3>, + < 5 0x00000C3>, + /* TURBO/NOM+ => NOM */ + < 2 0x555555>, < 3 0x1041041>, < 4 0x1041041>, + < 5 0x0000041>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + /* TURBO/NOM+ => TURBO/NOM+ */ + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + + /* 3rd fuse version tuple matched */ + /* TURBO/NOM+ => SVS+ */ + < 2 0x555555>, < 3 0x1041041>, < 4 0x1041041>, + < 5 0x0000041>, < 3 0x30C30C3>, < 4 0x30C30C3>, + < 5 0x00000C3>, + /* TURBO/NOM+ => NOM */ + < 2 0x555555>, < 3 0x1041041>, < 4 0x1041041>, + < 5 0x0000041>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + /* TURBO/NOM+ => TURBO/NOM+ */ + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + + /* 4th fuse version tuple matched */ + /* TURBO/NOM+ => SVS+ */ + < 2 0x555555>, < 3 0x1041041>, < 4 0x1041041>, + < 5 0x0000041>, < 3 0x30C30C3>, < 4 0x30C30C3>, + < 5 0x00000C3>, + /* TURBO/NOM+ => NOM */ + < 2 0x555555>, < 3 0x1041041>, < 4 0x1041041>, + < 5 0x0000041>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + /* TURBO/NOM+ => TURBO/NOM+ */ + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + + /* 5th fuse version tuple matched */ + /* TURBO/NOM+ => SVS+ */ + < 2 0x555555>, < 3 0x1041041>, < 4 0x1041041>, + < 5 0x0000041>, < 3 0x30C30C3>, < 4 0x30C30C3>, + < 5 0x00000C3>, + /* TURBO/NOM+ => NOM */ + < 2 0x555555>, < 3 0x1041041>, < 4 0x1041041>, + < 5 0x0000041>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, + /* TURBO/NOM+ => TURBO/NOM+ */ + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, + <(-1) (-1)>; + }; +}; + +&apc_vreg_corner { + /delete-property/ qcom,cpr-fuse-version-map; + /delete-property/ qcom,cpr-quotient-adjustment; + /delete-property/ qcom,cpr-init-voltage-adjustment; + /delete-property/ qcom,cpr-enable; + + qcom,pvs-version-fuse-sel = <37 40 3 0>; /* foundry */ + qcom,cpr-speed-bin-max-corners = + <0 (-1) 1 2 6>, + <1 (-1) 1 2 7>; + + qcom,cpr-fuse-version-map = + < 0 0 (-1) (-1) (-1) (-1)>, + < 0 1 (-1) (-1) (-1) (-1)>, + < 0 5 (-1) (-1) (-1) (-1)>, + < 1 0 (-1) (-1) (-1) (-1)>, + < 1 1 (-1) (-1) (-1) (-1)>, + < 1 5 (-1) (-1) (-1) (-1)>; + + qcom,cpr-init-voltage-adjustment = + <0 0 0>, + <0 0 20000>, + <0 0 20000>, + <0 0 20000>, + <0 0 20000>, + <0 0 25000>; + + qcom,cpr-quotient-adjustment = + <0 0 0>, + <38 0 28>, /* SVSP(20mv); TURBO(15mv); KV(1.9) */ + <0 0 28>, /* TURBO(15mv); KV(1.9) */ + <0 0 28>, /* TURBO(15mv); KV(1.9) */ + <38 0 28>, /* SVSP(20mv); TURBO(15mv); KV(1.9) */ + <0 0 38>; /* TURBO(20mv); KV(1.9) */ + + qcom,cpr-enable; +}; + +&mdss_mdp { + qcom,vbif-settings = <0x0d0 0x00000020>; +}; + +&modem_mem { + reg = <0x0 0x86800000 0x0 0x6a00000>; +}; + +&adsp_fw_mem { + reg = <0x0 0x8d200000 0x0 0x1100000>; +}; + +&wcnss_fw_mem { + reg = <0x0 0x8e300000 0x0 0x700000>; +}; + +&pil_mss { + /delete-property/ qcom,qdsp6v56-1-8-inrush-current; + qcom,qdsp6v56-1-8; +}; + +/* GPU overrides */ +&msm_gpu { + + qcom,restrict-pwrlevel = <1>; + /delete-property/qcom,gpu-speed-bin; + qcom,gpu-speed-bin = <0x0174 0x80000000 31>; + + /delete-property/qcom,initial-pwrlevel; + /delete-node/qcom,gpu-pwrlevel-bins; + /delete-node/qcom,gpu-pwrlevels; + + qcom,gpu-pwrlevel-bins { + #address-cells = <1>; + #size-cells = <0>; + + compatible="qcom,gpu-pwrlevel-bins"; + + /* Power levels */ + qcom,gpu-pwrlevels-0 { + #address-cells = <1>; + #size-cells = <0>; + + qcom,speed-bin = <0>; + qcom,initial-pwrlevel = <3>; + + /* SUPER TURBO */ + qcom,gpu-pwrlevel@0 { + reg = <0>; + qcom,gpu-freq = <475000000>; + qcom,bus-freq = <10>; + qcom,bus-min = <10>; + qcom,bus-max = <10>; + }; + + /* TURBO */ + qcom,gpu-pwrlevel@1 { + reg = <1>; + qcom,gpu-freq = <450000000>; + qcom,bus-freq = <9>; + qcom,bus-min = <9>; + qcom,bus-max = <10>; + }; + + /* NOM+ */ + qcom,gpu-pwrlevel@2 { + reg = <2>; + qcom,gpu-freq = <400000000>; + qcom,bus-freq = <7>; + qcom,bus-min = <6>; + qcom,bus-max = <9>; + }; + + /* NOM */ + qcom,gpu-pwrlevel@3 { + reg = <3>; + qcom,gpu-freq = <375000000>; + qcom,bus-freq = <6>; + qcom,bus-min = <5>; + qcom,bus-max = <8>; + }; + + /* SVS+ */ + qcom,gpu-pwrlevel@4 { + reg = <4>; + qcom,gpu-freq = <300000000>; + qcom,bus-freq = <5>; + qcom,bus-min = <4>; + qcom,bus-max = <7>; + }; + + /* SVS */ + qcom,gpu-pwrlevel@5 { + reg = <5>; + qcom,gpu-freq = <216000000>; + qcom,bus-freq = <3>; + qcom,bus-min = <1>; + qcom,bus-max = <4>; + }; + + /* XO */ + qcom,gpu-pwrlevel@6 { + reg = <6>; + qcom,gpu-freq = <19200000>; + qcom,bus-freq = <0>; + qcom,bus-min = <0>; + qcom,bus-max = <0>; + }; + }; + + /* Power levels */ + qcom,gpu-pwrlevels-1 { + #address-cells = <1>; + #size-cells = <0>; + + qcom,speed-bin = <1>; + qcom,initial-pwrlevel = <3>; + + /* SUPER TURBO */ + qcom,gpu-pwrlevel@0 { + reg = <0>; + qcom,gpu-freq = <500000000>; + qcom,bus-freq = <10>; + qcom,bus-min = <10>; + qcom,bus-max = <10>; + }; + + /* TURBO */ + qcom,gpu-pwrlevel@1 { + reg = <1>; + qcom,gpu-freq = <450000000>; + qcom,bus-freq = <9>; + qcom,bus-min = <9>; + qcom,bus-max = <10>; + }; + + /* NOM+ */ + qcom,gpu-pwrlevel@2 { + reg = <2>; + qcom,gpu-freq = <400000000>; + qcom,bus-freq = <7>; + qcom,bus-min = <6>; + qcom,bus-max = <9>; + }; + + /* NOM */ + qcom,gpu-pwrlevel@3 { + reg = <3>; + qcom,gpu-freq = <375000000>; + qcom,bus-freq = <6>; + qcom,bus-min = <5>; + qcom,bus-max = <8>; + }; + + /* SVS+ */ + qcom,gpu-pwrlevel@4 { + reg = <4>; + qcom,gpu-freq = <300000000>; + qcom,bus-freq = <5>; + qcom,bus-min = <4>; + qcom,bus-max = <7>; + }; + + /* SVS */ + qcom,gpu-pwrlevel@5 { + reg = <5>; + qcom,gpu-freq = <216000000>; + qcom,bus-freq = <3>; + qcom,bus-min = <1>; + qcom,bus-max = <4>; + }; + + /* XO */ + qcom,gpu-pwrlevel@6 { + reg = <6>; + qcom,gpu-freq = <19200000>; + qcom,bus-freq = <0>; + qcom,bus-min = <0>; + qcom,bus-max = <0>; + }; + }; + + }; +}; + +&tsens0 { + qcom,temp1-offset = <0 (-2) (-5) (-3) (-1) (-1) (-1) 0 1 (-1) (-6)>; + qcom,temp2-offset = <1 1 (-7) 5 4 7 6 2 3 1 7>; +}; diff --git a/drivers/pinctrl/qcom/Kconfig b/drivers/pinctrl/qcom/Kconfig index 9413da3f1994..56ea1f484ca8 100644 --- a/drivers/pinctrl/qcom/Kconfig +++ b/drivers/pinctrl/qcom/Kconfig @@ -139,6 +139,16 @@ config PINCTRL_MSM8917 Technologies Inc MSM8917 platform. If unsure say N. +config PINCTRL_MSM8940 + tristate "Qualcomm Technologies Inc MSM8940 pin controller driver" + depends on GPIOLIB && OF + select PINCTRL_MSM + help + This is the pinctrl, pinmux, pinconf and gpiolib driver for the + Qualcomm Technologies Inc TLMM block found on the Qualcomm + Technologies Inc MSM8940 platform. + If unsure say N. + config PINCTRL_SDM845 tristate "Qualcomm Technologies Inc SDM845 pin controller driver" depends on GPIOLIB && OF diff --git a/drivers/soc/qcom/socinfo.c b/drivers/soc/qcom/socinfo.c index 1f44f534b14a..74321b2dac51 100644 --- a/drivers/soc/qcom/socinfo.c +++ b/drivers/soc/qcom/socinfo.c @@ -627,6 +627,9 @@ static struct msm_soc_info cpu_of_id[] = { [308] = {MSM_CPU_8917, "MSM8217"}, [309] = {MSM_CPU_8917, "MSM8617"}, + /* MSM8940 IDs */ + [313] = {MSM_CPU_8940, "MSM8940"}, + /* SDM429 and SDM439 ID*/ [353] = {MSM_CPU_SDM439, "SDM439"}, [354] = {MSM_CPU_SDM429, "SDM429"}, @@ -1586,6 +1589,10 @@ static void * __init setup_dummy_socinfo(void) dummy_socinfo.id = 303; strlcpy(dummy_socinfo.build_id, "msm8917 - ", sizeof(dummy_socinfo.build_id)); + } else if (early_machine_is_msm8940()) { + dummy_socinfo.id = 313; + strlcpy(dummy_socinfo.build_id, "msm8940 - ", + sizeof(dummy_socinfo.build_id)); } else if (early_machine_is_sdm450()) { dummy_socinfo.id = 338; strlcpy(dummy_socinfo.build_id, "sdm450 - ", diff --git a/include/soc/qcom/socinfo.h b/include/soc/qcom/socinfo.h index 05173d9a34ad..b1ac1180ef1a 100644 --- a/include/soc/qcom/socinfo.h +++ b/include/soc/qcom/socinfo.h @@ -118,6 +118,8 @@ of_flat_dt_is_compatible(of_get_flat_dt_root(), "qcom,msm8937") #define early_machine_is_msm8917() \ of_flat_dt_is_compatible(of_get_flat_dt_root(), "qcom,msm8917") +#define early_machine_is_msm8940() \ + of_flat_dt_is_compatible(of_get_flat_dt_root(), "qcom,msm8940") #define early_machine_is_mdm9607() \ of_flat_dt_is_compatible(of_get_flat_dt_root(), "qcom,mdm9607") #define early_machine_is_sdm450() \ @@ -187,6 +189,7 @@ #define early_machine_is_msm8953() 0 #define early_machine_is_msm8937() 0 #define early_machine_is_msm8917() 0 +#define early_machine_is_msm8940() 0 #define early_machine_is_sdm450() 0 #define early_machine_is_sda450() 0 #define early_machine_is_sdm632() 0 @@ -270,6 +273,7 @@ enum msm_cpu { MSM_CPU_SDA632, MSM_CPU_8937, MSM_CPU_8917, + MSM_CPU_8940, MSM_CPU_9607, MSM_CPU_SDM439, MSM_CPU_SDM429, |