aboutsummaryrefslogtreecommitdiffstats
path: root/arch/blackfin
diff options
context:
space:
mode:
authorJavier Herrero <jherrero@hvsistemas.es>2008-01-27 06:53:08 -0500
committerBryan Wu <bryan.wu@analog.com>2008-01-27 06:53:08 -0500
commit7a5f819187ff827c131721dbba11ad9596ae5e30 (patch)
treebc663843c04da1b9d7ac49cc5ad4c1b1d22b619b /arch/blackfin
parent2935077e06494638a78a02f7b4cf304e4e70eaca (diff)
[Blackfin] arch: Added support for OpenCores Keyboard Controller to H8606 board
Signed-off-by: Javier Herrero <jherrero@hvsistemas.es> Signed-off-by: Bryan Wu <bryan.wu@analog.com>
Diffstat (limited to 'arch/blackfin')
-rw-r--r--arch/blackfin/mach-bf533/boards/H8606.c32
1 files changed, 32 insertions, 0 deletions
diff --git a/arch/blackfin/mach-bf533/boards/H8606.c b/arch/blackfin/mach-bf533/boards/H8606.c
index 675fd1c62805..a72c7a620fa1 100644
--- a/arch/blackfin/mach-bf533/boards/H8606.c
+++ b/arch/blackfin/mach-bf533/boards/H8606.c
@@ -346,6 +346,34 @@ static struct platform_device serial8250_device = {
346 346
347#endif 347#endif
348 348
349#if defined(CONFIG_KEYBOARD_OPENCORES) || defined(CONFIG_KEYBOARD_OPENCORES_MODULE)
350
351/*
352 * Configuration for one OpenCores keyboard controller in FPGA at address 0x20200030,
353 * interrupt output wired to PF9. Change to suit different FPGA configuration
354 */
355
356static struct resource opencores_kbd_resources[] = {
357 [0] = {
358 .start = 0x20200030,
359 .end = 0x20300030 + 2,
360 .flags = IORESOURCE_MEM,
361 },
362 [1] = {
363 .start = IRQ_PF9,
364 .end = IRQ_PF9,
365 .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHEDGE,
366 },
367};
368
369static struct platform_device opencores_kbd_device = {
370 .id = -1,
371 .name = "opencores-kbd",
372 .resource = opencores_kbd_resources,
373 .num_resources = ARRAY_SIZE(opencores_kbd_resources),
374};
375#endif
376
349static struct platform_device *h8606_devices[] __initdata = { 377static struct platform_device *h8606_devices[] __initdata = {
350#if defined(CONFIG_RTC_DRV_BFIN) || defined(CONFIG_RTC_DRV_BFIN_MODULE) 378#if defined(CONFIG_RTC_DRV_BFIN) || defined(CONFIG_RTC_DRV_BFIN_MODULE)
351 &rtc_device, 379 &rtc_device,
@@ -374,6 +402,10 @@ static struct platform_device *h8606_devices[] __initdata = {
374#if defined(CONFIG_SERIAL_8250) || defined(CONFIG_SERIAL_8250_MODULE) 402#if defined(CONFIG_SERIAL_8250) || defined(CONFIG_SERIAL_8250_MODULE)
375 &serial8250_device, 403 &serial8250_device,
376#endif 404#endif
405
406#if defined(CONFIG_KEYBOARD_OPENCORES) || defined(CONFIG_KEYBOARD_OPENCORES_MODULE)
407 &opencores_kbd_device,
408#endif
377}; 409};
378 410
379static int __init H8606_init(void) 411static int __init H8606_init(void)