aboutsummaryrefslogtreecommitdiffstats
path: root/arch/blackfin/mach-bf537/boards/tcm_bf537.c
diff options
context:
space:
mode:
authorSonic Zhang <sonic.zhang@analog.com>2009-09-23 01:01:56 -0400
committerMike Frysinger <vapier@gentoo.org>2010-03-09 00:30:45 -0500
commitdf5de261306d9bfc1ed9121595593b10a7626b95 (patch)
tree6bfd86734f017ddcaeb4fc03b0f80819916e64e9 /arch/blackfin/mach-bf537/boards/tcm_bf537.c
parent08a54bffaf7d5dc9391518323234ce9f9ea4be8e (diff)
Blackfin: move SPORT UART resources to boards files
Rather than keeping the pins in the actual driver and worrying about a mess of Kconfig options, declare all the desired pin resources in the boards file. This lets people easily select the specific pins/ports for the normal emulated UART as well as GPIOs for CTS/RTS. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Diffstat (limited to 'arch/blackfin/mach-bf537/boards/tcm_bf537.c')
-rw-r--r--arch/blackfin/mach-bf537/boards/tcm_bf537.c63
1 files changed, 63 insertions, 0 deletions
diff --git a/arch/blackfin/mach-bf537/boards/tcm_bf537.c b/arch/blackfin/mach-bf537/boards/tcm_bf537.c
index d77ca5b75685..69a2fb804724 100644
--- a/arch/blackfin/mach-bf537/boards/tcm_bf537.c
+++ b/arch/blackfin/mach-bf537/boards/tcm_bf537.c
@@ -493,16 +493,75 @@ static struct platform_device i2c_bfin_twi_device = {
493#endif 493#endif
494 494
495#if defined(CONFIG_SERIAL_BFIN_SPORT) || defined(CONFIG_SERIAL_BFIN_SPORT_MODULE) 495#if defined(CONFIG_SERIAL_BFIN_SPORT) || defined(CONFIG_SERIAL_BFIN_SPORT_MODULE)
496#ifdef CONFIG_SERIAL_BFIN_SPORT0_UART
497static struct resource bfin_sport0_uart_resources[] = {
498 {
499 .start = SPORT0_TCR1,
500 .end = SPORT0_MRCS3+4,
501 .flags = IORESOURCE_MEM,
502 },
503 {
504 .start = IRQ_SPORT0_RX,
505 .end = IRQ_SPORT0_RX+1,
506 .flags = IORESOURCE_IRQ,
507 },
508 {
509 .start = IRQ_SPORT0_ERROR,
510 .end = IRQ_SPORT0_ERROR,
511 .flags = IORESOURCE_IRQ,
512 },
513};
514
515unsigned short bfin_sport0_peripherals[] = {
516 P_SPORT0_TFS, P_SPORT0_DTPRI, P_SPORT0_TSCLK, P_SPORT0_RFS,
517 P_SPORT0_DRPRI, P_SPORT0_RSCLK, P_SPORT0_DRSEC, P_SPORT0_DTSEC, 0
518};
519
496static struct platform_device bfin_sport0_uart_device = { 520static struct platform_device bfin_sport0_uart_device = {
497 .name = "bfin-sport-uart", 521 .name = "bfin-sport-uart",
498 .id = 0, 522 .id = 0,
523 .num_resources = ARRAY_SIZE(bfin_sport0_uart_resources),
524 .resource = bfin_sport0_uart_resources,
525 .dev = {
526 .platform_data = &bfin_sport0_peripherals, /* Passed to driver */
527 },
528};
529#endif
530#ifdef CONFIG_SERIAL_BFIN_SPORT1_UART
531static struct resource bfin_sport1_uart_resources[] = {
532 {
533 .start = SPORT1_TCR1,
534 .end = SPORT1_MRCS3+4,
535 .flags = IORESOURCE_MEM,
536 },
537 {
538 .start = IRQ_SPORT1_RX,
539 .end = IRQ_SPORT1_RX+1,
540 .flags = IORESOURCE_IRQ,
541 },
542 {
543 .start = IRQ_SPORT1_ERROR,
544 .end = IRQ_SPORT1_ERROR,
545 .flags = IORESOURCE_IRQ,
546 },
547};
548
549unsigned short bfin_sport1_peripherals[] = {
550 P_SPORT1_TFS, P_SPORT1_DTPRI, P_SPORT1_TSCLK, P_SPORT1_RFS,
551 P_SPORT1_DRPRI, P_SPORT1_RSCLK, P_SPORT1_DRSEC, P_SPORT1_DTSEC, 0
499}; 552};
500 553
501static struct platform_device bfin_sport1_uart_device = { 554static struct platform_device bfin_sport1_uart_device = {
502 .name = "bfin-sport-uart", 555 .name = "bfin-sport-uart",
503 .id = 1, 556 .id = 1,
557 .num_resources = ARRAY_SIZE(bfin_sport1_uart_resources),
558 .resource = bfin_sport1_uart_resources,
559 .dev = {
560 .platform_data = &bfin_sport1_peripherals, /* Passed to driver */
561 },
504}; 562};
505#endif 563#endif
564#endif
506 565
507#if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) 566#if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE)
508static struct platform_device bfin_mii_bus = { 567static struct platform_device bfin_mii_bus = {
@@ -614,9 +673,13 @@ static struct platform_device *cm_bf537_devices[] __initdata = {
614#endif 673#endif
615 674
616#if defined(CONFIG_SERIAL_BFIN_SPORT) || defined(CONFIG_SERIAL_BFIN_SPORT_MODULE) 675#if defined(CONFIG_SERIAL_BFIN_SPORT) || defined(CONFIG_SERIAL_BFIN_SPORT_MODULE)
676#ifdef CONFIG_SERIAL_BFIN_SPORT0_UART
617 &bfin_sport0_uart_device, 677 &bfin_sport0_uart_device,
678#endif
679#ifdef CONFIG_SERIAL_BFIN_SPORT1_UART
618 &bfin_sport1_uart_device, 680 &bfin_sport1_uart_device,
619#endif 681#endif
682#endif
620 683
621#if defined(CONFIG_USB_ISP1362_HCD) || defined(CONFIG_USB_ISP1362_HCD_MODULE) 684#if defined(CONFIG_USB_ISP1362_HCD) || defined(CONFIG_USB_ISP1362_HCD_MODULE)
622 &isp1362_hcd_device, 685 &isp1362_hcd_device,