diff options
-rw-r--r-- | drivers/dma/at_hdmac.c | 3 | ||||
-rw-r--r-- | drivers/dma/at_hdmac_regs.h | 2 |
2 files changed, 5 insertions, 0 deletions
diff --git a/drivers/dma/at_hdmac.c b/drivers/dma/at_hdmac.c index 9e1ad73a78cf..4c101a9dd3cb 100644 --- a/drivers/dma/at_hdmac.c +++ b/drivers/dma/at_hdmac.c | |||
@@ -615,6 +615,7 @@ atc_prep_dma_memcpy(struct dma_chan *chan, dma_addr_t dest, dma_addr_t src, | |||
615 | /* First descriptor of the chain embedds additional information */ | 615 | /* First descriptor of the chain embedds additional information */ |
616 | first->txd.cookie = -EBUSY; | 616 | first->txd.cookie = -EBUSY; |
617 | first->len = len; | 617 | first->len = len; |
618 | first->tx_width = src_width; | ||
618 | 619 | ||
619 | /* set end-of-link to the last link descriptor of list*/ | 620 | /* set end-of-link to the last link descriptor of list*/ |
620 | set_desc_eol(desc); | 621 | set_desc_eol(desc); |
@@ -761,6 +762,7 @@ atc_prep_slave_sg(struct dma_chan *chan, struct scatterlist *sgl, | |||
761 | /* First descriptor of the chain embedds additional information */ | 762 | /* First descriptor of the chain embedds additional information */ |
762 | first->txd.cookie = -EBUSY; | 763 | first->txd.cookie = -EBUSY; |
763 | first->len = total_len; | 764 | first->len = total_len; |
765 | first->tx_width = reg_width; | ||
764 | 766 | ||
765 | /* first link descriptor of list is responsible of flags */ | 767 | /* first link descriptor of list is responsible of flags */ |
766 | first->txd.flags = flags; /* client is in control of this ack */ | 768 | first->txd.flags = flags; /* client is in control of this ack */ |
@@ -919,6 +921,7 @@ atc_prep_dma_cyclic(struct dma_chan *chan, dma_addr_t buf_addr, size_t buf_len, | |||
919 | /* First descriptor of the chain embedds additional information */ | 921 | /* First descriptor of the chain embedds additional information */ |
920 | first->txd.cookie = -EBUSY; | 922 | first->txd.cookie = -EBUSY; |
921 | first->len = buf_len; | 923 | first->len = buf_len; |
924 | first->tx_width = reg_width; | ||
922 | 925 | ||
923 | return &first->txd; | 926 | return &first->txd; |
924 | 927 | ||
diff --git a/drivers/dma/at_hdmac_regs.h b/drivers/dma/at_hdmac_regs.h index c604d26fd4d3..3679933fb646 100644 --- a/drivers/dma/at_hdmac_regs.h +++ b/drivers/dma/at_hdmac_regs.h | |||
@@ -182,6 +182,7 @@ struct at_lli { | |||
182 | * @txd: support for the async_tx api | 182 | * @txd: support for the async_tx api |
183 | * @desc_node: node on the channed descriptors list | 183 | * @desc_node: node on the channed descriptors list |
184 | * @len: total transaction bytecount | 184 | * @len: total transaction bytecount |
185 | * @tx_width: transfer width | ||
185 | */ | 186 | */ |
186 | struct at_desc { | 187 | struct at_desc { |
187 | /* FIRST values the hardware uses */ | 188 | /* FIRST values the hardware uses */ |
@@ -192,6 +193,7 @@ struct at_desc { | |||
192 | struct dma_async_tx_descriptor txd; | 193 | struct dma_async_tx_descriptor txd; |
193 | struct list_head desc_node; | 194 | struct list_head desc_node; |
194 | size_t len; | 195 | size_t len; |
196 | u32 tx_width; | ||
195 | }; | 197 | }; |
196 | 198 | ||
197 | static inline struct at_desc * | 199 | static inline struct at_desc * |