Message ID | 20170824140259.5007-1-asmirnov@ilbers.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Thu, Aug 24, 2017 at 05:02:59PM +0300, Alexander Smirnov wrote: > DMA crossbar uses 'xbar->dma_inuse' variable to manage allocated routes. > Each bit represents respective DMA channel. If the channel is free, bit > is set to '0', if channel is allocated, bit should be set to '1'. > > In reserve function, the bits for requested DMA channels are cleared, so > they are not really reserved, but freed and become ready for allocation. Applied, thanks
diff --git a/drivers/dma/ti-dma-crossbar.c b/drivers/dma/ti-dma-crossbar.c index e107779..404cdb8 100644 --- a/drivers/dma/ti-dma-crossbar.c +++ b/drivers/dma/ti-dma-crossbar.c @@ -299,7 +299,7 @@ static const struct of_device_id ti_dra7_master_match[] = { static inline void ti_dra7_xbar_reserve(int offset, int len, unsigned long *p) { for (; len > 0; len--) - clear_bit(offset + (len - 1), p); + set_bit(offset + (len - 1), p); } static int ti_dra7_xbar_probe(struct platform_device *pdev)