diff options
author | Tony Lindgren <tony@atomide.com> | 2010-02-23 22:22:48 -0500 |
---|---|---|
committer | Tony Lindgren <tony@atomide.com> | 2010-02-23 22:22:48 -0500 |
commit | 0fdc54b2019700a4b50179914e810367c14044a3 (patch) | |
tree | 73e5e34f30aec87ad4bf4423c4f95ebba576359e /arch/arm/mach-omap2/board-rx51.c | |
parent | 8250a5c381cc6714a061a39cfd29d7453e8ad64b (diff) | |
parent | 79dcfdd407208cba06bd446e93b0809df1cf10d1 (diff) |
Merge branch 'pm-2.6.34' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap-pm into omap-for-linus
Diffstat (limited to 'arch/arm/mach-omap2/board-rx51.c')
-rw-r--r-- | arch/arm/mach-omap2/board-rx51.c | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/board-rx51.c b/arch/arm/mach-omap2/board-rx51.c index 0ccb8b46d157..b155c366c650 100644 --- a/arch/arm/mach-omap2/board-rx51.c +++ b/arch/arm/mach-omap2/board-rx51.c | |||
@@ -16,6 +16,7 @@ | |||
16 | #include <linux/clk.h> | 16 | #include <linux/clk.h> |
17 | #include <linux/io.h> | 17 | #include <linux/io.h> |
18 | #include <linux/gpio.h> | 18 | #include <linux/gpio.h> |
19 | #include <linux/leds.h> | ||
19 | 20 | ||
20 | #include <mach/hardware.h> | 21 | #include <mach/hardware.h> |
21 | #include <asm/mach-types.h> | 22 | #include <asm/mach-types.h> |
@@ -30,9 +31,49 @@ | |||
30 | #include <plat/usb.h> | 31 | #include <plat/usb.h> |
31 | 32 | ||
32 | #include "mux.h" | 33 | #include "mux.h" |
34 | #include "pm.h" | ||
35 | |||
36 | #define RX51_GPIO_SLEEP_IND 162 | ||
33 | 37 | ||
34 | struct omap_sdrc_params *rx51_get_sdram_timings(void); | 38 | struct omap_sdrc_params *rx51_get_sdram_timings(void); |
35 | 39 | ||
40 | static struct gpio_led gpio_leds[] = { | ||
41 | { | ||
42 | .name = "sleep_ind", | ||
43 | .gpio = RX51_GPIO_SLEEP_IND, | ||
44 | }, | ||
45 | }; | ||
46 | |||
47 | static struct gpio_led_platform_data gpio_led_info = { | ||
48 | .leds = gpio_leds, | ||
49 | .num_leds = ARRAY_SIZE(gpio_leds), | ||
50 | }; | ||
51 | |||
52 | static struct platform_device leds_gpio = { | ||
53 | .name = "leds-gpio", | ||
54 | .id = -1, | ||
55 | .dev = { | ||
56 | .platform_data = &gpio_led_info, | ||
57 | }, | ||
58 | }; | ||
59 | |||
60 | static struct cpuidle_params rx51_cpuidle_params[] = { | ||
61 | /* C1 */ | ||
62 | {1, 110, 162, 5}, | ||
63 | /* C2 */ | ||
64 | {1, 106, 180, 309}, | ||
65 | /* C3 */ | ||
66 | {0, 107, 410, 46057}, | ||
67 | /* C4 */ | ||
68 | {0, 121, 3374, 46057}, | ||
69 | /* C5 */ | ||
70 | {1, 855, 1146, 46057}, | ||
71 | /* C6 */ | ||
72 | {0, 7580, 4134, 484329}, | ||
73 | /* C7 */ | ||
74 | {1, 7505, 15274, 484329}, | ||
75 | }; | ||
76 | |||
36 | static struct omap_lcd_config rx51_lcd_config = { | 77 | static struct omap_lcd_config rx51_lcd_config = { |
37 | .ctrl_name = "internal", | 78 | .ctrl_name = "internal", |
38 | }; | 79 | }; |
@@ -62,6 +103,7 @@ static void __init rx51_init_irq(void) | |||
62 | 103 | ||
63 | omap_board_config = rx51_config; | 104 | omap_board_config = rx51_config; |
64 | omap_board_config_size = ARRAY_SIZE(rx51_config); | 105 | omap_board_config_size = ARRAY_SIZE(rx51_config); |
106 | omap3_pm_init_cpuidle(rx51_cpuidle_params); | ||
65 | sdrc_params = rx51_get_sdram_timings(); | 107 | sdrc_params = rx51_get_sdram_timings(); |
66 | omap2_init_common_hw(sdrc_params, sdrc_params); | 108 | omap2_init_common_hw(sdrc_params, sdrc_params); |
67 | omap_init_irq(); | 109 | omap_init_irq(); |
@@ -94,6 +136,8 @@ static void __init rx51_init(void) | |||
94 | /* Ensure SDRC pins are mux'd for self-refresh */ | 136 | /* Ensure SDRC pins are mux'd for self-refresh */ |
95 | omap_mux_init_signal("sdrc_cke0", OMAP_PIN_OUTPUT); | 137 | omap_mux_init_signal("sdrc_cke0", OMAP_PIN_OUTPUT); |
96 | omap_mux_init_signal("sdrc_cke1", OMAP_PIN_OUTPUT); | 138 | omap_mux_init_signal("sdrc_cke1", OMAP_PIN_OUTPUT); |
139 | |||
140 | platform_device_register(&leds_gpio); | ||
97 | } | 141 | } |
98 | 142 | ||
99 | static void __init rx51_map_io(void) | 143 | static void __init rx51_map_io(void) |