I need to prepare radeon driver for setting mode and detect disabling
display. I have to disable PM and eventually enable it again after
mode setting is done (only for single head configuration). My problem
is I do not know when modesetting starts and as result can not disable
PM reliably.

I tried to analyze:
int drm_crtc_helper_set_config(struct drm_mode_set *set);

It's quite simple if we consider mode-switching only. First prepare is
called (for encoder and crtc), then after setting mode, commit is
called (for encoder and crtc). That would just mean introducing my PM
stuff in prepare and commit.

But then I've to consider disabling display (xrandr X --off). This
operation calls DRM_MODE_DPMS_OFF for crtc. So in result in radeon's
case atombios_crtc_dpms is called from:
1) drm on disabling display
2) drm on lack of activity
3) radeon on crtc's prepare

That makes my detection (almost?) impossible.

Do you see any way of doing that?

-- 
Rafał

------------------------------------------------------------------------------
Join us December 9, 2009 for the Red Hat Virtual Experience,
a free event focused on virtualization and cloud computing. 
Attend in-depth sessions from your desk. Your couch. Anywhere.
http://p.sf.net/sfu/redhat-sfdev2dev
--
_______________________________________________
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to