https://bugs.freedesktop.org/show_bug.cgi?id=54570
--- Comment #6 from Mike Lothian <[email protected]> 2012-09-08 10:31:38 UTC --- With the latest patch I get a segfault diff --git a/src/drmmode_display.c b/src/drmmode_display.c index 9b9fc83..6bb882b 100644 --- a/src/drmmode_display.c +++ b/src/drmmode_display.c @@ -1553,7 +1553,8 @@ Bool drmmode_pre_init(ScrnInfoPtr pScrn, drmmode_ptr drmmode, int cpp) xf86ProviderSetup(pScrn, NULL, "radeon"); #endif - xf86InitialConfiguration(pScrn, TRUE); + if (drmmode->mode_res->count_connectors != 0) + xf86InitialConfiguration(pScrn, TRUE); drmmode->event_context.version = DRM_EVENT_CONTEXT_VERSION; drmmode->event_context.vblank_handler = drmmode_vblank_handler; diff --git a/src/radeon_kms.c b/src/radeon_kms.c index e953082..020bd99 100644 --- a/src/radeon_kms.c +++ b/src/radeon_kms.c @@ -954,7 +954,7 @@ Bool RADEONPreInit_KMS(ScrnInfoPtr pScrn, int flags) if (!xf86LoadSubModule(pScrn, "ramdac")) return FALSE; } - if (pScrn->modes == NULL) { + if (!pScrn->is_gpu && pScrn->modes == NULL) { xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "No modes.\n"); goto fail; } @@ -1427,6 +1427,9 @@ static Bool radeon_setup_kernel_mem(ScreenPtr pScreen) } else tiling_flags |= RADEON_TILING_MACRO; } + + if (pScrn->is_gpu && !pScrn->virtualX && !pScrn->virtualY) + return; pitch = RADEON_ALIGN(pScrn->virtualX, drmmode_get_pitch_align(pScrn, cpp, tiling_flags)) * cpp; screen_size = RADEON_ALIGN(pScrn->virtualY, drmmode_get_height_align(pScrn, tiling_flags)) * pitch; base_align = drmmode_get_base_align(pScrn, cpp, tiling_flags); -- Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug. _______________________________________________ xorg-driver-ati mailing list [email protected] http://lists.x.org/mailman/listinfo/xorg-driver-ati
