Re: [PATCH 26/40] dmaengine: sh_rcar-dmac: convert callback to helper function

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Jul 15, 2016 at 05:21:27PM +0800, Fengguang Wu wrote:
> On Fri, Jul 15, 2016 at 02:45:20PM +0530, Vinod Koul wrote:
> >On Fri, Jul 15, 2016 at 10:10:29AM +0300, Laurent Pinchart wrote:
> >>Hi Dave,
> >>
> >>Thank you for the patch.
> >>
> >>On Thursday 14 Jul 2016 14:59:11 Dave Jiang wrote:
> >>> Convert driver to use the new helper function for callback
> >>>
> >>> Signed-off-by: Dave Jiang <dave.jiang@xxxxxxxxx>
> >>> ---
> >>>  drivers/dma/sh/rcar-dmac.c |   14 ++++++--------
> >>>  1 file changed, 6 insertions(+), 8 deletions(-)
> >>>
> >>> diff --git a/drivers/dma/sh/rcar-dmac.c b/drivers/dma/sh/rcar-dmac.c
> >>> index dfb1792..ca39265 100644
> >>> --- a/drivers/dma/sh/rcar-dmac.c
> >>> +++ b/drivers/dma/sh/rcar-dmac.c
> >>> @@ -1356,21 +1356,18 @@ static irqreturn_t rcar_dmac_isr_channel_thread(int
> >>> irq, void *dev) {
> >>>  	struct rcar_dmac_chan *chan = dev;
> >>>  	struct rcar_dmac_desc *desc;
> >>> +	struct dma_desc_callback cb;
> >>>
> >>>  	spin_lock_irq(&chan->lock);
> >>>
> >>>  	/* For cyclic transfers notify the user after every chunk. */
> >>>  	if (chan->desc.running && chan->desc.running->cyclic) {
> >>> -		dma_async_tx_callback callback;
> >>> -		void *callback_param;
> >>> -
> >>>  		desc = chan->desc.running;
> >>> -		callback = desc->async_tx.callback;
> >>> -		callback_param = desc->async_tx.callback_param;
> >>> +		dmaengine_desc_get_callback(&desc->async_tx, &cb);
> >>>
> >>> -		if (callback) {
> >>> +		if (cb->callback) {
> >>
> >>/home/laurent/src/iob/renesas/linux/drivers/dma/sh/rcar-dmac.c: In function
> >>‘rcar_dmac_isr_channel_thread’:
> >>/home/laurent/src/iob/renesas/linux/drivers/dma/sh/rcar-dmac.c:1368:9: error:
> >>invalid type argument of ‘->’ (have ‘struct dma_desc_callback’)
> >>/home/laurent/src/iob/renesas/linux/scripts/Makefile.build:295: recipe for
> >>target 'drivers/dma/sh/rcar-dmac.o' failed
> >>make[4]: *** [drivers/dma/sh/rcar-dmac.o] Error 1
> >>make[4]: *** Waiting for unfinished jobs....
> >>
> >>Given that two of the two drivers I tried to compile failed, I think you
> >>should really get an ARM cross-compiler to test the series. They're quite
> >>widely available nowadays :-)
> >
> >:-)
> >
> >And am surprised why Fengguang's bot didn't pick this up. Fengguang..?
> 
> Sorry 0day bot doesn't see that build error. In which tree/branch does
> it happen?

My dmaengine tree, I dont think the bot ran on this patch series.
Can you check has it got disabled somehow for dmaengine list..

> 
> >Btw I use crosstool [1] to compile not just arm, but mips and ppc ones in
> >dmaengine.
> >
> >Even in arm, compile is bit painful, bunch of drivers need special arch
> >configs to be able to compile. Multi doesn't seem to compile everything.
> >Right now I have 5-6 to compile all arm drivers.. :(
> >
> >[1]: https://www.kernel.org/pub/tools/crosstool/files/bin/x86_64/
> 
> I'm using crosstool too, when there are no debian cross gcc available.
> I'm using these debian gcc packages:
> 
> gcc-sh4-linux-gnu
> gcc-alpha-linux-gnu
> gcc-hppa-linux-gnu
> gcc-hppa64-linux-gnu
> gcc-m68k-linux-gnu
> gcc-sparc64-linux-gnu
> gcc-s390x-linux-gnu
> gcc-avr
> gcc-arm-linux-gnueabi
> gcc-arm-linux-gnueabihf
> gcc-aarch64-linux-gnu
> gcc-mips-linux-gnu
> gcc-mipsel-linux-gnu
> gcc-mips64-linux-gnuabi64
> gcc-mips64el-linux-gnuabi64
> gcc-powerpc-linux-gnu
> gcc-powerpc64-linux-gnu
> gcc-powerpc64le-linux-gnu
> 
> gcc-6-aarch64-linux-gnu
> gcc-6-arm-linux-gnueabi
> gcc-6-arm-linux-gnueabihf
> gcc-6-hppa64-linux-gnu
> gcc-6-mipsel-linux-gnu
> gcc-6-mips-linux-gnu
> gcc-6-multilib-mipsel-linux-gnu
> gcc-6-multilib-mips-linux-gnu
> gcc-6-multilib-powerpc-linux-gnu
> gcc-6-multilib-s390x-linux-gnu
> gcc-6-powerpc64le-linux-gnu
> gcc-6-powerpc-linux-gnu
> gcc-6-s390x-linux-gnu
> 
> 

-- 
~Vinod
--
To unsubscribe from this list: send the line "unsubscribe dmaengine" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux PCI]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux