> -----Original Message----- > From: Dasgupta, Romit > Sent: Friday, November 06, 2009 7:22 PM > To: Aggarwal, Anuj; linux-omap@xxxxxxxxxxxxxxx; alsa-devel@alsa- > project.org > Subject: RE: OMAP-McBSP driver not allowing suspend/resume > > > As can be seen from the log, both the CORE and PER power domains > > are not going to the suspend state. > > > > On further debug, I found that McBSP 2 instance belongs to the > > PER domain whereas SDMA belongs to CORE domain. And at least > > McBSP driver (on l-o tip) doesn't allow disabling of the clocks > > unless McBSP instance itself is freed. Because of this, when > > McBSP is stopped after receiving the suspend request, the > > clocks are still ON and the PER domain is not allowed to enter > > to the desired low-power state. > > > > Yes, the McBSP clocks are enabled when the PCM substream is opened and > released only when the pcm substream is closed. There are no > .suspend/.resume callbacks in the mcbsp driver today. You need to save > context of McBSP and disable clocks on suspend and enable clocks and > restore context on resume. Ok, I got that. And I think the same needs to be done for sdma as well. I can see omap_dma_global_context_save/ omap_dma_global_context_restore being called from omap3_core_save_context/omap3_core_restore_context which is saving the global sdma configuration registers. But I think sdma channel specific registers need to be saved too for the active channels. -- 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