plan 9 kernel history: overview | file list | diff list

2000/0611/pc/vgas3.c (diff list | history)

2000/0326/sys/src/9/pc/vgas3.c:65,712000/0611/sys/src/9/pc/vgas3.c:65,71 (short | long | prev | next)
1997/1101    
s3linear(VGAscr* scr, int* size, int* align) 
{ 
1999/1005    
	ulong aperture, oaperture; 
	int osize, oapsize, wasupamem; 
2000/0611    
	int i, osize, oapsize, wasupamem; 
1997/1101    
	Pcidev *p; 
1999/0716    
	Physseg seg; 
1997/1101    
 
2000/0326/sys/src/9/pc/vgas3.c:73,892000/0611/sys/src/9/pc/vgas3.c:73,98
1997/1101    
	oaperture = scr->aperture; 
	oapsize = scr->apsize; 
	wasupamem = scr->isupamem; 
	if(wasupamem) 
		upafree(oaperture, oapsize); 
	scr->isupamem = 0; 
 
	if(p = pcimatch(nil, 0x5333, 0)){ 
		aperture = p->mem[0].bar & ~0x0F; 
		*size = p->mem[0].size; 
	} 
	else 
2000/0611    
		for(i=0; i<nelem(p->mem); i++){ 
			if(p->mem[i].size >= *size 
			&& ((p->mem[i].bar & ~0x0F) & (*align-1)) == 0) 
				break; 
		} 
		if(i >= nelem(p->mem)){ 
			print("vgas3: aperture not found\n"); 
			return 0; 
		} 
		aperture = p->mem[i].bar & ~0x0F; 
		*size = p->mem[i].size; 
	}else 
1997/1101    
		aperture = 0; 
 
2000/0611    
	if(wasupamem) 
		upafree(oaperture, oapsize); 
	scr->isupamem = 0; 
 
1997/1101    
	aperture = upamalloc(aperture, *size, *align); 
	if(aperture == 0){ 
		if(wasupamem && upamalloc(oaperture, oapsize, 0)) 
2000/0326/sys/src/9/pc/vgas3.c:191,1962000/0611/sys/src/9/pc/vgas3.c:200,206
1999/1005    
	case 0xE18A:				/* ViRGE/[DG]X */ 
	case 0xE110:				/* ViRGE/GX2 */ 
	case 0xE13D:				/* ViRGE/VX */ 
2000/0611    
	case 0xE122:				/* Savage4 */ 
1998/0116    
		p += scr->storage; 
		break; 
 
2000/0326/sys/src/9/pc/vgas3.c:237,2422000/0611/sys/src/9/pc/vgas3.c:247,253
1999/1005    
	case 0xE18A:				/* ViRGE/[DG]X */ 
	case 0xE110:				/* ViRGE/GX2 */ 
	case 0xE13D:				/* ViRGE/VX */ 
2000/0611    
	case 0xE122:				/* Savage4 */ 
1998/0116    
		break; 
 
	default: 


source code copyright © 1990-2005 Lucent Technologies; see license
Plan 9 distribution
comments to russ cox (rsc@swtch.com)