From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757563AbcGZSBg (ORCPT ); Tue, 26 Jul 2016 14:01:36 -0400 Received: from mail-io0-f196.google.com ([209.85.223.196]:36241 "EHLO mail-io0-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757213AbcGZSBe (ORCPT ); Tue, 26 Jul 2016 14:01:34 -0400 From: Rob Herring To: Chris Zankel Cc: linux-kernel@vger.kernel.org, linux-xtensa@linux-xtensa.org, Kefeng Wang , Guenter Roeck , Max Filippov Subject: [PATCH] xtensa: Partially Revert "xtensa: Remove unnecessary of_platform_populate with default match table" Date: Tue, 26 Jul 2016 13:01:32 -0500 Message-Id: <20160726180132.12764-1-robh@kernel.org> X-Mailer: git-send-email 2.9.2 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This partially reverts commit 69d99e6c0d62 keeping only the main purpose of the original commit which is the removal of of_platform_populate() call. The moving of of_clk_init() caused changes in the initialization order breaking booting. Fixes: 69d99e6c0d621f ("xtensa: Remove unnecessary of_platform_populate with default match table") Cc: Kefeng Wang Cc: Guenter Roeck Cc: Max Filippov Signed-off-by: Rob Herring --- This is on top of Guenter's build fix. Please test and I'll apply. I tried briefly running under QEMU, but didn't have success. If anyone has up to date instructions that would be helpful as using these[1] didn't seem to work. Rob [1] http://wiki.linux-xtensa.org/index.php/Xtensa_on_QEMU arch/xtensa/kernel/setup.c | 9 +++++++++ arch/xtensa/kernel/time.c | 2 -- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/arch/xtensa/kernel/setup.c b/arch/xtensa/kernel/setup.c index 6f68c60..143251e 100644 --- a/arch/xtensa/kernel/setup.c +++ b/arch/xtensa/kernel/setup.c @@ -22,6 +22,7 @@ #include #include #include +#include #include #include #include @@ -251,6 +252,14 @@ void __init early_init_devtree(void *params) strlcpy(command_line, boot_command_line, COMMAND_LINE_SIZE); } +static int __init xtensa_device_probe(void) +{ + of_clk_init(NULL); + return 0; +} + +device_initcall(xtensa_device_probe); + #endif /* CONFIG_OF */ /* diff --git a/arch/xtensa/kernel/time.c b/arch/xtensa/kernel/time.c index 6ec73c9..b9ad9fe 100644 --- a/arch/xtensa/kernel/time.c +++ b/arch/xtensa/kernel/time.c @@ -15,7 +15,6 @@ #include #include #include -#include #include #include #include @@ -149,7 +148,6 @@ void __init time_init(void) local_timer_setup(0); setup_irq(this_cpu_ptr(&ccount_timer)->evt.irq, &timer_irqaction); sched_clock_register(ccount_sched_clock_read, 32, ccount_freq); - of_clk_init(NULL); clocksource_probe(); } -- 2.9.2