st/xorg: reorder exa context creation and use screen param queries
Gives the x-server a more accurate description of the exa hardware capabilities. v2: drop NPOT check Signed-off-by: Lucas Stach <dev@lynxeye.de>
This commit is contained in:
committed by
Michel Dänzer
parent
229a1a7e4d
commit
70f0eda127
@@ -991,6 +991,11 @@ xorg_exa_init(ScrnInfoPtr pScrn, Bool accel)
|
||||
if (!exa)
|
||||
return NULL;
|
||||
|
||||
exa->scrn = ms->screen;
|
||||
exa->pipe = exa->scrn->context_create(exa->scrn, NULL);
|
||||
if (exa->pipe == NULL)
|
||||
goto out_err;
|
||||
|
||||
pExa = exaDriverAlloc();
|
||||
if (!pExa) {
|
||||
goto out_err;
|
||||
@@ -1012,8 +1017,9 @@ xorg_exa_init(ScrnInfoPtr pScrn, Bool accel)
|
||||
#ifdef EXA_MIXED_PIXMAPS
|
||||
pExa->flags |= EXA_MIXED_PIXMAPS;
|
||||
#endif
|
||||
pExa->maxX = 8191; /* FIXME */
|
||||
pExa->maxY = 8191; /* FIXME */
|
||||
|
||||
pExa->maxX = pExa->maxY =
|
||||
1 << (exa->scrn->get_param(exa->scrn, PIPE_CAP_MAX_TEXTURE_2D_LEVELS) - 1);
|
||||
|
||||
pExa->WaitMarker = ExaWaitMarker;
|
||||
pExa->MarkSync = ExaMarkSync;
|
||||
@@ -1040,11 +1046,6 @@ xorg_exa_init(ScrnInfoPtr pScrn, Bool accel)
|
||||
goto out_err;
|
||||
}
|
||||
|
||||
exa->scrn = ms->screen;
|
||||
exa->pipe = exa->scrn->context_create(exa->scrn, NULL);
|
||||
if (exa->pipe == NULL)
|
||||
goto out_err;
|
||||
|
||||
/* Share context with DRI */
|
||||
ms->ctx = exa->pipe;
|
||||
if (cust && cust->winsys_context_throttle)
|
||||
|
||||
Reference in New Issue
Block a user