Skip to contentSkip to conversation

Add DTS for MSM8996 SoC and MTP

PATCH In review Stephen Boyd 5 participants 11 messages Nov 18, 2015 – Nov 24, 2015

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

cover Add DTS for MSM8996 SoC and MTP

These patches add the initial dts files for the MSM8996 SoC and MTP evaluation board.

Stephen Boyd (4):
devicetree: bindings: Document Kryo cpu
arm64: dts: Add msm8996 SoC and MTP board support
arm64: dts: qcom: Add pm8994, pmi8994, pm8004 PMIC skeletons
arm64: dts: qcom: Add pm8994 gpios and MPPs

 Documentation/devicetree/bindings/arm/cpus.txt |   1 +
 arch/arm64/boot/dts/qcom/Makefile              |   1 +
 arch/arm64/boot/dts/qcom/msm8996-mtp.dts       |  21 ++
 arch/arm64/boot/dts/qcom/msm8996-mtp.dtsi      |  30 +++
 arch/arm64/boot/dts/qcom/msm8996.dtsi          | 267 +++++++++++++++++++++++++
 arch/arm64/boot/dts/qcom/pm8004.dtsi           |  19 ++
 arch/arm64/boot/dts/qcom/pm8994.dtsi           |  62 ++++++
 arch/arm64/boot/dts/qcom/pmi8994.dtsi          |  19 ++
 8 files changed, 420 insertions(+)
 create mode 100644 arch/arm64/boot/dts/qcom/msm8996-mtp.dts
 create mode 100644 arch/arm64/boot/dts/qcom/msm8996-mtp.dtsi
 create mode 100644 arch/arm64/boot/dts/qcom/msm8996.dtsi
 create mode 100644 arch/arm64/boot/dts/qcom/pm8004.dtsi
 create mode 100644 arch/arm64/boot/dts/qcom/pm8994.dtsi
 create mode 100644 arch/arm64/boot/dts/qcom/pmi8994.dtsi
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
#1 lore raw

PATCH 1/4 devicetree: bindings: Document Kryo cpu

Document the compatible string for the Kryo family of qcom cpus.

---
 Documentation/devicetree/bindings/arm/cpus.txt | 1 +
 1 file changed, 1 insertion(+)
Documentation/devicetree/bindings/arm/cpus.txt +1 -0
index 3a07a87fef20..6008b99ccb2b 100644
@@ -177,6 +177,7 @@ nodes to be present and contain the properties described below.
 			    "marvell,sheeva-v5"
 			    "nvidia,tegra132-denver"
 			    "qcom,krait"
+			    "qcom,kryo"
 			    "qcom,scorpion"
 	- enable-method
 		Value type: <stringlist>
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
maintainer Acked-by on v1 1/4
#2 lore raw

Re: [PATCH 1/4] devicetree: bindings: Document Kryo cpu

Quoted 4 lines · Stephen Boyd

Document the compatible string for the Kryo family of qcom cpus.

Quoted 24 lines
---
 Documentation/devicetree/bindings/arm/cpus.txt | 1 +
 1 file changed, 1 insertion(+)
Documentation/devicetree/bindings/arm/cpus.txt +1 -0
index 3a07a87fef20..6008b99ccb2b 100644
@@ -177,6 +177,7 @@ nodes to be present and contain the properties described below.
 			    "marvell,sheeva-v5"
 			    "nvidia,tegra132-denver"
 			    "qcom,krait"
+			    "qcom,kryo"
 			    "qcom,scorpion"
 	- enable-method
 		Value type: <stringlist>
Signature · 7 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
#3 lore raw

PATCH 2/4 arm64: dts: Add msm8996 SoC and MTP board support

In reply to Stephen Boyd

Add initial device tree support for the Qualcomm MSM8996 SoC and MTP8996 evaluation board.

---
 arch/arm64/boot/dts/qcom/Makefile         |   1 +
 arch/arm64/boot/dts/qcom/msm8996-mtp.dts  |  21 +++
 arch/arm64/boot/dts/qcom/msm8996-mtp.dtsi |  30 ++++
 arch/arm64/boot/dts/qcom/msm8996.dtsi     | 267 ++++++++++++++++++++++++++++++
 4 files changed, 319 insertions(+)
 create mode 100644 arch/arm64/boot/dts/qcom/msm8996-mtp.dts
 create mode 100644 arch/arm64/boot/dts/qcom/msm8996-mtp.dtsi
 create mode 100644 arch/arm64/boot/dts/qcom/msm8996.dtsi
arch/arm64/boot/dts/qcom/Makefile +1 -0
index 8e94af64ee94..fa1f661ccccf 100644
@@ -1,4 +1,5 @@
 dtb-$(CONFIG_ARCH_QCOM)	+= apq8016-sbc.dtb msm8916-mtp.dtb
+dtb-$(CONFIG_ARCH_QCOM)	+= msm8996-mtp.dtb
 
 always		:= $(dtb-y)
 subdir-y	:= $(dts-dirs)
arch/arm64/boot/dts/qcom/msm8996-mtp.dts new file +21 -0
new file mode 100644
index 000000000000..619af44a595d
@@ -0,0 +1,21 @@
+/*
+ * Copyright (c) 2014-2015, 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 "msm8996-mtp.dtsi"
+
+/ {
+	model = "Qualcomm Technologies, Inc. MSM 8996 MTP";
+	compatible = "qcom,msm8996-mtp";
+};
arch/arm64/boot/dts/qcom/msm8996-mtp.dtsi new file +30 -0
new file mode 100644
index 000000000000..9bab5c011c07
@@ -0,0 +1,30 @@
+/*
+ * Copyright (c) 2014-2015, 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 "msm8996.dtsi"
+
+/ {
+	aliases {
+		serial0 = &blsp2_uart1;
+	};
+
+	chosen {
+		stdout-path = "serial0";
+	};
+
+	soc {
+		serial at 75b0000 {
+			status = "okay";
+		};
+	};
+};
arch/arm64/boot/dts/qcom/msm8996.dtsi new file +267 -0

267 lines not on this page · raw message

Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
#4 lore raw

Re: [PATCH 2/4] arm64: dts: Add msm8996 SoC and MTP board support

reproduce: wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # save the attached .config to linux build tree…

Hi Stephen,

[auto build test ERROR on robh/for-next]
[also build test ERROR on v4.4-rc1 next-20151117]

url:    https://github.com/0day-ci/linux/commits/Stephen-Boyd/devicetree-bindings-Document-Kryo-cpu/20151118-091558
base:   https://git.kernel.org/pub/scm/linux/kernel/git/robh/linux for-next
config: arm64-allmodconfig (attached as .config)

reproduce:
wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross
# save the attached .config to linux build tree
make.cross ARCH=arm64

All errors (new ones prefixed by >>):

In file included from arch/arm64/boot/dts/qcom/msm8996-mtp.dtsi:14:0,

                    from arch/arm64/boot/dts/qcom/msm8996-mtp.dts:16:
>> arch/arm64/boot/dts/qcom/msm8996.dtsi:14:48: fatal error: dt-bindings/clock/qcom,gcc-msm8996.h: No such file or directory
    #include <dt-bindings/clock/qcom,gcc-msm8996.h>
                                                   ^

compilation terminated.

vim +14 arch/arm64/boot/dts/qcom/msm8996.dtsi

8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 * GNU General Public License for more details.
11 */
12
13 #include <dt-bindings/interrupt-controller/arm-gic.h>

  > 14	#include <dt-bindings/clock/qcom,gcc-msm8996.h>
    15	#include <dt-bindings/clock/qcom,mmcc-msm8996.h>
    16	
    17	/ {

---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/octet-stream
Size: 45533 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20151118/49315e76/attachment-0001.obj>

#5 lore raw

Re: [PATCH 2/4] arm64: dts: Add msm8996 SoC and MTP board support

Quoted 14 lines · kbuild test robot

Hi Stephen,

[auto build test ERROR on robh/for-next]
[also build test ERROR on v4.4-rc1 next-20151117]

url:    https://github.com/0day-ci/linux/commits/Stephen-Boyd/devicetree-bindings-Document-Kryo-cpu/20151118-091558
base:   https://git.kernel.org/pub/scm/linux/kernel/git/robh/linux for-next
config: arm64-allmodconfig (attached as .config)

reproduce:
wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross
# save the attached .config to linux build tree
make.cross ARCH=arm64

Quoted 9 lines

All errors (new ones prefixed by >>):

   In file included from arch/arm64/boot/dts/qcom/msm8996-mtp.dtsi:14:0,
                    from arch/arm64/boot/dts/qcom/msm8996-mtp.dts:16:
Quoted 1 line
Quoted 1 line

arch/arm64/boot/dts/qcom/msm8996.dtsi:14:48: fatal error: dt-bindings/clock/qcom,gcc-msm8996.h: No such file or directory

    #include <dt-bindings/clock/qcom,gcc-msm8996.h>
                                                   ^

compilation terminated.

Yes. These patches depend on the clk patches that expose that header file. We'll have to pull in the clock branch underneath the dts branch.

Signature · 2 lines
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project
#6 lore raw

Re: [PATCH 2/4] arm64: dts: Add msm8996 SoC and MTP board support

In reply to Stephen Boyd
Quoted 5 lines · Stephen Boyd

Add initial device tree support for the Qualcomm MSM8996 SoC and MTP8996 evaluation board.

---

[]...

Quoted 14 lines
arch/arm64/boot/dts/qcom/msm8996.dtsi new file +14 -0
+
+		spmi_bus: qcom,spmi at 400f000 {
+			compatible = "qcom,spmi-pmic-arb";
+			reg = <0x400f000 0x1000>,
+			      <0x4400000 0x800000>,
+			      <0x4c00000 0x800000>,
+			      <0x5800000 0x200000>,
+			      <0x400a000 0x002100>;
+			reg-names = "core", "chnls", "obsrvr", "intr", "cnfg";
+			interrupt-names = "periph_irq";
+			interrupts = <GIC_SPI 326 IRQ_TYPE_NONE>;
+			qcom,ee = <0>;
+			qcom,channel = <0>;
+			#address-cells = <2>;

arch/arm64/boot/dts/qcom/msm8996.dtsi line 254

Quoted 10 lines
arch/arm64/boot/dts/qcom/msm8996.dtsi new file +10 -0
+			#size-cells = <0>;
+			interrupt-controller;
+			#interrupt-cells = <4>;
+		};
+
+		mmcc: clock-controller at 8c0000 {
+			compatible = "qcom,mmcc-msm8996";
+			#clock-cells = <1>;
+			#reset-cells = <1>;
+			reg = <0x8c0000 0xc0000>;

I think the size here should be 0x40000 and not 0xc0000

regards,
Rajendra

Signature · 2 lines
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
hosted by The Linux Foundation
#7 lore raw

Re: [PATCH 2/4] arm64: dts: Add msm8996 SoC and MTP board support

Quoted 27 lines · Rajendra Nayak
Quoted 5 lines · Stephen Boyd

Add initial device tree support for the Qualcomm MSM8996 SoC and MTP8996 evaluation board.

---

[]...

Quoted 18 lines
arch/arm64/boot/dts/qcom/msm8996.dtsi new file +18 -0
+
+		spmi_bus: qcom,spmi at 400f000 {
+			compatible = "qcom,spmi-pmic-arb";
+			reg = <0x400f000 0x1000>,
+			      <0x4400000 0x800000>,
+			      <0x4c00000 0x800000>,
+			      <0x5800000 0x200000>,
+			      <0x400a000 0x002100>;
+			reg-names = "core", "chnls", "obsrvr", "intr", "cnfg";
+			interrupt-names = "periph_irq";
+			interrupts = <GIC_SPI 326 IRQ_TYPE_NONE>;
+			qcom,ee = <0>;
+			qcom,channel = <0>;
+			#address-cells = <2>;
+			#size-cells = <0>;
+			interrupt-controller;
+			#interrupt-cells = <4>;
+		};
Quoted 9 lines

arch/arm64/boot/dts/qcom/msm8996.dtsi line 254

Quoted 6 lines
arch/arm64/boot/dts/qcom/msm8996.dtsi new file +6 -0
+
+		mmcc: clock-controller at 8c0000 {
+			compatible = "qcom,mmcc-msm8996";
+			#clock-cells = <1>;
+			#reset-cells = <1>;
+			reg = <0x8c0000 0xc0000>;

I think the size here should be 0x40000 and not 0xc0000

Yes you're right.

Signature · 2 lines
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project
#8 lore raw

PATCH 3/4 arm64: dts: qcom: Add pm8994, pmi8994, pm8004 PMIC skeletons

In reply to Stephen Boyd

Add the skeleton nodes for the PMICs found on msm8996-mtp devices.

---
 arch/arm64/boot/dts/qcom/pm8004.dtsi  | 19 +++++++++++++++++++
 arch/arm64/boot/dts/qcom/pm8994.dtsi  | 19 +++++++++++++++++++
 arch/arm64/boot/dts/qcom/pmi8994.dtsi | 19 +++++++++++++++++++
 3 files changed, 57 insertions(+)
 create mode 100644 arch/arm64/boot/dts/qcom/pm8004.dtsi
 create mode 100644 arch/arm64/boot/dts/qcom/pm8994.dtsi
 create mode 100644 arch/arm64/boot/dts/qcom/pmi8994.dtsi
arch/arm64/boot/dts/qcom/pm8004.dtsi new file +19 -0
new file mode 100644
index 000000000000..ef2207afa86b
@@ -0,0 +1,19 @@
+#include <dt-bindings/interrupt-controller/irq.h>
+#include <dt-bindings/spmi/spmi.h>
+
+&spmi_bus {
+
+	pmic at 4 {
+		compatible = "qcom,pm8004", "qcom,spmi-pmic";
+		reg = <0x4 SPMI_USID>;
+		#address-cells = <1>;
+		#size-cells = <0>;
+	};
+
+	pmic at 5 {
+		compatible = "qcom,pm8004", "qcom,spmi-pmic";
+		reg = <0x5 SPMI_USID>;
+		#address-cells = <1>;
+		#size-cells = <0>;
+	};
+};
arch/arm64/boot/dts/qcom/pm8994.dtsi new file +19 -0
new file mode 100644
index 000000000000..e61b376f0b7c
@@ -0,0 +1,19 @@
+#include <dt-bindings/interrupt-controller/irq.h>
+#include <dt-bindings/spmi/spmi.h>
+
+&spmi_bus {
+
+	pmic at 0 {
+		compatible = "qcom,pm8994", "qcom,spmi-pmic";
+		reg = <0x0 SPMI_USID>;
+		#address-cells = <1>;
+		#size-cells = <0>;
+	};
+
+	pmic at 1 {
+		compatible = "qcom,pm8994", "qcom,spmi-pmic";
+		reg = <0x1 SPMI_USID>;
+		#address-cells = <1>;
+		#size-cells = <0>;
+	};
+};
arch/arm64/boot/dts/qcom/pmi8994.dtsi new file +19 -0
new file mode 100644
index 000000000000..d3879a4e8076
@@ -0,0 +1,19 @@
+#include <dt-bindings/interrupt-controller/irq.h>
+#include <dt-bindings/spmi/spmi.h>
+
+&spmi_bus {
+
+	pmic at 2 {
+		compatible = "qcom,pmi8994", "qcom,spmi-pmic";
+		reg = <0x2 SPMI_USID>;
+		#address-cells = <1>;
+		#size-cells = <0>;
+	};
+
+	pmic at 3 {
+		compatible = "qcom,pmi8994", "qcom,spmi-pmic";
+		reg = <0x3 SPMI_USID>;
+		#address-cells = <1>;
+		#size-cells = <0>;
+	};
+};
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
#9 lore raw

PATCH 4/4 arm64: dts: qcom: Add pm8994 gpios and MPPs

In reply to Stephen Boyd

Add the gpio and MPP devices to the pm8994 pmic dts.

---
 arch/arm64/boot/dts/qcom/pm8994.dtsi | 43 ++++++++++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)
arch/arm64/boot/dts/qcom/pm8994.dtsi +43 -0
index e61b376f0b7c..1732f1d32f4c 100644
@@ -8,6 +8,49 @@
 		reg = <0x0 SPMI_USID>;
 		#address-cells = <1>;
 		#size-cells = <0>;
+
+		pm8994_gpios: gpios at c000 {
+			compatible = "qcom,pm8994-gpio";
+			reg = <0xc000 0x1500>;
+			gpio-controller;
+			#gpio-cells = <2>;
+			interrupts = <0 0xc0 0 IRQ_TYPE_NONE>,
+				     <0 0xc1 0 IRQ_TYPE_NONE>,
+				     <0 0xc2 0 IRQ_TYPE_NONE>,
+				     <0 0xc3 0 IRQ_TYPE_NONE>,
+				     <0 0xc4 0 IRQ_TYPE_NONE>,
+				     <0 0xc5 0 IRQ_TYPE_NONE>,
+				     <0 0xc6 0 IRQ_TYPE_NONE>,
+				     <0 0xc7 0 IRQ_TYPE_NONE>,
+				     <0 0xc8 0 IRQ_TYPE_NONE>,
+				     <0 0xc9 0 IRQ_TYPE_NONE>,
+				     <0 0xca 0 IRQ_TYPE_NONE>,
+				     <0 0xcb 0 IRQ_TYPE_NONE>,
+				     <0 0xcc 0 IRQ_TYPE_NONE>,
+				     <0 0xcd 0 IRQ_TYPE_NONE>,
+				     <0 0xce 0 IRQ_TYPE_NONE>,
+				     <0 0xd0 0 IRQ_TYPE_NONE>,
+				     <0 0xd1 0 IRQ_TYPE_NONE>,
+				     <0 0xd2 0 IRQ_TYPE_NONE>,
+				     <0 0xd3 0 IRQ_TYPE_NONE>,
+				     <0 0xd4 0 IRQ_TYPE_NONE>,
+				     <0 0xd5 0 IRQ_TYPE_NONE>;
+		};
+
+		pm8994_mpps: mpps at a000 {
+			compatible = "qcom,pm8994-mpp";
+			reg = <0xa000 0x700>;
+			gpio-controller;
+			#gpio-cells = <2>;
+			interrupts = <0 0xa0 0 IRQ_TYPE_NONE>,
+				     <0 0xa1 0 IRQ_TYPE_NONE>,
+				     <0 0xa2 0 IRQ_TYPE_NONE>,
+				     <0 0xa3 0 IRQ_TYPE_NONE>,
+				     <0 0xa4 0 IRQ_TYPE_NONE>,
+				     <0 0xa5 0 IRQ_TYPE_NONE>,
+				     <0 0xa6 0 IRQ_TYPE_NONE>,
+				     <0 0xa7 0 IRQ_TYPE_NONE>;
+		};
 	};
 
 	pmic at 1 {
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
#10 lore raw
In reply to Stephen Boyd
Quoted 3 lines · Stephen Boyd

These patches add the initial dts files for the MSM8996 SoC and MTP evaluation board.

These all look fine.

Signature · 3 lines
Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project