forked from Minki/linux
ARM: edma: Do not change TC -> Queue mapping, leave it to default.
There is no need to change the default TC -> Queue mapping. By default the mapping is: TC0 -> Q0, TC1 -> Q1, etc. Changing this has no benefits at all and all the board files are just setting the same mapping back to the HW. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Sekhar Nori <nsekhar@ti.com>
This commit is contained in:
parent
cf4afc3d2b
commit
c3dd3389db
@ -290,12 +290,6 @@ static void map_dmach_queue(unsigned ctlr, unsigned ch_no,
|
||||
~(0x7 << bit), queue_no << bit);
|
||||
}
|
||||
|
||||
static void __init map_queue_tc(unsigned ctlr, int queue_no, int tc_no)
|
||||
{
|
||||
int bit = queue_no * 4;
|
||||
edma_modify(ctlr, EDMA_QUETCMAP, ~(0x7 << bit), ((tc_no & 0x7) << bit));
|
||||
}
|
||||
|
||||
static void __init assign_priority_to_queue(unsigned ctlr, int queue_no,
|
||||
int priority)
|
||||
{
|
||||
@ -1488,7 +1482,7 @@ static int edma_of_parse_dt(struct device *dev,
|
||||
struct property *prop;
|
||||
size_t sz;
|
||||
struct edma_rsv_info *rsv_info;
|
||||
s8 (*queue_tc_map)[2], (*queue_priority_map)[2];
|
||||
s8 (*queue_priority_map)[2];
|
||||
|
||||
ret = of_property_read_u32(node, "dma-channels", &value);
|
||||
if (ret < 0)
|
||||
@ -1513,19 +1507,6 @@ static int edma_of_parse_dt(struct device *dev,
|
||||
return -ENOMEM;
|
||||
pdata->rsv = rsv_info;
|
||||
|
||||
queue_tc_map = devm_kzalloc(dev, 8*sizeof(s8), GFP_KERNEL);
|
||||
if (!queue_tc_map)
|
||||
return -ENOMEM;
|
||||
|
||||
for (i = 0; i < 3; i++) {
|
||||
queue_tc_map[i][0] = i;
|
||||
queue_tc_map[i][1] = i;
|
||||
}
|
||||
queue_tc_map[i][0] = -1;
|
||||
queue_tc_map[i][1] = -1;
|
||||
|
||||
pdata->queue_tc_mapping = queue_tc_map;
|
||||
|
||||
queue_priority_map = devm_kzalloc(dev, 8*sizeof(s8), GFP_KERNEL);
|
||||
if (!queue_priority_map)
|
||||
return -ENOMEM;
|
||||
@ -1586,7 +1567,6 @@ static int edma_probe(struct platform_device *pdev)
|
||||
struct edma_soc_info **info = pdev->dev.platform_data;
|
||||
struct edma_soc_info *ninfo[EDMA_MAX_CC] = {NULL};
|
||||
s8 (*queue_priority_mapping)[2];
|
||||
s8 (*queue_tc_mapping)[2];
|
||||
int i, j, off, ln, found = 0;
|
||||
int status = -1;
|
||||
const s16 (*rsv_chans)[2];
|
||||
@ -1753,14 +1733,8 @@ static int edma_probe(struct platform_device *pdev)
|
||||
for (i = 0; i < edma_cc[j]->num_channels; i++)
|
||||
map_dmach_queue(j, i, info[j]->default_queue);
|
||||
|
||||
queue_tc_mapping = info[j]->queue_tc_mapping;
|
||||
queue_priority_mapping = info[j]->queue_priority_mapping;
|
||||
|
||||
/* Event queue to TC mapping */
|
||||
for (i = 0; queue_tc_mapping[i][0] != -1; i++)
|
||||
map_queue_tc(j, queue_tc_mapping[i][0],
|
||||
queue_tc_mapping[i][1]);
|
||||
|
||||
/* Event queue priority mapping */
|
||||
for (i = 0; queue_priority_mapping[i][0] != -1; i++)
|
||||
assign_priority_to_queue(j,
|
||||
|
Loading…
Reference in New Issue
Block a user