MGA_WRITE( MGA_PRIMEND, tail | MGA_PAGPXFER ); 
MGA_WRITE(MGA_PRIMEND, tail | dev_priv->dma_access); 
void mga_do_dma_wrap_start( drm_mga_private_t *dev_priv ){	drm_mga_primary_buffer_t *primary = &dev_priv->prim;	u32 head, tail;	DMA_LOCALS;	DRM_DEBUG( "\n" );	BEGIN_DMA_WRAP();	DMA_BLOCK( MGA_DMAPAD,	0x00000000,		   MGA_DMAPAD,	0x00000000,		   MGA_DMAPAD,	0x00000000,		   MGA_DMAPAD,	0x00000000 );	ADVANCE_DMA();	tail = primary->tail + dev_priv->primary->offset;	primary->tail = 0;	primary->last_flush = 0;	primary->last_wrap++;	head = MGA_READ( MGA_PRIMADDRESS );	if ( head == dev_priv->primary->offset ) {		primary->space = primary->size;	} else {		primary->space = head - dev_priv->primary->offset;	}	DRM_DEBUG( "   head = 0x%06lx\n",		  head - dev_priv->primary->offset );	DRM_DEBUG( "   tail = 0x%06x\n", primary->tail );	DRM_DEBUG( "   wrap = %d\n", primary->last_wrap );	DRM_DEBUG( "  space = 0x%06x\n", primary->space );	mga_flush_write_combine();	MGA_WRITE( MGA_PRIMEND, tail | MGA_PAGPXFER );	set_bit( 0, &primary->wrapped );	DRM_DEBUG( "done.\n" );}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/6795c985a648d1e90b367cc1387c18205ecca4b8/mga_dma.c/clean/drivers/char/drm/mga_dma.c