mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-26 23:40:10 +01:00
nouveau: allow NV3x's to be used with nouveau_vieux
NV34 and possibly other NV3x hardware has the capability of exposing the NV25 graph class. This allows forcing nouveau_vieux to be used instead of the gallium driver, primarily for testing purposes. (Among other things, NV2x only ever came as AGP or inside an Xbox, never PCI/PCIe). Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
This commit is contained in:
parent
ab0917311f
commit
91681302d0
3 changed files with 7 additions and 2 deletions
|
|
@ -25,6 +25,7 @@ int is_nouveau_vieux(int fd);
|
|||
|
||||
#ifdef HAVE_LIBDRM
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <xf86drm.h>
|
||||
#include <nouveau_drm.h>
|
||||
|
||||
|
|
@ -45,7 +46,8 @@ int
|
|||
is_nouveau_vieux(int fd)
|
||||
{
|
||||
int chipset = nouveau_chipset(fd);
|
||||
return chipset > 0 && chipset < 0x30;
|
||||
return (chipset > 0 && chipset < 0x30) ||
|
||||
(chipset < 0x40 && getenv("NOUVEAU_VIEUX") != NULL);
|
||||
}
|
||||
|
||||
#else
|
||||
|
|
|
|||
|
|
@ -130,6 +130,7 @@ nouveau_init_screen2(__DRIscreen *dri_screen)
|
|||
dri_screen->max_gl_es1_version = 10;
|
||||
break;
|
||||
case 0x20:
|
||||
case 0x30:
|
||||
screen->driver = &nv20_driver;
|
||||
dri_screen->max_gl_compat_version = 13;
|
||||
dri_screen->max_gl_es1_version = 10;
|
||||
|
|
|
|||
|
|
@ -577,8 +577,10 @@ nv04_surface_init(struct gl_context *ctx)
|
|||
/* Swizzled surface. */
|
||||
if (context_chipset(ctx) < 0x20)
|
||||
class = NV04_SURFACE_SWZ_CLASS;
|
||||
else
|
||||
else if (context_chipset (ctx) < 0x30)
|
||||
class = NV20_SURFACE_SWZ_CLASS;
|
||||
else
|
||||
class = NV30_SURFACE_SWZ_CLASS;
|
||||
|
||||
ret = nouveau_object_new(chan, handle++, class, NULL, 0, &hw->swzsurf);
|
||||
if (ret)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue