On Tue, Dec 08, 2009 at 11:36:50PM +0100, Rafał Miłecki wrote: > Jerome Glisse <gli...@freedesktop.org> napisał: > > func_set_clock is call after func_compute_clock (if we need to > > upclock gpu to have enough bandwidth for a new video mode) or > > from func_irq_powersave. > > > My solution is correst i said that you need to call func_set_clock > > after func_compute_clock > > > - func_compute_clock (do a simple function which set > > default minimun clock to safe value final version > > need complex formula to determine this clock values). > > Func compute clock call func_schedule_reclock > > You wrote this 3 times so I'm quite sure I understand you correctly > but I am not sure about this solution. > 1) We shouldn't call func_set_clock directly from func_compute_clock > because this won't be synced with VBLANK. > 2) On the other hand we shouldn't schedule this because it may happen > we will set mode before VBLANK IRQ does call back > > -- > Rafał >
1) func_compute_clock call func_schedule_reclock which ask for a vblank interrupt irq handler catch the vblank interrupt and schedule the workqueue which does the actual job thus thing happen during vblank. 2) You stall in func_compute_clock until reclocking is done thus mode change will happen after clock has been changed. All this are details in implementation, it things that needs to be done properly. Cheers, Jerome ------------------------------------------------------------------------------ Return on Information: Google Enterprise Search pays you back Get the facts. http://p.sf.net/sfu/google-dev2dev -- _______________________________________________ Dri-devel mailing list Dri-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/dri-devel