blackfin: bf537-stamp: update board file for platform bfin_sport device
authorAaron Wu <Aaron.Wu@analog.com>
Thu, 17 May 2012 06:30:45 +0000 (14:30 +0800)
committerBob Liu <lliubbo@gmail.com>
Mon, 21 May 2012 06:54:28 +0000 (14:54 +0800)
Blackfin sport driver has been rewrited update board file according.

Signed-off-by: Aaron Wu <Aaron.Wu@analog.com>
Signed-off-by: Bob Liu <lliubbo@gmail.com>
arch/blackfin/include/asm/bfin_sport.h
arch/blackfin/mach-bf537/boards/stamp.c

index 0afcfbd..f8907ea 100644 (file)
@@ -24,6 +24,7 @@
 struct sport_config {
        /* TDM (multichannels), I2S or other mode */
        unsigned int mode:3;
+       unsigned int polled;    /* use poll instead of irq when set */
 
        /* if TDM mode is selected, channels must be set */
        int channels;   /* Must be in 8 units */
index f3562b0..ec3e5c1 100644 (file)
@@ -2361,7 +2361,13 @@ static struct i2c_board_info __initdata bfin_i2c_board_info[] = {
        },
 #endif
 };
-
+#if defined(CONFIG_SERIAL_BFIN_SPORT) || defined(CONFIG_SERIAL_BFIN_SPORT_MODULE) \
+|| defined(CONFIG_BFIN_SPORT) || defined(CONFIG_BFIN_SPORT_MODULE)
+unsigned short bfin_sport0_peripherals[] = {
+       P_SPORT0_TFS, P_SPORT0_DTPRI, P_SPORT0_TSCLK, P_SPORT0_RFS,
+       P_SPORT0_DRPRI, P_SPORT0_RSCLK, P_SPORT0_DRSEC, P_SPORT0_DTSEC, 0
+};
+#endif
 #if defined(CONFIG_SERIAL_BFIN_SPORT) || defined(CONFIG_SERIAL_BFIN_SPORT_MODULE)
 #ifdef CONFIG_SERIAL_BFIN_SPORT0_UART
 static struct resource bfin_sport0_uart_resources[] = {
@@ -2382,11 +2388,6 @@ static struct resource bfin_sport0_uart_resources[] = {
        },
 };
 
-static unsigned short bfin_sport0_peripherals[] = {
-       P_SPORT0_TFS, P_SPORT0_DTPRI, P_SPORT0_TSCLK, P_SPORT0_RFS,
-       P_SPORT0_DRPRI, P_SPORT0_RSCLK, 0
-};
-
 static struct platform_device bfin_sport0_uart_device = {
        .name = "bfin-sport-uart",
        .id = 0,
@@ -2432,7 +2433,49 @@ static struct platform_device bfin_sport1_uart_device = {
 };
 #endif
 #endif
-
+#if defined(CONFIG_BFIN_SPORT) || defined(CONFIG_BFIN_SPORT_MODULE)
+static struct resource bfin_sport0_resources[] = {
+       {
+               .start = SPORT0_TCR1,
+               .end = SPORT0_MRCS3+4,
+               .flags = IORESOURCE_MEM,
+       },
+       {
+               .start = IRQ_SPORT0_RX,
+               .end = IRQ_SPORT0_RX+1,
+               .flags = IORESOURCE_IRQ,
+       },
+       {
+               .start = IRQ_SPORT0_TX,
+               .end = IRQ_SPORT0_TX+1,
+               .flags = IORESOURCE_IRQ,
+       },
+       {
+               .start = IRQ_SPORT0_ERROR,
+               .end = IRQ_SPORT0_ERROR,
+               .flags = IORESOURCE_IRQ,
+       },
+       {
+               .start = CH_SPORT0_TX,
+               .end = CH_SPORT0_TX,
+               .flags = IORESOURCE_DMA,
+       },
+       {
+               .start = CH_SPORT0_RX,
+               .end = CH_SPORT0_RX,
+               .flags = IORESOURCE_DMA,
+       },
+};
+static struct platform_device bfin_sport0_device = {
+       .name = "bfin_sport_raw",
+       .id = 0,
+       .num_resources = ARRAY_SIZE(bfin_sport0_resources),
+       .resource = bfin_sport0_resources,
+       .dev = {
+               .platform_data = &bfin_sport0_peripherals, /* Passed to driver */
+       },
+};
+#endif
 #if defined(CONFIG_PATA_PLATFORM) || defined(CONFIG_PATA_PLATFORM_MODULE)
 #define CF_IDE_NAND_CARD_USE_HDD_INTERFACE
 /* #define CF_IDE_NAND_CARD_USE_CF_IN_COMMON_MEMORY_MODE */
@@ -2754,7 +2797,9 @@ static struct platform_device bf5xx_adau1701_device = {
 static struct platform_device *stamp_devices[] __initdata = {
 
        &bfin_dpmc,
-
+#if defined(CONFIG_BFIN_SPORT) || defined(CONFIG_BFIN_SPORT_MODULE)
+       &bfin_sport0_device,
+#endif
 #if defined(CONFIG_BFIN_CFPCMCIA) || defined(CONFIG_BFIN_CFPCMCIA_MODULE)
        &bfin_pcmcia_cf_device,
 #endif