From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mark Rutland Subject: [RFC PATCH 11/11] arm: dts: add all PMUs for A15x2 A7x3 coretile Date: Thu, 11 Apr 2013 10:12:42 +0100 Message-ID: <1365671562-2403-12-git-send-email-mark.rutland@arm.com> References: <1365671562-2403-1-git-send-email-mark.rutland@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1365671562-2403-1-git-send-email-mark.rutland-5wv7dgnIgG8@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: devicetree-discuss-bounces+gldd-devicetree-discuss=m.gmane.org-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org Sender: "devicetree-discuss" To: linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org Cc: devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org, will.deacon-5wv7dgnIgG8@public.gmane.org, rob.herring-bsGFqQB8/DxBDgjK7y7TUQ@public.gmane.org List-Id: devicetree@vger.kernel.org Currently we only describe the A15 PMUs, as previously it was not possible to describe the A7 PMUs. This patch adds a cpu-map node and interrupts-affinity information for the PMUs to the dts, enabling the use of both PMUs. It also corrects the unit addresses of the cpu nodes, which should match their reg properties. As the A15 PMU has different events than the A9 PMU, this patch also removes the "arm,cortex-a9-pmu" compatible string from the dts. Signed-off-by: Mark Rutland --- arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts | 44 ++++++++++++++++++++++++++---- 1 file changed, 39 insertions(+), 5 deletions(-) diff --git a/arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts b/arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts index dfe371e..4117b1b 100644 --- a/arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts +++ b/arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts @@ -45,25 +45,47 @@ reg = <1>; }; - cpu2: cpu@2 { + cpu2: cpu@100 { device_type = "cpu"; compatible = "arm,cortex-a7"; reg = <0x100>; }; - cpu3: cpu@3 { + cpu3: cpu@101 { device_type = "cpu"; compatible = "arm,cortex-a7"; reg = <0x101>; }; - cpu4: cpu@4 { + cpu4: cpu@102 { device_type = "cpu"; compatible = "arm,cortex-a7"; reg = <0x102>; }; }; + cpu-map { + cluster0 { + core0_0: core0 { + cpu = <&cpu0>; + }; + core0_1: core1 { + cpu = <&cpu1>; + }; + }; + cluster1 { + core1_0: core0 { + cpu = <&cpu2>; + }; + core1_1: core1 { + cpu = <&cpu3>; + }; + core1_2: core2 { + cpu = <&cpu4>; + }; + }; + }; + memory@80000000 { device_type = "memory"; reg = <0 0x80000000 0 0x40000000>; @@ -133,10 +155,22 @@ <1 10 0xf08>; }; - pmu { - compatible = "arm,cortex-a15-pmu", "arm,cortex-a9-pmu"; + pmu_a15s { + compatible = "arm,cortex-a15-pmu"; interrupts = <0 68 4>, <0 69 4>; + interrupts-affinity = <&core0_0>, + <&core0_1>; + }; + + pmu_a7s { + compatible = "arm,cortex-a7-pmu"; + interrupts = <0 128 4>, + <0 129 4>, + <0 130 4>; + interrupts-affinity = <&core1_0>, + <&core1_1>, + <&core1_2>; }; oscclk6a: oscclk6a { -- 1.8.1.1