diff options
Diffstat (limited to 'src/mesa/drivers')
| -rw-r--r-- | src/mesa/drivers/dri/nouveau/nouveau_context.c | 1 | ||||
| -rw-r--r-- | src/mesa/drivers/dri/nouveau/nouveau_object.c | 5 | ||||
| -rw-r--r-- | src/mesa/drivers/dri/nouveau/nouveau_state.c | 1 | ||||
| -rw-r--r-- | src/mesa/drivers/dri/nouveau/nv10_state.c | 3 | ||||
| -rw-r--r-- | src/mesa/drivers/dri/nouveau/nv10_swtcl.c | 8 | 
5 files changed, 11 insertions, 7 deletions
diff --git a/src/mesa/drivers/dri/nouveau/nouveau_context.c b/src/mesa/drivers/dri/nouveau/nouveau_context.c index 3b2bd21a46..44392c0267 100644 --- a/src/mesa/drivers/dri/nouveau/nouveau_context.c +++ b/src/mesa/drivers/dri/nouveau/nouveau_context.c @@ -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: diff --git a/src/mesa/drivers/dri/nouveau/nouveau_object.c b/src/mesa/drivers/dri/nouveau/nouveau_object.c index ec517f8b16..a143488e8d 100644 --- a/src/mesa/drivers/dri/nouveau/nouveau_object.c +++ b/src/mesa/drivers/dri/nouveau/nouveau_object.c @@ -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); diff --git a/src/mesa/drivers/dri/nouveau/nouveau_state.c b/src/mesa/drivers/dri/nouveau/nouveau_state.c index 41fdd2d377..f618dcfc99 100644 --- a/src/mesa/drivers/dri/nouveau/nouveau_state.c +++ b/src/mesa/drivers/dri/nouveau/nouveau_state.c @@ -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; diff --git a/src/mesa/drivers/dri/nouveau/nv10_state.c b/src/mesa/drivers/dri/nouveau/nv10_state.c index 4db8296f04..47c4b14ba6 100644 --- a/src/mesa/drivers/dri/nouveau/nv10_state.c +++ b/src/mesa/drivers/dri/nouveau/nv10_state.c @@ -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); diff --git a/src/mesa/drivers/dri/nouveau/nv10_swtcl.c b/src/mesa/drivers/dri/nouveau/nv10_swtcl.c index 586e0b9d59..611469b6e4 100644 --- a/src/mesa/drivers/dri/nouveau/nv10_swtcl.c +++ b/src/mesa/drivers/dri/nouveau/nv10_swtcl.c @@ -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  | 
