summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNarayanan <narayanan.gopalakrishnan@stericsson.com>2011-09-13 17:00:22 +0530
committerPhilippe Langlais <philippe.langlais@stericsson.com>2012-05-22 11:02:55 +0200
commitc2c665fd41b5544cce3be4d972e9c9bde9e29060 (patch)
tree06b51de60e9cab93d1b60146f64e2c8d025e4775
parent76e10d158efb6d4516018846f60c2ab5501900bc (diff)
dma40: Resetting priority bit for logical channels
This patch will set the SSCFG/SDCFG bit[7] PRI only for physical channel requests with high priority. For logical channels, this bit will be zero. ST-Ericsson ID: 361435 ST-Ericsson FOSS-OUT ID: Trivial ST-Ericsson Linux next: NA Change-Id: I1afb5c039387f9f9295c73e9dee92dc87bb15aeb Signed-off-by: Narayanan G <narayanan.gopalakrishnan@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/30839 Reviewed-by: Rabin VINCENT <rabin.vincent@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/31929
-rw-r--r--drivers/dma/ste_dma40_ll.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/dma/ste_dma40_ll.c b/drivers/dma/ste_dma40_ll.c
index cad9e1daedf..450079e2c12 100644
--- a/drivers/dma/ste_dma40_ll.c
+++ b/drivers/dma/ste_dma40_ll.c
@@ -102,16 +102,18 @@ void d40_phy_cfg(struct stedma40_chan_cfg *cfg,
src |= cfg->src_info.data_width << D40_SREG_CFG_ESIZE_POS;
dst |= cfg->dst_info.data_width << D40_SREG_CFG_ESIZE_POS;
+ /* Set the priority bit to high for the physical channel */
+ if (cfg->high_priority) {
+ src |= 1 << D40_SREG_CFG_PRI_POS;
+ dst |= 1 << D40_SREG_CFG_PRI_POS;
+ }
+
} else {
/* Logical channel */
dst |= 1 << D40_SREG_CFG_LOG_GIM_POS;
src |= 1 << D40_SREG_CFG_LOG_GIM_POS;
}
- if (cfg->high_priority) {
- src |= 1 << D40_SREG_CFG_PRI_POS;
- dst |= 1 << D40_SREG_CFG_PRI_POS;
- }
if (cfg->src_info.big_endian)
src |= 1 << D40_SREG_CFG_LBE_POS;