diff options
Diffstat (limited to 'arch/arm/mach-omap2/board-zoom-debugboard.c')
-rw-r--r-- | arch/arm/mach-omap2/board-zoom-debugboard.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/arch/arm/mach-omap2/board-zoom-debugboard.c b/arch/arm/mach-omap2/board-zoom-debugboard.c index bac5c4321ff7..1f13e2a1f322 100644 --- a/arch/arm/mach-omap2/board-zoom-debugboard.c +++ b/arch/arm/mach-omap2/board-zoom-debugboard.c | |||
@@ -12,6 +12,7 @@ | |||
12 | #include <linux/gpio.h> | 12 | #include <linux/gpio.h> |
13 | #include <linux/serial_8250.h> | 13 | #include <linux/serial_8250.h> |
14 | #include <linux/smsc911x.h> | 14 | #include <linux/smsc911x.h> |
15 | #include <linux/interrupt.h> | ||
15 | 16 | ||
16 | #include <mach/gpmc.h> | 17 | #include <mach/gpmc.h> |
17 | 18 | ||
@@ -84,6 +85,7 @@ static struct plat_serial8250_port serial_platform_data[] = { | |||
84 | .mapbase = 0x10000000, | 85 | .mapbase = 0x10000000, |
85 | .irq = OMAP_GPIO_IRQ(102), | 86 | .irq = OMAP_GPIO_IRQ(102), |
86 | .flags = UPF_BOOT_AUTOCONF|UPF_IOREMAP|UPF_SHARE_IRQ, | 87 | .flags = UPF_BOOT_AUTOCONF|UPF_IOREMAP|UPF_SHARE_IRQ, |
88 | .irqflags = IRQF_SHARED | IRQF_TRIGGER_RISING, | ||
87 | .iotype = UPIO_MEM, | 89 | .iotype = UPIO_MEM, |
88 | .regshift = 1, | 90 | .regshift = 1, |
89 | .uartclk = QUART_CLK, | 91 | .uartclk = QUART_CLK, |
@@ -94,7 +96,7 @@ static struct plat_serial8250_port serial_platform_data[] = { | |||
94 | 96 | ||
95 | static struct platform_device zoom2_debugboard_serial_device = { | 97 | static struct platform_device zoom2_debugboard_serial_device = { |
96 | .name = "serial8250", | 98 | .name = "serial8250", |
97 | .id = PLAT8250_DEV_PLATFORM1, | 99 | .id = 3, |
98 | .dev = { | 100 | .dev = { |
99 | .platform_data = serial_platform_data, | 101 | .platform_data = serial_platform_data, |
100 | }, | 102 | }, |
@@ -127,6 +129,7 @@ static inline void __init zoom2_init_quaduart(void) | |||
127 | static inline int omap_zoom2_debugboard_detect(void) | 129 | static inline int omap_zoom2_debugboard_detect(void) |
128 | { | 130 | { |
129 | int debug_board_detect = 0; | 131 | int debug_board_detect = 0; |
132 | int ret = 1; | ||
130 | 133 | ||
131 | debug_board_detect = ZOOM2_SMSC911X_GPIO; | 134 | debug_board_detect = ZOOM2_SMSC911X_GPIO; |
132 | 135 | ||
@@ -138,10 +141,10 @@ static inline int omap_zoom2_debugboard_detect(void) | |||
138 | gpio_direction_input(debug_board_detect); | 141 | gpio_direction_input(debug_board_detect); |
139 | 142 | ||
140 | if (!gpio_get_value(debug_board_detect)) { | 143 | if (!gpio_get_value(debug_board_detect)) { |
141 | gpio_free(debug_board_detect); | 144 | ret = 0; |
142 | return 0; | ||
143 | } | 145 | } |
144 | return 1; | 146 | gpio_free(debug_board_detect); |
147 | return ret; | ||
145 | } | 148 | } |
146 | 149 | ||
147 | static struct platform_device *zoom2_devices[] __initdata = { | 150 | static struct platform_device *zoom2_devices[] __initdata = { |