From patchwork Wed Apr 3 16:13:55 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guennadi Liakhovetski X-Patchwork-Id: 2388601 Return-Path: X-Original-To: patchwork-linux-sh@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 51643DFB79 for ; Wed, 3 Apr 2013 16:14:05 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757938Ab3DCQOE (ORCPT ); Wed, 3 Apr 2013 12:14:04 -0400 Received: from moutng.kundenserver.de ([212.227.17.9]:49644 "EHLO moutng.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754857Ab3DCQOD (ORCPT ); Wed, 3 Apr 2013 12:14:03 -0400 Received: from axis700.grange (dslb-094-221-105-117.pools.arcor-ip.net [94.221.105.117]) by mrelayeu.kundenserver.de (node=mreu2) with ESMTP (Nemesis) id 0Mg2TZ-1U0VaS1NnZ-00NvbK; Wed, 03 Apr 2013 18:13:57 +0200 Received: from 6a.grange (6a.grange [192.168.1.11]) by axis700.grange (Postfix) with ESMTPS id E7ACD40BB4; Wed, 3 Apr 2013 18:13:56 +0200 (CEST) Received: from lyakh by 6a.grange with local (Exim 4.72) (envelope-from ) id 1UNQJw-0004ZH-NN; Wed, 03 Apr 2013 18:13:56 +0200 From: Guennadi Liakhovetski To: linux-sh@vger.kernel.org Cc: linux-arm-kernel@lists.infradead.org, Magnus Damm , Simon Horman , Guennadi Liakhovetski Subject: [PATCH/RFC 2/3] ARM: shmobile: initialise clock early on kzm9g-reference Date: Wed, 3 Apr 2013 18:13:55 +0200 Message-Id: <1365005636-17526-3-git-send-email-g.liakhovetski@gmx.de> X-Mailer: git-send-email 1.7.2.5 In-Reply-To: <1365005636-17526-1-git-send-email-g.liakhovetski@gmx.de> References: <1365005636-17526-1-git-send-email-g.liakhovetski@gmx.de> X-Provags-ID: V02:K0:04r0gOpjnnOhIeUwHaxavNUR2MeUUh/rmz3Eoh6U9qt Mz5L7nZzZpKwYLZOyAIm4q7GhIe1p+cQ6mT32t1ZxxXOBj2zTR bKyKLL9d+p138yH0oyjRJq13X/Tx1NXTTKAMEkTUq9hyRT3w1Y nsWrLHxabS01D/QQnXqbtonupkYnGe6zIhLe8t5V6pTQl0nqfN ToPvGMfPbTMEQB3SMx0uQZbDSqVHTO4mJEBHdUCa9xuIdBL3Me YaB29aWvRAT7OJ1kCd+puabKx2Naj0yX++XcaZu+TG5+/NvbwI SxLqCvWni2RNTORoRuZcUN+SaLic86R/qLkW9BmGiNK/Ajdz62 zHFrTHaJZJ8g6Cuz4PSnKv5uaOnsP3BW2STPHee9aiqf1s3GNp n6032h4PrfM+g== Sender: linux-sh-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-sh@vger.kernel.org To prepare to enable TWD on kzm9g-reference, clock initialisation has to be done early. Move it from .init_machine to .init_time stage. Signed-off-by: Guennadi Liakhovetski --- arch/arm/mach-shmobile/board-kzm9g-reference.c | 8 +++++++- arch/arm/mach-shmobile/setup-sh73a0.c | 13 +++++++++---- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/arch/arm/mach-shmobile/board-kzm9g-reference.c b/arch/arm/mach-shmobile/board-kzm9g-reference.c index aefa50d..0f9b276 100644 --- a/arch/arm/mach-shmobile/board-kzm9g-reference.c +++ b/arch/arm/mach-shmobile/board-kzm9g-reference.c @@ -90,6 +90,12 @@ static void __init kzm_init(void) #endif } +static void __init timer_init(void) +{ + sh73a0_clock_init(); + shmobile_timer_init(); +} + static const char *kzm9g_boards_compat_dt[] __initdata = { "renesas,kzm9g-reference", NULL, @@ -102,6 +108,6 @@ DT_MACHINE_START(KZM9G_DT, "kzm9g-reference") .nr_irqs = NR_IRQS_LEGACY, .init_irq = irqchip_init, .init_machine = kzm_init, - .init_time = shmobile_timer_init, + .init_time = timer_init, .dt_compat = kzm9g_boards_compat_dt, MACHINE_END diff --git a/arch/arm/mach-shmobile/setup-sh73a0.c b/arch/arm/mach-shmobile/setup-sh73a0.c index 0469e84..8a1bc1c 100644 --- a/arch/arm/mach-shmobile/setup-sh73a0.c +++ b/arch/arm/mach-shmobile/setup-sh73a0.c @@ -1018,9 +1018,6 @@ void __init sh73a0_add_standard_devices_dt(void) { struct platform_device_info devinfo = { .name = "cpufreq-cpu0", .id = -1, }; - /* clocks are setup late during boot in the case of DT */ - sh73a0_clock_init(); - platform_add_devices(sh73a0_devices_dt, ARRAY_SIZE(sh73a0_devices_dt)); of_platform_populate(NULL, of_default_bus_match_table, @@ -1030,6 +1027,14 @@ void __init sh73a0_add_standard_devices_dt(void) platform_device_register_full(&devinfo); } +static void __init add_standard_devices(void) +{ + /* clocks are setup late during boot in the case of DT */ + sh73a0_clock_init(); + + sh73a0_add_standard_devices_dt(); +} + static const char *sh73a0_boards_compat_dt[] __initdata = { "renesas,sh73a0", NULL, @@ -1041,7 +1046,7 @@ DT_MACHINE_START(SH73A0_DT, "Generic SH73A0 (Flattened Device Tree)") .init_early = sh73a0_init_delay, .nr_irqs = NR_IRQS_LEGACY, .init_irq = irqchip_init, - .init_machine = sh73a0_add_standard_devices_dt, + .init_machine = add_standard_devices, .init_time = shmobile_timer_init, .dt_compat = sh73a0_boards_compat_dt, MACHINE_END