On Fri, Dec 18, 2009 at 8:02 AM, Li Yang-R58472 <r58472@xxxxxxxxxxxxx> wrote: > >>Subject: Re: [PATCH v2 2/2] Crypto: Talitos: Support for >>Async_tx XOR offload >> >>Ira W. Snyder wrote: >>> Yes, I have used the device_prep_dma_interrupt() >>functionality quite a >>> while back. However, I found it to be pretty much useless. >> >>The specific case it is needed for Talitos/raid is a channel >>switch interrupt. The interrupt causes the cleanup operation >>to be run which will kick off any pending dependent operations >>on the xor channel. In the raid case we only have callbacks >>at the end of a chain, so we need the interrupt to kick the >>engine in an operation chain like >>xor->copy->xor->callback. > > I am wondering if can use more callbacks to kick off pending dependent operations? > Like xor->callback->copy->callback->xor->callback? > No, the callback field is reserved for clients of the api. What you want is: xor->cleanupT->copy->cleanupF->xor->cleanupT->callback Where cleanupT is the Talitos descriptor cleanup routine and cleanupF is from fsldma. The assumption is that the interrupt kicks the cleanup routine and that calls dma_run_dependencies(). -- Dan -- To unsubscribe from this list: send the line "unsubscribe linux-raid" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html