mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 18:18:06 +02:00
nouveau: nv10 and nv11,15 are different
This commit is contained in:
parent
5a0f02a394
commit
24f85f047b
5 changed files with 11 additions and 7 deletions
|
|
@ -224,6 +224,7 @@ GLboolean nouveauCreateContext( const __GLcontextModes *glVisual,
|
|||
nv04TriInitFunctions( ctx );
|
||||
break;
|
||||
case NV_10:
|
||||
case NV_11:
|
||||
case NV_17:
|
||||
case NV_20:
|
||||
case NV_30:
|
||||
|
|
|
|||
|
|
@ -34,10 +34,13 @@ void nouveauObjectInit(nouveauContextPtr nmesa)
|
|||
nouveauCreateContextObject(nmesa, Nv3D, nmesa->screen->card->class_3d);
|
||||
if (nmesa->screen->card->type>=NV_10) {
|
||||
nouveauCreateContextObject(nmesa, NvCtxSurf2D, NV10_CONTEXT_SURFACES_2D);
|
||||
nouveauCreateContextObject(nmesa, NvImageBlit, NV10_IMAGE_BLIT);
|
||||
} else {
|
||||
nouveauCreateContextObject(nmesa, NvCtxSurf2D, NV04_CONTEXT_SURFACES_2D);
|
||||
nouveauCreateContextObject(nmesa, NvCtxSurf3D, NV04_CONTEXT_SURFACES_3D);
|
||||
}
|
||||
if (nmesa->screen->card->type>=NV_11) {
|
||||
nouveauCreateContextObject(nmesa, NvImageBlit, NV10_IMAGE_BLIT);
|
||||
} else {
|
||||
nouveauCreateContextObject(nmesa, NvImageBlit, NV_IMAGE_BLIT);
|
||||
}
|
||||
nouveauCreateContextObject(nmesa, NvMemFormat, NV_MEMORY_TO_MEMORY_FORMAT);
|
||||
|
|
|
|||
|
|
@ -162,6 +162,7 @@ void nouveauDDInitState(nouveauContextPtr nmesa)
|
|||
nv04InitStateFuncs(nmesa->glCtx, &nmesa->glCtx->Driver);
|
||||
break;
|
||||
case NV_10:
|
||||
case NV_11:
|
||||
case NV_17:
|
||||
nv10InitStateFuncs(nmesa->glCtx, &nmesa->glCtx->Driver);
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -697,8 +697,7 @@ static GLboolean nv10InitCard(nouveauContextPtr nmesa)
|
|||
BEGIN_RING_SIZE(NvSub3D, 0x03f4, 1);
|
||||
OUT_RING(0);
|
||||
|
||||
/* not for nv10, only for >= nv11 */
|
||||
if ((nmesa->screen->card->id>>4) >= 0x11) {
|
||||
if (nmesa->screen->card->type >= NV_11) {
|
||||
BEGIN_RING_SIZE(NvSub3D, 0x120, 3);
|
||||
OUT_RING(0);
|
||||
OUT_RING(1);
|
||||
|
|
|
|||
|
|
@ -58,7 +58,7 @@ static void nv10ResetLineStipple( GLcontext *ctx );
|
|||
|
||||
static inline void nv10StartPrimitive(struct nouveau_context* nmesa,uint32_t primitive,uint32_t size)
|
||||
{
|
||||
if ((nmesa->screen->card->type==NV_10) || (nmesa->screen->card->type==NV_17))
|
||||
if ((nmesa->screen->card->type>=NV_10) && (nmesa->screen->card->type<=NV_17))
|
||||
BEGIN_RING_SIZE(NvSub3D,NV10_TCL_PRIMITIVE_3D_BEGIN_END,1);
|
||||
else if (nmesa->screen->card->type==NV_20)
|
||||
BEGIN_RING_SIZE(NvSub3D,NV20_TCL_PRIMITIVE_3D_BEGIN_END,1);
|
||||
|
|
@ -66,7 +66,7 @@ static inline void nv10StartPrimitive(struct nouveau_context* nmesa,uint32_t pri
|
|||
BEGIN_RING_SIZE(NvSub3D,NV30_TCL_PRIMITIVE_3D_BEGIN_END,1);
|
||||
OUT_RING(primitive);
|
||||
|
||||
if ((nmesa->screen->card->type==NV_10) || (nmesa->screen->card->type==NV_17))
|
||||
if ((nmesa->screen->card->type>=NV_10) && (nmesa->screen->card->type<=NV_17))
|
||||
BEGIN_RING_SIZE(NvSub3D,NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_DATA|NONINC_METHOD,size);
|
||||
else if (nmesa->screen->card->type==NV_20)
|
||||
BEGIN_RING_SIZE(NvSub3D,NV20_TCL_PRIMITIVE_3D_VERTEX_DATA|NONINC_METHOD,size);
|
||||
|
|
@ -76,7 +76,7 @@ static inline void nv10StartPrimitive(struct nouveau_context* nmesa,uint32_t pri
|
|||
|
||||
inline void nv10FinishPrimitive(struct nouveau_context *nmesa)
|
||||
{
|
||||
if ((nmesa->screen->card->type==NV_10) || (nmesa->screen->card->type==NV_17))
|
||||
if ((nmesa->screen->card->type>=NV_10) && (nmesa->screen->card->type<=NV_17))
|
||||
BEGIN_RING_SIZE(NvSub3D,NV10_TCL_PRIMITIVE_3D_BEGIN_END,1);
|
||||
else if (nmesa->screen->card->type==NV_20)
|
||||
BEGIN_RING_SIZE(NvSub3D,NV20_TCL_PRIMITIVE_3D_BEGIN_END,1);
|
||||
|
|
@ -454,7 +454,7 @@ static inline void nv10OutputVertexFormat(struct nouveau_context* nmesa)
|
|||
/*
|
||||
* Tell the hardware about the vertex format
|
||||
*/
|
||||
if ((nmesa->screen->card->type==NV_10) || (nmesa->screen->card->type==NV_17)) {
|
||||
if ((nmesa->screen->card->type>=NV_10) && (nmesa->screen->card->type<=NV_17)) {
|
||||
int size;
|
||||
|
||||
#define NV_VERTEX_ATTRIBUTE_TYPE_FLOAT 2
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue