[email protected] writes:

> From: Naresh Medisetty <[email protected]>
>
> EDMA in DM355 and DM644x has two transfer controllers while DM646x has four
> transfer controllers. Moving the queue to tc mapping and queue priority
> mapping to dm<soc>.c will be helpful to probe these mappings from platform
> device so that the machine_is_* testing will be avoided.

Functionally, this looks fine, but there are lots of nitpicky
formatting issues to cleanup, and inconsistend use of spaces/tabs etc.

>
> diff --git a/arch/arm/mach-davinci/dm355.c b/arch/arm/mach-davinci/dm355.c
> index 5f31649..ee92c10 100644
> --- a/arch/arm/mach-davinci/dm355.c
> +++ b/arch/arm/mach-davinci/dm355.c
> @@ -474,12 +474,32 @@ static const s8 dma_chan_dm355_no_event[] = {
>       -1
>  };
>  
> +static const s8
> +queue_tc_mapping[EDMA_MAX_EVQUE + 1][2] = {
> +/* {event queue no, TC no} */

fix alignment (as in the next one.)  I realize the alignment issues
were in the previous code too, and this is a cut-and paste.  But lets
fix it now while we're at it.

> +       {0, 0},
> +       {1, 1},
> +       {-1, -1}
> +};

Also use tabs, not spaces (again problem was in orginal code, but lets fix it)

> +
> +static const s8
> +queue_priority_mapping[EDMA_MAX_EVQUE + 1][2] = {
> +       /* {event queue no, Priority} */
> +       {0, 3},
> +       {1, 7},
> +       {-1, -1}
> +};

use tabs.

> +
>  static struct edma_soc_info dm355_edma_info = {
> -     .n_channel      = 64,
> -     .n_region       = 4,
> -     .n_slot         = 128,
> -     .n_tc           = 2,
> -     .noevent        = dma_chan_dm355_no_event,
> +     .n_channel              = 64,
> +     .n_region               = 4,
> +     .n_slot                 = 128,
> +     .n_tc                   = 2,
> +     .noevent                = dma_chan_dm355_no_event,
> +     .queue_tc_mapping       = queue_tc_mapping,
> +     .queue_priority_mapping = queue_priority_mapping,
> +
>  };
>  
>  static struct resource edma_resources[] = {
> diff --git a/arch/arm/mach-davinci/dm644x.c b/arch/arm/mach-davinci/dm644x.c
> index 6a08568..d1f5790 100644
> --- a/arch/arm/mach-davinci/dm644x.c
> +++ b/arch/arm/mach-davinci/dm644x.c
> @@ -396,13 +396,33 @@ static const s8 dma_chan_dm644x_no_event[] = {
>       63,
>       -1
>  };
> +static const s8
> +queue_tc_mapping[EDMA_MAX_EVQUE + 1][2] = {
> +/* {event queue no, TC no} */

alignment

> +       {0, 0},
> +       {1, 1},
> +       {-1, -1}
> +};
> +

tabs

> +static const s8
> +queue_priority_mapping[EDMA_MAX_EVQUE + 1][2] = {
> +       /* {event queue no, Priority} */
> +       {0, 3},
> +       {1, 7},
> +       {-1, -1}
> +};
> +
> +

tabs

>  static struct edma_soc_info dm644x_edma_info = {
> -     .n_channel      = 64,
> -     .n_region       = 4,
> -     .n_slot         = 128,
> -     .n_tc           = 2,
> -     .noevent        = dma_chan_dm644x_no_event,
> +     .n_channel              = 64,
> +     .n_region               = 4,
> +     .n_slot                 = 128,
> +     .n_tc                   = 2,
> +     .noevent                = dma_chan_dm644x_no_event,
> +     .queue_tc_mapping       = queue_tc_mapping,
> +     .queue_priority_mapping = queue_priority_mapping,
> +
>  };
>  
>  static struct resource edma_resources[] = {
> diff --git a/arch/arm/mach-davinci/dm646x.c b/arch/arm/mach-davinci/dm646x.c
> index b302f12..5ef83a4 100644
> --- a/arch/arm/mach-davinci/dm646x.c
> +++ b/arch/arm/mach-davinci/dm646x.c
> @@ -362,15 +362,39 @@ static const s8 dma_chan_dm646x_no_event[] = {
>       56,
>       -1
>  };
> +/* Four Transfer Controllers on DM646x */
> +static const s8
> +dm646x_queue_tc_mapping[DM646X_EDMA_NUM_EVQUE + 1][2] = {
> +/* {event queue no, TC no} */

alignment

> +       {0, 0},
> +       {1, 1},
> +       {2, 2},
> +       {3, 3},
> +       {-1, -1}
> +};

tabs

> -static struct edma_soc_info dm646x_edma_info = {
> -     .n_channel      = 64,
> -     .n_region       = 6,    /* 0-1, 4-7 */
> -     .n_slot         = 512,
> -     .n_tc           = 4,
> -     .noevent        = dma_chan_dm646x_no_event,
> +static const s8
> +dm646x_queue_priority_mapping[DM646X_EDMA_NUM_EVQUE + 1][2] = {
> +       /* {event queue no, Priority} */
> +       {0, 4},
> +       {1, 0},
> +       {2, 5},
> +       {3, 1},
> +       {-1, -1}
>  };

tabs

> +
> +
> +static struct edma_soc_info dm646x_edma_info = {
> +     .n_channel              = 64,
> +     .n_region               = 6,    /* 0-1, 4-7 */
> +     .n_slot                 = 512,
> +     .n_tc                   = 4,
> +     .noevent                = dma_chan_dm646x_no_event,
> +     .queue_tc_mapping       = dm646x_queue_tc_mapping,
> +     .queue_priority_mapping = dm646x_queue_priority_mapping,
> +
> +};
>  static struct resource edma_resources[] = {
>       {
>               .name   = "edma_cc",
> diff --git a/arch/arm/mach-davinci/dma.c b/arch/arm/mach-davinci/dma.c
> index 9427c80..37a506f 100644
> --- a/arch/arm/mach-davinci/dma.c
> +++ b/arch/arm/mach-davinci/dma.c
> @@ -106,8 +106,6 @@
>  
>  #define EDMA_MAX_DMACH           64
>  #define EDMA_MAX_PARAMENTRY     512
> -#define EDMA_MAX_EVQUE            2  /* FIXME too small */
> -
>  
>  
> /*****************************************************************************/
>  
> @@ -232,22 +230,6 @@ static const struct edmacc_param dummy_paramset = {
>       .ccnt = 1,
>  };
>  
> -static const int __initconst
> -queue_tc_mapping[EDMA_MAX_EVQUE + 1][2] = {
> -/* {event queue no, TC no} */
> -     {0, 0},
> -     {1, 1},
> -     {-1, -1}
> -};
> -
> -static const int __initconst
> -queue_priority_mapping[EDMA_MAX_EVQUE + 1][2] = {
> -     /* {event queue no, Priority} */
> -     {0, 3},
> -     {1, 7},
> -     {-1, -1}
> -};
> -
>  
> /*****************************************************************************/
>  
>  static void map_dmach_queue(unsigned ch_no, enum dma_event_q queue_no)
> @@ -1013,6 +995,8 @@ static int __init edma_probe(struct platform_device 
> *pdev)
>       int                     i;
>       int                     status;
>       const s8                *noevent;
> +     const s8 (*queue_tc_mapping)[2];
> +     const s8 (*queue_priority_mapping)[2];

alignment

>       int                     irq = 0, err_irq = 0;
>       struct resource         *r;
>       resource_size_t         len;
> @@ -1091,6 +1075,8 @@ static int __init edma_probe(struct platform_device 
> *pdev)
>        */
>       for (i = 0; i < num_channels; i++)
>               map_dmach_queue(i, EVENTQ_1);
> +       queue_tc_mapping = info->queue_tc_mapping;
> +       queue_priority_mapping = info->queue_priority_mapping;

indent w/tabs

>       /* Event queue to TC mapping */
>       for (i = 0; queue_tc_mapping[i][0] != -1; i++)
> diff --git a/arch/arm/mach-davinci/include/mach/edma.h 
> b/arch/arm/mach-davinci/include/mach/edma.h
> index b467358..8c50544 100644
> --- a/arch/arm/mach-davinci/include/mach/edma.h
> +++ b/arch/arm/mach-davinci/include/mach/edma.h
> @@ -74,6 +74,9 @@ struct edmacc_param {
>  #define CCERRINT_INTERRUPT   17
>  #define TCERRINT0_INTERRUPT   18
>  #define TCERRINT1_INTERRUPT   19
> +#define EDMA_MAX_EVQUE            2    /* FIXME too small */
> +/* dm646x specific */
> +#define DM646X_EDMA_NUM_EVQUE            4
>  
>  /* fields in edmacc_param.opt */
>  #define SAM          BIT(0)
> @@ -224,6 +227,9 @@ struct edma_soc_info {
>  
>       /* list of channels with no even trigger; terminated by "-1" */
>       const s8        *noevent;
> +     const s8        (*queue_tc_mapping)[2];
> +     const s8        (*queue_priority_mapping)[2];
> +
>  };
>  
>  #endif
> -- 

Kevin

_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to