diff options
-rw-r--r-- | arch/arm/mach-at91/board-dt-sam9.c | 20 | ||||
-rw-r--r-- | arch/arm/mach-at91/board-dt-sama5.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-at91/generic.h | 2 | ||||
-rw-r--r-- | arch/arm/mach-at91/pm.c | 7 |
4 files changed, 30 insertions, 1 deletions
diff --git a/arch/arm/mach-at91/board-dt-sam9.c b/arch/arm/mach-at91/board-dt-sam9.c index 0fe1ced608c5..c8252ddac6f0 100644 --- a/arch/arm/mach-at91/board-dt-sam9.c +++ b/arch/arm/mach-at91/board-dt-sam9.c | |||
@@ -61,3 +61,23 @@ DT_MACHINE_START(at91sam9g45_dt, "Atmel AT91SAM9G45") | |||
61 | .init_machine = sam9g45_dt_device_init, | 61 | .init_machine = sam9g45_dt_device_init, |
62 | .dt_compat = at91_9g45_board_compat, | 62 | .dt_compat = at91_9g45_board_compat, |
63 | MACHINE_END | 63 | MACHINE_END |
64 | |||
65 | static void __init sam9x5_dt_device_init(void) | ||
66 | { | ||
67 | at91_sam9x5_pm_init(); | ||
68 | of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); | ||
69 | } | ||
70 | |||
71 | static const char *at91_9x5_board_compat[] __initconst = { | ||
72 | "atmel,at91sam9x5", | ||
73 | "atmel,at91sam9n12", | ||
74 | NULL | ||
75 | }; | ||
76 | |||
77 | DT_MACHINE_START(at91sam9x5_dt, "Atmel AT91SAM9") | ||
78 | /* Maintainer: Atmel */ | ||
79 | .map_io = at91_map_io, | ||
80 | .init_early = at91_dt_initialize, | ||
81 | .init_machine = sam9x5_dt_device_init, | ||
82 | .dt_compat = at91_9x5_board_compat, | ||
83 | MACHINE_END | ||
diff --git a/arch/arm/mach-at91/board-dt-sama5.c b/arch/arm/mach-at91/board-dt-sama5.c index 44d372a22a29..b7338966c8ab 100644 --- a/arch/arm/mach-at91/board-dt-sama5.c +++ b/arch/arm/mach-at91/board-dt-sama5.c | |||
@@ -28,7 +28,7 @@ | |||
28 | 28 | ||
29 | static void __init sama5_dt_device_init(void) | 29 | static void __init sama5_dt_device_init(void) |
30 | { | 30 | { |
31 | at91_sam9260_pm_init(); | 31 | at91_sam9x5_pm_init(); |
32 | of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); | 32 | of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); |
33 | } | 33 | } |
34 | 34 | ||
diff --git a/arch/arm/mach-at91/generic.h b/arch/arm/mach-at91/generic.h index 44fc725edcf1..a8ee83ef6cd4 100644 --- a/arch/arm/mach-at91/generic.h +++ b/arch/arm/mach-at91/generic.h | |||
@@ -36,10 +36,12 @@ extern void at91_ioremap_matrix(u32 base_addr); | |||
36 | extern void __init at91_rm9200_pm_init(void); | 36 | extern void __init at91_rm9200_pm_init(void); |
37 | extern void __init at91_sam9260_pm_init(void); | 37 | extern void __init at91_sam9260_pm_init(void); |
38 | extern void __init at91_sam9g45_pm_init(void); | 38 | extern void __init at91_sam9g45_pm_init(void); |
39 | extern void __init at91_sam9x5_pm_init(void); | ||
39 | #else | 40 | #else |
40 | void __init at91_rm9200_pm_init(void) { } | 41 | void __init at91_rm9200_pm_init(void) { } |
41 | void __init at91_sam9260_pm_init(void) { } | 42 | void __init at91_sam9260_pm_init(void) { } |
42 | void __init at91_sam9g45_pm_init(void) { } | 43 | void __init at91_sam9g45_pm_init(void) { } |
44 | void __init at91_sam9x5_pm_init(void) { } | ||
43 | #endif | 45 | #endif |
44 | 46 | ||
45 | #endif /* _AT91_GENERIC_H */ | 47 | #endif /* _AT91_GENERIC_H */ |
diff --git a/arch/arm/mach-at91/pm.c b/arch/arm/mach-at91/pm.c index 81f2f12d3cc1..87c1fd8aa1b6 100644 --- a/arch/arm/mach-at91/pm.c +++ b/arch/arm/mach-at91/pm.c | |||
@@ -306,3 +306,10 @@ void __init at91_sam9g45_pm_init(void) | |||
306 | at91_pm_data.memctrl = AT91_MEMCTRL_DDRSDR; | 306 | at91_pm_data.memctrl = AT91_MEMCTRL_DDRSDR; |
307 | return at91_pm_init(); | 307 | return at91_pm_init(); |
308 | } | 308 | } |
309 | |||
310 | void __init at91_sam9x5_pm_init(void) | ||
311 | { | ||
312 | at91_pm_data.uhp_udp_mask = AT91SAM926x_PMC_UHP | AT91SAM926x_PMC_UDP; | ||
313 | at91_pm_data.memctrl = AT91_MEMCTRL_DDRSDR; | ||
314 | return at91_pm_init(); | ||
315 | } | ||