RE: [PATCH] dmaengine: dw: don't handle interrupt when dmaengine is not used

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

 



> -----Original Message-----
> From: Koul, Vinod
> Sent: Friday, February 13, 2015 4:37 PM
> To: Jie, Yang
> Cc: Andy Shevchenko; dmaengine@xxxxxxxxxxxxxxx; Girdwood, Liam R
> Subject: Re: [PATCH] dmaengine: dw: don't handle interrupt when
> dmaengine is not used
> 
> On Wed, Feb 11, 2015 at 05:42:43PM +0530, Jie, Yang wrote:
> > > -----Original Message-----
> > > From: Koul, Vinod
> > > Sent: Wednesday, February 11, 2015 9:19 AM
> > > To: Andy Shevchenko
> > > Cc: Jie, Yang; dmaengine@xxxxxxxxxxxxxxx; Girdwood, Liam R
> > > Subject: Re: [PATCH] dmaengine: dw: don't handle interrupt when
> > > dmaengine is not used
> > >
> > > On Tue, Jan 20, 2015 at 11:36:05AM +0200, Andy Shevchenko wrote:
> > > > On Tue, 2015-01-20 at 17:12 +0800, Jie Yang wrote:
> > > > > When dma controller is not used by any user and set off, we
> > > > > should disble interrupt handler, at least the interrupt reset
> > > > > part, for some subsystem, e.g. ADSP, may use the dma in its own
> > > > > logic, here reset the interrupt may make this subsystem work
> abnormally.
> > > >
> > > > I think like on Intel MID (Medfield) there should be a specific
> > > > register to route interrupt pin from ADSP to CPU and vise versa.
> > > > So, my understanding we have to utilize that register somehow.
> > > >
> > > > Since it's quite specific to ADSP HW I would consider that ADSP
> > > > driver would take care of this.
> > > >
> > > > Vinod, it seems we already discussed this earlier, though I'm not
> > > > quite sure I remember your point. Can you share your opinion?
> > > Yes using those registers is recommended. Not handling a kernel irq
> > > seems not a good option.
> > >
> > > Do we have an updated patch for this now?
> > [Keyon] Andy sent out a update patch on 2015/1/27:
> > [PATCH] dmaengine: dw: disable BLOCK interrupts in dw_dma_off() What's
> > your opinion for that solution?
> Thats not a right solution either. The _right_ solution is to use mask registers
> so that interrupt is delivered to the target that needs them.
[Keyon] just come back from CNY vacation, so which register do you mean we
should mask: ISC/IMC, ISD/IMD, or STSINT(MSKERR, MSKDSTTRAN, MSKSRCTRAN, 
MSKBLOCK and MSKTFR)?
Masking IMC can't really prevent DMA receive the interrupt, and it's not easy
to mask STSINT in audio driver side.

> 
> --
> ~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