> On 20. 4. 2022, at 14:40, Vinod Koul <vkoul@xxxxxxxxxx> wrote: > > On 12-04-22, 00:22, Martin Povišer wrote: > >> +struct admac_chan { >> + int no; > > Unsigned int perhaps? Sure. > >> +static int admac_desc_free(struct dma_async_tx_descriptor *tx) >> +{ >> + struct admac_tx *adtx = to_admac_tx(tx); >> + >> + devm_kfree(to_admac_chan(tx->chan)->host->dev, adtx); > > Why use devm for descriptor memory? Well, good point. :-) >> +static int admac_device_config(struct dma_chan *chan, >> + struct dma_slave_config *config) >> +{ >> + struct admac_chan *adchan = to_admac_chan(chan); >> + struct admac_data *ad = adchan->host; >> + bool is_tx = admac_chan_direction(adchan->no) == DMA_MEM_TO_DEV; > > so are the channel directions hard wired in hardware? Yes they are. > -- > ~Vinod Martin