diff options
Diffstat (limited to 'arch/blackfin/mach-bf548/boards/ezkit.c')
-rw-r--r-- | arch/blackfin/mach-bf548/boards/ezkit.c | 90 |
1 files changed, 82 insertions, 8 deletions
diff --git a/arch/blackfin/mach-bf548/boards/ezkit.c b/arch/blackfin/mach-bf548/boards/ezkit.c index 49fac4c8e610..dae7c1165f16 100644 --- a/arch/blackfin/mach-bf548/boards/ezkit.c +++ b/arch/blackfin/mach-bf548/boards/ezkit.c | |||
@@ -255,44 +255,107 @@ static struct platform_device bfin_uart_device = { | |||
255 | #endif | 255 | #endif |
256 | 256 | ||
257 | #if defined(CONFIG_BFIN_SIR) || defined(CONFIG_BFIN_SIR_MODULE) | 257 | #if defined(CONFIG_BFIN_SIR) || defined(CONFIG_BFIN_SIR_MODULE) |
258 | static struct resource bfin_sir_resources[] = { | ||
259 | #ifdef CONFIG_BFIN_SIR0 | 258 | #ifdef CONFIG_BFIN_SIR0 |
259 | static struct resource bfin_sir0_resources[] = { | ||
260 | { | 260 | { |
261 | .start = 0xFFC00400, | 261 | .start = 0xFFC00400, |
262 | .end = 0xFFC004FF, | 262 | .end = 0xFFC004FF, |
263 | .flags = IORESOURCE_MEM, | 263 | .flags = IORESOURCE_MEM, |
264 | }, | 264 | }, |
265 | { | ||
266 | .start = IRQ_UART0_RX, | ||
267 | .end = IRQ_UART0_RX+1, | ||
268 | .flags = IORESOURCE_IRQ, | ||
269 | }, | ||
270 | { | ||
271 | .start = CH_UART0_RX, | ||
272 | .end = CH_UART0_RX+1, | ||
273 | .flags = IORESOURCE_DMA, | ||
274 | }, | ||
275 | }; | ||
276 | static struct platform_device bfin_sir0_device = { | ||
277 | .name = "bfin_sir", | ||
278 | .id = 0, | ||
279 | .num_resources = ARRAY_SIZE(bfin_sir0_resources), | ||
280 | .resource = bfin_sir0_resources, | ||
281 | }; | ||
265 | #endif | 282 | #endif |
266 | #ifdef CONFIG_BFIN_SIR1 | 283 | #ifdef CONFIG_BFIN_SIR1 |
284 | static struct resource bfin_sir1_resources[] = { | ||
267 | { | 285 | { |
268 | .start = 0xFFC02000, | 286 | .start = 0xFFC02000, |
269 | .end = 0xFFC020FF, | 287 | .end = 0xFFC020FF, |
270 | .flags = IORESOURCE_MEM, | 288 | .flags = IORESOURCE_MEM, |
271 | }, | 289 | }, |
290 | { | ||
291 | .start = IRQ_UART1_RX, | ||
292 | .end = IRQ_UART1_RX+1, | ||
293 | .flags = IORESOURCE_IRQ, | ||
294 | }, | ||
295 | { | ||
296 | .start = CH_UART1_RX, | ||
297 | .end = CH_UART1_RX+1, | ||
298 | .flags = IORESOURCE_DMA, | ||
299 | }, | ||
300 | }; | ||
301 | static struct platform_device bfin_sir1_device = { | ||
302 | .name = "bfin_sir", | ||
303 | .id = 1, | ||
304 | .num_resources = ARRAY_SIZE(bfin_sir1_resources), | ||
305 | .resource = bfin_sir1_resources, | ||
306 | }; | ||
272 | #endif | 307 | #endif |
273 | #ifdef CONFIG_BFIN_SIR2 | 308 | #ifdef CONFIG_BFIN_SIR2 |
309 | static struct resource bfin_sir2_resources[] = { | ||
274 | { | 310 | { |
275 | .start = 0xFFC02100, | 311 | .start = 0xFFC02100, |
276 | .end = 0xFFC021FF, | 312 | .end = 0xFFC021FF, |
277 | .flags = IORESOURCE_MEM, | 313 | .flags = IORESOURCE_MEM, |
278 | }, | 314 | }, |
315 | { | ||
316 | .start = IRQ_UART2_RX, | ||
317 | .end = IRQ_UART2_RX+1, | ||
318 | .flags = IORESOURCE_IRQ, | ||
319 | }, | ||
320 | { | ||
321 | .start = CH_UART2_RX, | ||
322 | .end = CH_UART2_RX+1, | ||
323 | .flags = IORESOURCE_DMA, | ||
324 | }, | ||
325 | }; | ||
326 | static struct platform_device bfin_sir2_device = { | ||
327 | .name = "bfin_sir", | ||
328 | .id = 2, | ||
329 | .num_resources = ARRAY_SIZE(bfin_sir2_resources), | ||
330 | .resource = bfin_sir2_resources, | ||
331 | }; | ||
279 | #endif | 332 | #endif |
280 | #ifdef CONFIG_BFIN_SIR3 | 333 | #ifdef CONFIG_BFIN_SIR3 |
334 | static struct resource bfin_sir3_resources[] = { | ||
281 | { | 335 | { |
282 | .start = 0xFFC03100, | 336 | .start = 0xFFC03100, |
283 | .end = 0xFFC031FF, | 337 | .end = 0xFFC031FF, |
284 | .flags = IORESOURCE_MEM, | 338 | .flags = IORESOURCE_MEM, |
285 | }, | 339 | }, |
286 | #endif | 340 | { |
341 | .start = IRQ_UART3_RX, | ||
342 | .end = IRQ_UART3_RX+1, | ||
343 | .flags = IORESOURCE_IRQ, | ||
344 | }, | ||
345 | { | ||
346 | .start = CH_UART3_RX, | ||
347 | .end = CH_UART3_RX+1, | ||
348 | .flags = IORESOURCE_DMA, | ||
349 | }, | ||
287 | }; | 350 | }; |
288 | 351 | static struct platform_device bfin_sir3_device = { | |
289 | static struct platform_device bfin_sir_device = { | ||
290 | .name = "bfin_sir", | 352 | .name = "bfin_sir", |
291 | .id = 0, | 353 | .id = 3, |
292 | .num_resources = ARRAY_SIZE(bfin_sir_resources), | 354 | .num_resources = ARRAY_SIZE(bfin_sir3_resources), |
293 | .resource = bfin_sir_resources, | 355 | .resource = bfin_sir3_resources, |
294 | }; | 356 | }; |
295 | #endif | 357 | #endif |
358 | #endif | ||
296 | 359 | ||
297 | #if defined(CONFIG_SMSC911X) || defined(CONFIG_SMSC911X_MODULE) | 360 | #if defined(CONFIG_SMSC911X) || defined(CONFIG_SMSC911X_MODULE) |
298 | static struct resource smsc911x_resources[] = { | 361 | static struct resource smsc911x_resources[] = { |
@@ -805,7 +868,18 @@ static struct platform_device *ezkit_devices[] __initdata = { | |||
805 | #endif | 868 | #endif |
806 | 869 | ||
807 | #if defined(CONFIG_BFIN_SIR) || defined(CONFIG_BFIN_SIR_MODULE) | 870 | #if defined(CONFIG_BFIN_SIR) || defined(CONFIG_BFIN_SIR_MODULE) |
808 | &bfin_sir_device, | 871 | #ifdef CONFIG_BFIN_SIR0 |
872 | &bfin_sir0_device, | ||
873 | #endif | ||
874 | #ifdef CONFIG_BFIN_SIR1 | ||
875 | &bfin_sir1_device, | ||
876 | #endif | ||
877 | #ifdef CONFIG_BFIN_SIR2 | ||
878 | &bfin_sir2_device, | ||
879 | #endif | ||
880 | #ifdef CONFIG_BFIN_SIR3 | ||
881 | &bfin_sir3_device, | ||
882 | #endif | ||
809 | #endif | 883 | #endif |
810 | 884 | ||
811 | #if defined(CONFIG_FB_BF54X_LQ043) || defined(CONFIG_FB_BF54X_LQ043_MODULE) | 885 | #if defined(CONFIG_FB_BF54X_LQ043) || defined(CONFIG_FB_BF54X_LQ043_MODULE) |