On Fri, Jul 29, 2011 at 3:25 PM, Felipe Balbi <balbi@xxxxxx> wrote: > Hi, > Thanks for replying. > On Thu, Jul 28, 2011 at 02:59:55PM +0530, Govindraj.R wrote: >> Proposal: >> -------- >> 1. For the UART, follow the current approach of locking the console in >> Idle/Suspend path before cutting the clock but using pm_runtime_putsync. >> That is, continue using the prepare/resume Idle calls in idle path. > > I believe you should be using ->prepare() to prevent that any other > work on UART won't trigger a console_write() right now. Maybe only > queueing the work for after ->complete() or, maybe, just ignoring the > work and loosing some prints, dunno. > Yes true, for suspend path but for Idle path we don't have any such mechanism. >> 2. Other Approach would be adding conditions to debug prints from >> omap_device/ omap_hwmod/clock_framework avoid calling these debug >> prints for uart. >> Or Even a debug macro that would not debug prints if the context is >> from uart. > > yeah, that might work but then again, if we were using 8250.c, would we > have this limitation ?? > Its not necessary which driver we use, its about clock handling mechanism where it has to be done. if we add clock handling mechanism into the driver, from driver context handling clocks + managing the printks for the same uart port is a issue, due to reasons said earlier. > I think that, maybe, your best call would be to capture console_write() > calls into an internal temporary buffer on ->prepare() and flush it once > ->complete() is called ? > IIUC ->prepare and -> complete are only for suspend path when we do system wide suspend for normal idle path get_sync and put_sycn we dont have any ->prepare or -> complete where we can buffer the contents and flush later. > BTW, where are the patches ? :-) I have done clock gating in idle path integrating irq chaining patches. hosted in gitorious here[1]. Was consolidating whether this approach is OK, or Are there any other approaches that I should consider? -- Thanks, Govindraj.R [1]: https://gitorious.org/runtime_3-0/runtime_3-0/commits/wip_irqchn > > -- > balbi > -- 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