Thread (10 messages) 10 messages, 3 authors, 2015-03-13

[PATCH v3 2/4] arm64: dts: Add Qualcomm MSM8916 SoC and evaluation board dts

From: Kumar Gala <hidden>
Date: 2015-03-12 17:33:29
Also in: linux-arm-msm, linux-devicetree, lkml

On Mar 12, 2015, at 12:05 PM, Mark Rutland [off-list ref] wrote:
Hi Kumar,
quoted
+/ {
+	model = "Qualcomm Technologies, Inc. MSM 8916 MTP";
+	compatible = "qcom,msm8916-mtp", "qcom,msm8916-mtp-smb1360",
+			"qcom,msm8916", "qcom,mtp";
+};
No /chosen/stdout-path?
Nope ;).
Does your UART driver support earlycon?
It does.
[...]
quoted
+	cpus {
+		#address-cells = <1>;
+		#size-cells = <0>;
+
+		CPU0: cpu at 0 {
+			device_type = "cpu";
+			compatible = "arm,cortex-a53", "arm,armv8";
+			reg = <0x0>;
+		};
+
+		CPU1: cpu at 1 {
+			device_type = "cpu";
+			compatible = "arm,cortex-a53", "arm,armv8";
+			reg = <0x1>;
+		};
+
+		CPU2: cpu at 2 {
+			device_type = "cpu";
+			compatible = "arm,cortex-a53", "arm,armv8";
+			reg = <0x2>;
+		};
+
+		CPU3: cpu at 3 {
+			device_type = "cpu";
+			compatible = "arm,cortex-a53", "arm,armv8";
+			reg = <0x3>;
+		};
+	};
The secondary CPUs need an enable-method. Are you using PSCI or
spin-table?
This is on purpose.  We aren?t using either PSCI or spin-table.  Right now the dts is for booting on a single core.  I can drop CPU1..CPU3 if that helps.
Which exception level do the CPUs enter the kernel?
quoted
+	timer {
+		compatible = "arm,armv7-timer";
This should be "arm,armv8-timer?.
will change
quoted
+		interrupts = <GIC_PPI 2 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
+			     <GIC_PPI 3 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
+			     <GIC_PPI 4 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
+			     <GIC_PPI 1 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
+		clock-frequency = <19200000>;
+	};
NAK. CNTFRQ should be programmed on all CPUs prior to entering the
kernel, per the boot protocol. You should not need clock-frequency here.
Will drop clock-frequency.
[...]
quoted
+		intc: interrupt-controller at b000000 {
+			compatible = "qcom,msm-qgic2";
This string isn't documented (but seems to be supported by the GIC
driver).
There?s a patch posted to add ?qcom,msm-qgic2? to the binding doc.
How does this differ from other GIC implementations?
Not sure the exact details, just that its qcom?s on implementation of the GIC spec.
quoted
+			interrupt-controller;
+			#interrupt-cells = <3>;
+			reg = <0x0b000000 0x1000>, <0x0b002000 0x1000>;
+		};
No GICH, GICV, maintenance interrupt?
Nope.
Minor nit, but I'd prefer if the reg entries were on individual lines as
happens in other dts.

Thanks,
Mark.
-- 
Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help