diff options
author | Nicolas Ferre <nicolas.ferre@atmel.com> | 2015-01-23 05:47:37 -0500 |
---|---|---|
committer | Nicolas Ferre <nicolas.ferre@atmel.com> | 2015-01-26 07:43:35 -0500 |
commit | ea69f998499d556251d1e2843953cc4f85788464 (patch) | |
tree | 02c34ddbad3f14ccc155a05b15ff6a7cba6e167a | |
parent | b9f122cc63ef7f30919b628bee48ab31501e3408 (diff) |
ARM: at91: fix ordering of SRAM and PM initialization
The PM initialization needs internal SRAM for allocating a gen_pool and
use it to store its PM code. So we need to have of_platform_populate() before
this code.
Suggested-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
-rw-r--r-- | arch/arm/mach-at91/board-dt-rm9200.c | 4 | ||||
-rw-r--r-- | arch/arm/mach-at91/board-dt-sam9.c | 12 | ||||
-rw-r--r-- | arch/arm/mach-at91/board-dt-sama5.c | 2 |
3 files changed, 9 insertions, 9 deletions
diff --git a/arch/arm/mach-at91/board-dt-rm9200.c b/arch/arm/mach-at91/board-dt-rm9200.c index 0455c96d32b1..d47c4433444d 100644 --- a/arch/arm/mach-at91/board-dt-rm9200.c +++ b/arch/arm/mach-at91/board-dt-rm9200.c | |||
@@ -33,9 +33,9 @@ static void __init at91rm9200_dt_timer_init(void) | |||
33 | 33 | ||
34 | static void __init rm9200_dt_device_init(void) | 34 | static void __init rm9200_dt_device_init(void) |
35 | { | 35 | { |
36 | at91_rm9200_pm_init(); | ||
37 | |||
38 | of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); | 36 | of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); |
37 | |||
38 | at91_rm9200_pm_init(); | ||
39 | } | 39 | } |
40 | 40 | ||
41 | 41 | ||
diff --git a/arch/arm/mach-at91/board-dt-sam9.c b/arch/arm/mach-at91/board-dt-sam9.c index 8391b9558c22..f5d922e57655 100644 --- a/arch/arm/mach-at91/board-dt-sam9.c +++ b/arch/arm/mach-at91/board-dt-sam9.c | |||
@@ -27,10 +27,10 @@ | |||
27 | 27 | ||
28 | static void __init sam9_dt_device_init(void) | 28 | static void __init sam9_dt_device_init(void) |
29 | { | 29 | { |
30 | of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); | ||
31 | |||
30 | arm_pm_idle = at91sam9_idle; | 32 | arm_pm_idle = at91sam9_idle; |
31 | at91_sam9260_pm_init(); | 33 | at91_sam9260_pm_init(); |
32 | |||
33 | of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); | ||
34 | } | 34 | } |
35 | 35 | ||
36 | static const char *at91_dt_board_compat[] __initconst = { | 36 | static const char *at91_dt_board_compat[] __initconst = { |
@@ -48,10 +48,10 @@ MACHINE_END | |||
48 | 48 | ||
49 | static void __init sam9g45_dt_device_init(void) | 49 | static void __init sam9g45_dt_device_init(void) |
50 | { | 50 | { |
51 | of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); | ||
52 | |||
51 | arm_pm_idle = at91sam9_idle; | 53 | arm_pm_idle = at91sam9_idle; |
52 | at91_sam9g45_pm_init(); | 54 | at91_sam9g45_pm_init(); |
53 | |||
54 | of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); | ||
55 | } | 55 | } |
56 | 56 | ||
57 | static const char *at91_9g45_board_compat[] __initconst = { | 57 | static const char *at91_9g45_board_compat[] __initconst = { |
@@ -69,10 +69,10 @@ MACHINE_END | |||
69 | 69 | ||
70 | static void __init sam9x5_dt_device_init(void) | 70 | static void __init sam9x5_dt_device_init(void) |
71 | { | 71 | { |
72 | of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); | ||
73 | |||
72 | arm_pm_idle = at91sam9_idle; | 74 | arm_pm_idle = at91sam9_idle; |
73 | at91_sam9x5_pm_init(); | 75 | at91_sam9x5_pm_init(); |
74 | |||
75 | of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); | ||
76 | } | 76 | } |
77 | 77 | ||
78 | static const char *at91_9x5_board_compat[] __initconst = { | 78 | static const char *at91_9x5_board_compat[] __initconst = { |
diff --git a/arch/arm/mach-at91/board-dt-sama5.c b/arch/arm/mach-at91/board-dt-sama5.c index b7338966c8ab..86cffcdef145 100644 --- a/arch/arm/mach-at91/board-dt-sama5.c +++ b/arch/arm/mach-at91/board-dt-sama5.c | |||
@@ -28,8 +28,8 @@ | |||
28 | 28 | ||
29 | static void __init sama5_dt_device_init(void) | 29 | static void __init sama5_dt_device_init(void) |
30 | { | 30 | { |
31 | at91_sam9x5_pm_init(); | ||
32 | of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); | 31 | of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); |
32 | at91_sam9x5_pm_init(); | ||
33 | } | 33 | } |
34 | 34 | ||
35 | static const char *sama5_dt_board_compat[] __initconst = { | 35 | static const char *sama5_dt_board_compat[] __initconst = { |