[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <18c6c091-6eb6-cc56-68d6-2b9811da9618@linux.alibaba.com>
Date: Fri, 21 Oct 2022 09:35:17 +0800
From: Baolin Wang <baolin.wang@...ux.alibaba.com>
To: Vinod Koul <vkoul@...nel.org>
Cc: Cixi Geng <gengcixi@...il.com>, orsonzhai@...il.com,
zhang.lyra@...il.com, dmaengine@...r.kernel.org,
linux-kernel@...r.kernel.org, Cixi Geng <cixi.geng1@...soc.com>
Subject: Re: [PATCH V2] dmaengine: sprd: Support two-stage dma interrupt
On 10/20/2022 7:22 PM, Vinod Koul wrote:
> On 20-10-22, 16:15, Baolin Wang wrote:
>
>>>> why is sprd_dma_int_type part of driver interface. sprd_dma_int_type is
>>>> used only by this driver and should be moved into the driver..
>>
>> Now we can not move this into dma driver, since we have some drivers in the
>> mainline will set the DMA interrupt type, such as spi-sprd.c, sprd_serial.c
>> and sprd-pcm-compress.c.
>
> That may not sound right.. Why should peripheral set the DMA
> interrupt..?
That's because SPRD DMA controller supplies several different interrupt
types for different scenarios of users, for example:
@SPRD_DMA_FRAG_INT: fragment done interrupt when one fragment request is
done.
@SPRD_DMA_BLK_INT: block done interrupt when one block request is done.
@SPRD_DMA_BLK_FRAG_INT: block and fragment interrupt when one fragment
or one block request is done.
@SPRD_DMA_TRANS_INT: tansaction done interrupt when one transaction
request is done.
......
Some users may want use Linklist interrupt, and others may just want
tansaction interrupt. So exposing these interrupt types for users to
decide seems more suitable.
Powered by blists - more mailing lists