From patchwork Thu Jun 6 11:01:18 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chander Kashyap X-Patchwork-Id: 2678951 Return-Path: X-Original-To: patchwork-linux-samsung-soc@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork2.kernel.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by patchwork2.kernel.org (Postfix) with ESMTP id 31CE0DF23A for ; Thu, 6 Jun 2013 11:02:48 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932398Ab3FFLCr (ORCPT ); Thu, 6 Jun 2013 07:02:47 -0400 Received: from mail-pd0-f181.google.com ([209.85.192.181]:57778 "EHLO mail-pd0-f181.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932135Ab3FFLCr (ORCPT ); Thu, 6 Jun 2013 07:02:47 -0400 Received: by mail-pd0-f181.google.com with SMTP id 14so558174pdj.40 for ; Thu, 06 Jun 2013 04:02:46 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=from:to:cc:subject:date:message-id:x-mailer:in-reply-to:references :x-gm-message-state; bh=zF8XuOG82F/yNOsDKHZmnRkb/PHrYQniJYlH/gH986Q=; b=pZtRHKpRmSuRuDjgGFOsJfDrfX30qi12lOW8jEKSXbA13s9VfM+7ckUb7FhWYFPPCq kLjJaz3Ag3TmOp352+0SMU+7AqdR0RtUCrOG4FjLAg9VF8cxBlicI/7lN9E7nPfwrovm N/v/539mYiHiSXbVdbElKuo5KDpSbjYrn7TCEHlzkH5gCJZltY9dNze/v1Y3N+X6M4zz q32WascdpZdrRCrYpbOJ51zJxLXuoXDugh+bpSYY4Bse+BpxgNSZTNQg8fqi6BewXSAS JxwYAM6uec4pyB8FFx+iROV/Ny95mkl0a7svjLLdr6UHQpp68iH3g3cImzb+qnultwTv laPw== X-Received: by 10.68.232.42 with SMTP id tl10mr37804144pbc.72.1370516566550; Thu, 06 Jun 2013 04:02:46 -0700 (PDT) Received: from localhost.localdomain ([115.113.119.130]) by mx.google.com with ESMTPSA id qh4sm77248213pac.8.2013.06.06.04.02.42 for (version=TLSv1.1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Thu, 06 Jun 2013 04:02:45 -0700 (PDT) From: Chander Kashyap To: linux-arm-kernel@lists.infradead.org Cc: linux-samsung-soc@vger.kernel.org, linux-serial@vger.kernel.org, kgene.kim@samsung.com, t.figa@samsung.com, s.nawrocki@samsung.com, thomas.ab@samsung.com, Chander Kashyap Subject: [PATCH 04/13] ARM: dts: list the CPU nodes for Exynos5250 Date: Thu, 6 Jun 2013 16:31:18 +0530 Message-Id: <1370516488-25860-4-git-send-email-chander.kashyap@linaro.org> X-Mailer: git-send-email 1.7.9.5 In-Reply-To: <1370516488-25860-1-git-send-email-chander.kashyap@linaro.org> References: <1370516488-25860-1-git-send-email-chander.kashyap@linaro.org> X-Gm-Message-State: ALoCoQnrhXOvO9exTJE5XXjGtqOQ+f9viGKR9b2HUDERgAcfaae1QOtjeCbtr+RsVlAUC4413xY4 Sender: linux-samsung-soc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-samsung-soc@vger.kernel.org Instead of having to specify the number for CPUs in Exynos5250 in platsmp.c file, let the number of CPUs be determined by having this information listed in Exynos5250 device tree file. Signed-off-by: Chander Kashyap Reviewed-by: Tomasz Figa --- arch/arm/boot/dts/exynos5250.dtsi | 14 ++++++++++++++ arch/arm/mach-exynos/platsmp.c | 10 +++++++--- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi index e571d3b..7f6b1c7 100644 --- a/arch/arm/boot/dts/exynos5250.dtsi +++ b/arch/arm/boot/dts/exynos5250.dtsi @@ -50,6 +50,20 @@ pinctrl3 = &pinctrl_3; }; + cpus { + #address-cells = <1>; + #size-cells = <0>; + + cpu@0 { + compatible = "arm,cortex-a15"; + reg = <0>; + }; + cpu@1 { + compatible = "arm,cortex-a15"; + reg = <1>; + }; + }; + pd_gsc: gsc-power-domain@0x10044000 { compatible = "samsung,exynos4210-pd"; reg = <0x10044000 0x20>; diff --git a/arch/arm/mach-exynos/platsmp.c b/arch/arm/mach-exynos/platsmp.c index 1a4e4e5..85ea4ca 100644 --- a/arch/arm/mach-exynos/platsmp.c +++ b/arch/arm/mach-exynos/platsmp.c @@ -180,10 +180,14 @@ static void __init exynos_smp_init_cpus(void) void __iomem *scu_base = scu_base_addr(); unsigned int i, ncores; - if (soc_is_exynos5250()) - ncores = 2; - else + if (read_cpuid_part_number() == ARM_CPU_PART_CORTEX_A9) ncores = scu_base ? scu_get_core_count(scu_base) : 1; + else + /* + * CPU Nodes are passed thru DT and set_cpu_possible + * is set by "arm_dt_init_cpu_maps". + */ + return; /* sanity check */ if (ncores > nr_cpu_ids) {