xtensa: Partially Revert "xtensa: Remove unnecessary of_platform_populate with default match table"
PATCH 1/1 xtensa: Partially Revert "xtensa: Remove unnecessary of_platform_populate with default match table"
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.
---
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(-)
arch/xtensa/kernel/setup.c +9 -0
@@ -22,6 +22,7 @@#include <linux/bootmem.h> #include <linux/kernel.h> #include <linux/percpu.h> +#include <linux/clk-provider.h> #include <linux/cpu.h> #include <linux/of.h> #include <linux/of_fdt.h>
@@ -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 */ /*
arch/xtensa/kernel/time.c +0 -2
@@ -15,7 +15,6 @@#include <linux/errno.h> #include <linux/sched.h> #include <linux/time.h> -#include <linux/clk-provider.h> #include <linux/clocksource.h> #include <linux/clockchips.h> #include <linux/interrupt.h>
@@ -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 (); }
Signature · 1 line
2.9.2
Quoted 5 lines · Rob Herring
This partially reverts commit
69d99e6c0d62keeping only the main purpose of the original commit which is the removal ofof_platform_populate()call. The moving ofof_clk_init()caused changes in the initialization order breaking booting.
Quoted 7 lines
Fixes 69d99e6c0d621f ("xtensa: Remove unnecessary of_platform_populate with default match table")Cc Kefeng Wang <[email protected]>Cc Guenter Roeck <[email protected]>Cc Max Filippov <[email protected]>Signed-off-by Rob Herring <[email protected]>---
This is on top of Guenter's build fix. Please test and I'll apply. I
Quoted 3 lines
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.
I think they're up to date. Another thing that need to be done right is the toolchain: it must match the configured CPU core. Please refer to
http://wiki.linux-xtensa.org/index.php/Toolchain_Overlay_File
for more details.
Quoted 6 lines
[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(-)
Signature · 2 lines
Thanks. -- Max
Quoted 14 lines · Max Filippov
Quoted 5 lines · Rob Herring
This partially reverts commit
69d99e6c0d62keeping only the main purpose of the original commit which is the removal ofof_platform_populate()call. The moving ofof_clk_init()caused changes in the initialization order breaking booting.Quoted 7 lines
Fixes 69d99e6c0d621f ("xtensa: Remove unnecessary of_platform_populate with default match table")Cc Kefeng Wang <[email protected]>Cc Guenter Roeck <[email protected]>Cc Max Filippov <[email protected]>Signed-off-by Rob Herring <[email protected]>---
This is on top of Guenter's build fix. Please test and I'll apply. I
Quoted 1 line
Tested-by Max Filippov <[email protected]>
Thanks.
Quoted 8 lines
Quoted 3 lines
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.
I think they're up to date. Another thing that need to be done right is the toolchain: it must match the configured CPU core. Please refer to
http://wiki.linux-xtensa.org/index.php/Toolchain_Overlay_File
for more details.
I don't build toolchains...
Rob
Max Filippov
maintainerQuoted 10 lines · Rob Herring
Quoted 8 lines
Quoted 3 lines
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.
I think they're up to date. Another thing that need to be done right is the toolchain: it must match the configured CPU core. Please refer to
http://wiki.linux-xtensa.org/index.php/Toolchain_Overlay_File
for more details.I don't build toolchains...
The toolchain for xtensa built with unmodified binutils does not produce working code. The one at
https://www.kernel.org/pub/tools/crosstool/files/bin/
and the one shipped with Fedora are broken.
Here's a few working prebuilt toolchains capable of building linux:
http://jcmvbkbc.spb.ru/~jcmvbkbc/tmp/201604261801/
Signature · 2 lines
Thanks. -- Max
Quoted 6 lines · Max Filippov
Quoted 5 lines · Rob Herring
This partially reverts commit
69d99e6c0d62keeping only the main purpose of the original commit which is the removal ofof_platform_populate()call. The moving ofof_clk_init()caused changes in the initialization order breaking booting.
Quoted 7 lines
Quoted 7 lines
Fixes 69d99e6c0d621f ("xtensa: Remove unnecessary of_platform_populate with default match table")Cc Kefeng Wang <[email protected]>Cc Guenter Roeck <[email protected]>Cc Max Filippov <[email protected]>Signed-off-by Rob Herring <[email protected]>---
This is on top of Guenter's build fix. Please test and I'll apply. I
Hi all,
Sorry about the issue introduced by me, will be more careful, and thanks Rob and Guenter to fix them.
BRs,
Kefeng
Quoted 19 lines
Tested-by Max Filippov <[email protected]>Quoted 3 lines
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.
I think they're up to date. Another thing that need to be done right is the toolchain: it must match the configured CPU core. Please refer to
http://wiki.linux-xtensa.org/index.php/Toolchain_Overlay_File
for more details.Quoted 6 lines
[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(-)