diff options
| -rw-r--r-- | shared-core/nouveau_fifo.c | 7 | ||||
| -rw-r--r-- | shared-core/nouveau_object.c | 6 | 
2 files changed, 7 insertions, 6 deletions
| diff --git a/shared-core/nouveau_fifo.c b/shared-core/nouveau_fifo.c index d015d420..5a7b8638 100644 --- a/shared-core/nouveau_fifo.c +++ b/shared-core/nouveau_fifo.c @@ -92,12 +92,15 @@ static void nouveau_fifo_init(drm_device_t* dev)  			((dev_priv->objs.ht_bits - 9) << 16) |  			(dev_priv->objs.ht_base >> 8)  			); -	dev_priv->ramfc_offset=0x12000; -	dev_priv->ramro_offset=0x11200; +	/* RAMFC needs to be at RAMIN+0x20000 on NV40, I currently don't know +	 * how to move it.. +	 */ +	dev_priv->ramfc_offset=0x20000;  	if (dev_priv->card_type < NV_40)  		NV_WRITE(NV_PFIFO_RAMFC, dev_priv->ramfc_offset>>8); /* RAMIN+0x11000 0.5k */  	else  		NV_WRITE(0x2220, 0x30002); +	dev_priv->ramro_offset=0x11200;  	NV_WRITE(NV_PFIFO_RAMRO, dev_priv->ramro_offset>>8); /* RAMIN+0x11200 0.5k */  	NV_WRITE(NV_PFIFO_CACH0_PUL1, 0x00000001);  	NV_WRITE(NV_PFIFO_CACH1_DMAC, 0x00000000); diff --git a/shared-core/nouveau_object.c b/shared-core/nouveau_object.c index 5f11cfa7..18c50763 100644 --- a/shared-core/nouveau_object.c +++ b/shared-core/nouveau_object.c @@ -303,10 +303,8 @@ void nouveau_hash_table_init(drm_device_t* dev)  	dev_priv->objs.inst_bmap = drm_calloc  	    (1, dev_priv->objs.num_instance/32, DRM_MEM_DRIVER); -	/* clear the hash table */ -	ht_start = NV_RAMIN+dev_priv->objs.ht_base; -	ht_end   = ht_start + dev_priv->objs.ht_size; -	for (i=ht_start; i<ht_end; i+=4) +	/* clear all of RAMIN  */ +	for (i=0x00700000; i<0x00800000; i+=4)  		NV_WRITE(i, 0x00000000);  } | 
