From: Michel Dänzer <[email protected]> Fixes xrandr (XRRGetOutputPrimary) not reporting any output as primary after startup.
Signed-off-by: Michel Dänzer <[email protected]> --- src/radeon_kms.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/radeon_kms.c b/src/radeon_kms.c index d459740..971f11c 100644 --- a/src/radeon_kms.c +++ b/src/radeon_kms.c @@ -241,6 +241,7 @@ static Bool RADEONCreateScreenResources_KMS(ScreenPtr pScreen) { ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen); RADEONInfoPtr info = RADEONPTR(pScrn); + rrScrPrivPtr rrScrPriv = rrGetScrPriv(pScreen); PixmapPtr pixmap; struct radeon_surface *surface; @@ -249,6 +250,20 @@ static Bool RADEONCreateScreenResources_KMS(ScreenPtr pScreen) return FALSE; pScreen->CreateScreenResources = RADEONCreateScreenResources_KMS; + /* Set the RandR primary output if Xorg hasn't */ + if ( +#ifdef RADEON_PIXMAP_SHARING + !pScreen->isGPU && +#endif + !rrScrPriv->primaryOutput) + { + xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(pScrn); + + rrScrPriv->primaryOutput = xf86_config->output[0]->randr_output; + RROutputChanged(rrScrPriv->primaryOutput, FALSE); + rrScrPriv->layoutChanged = TRUE; + } + if (!drmmode_set_desired_modes(pScrn, &info->drmmode, FALSE)) return FALSE; -- 2.6.2 _______________________________________________ xorg-driver-ati mailing list [email protected] http://lists.x.org/mailman/listinfo/xorg-driver-ati
