diff options
| -rw-r--r-- | arch/arm/mach-at91/board-csb337.c | 24 | ||||
| -rw-r--r-- | arch/arm/mach-at91/board-dk.c | 10 | ||||
| -rw-r--r-- | arch/arm/mach-at91/board-ek.c | 21 | ||||
| -rw-r--r-- | arch/arm/mach-at91/board-sam9263ek.c | 26 |
4 files changed, 81 insertions, 0 deletions
diff --git a/arch/arm/mach-at91/board-csb337.c b/arch/arm/mach-at91/board-csb337.c index 51cb3c8cc601..0e2a11fc5bbd 100644 --- a/arch/arm/mach-at91/board-csb337.c +++ b/arch/arm/mach-at91/board-csb337.c | |||
| @@ -215,6 +215,28 @@ static void __init csb300_add_device_buttons(void) | |||
| 215 | static void __init csb300_add_device_buttons(void) {} | 215 | static void __init csb300_add_device_buttons(void) {} |
| 216 | #endif | 216 | #endif |
| 217 | 217 | ||
| 218 | static struct gpio_led csb_leds[] = { | ||
| 219 | { /* "led0", yellow */ | ||
| 220 | .name = "led0", | ||
| 221 | .gpio = AT91_PIN_PB2, | ||
| 222 | .active_low = 1, | ||
| 223 | .default_trigger = "heartbeat", | ||
| 224 | }, | ||
| 225 | { /* "led1", green */ | ||
| 226 | .name = "led1", | ||
| 227 | .gpio = AT91_PIN_PB1, | ||
| 228 | .active_low = 1, | ||
| 229 | .default_trigger = "mmc0", | ||
| 230 | }, | ||
| 231 | { /* "led2", yellow */ | ||
| 232 | .name = "led2", | ||
| 233 | .gpio = AT91_PIN_PB0, | ||
| 234 | .active_low = 1, | ||
| 235 | .default_trigger = "ide-disk", | ||
| 236 | }, | ||
| 237 | }; | ||
| 238 | |||
| 239 | |||
| 218 | static void __init csb337_board_init(void) | 240 | static void __init csb337_board_init(void) |
| 219 | { | 241 | { |
| 220 | /* Serial */ | 242 | /* Serial */ |
| @@ -236,6 +258,8 @@ static void __init csb337_board_init(void) | |||
| 236 | at91_add_device_mmc(0, &csb337_mmc_data); | 258 | at91_add_device_mmc(0, &csb337_mmc_data); |
| 237 | /* NOR flash */ | 259 | /* NOR flash */ |
| 238 | platform_device_register(&csb_flash); | 260 | platform_device_register(&csb_flash); |
| 261 | /* LEDs */ | ||
| 262 | at91_gpio_leds(csb_leds, ARRAY_SIZE(csb_leds)); | ||
| 239 | /* Switches on CSB300 */ | 263 | /* Switches on CSB300 */ |
| 240 | csb300_add_device_buttons(); | 264 | csb300_add_device_buttons(); |
| 241 | } | 265 | } |
diff --git a/arch/arm/mach-at91/board-dk.c b/arch/arm/mach-at91/board-dk.c index 40c9e4331706..0a897efeba8e 100644 --- a/arch/arm/mach-at91/board-dk.c +++ b/arch/arm/mach-at91/board-dk.c | |||
| @@ -183,6 +183,14 @@ static struct platform_device dk_flash = { | |||
| 183 | .num_resources = 1, | 183 | .num_resources = 1, |
| 184 | }; | 184 | }; |
| 185 | 185 | ||
| 186 | static struct gpio_led dk_leds[] = { | ||
| 187 | { | ||
| 188 | .name = "led0", | ||
| 189 | .gpio = AT91_PIN_PB2, | ||
| 190 | .active_low = 1, | ||
| 191 | .default_trigger = "heartbeat", | ||
| 192 | } | ||
| 193 | }; | ||
| 186 | 194 | ||
| 187 | static void __init dk_board_init(void) | 195 | static void __init dk_board_init(void) |
| 188 | { | 196 | { |
| @@ -213,6 +221,8 @@ static void __init dk_board_init(void) | |||
| 213 | at91_add_device_nand(&dk_nand_data); | 221 | at91_add_device_nand(&dk_nand_data); |
| 214 | /* NOR Flash */ | 222 | /* NOR Flash */ |
| 215 | platform_device_register(&dk_flash); | 223 | platform_device_register(&dk_flash); |
| 224 | /* LEDs */ | ||
| 225 | at91_gpio_leds(dk_leds, ARRAY_SIZE(dk_leds)); | ||
| 216 | /* VGA */ | 226 | /* VGA */ |
| 217 | // dk_add_device_video(); | 227 | // dk_add_device_video(); |
| 218 | } | 228 | } |
diff --git a/arch/arm/mach-at91/board-ek.c b/arch/arm/mach-at91/board-ek.c index 53a5ef9e72ee..0574e50a30dd 100644 --- a/arch/arm/mach-at91/board-ek.c +++ b/arch/arm/mach-at91/board-ek.c | |||
| @@ -141,6 +141,25 @@ static struct platform_device ek_flash = { | |||
| 141 | .num_resources = 1, | 141 | .num_resources = 1, |
| 142 | }; | 142 | }; |
| 143 | 143 | ||
| 144 | static struct gpio_led ek_leds[] = { | ||
| 145 | { /* "user led 1", DS2 */ | ||
| 146 | .name = "green", | ||
| 147 | .gpio = AT91_PIN_PB0, | ||
| 148 | .active_low = 1, | ||
| 149 | .default_trigger = "mmc0", | ||
| 150 | }, | ||
| 151 | { /* "user led 2", DS4 */ | ||
| 152 | .name = "yellow", | ||
| 153 | .gpio = AT91_PIN_PB1, | ||
| 154 | .active_low = 1, | ||
| 155 | .default_trigger = "heartbeat", | ||
| 156 | }, | ||
| 157 | { /* "user led 3", DS6 */ | ||
| 158 | .name = "red", | ||
| 159 | .gpio = AT91_PIN_PB2, | ||
| 160 | .active_low = 1, | ||
| 161 | } | ||
| 162 | }; | ||
| 144 | 163 | ||
| 145 | static void __init ek_board_init(void) | 164 | static void __init ek_board_init(void) |
| 146 | { | 165 | { |
| @@ -167,6 +186,8 @@ static void __init ek_board_init(void) | |||
| 167 | #endif | 186 | #endif |
| 168 | /* NOR Flash */ | 187 | /* NOR Flash */ |
| 169 | platform_device_register(&ek_flash); | 188 | platform_device_register(&ek_flash); |
| 189 | /* LEDs */ | ||
| 190 | at91_gpio_leds(ek_leds, ARRAY_SIZE(ek_leds)); | ||
| 170 | /* VGA */ | 191 | /* VGA */ |
| 171 | // ek_add_device_video(); | 192 | // ek_add_device_video(); |
| 172 | } | 193 | } |
diff --git a/arch/arm/mach-at91/board-sam9263ek.c b/arch/arm/mach-at91/board-sam9263ek.c index a9dd59543ec7..2df0ff25d147 100644 --- a/arch/arm/mach-at91/board-sam9263ek.c +++ b/arch/arm/mach-at91/board-sam9263ek.c | |||
| @@ -272,6 +272,30 @@ static struct atmel_ac97_data ek_ac97_data = { | |||
| 272 | }; | 272 | }; |
| 273 | 273 | ||
| 274 | 274 | ||
| 275 | /* | ||
| 276 | * LEDs ... these could all be PWM-driven, for variable brightness | ||
| 277 | */ | ||
| 278 | static struct gpio_led ek_leds[] = { | ||
| 279 | { /* "left" led, green, userled1, pwm1 */ | ||
| 280 | .name = "ds1", | ||
| 281 | .gpio = AT91_PIN_PB8, | ||
| 282 | .active_low = 1, | ||
| 283 | .default_trigger = "mmc0", | ||
| 284 | }, | ||
| 285 | { /* "right" led, green, userled2, pwm2 */ | ||
| 286 | .name = "ds2", | ||
| 287 | .gpio = AT91_PIN_PC29, | ||
| 288 | .active_low = 1, | ||
| 289 | .default_trigger = "nand-disk", | ||
| 290 | }, | ||
| 291 | { /* "power" led, yellow, pwm0 */ | ||
| 292 | .name = "ds3", | ||
| 293 | .gpio = AT91_PIN_PB7, | ||
| 294 | .default_trigger = "heartbeat", | ||
| 295 | }, | ||
| 296 | }; | ||
| 297 | |||
| 298 | |||
| 275 | static void __init ek_board_init(void) | 299 | static void __init ek_board_init(void) |
| 276 | { | 300 | { |
| 277 | /* Serial */ | 301 | /* Serial */ |
| @@ -297,6 +321,8 @@ static void __init ek_board_init(void) | |||
| 297 | at91_add_device_lcdc(&ek_lcdc_data); | 321 | at91_add_device_lcdc(&ek_lcdc_data); |
| 298 | /* AC97 */ | 322 | /* AC97 */ |
| 299 | at91_add_device_ac97(&ek_ac97_data); | 323 | at91_add_device_ac97(&ek_ac97_data); |
| 324 | /* LEDs */ | ||
| 325 | at91_gpio_leds(ek_leds, ARRAY_SIZE(ek_leds)); | ||
| 300 | } | 326 | } |
| 301 | 327 | ||
| 302 | MACHINE_START(AT91SAM9263EK, "Atmel AT91SAM9263-EK") | 328 | MACHINE_START(AT91SAM9263EK, "Atmel AT91SAM9263-EK") |
