summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Documentation/devicetree/bindings/arm/msm/msm.txt5
-rw-r--r--arch/arm/boot/dts/qcom/Makefile5
-rw-r--r--arch/arm/boot/dts/qcom/apqfalcon-cdp.dts23
-rw-r--r--arch/arm/boot/dts/qcom/apqfalcon-mtp.dts23
-rw-r--r--arch/arm/boot/dts/qcom/apqfalcon-rcm.dts23
-rw-r--r--arch/arm/boot/dts/qcom/apqfalcon.dtsi19
-rw-r--r--drivers/soc/qcom/socinfo.c5
-rw-r--r--include/soc/qcom/socinfo.h3
8 files changed, 105 insertions, 1 deletions
diff --git a/Documentation/devicetree/bindings/arm/msm/msm.txt b/Documentation/devicetree/bindings/arm/msm/msm.txt
index 6e1ac697a751..9a96f74a8603 100644
--- a/Documentation/devicetree/bindings/arm/msm/msm.txt
+++ b/Documentation/devicetree/bindings/arm/msm/msm.txt
@@ -92,6 +92,9 @@ SoCs:
- MSMFALCON
compatible = "qcom,msmfalcon"
+- APQFALCON
+ compatible = "qcom,apqfalcon"
+
- MSMTRITON
compatible = "qcom,msmtriton"
@@ -265,6 +268,8 @@ compatible = "qcom,msmfalcon-rumi"
compatible = "qcom,msmfalcon-cdp"
compatible = "qcom,msmfalcon-mtp"
compatible = "qcom,msmfalcon-qrd"
+compatible = "qcom,apqfalcon-mtp"
+compatible = "qcom,apqfalcon-cdp"
compatible = "qcom,msmtriton-rumi"
compatible = "qcom,msm8952-rumi"
compatible = "qcom,msm8952-sim"
diff --git a/arch/arm/boot/dts/qcom/Makefile b/arch/arm/boot/dts/qcom/Makefile
index 07c869c28a0d..4293b1929794 100644
--- a/arch/arm/boot/dts/qcom/Makefile
+++ b/arch/arm/boot/dts/qcom/Makefile
@@ -142,7 +142,10 @@ dtb-$(CONFIG_ARCH_MSMFALCON) += msmfalcon-sim.dtb \
msmfalcon-internal-codec-mtp.dtb \
msmfalcon-rcm.dtb \
msmfalcon-internal-codec-rcm.dtb \
- msmfalcon-qrd.dtb
+ msmfalcon-qrd.dtb \
+ apqfalcon-cdp.dtb \
+ apqfalcon-mtp.dtb \
+ apqfalcon-rcm.dtb
dtb-$(CONFIG_ARCH_MSMTRITON) += msmtriton-rumi.dtb
diff --git a/arch/arm/boot/dts/qcom/apqfalcon-cdp.dts b/arch/arm/boot/dts/qcom/apqfalcon-cdp.dts
new file mode 100644
index 000000000000..9ed26e5ff0aa
--- /dev/null
+++ b/arch/arm/boot/dts/qcom/apqfalcon-cdp.dts
@@ -0,0 +1,23 @@
+/* Copyright (c) 2016, 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 "apqfalcon.dtsi"
+#include "msmfalcon-cdp.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. APQ FALCON CDP";
+ compatible = "qcom,apqfalcon-cdp", "qcom,apqfalcon", "qcom,cdp";
+ qcom,board-id = <1 0>;
+};
diff --git a/arch/arm/boot/dts/qcom/apqfalcon-mtp.dts b/arch/arm/boot/dts/qcom/apqfalcon-mtp.dts
new file mode 100644
index 000000000000..74e4fc8154a9
--- /dev/null
+++ b/arch/arm/boot/dts/qcom/apqfalcon-mtp.dts
@@ -0,0 +1,23 @@
+/* Copyright (c) 2016, 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 "apqfalcon.dtsi"
+#include "msmfalcon-mtp.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. APQ FALCON MTP";
+ compatible = "qcom,apqfalcon-mtp", "qcom,apqfalcon", "qcom,mtp";
+ qcom,board-id = <8 0>;
+};
diff --git a/arch/arm/boot/dts/qcom/apqfalcon-rcm.dts b/arch/arm/boot/dts/qcom/apqfalcon-rcm.dts
new file mode 100644
index 000000000000..52ff518f4ce4
--- /dev/null
+++ b/arch/arm/boot/dts/qcom/apqfalcon-rcm.dts
@@ -0,0 +1,23 @@
+/* Copyright (c) 2016, 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 "apqfalcon.dtsi"
+#include "msmfalcon-cdp.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. APQ FALCON RCM";
+ compatible = "qcom,apqfalcon-cdp", "qcom,apqfalcon", "qcom,cdp";
+ qcom,board-id = <21 0>;
+};
diff --git a/arch/arm/boot/dts/qcom/apqfalcon.dtsi b/arch/arm/boot/dts/qcom/apqfalcon.dtsi
new file mode 100644
index 000000000000..d4dc066f6a79
--- /dev/null
+++ b/arch/arm/boot/dts/qcom/apqfalcon.dtsi
@@ -0,0 +1,19 @@
+/* Copyright (c) 2016, 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 "msmfalcon.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. APQ FALCON";
+ compatible = "qcom,apqfalcon";
+ qcom,msm-id = <324 0x0>;
+};
diff --git a/drivers/soc/qcom/socinfo.c b/drivers/soc/qcom/socinfo.c
index f93ee29123fe..bd58fcfe3061 100644
--- a/drivers/soc/qcom/socinfo.c
+++ b/drivers/soc/qcom/socinfo.c
@@ -537,6 +537,7 @@ static struct msm_soc_info cpu_of_id[] = {
/* falcon ID */
[317] = {MSM_CPU_FALCON, "MSMFALCON"},
+ [324] = {MSM_CPU_FALCON, "APQFALCON"},
/* triton ID */
[318] = {MSM_CPU_TRITON, "MSMTRITON"},
@@ -1211,6 +1212,10 @@ static void * __init setup_dummy_socinfo(void)
dummy_socinfo.id = 317;
strlcpy(dummy_socinfo.build_id, "msmfalcon - ",
sizeof(dummy_socinfo.build_id));
+ } else if (early_machine_is_apqfalcon()) {
+ dummy_socinfo.id = 324;
+ strlcpy(dummy_socinfo.build_id, "apqfalcon - ",
+ sizeof(dummy_socinfo.build_id));
} else if (early_machine_is_msmtriton()) {
dummy_socinfo.id = 318;
strlcpy(dummy_socinfo.build_id, "msmtriton - ",
diff --git a/include/soc/qcom/socinfo.h b/include/soc/qcom/socinfo.h
index 5f1912a62267..3e5f7be53204 100644
--- a/include/soc/qcom/socinfo.h
+++ b/include/soc/qcom/socinfo.h
@@ -96,6 +96,8 @@
of_flat_dt_is_compatible(of_get_flat_dt_root(), "qcom,msmhamster")
#define early_machine_is_msmfalcon() \
of_flat_dt_is_compatible(of_get_flat_dt_root(), "qcom,msmfalcon")
+#define early_machine_is_apqfalcon() \
+ of_flat_dt_is_compatible(of_get_flat_dt_root(), "qcom,apqfalcon")
#define early_machine_is_msmtriton() \
of_flat_dt_is_compatible(of_get_flat_dt_root(), "qcom,msmtriton")
#else
@@ -135,6 +137,7 @@
#define early_machine_is_apq8998() 0
#define early_machine_is_msmhamster() 0
#define early_machine_is_msmfalcon() 0
+#define early_machine_is_apqfalcon() 0
#define early_machine_is_msmtriton() 0
#endif