On 01/10/2017 05:23 AM, Matt Ranostay wrote: > Yeah I can reproduce the issue you are mentioning. Anyone have a > suggestion how on to resolve? Guessing the QoS function calls need to > be in an atomic context and the omap_mcbsp_* functions can sleep I think it is the other way around: we call a sleeping function from atomic context. pcm_trigger is atomic. Most probably we should add the .prepare callback to mcbsp_dai_ops and do the QoS update which is done in omap_mcbsp_start() there. The things we do in omap_mcbsp_stop() then can be moved to omap_mcbsp_dai_shutdown(). I think the code would handle cases when user space stops the stream, re-configures it and starts it with different parameters w/o closing it. -- Péter -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html