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

1994/1006/pc/ns16552.h (diff list | history)

1994/0902/sys/src/9/pc/ns16552.h:66,801994/1006/sys/src/9/pc/ns16552.h:66,78 (short | long | prev | next)
Debugging or hw bug fix: don't panic if don't manage to clear all the interrupt bits after 1024 tries.
rsc Fri Mar 4 12:44:25 2005
1994/0902    
 
	USED(ur); 
	mp = arg; 
	for(loops = 0;; loops++){ 
		if(loops > 1024) 
			panic("mp008intr"); 
1994/1006    
	for(loops = 0; loops < 1024; loops++){ 
1994/0902    
		n = ~inb(mp->mem); 
		if(n == 0) 
			return; 
		for(i = 0; n; i++){ 
			if(n & 1) 
				ns16552intrx(ur, uart[mp->first+i]); 
1994/1006    
				ns16552intrx(ur, (void*)(mp->first+i)); 
1994/0902    
			n >>= 1; 
		} 
	} 


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