mirror of
				https://source.denx.de/u-boot/u-boot.git
				synced 2025-11-04 02:11:25 +01:00 
			
		
		
		
	Fix sc520 timer interrupt generation
The current implementation has the timer being started before the interrupt handler is installed. It the interrupt occurs before the handler is installed, the timer interrupt is never reset and the timer stops Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
This commit is contained in:
		
							parent
							
								
									53c8b44a1f
								
							
						
					
					
						commit
						a219983dc1
					
				@ -54,9 +54,6 @@ int timer_init(void)
 | 
			
		||||
	write_mmcr_word (SC520_GPTMR1MAXCMPA, 100);
 | 
			
		||||
	write_mmcr_word (SC520_GPTMR1CTL, 0xe009);
 | 
			
		||||
 | 
			
		||||
	/* Clear the GP Timers status register */
 | 
			
		||||
	write_mmcr_byte (SC520_GPTMRSTA, 0x07);
 | 
			
		||||
 | 
			
		||||
	/* Register the SC520 specific timer interrupt handler */
 | 
			
		||||
	register_timer_isr (sc520_timer_isr);
 | 
			
		||||
 | 
			
		||||
@ -64,6 +61,9 @@ int timer_init(void)
 | 
			
		||||
	irq_install_handler (0, timer_isr, NULL);
 | 
			
		||||
	unmask_irq (0);
 | 
			
		||||
 | 
			
		||||
	/* Clear the GP Timer 1 status register to get the show rolling*/
 | 
			
		||||
	write_mmcr_byte (SC520_GPTMRSTA, 0x02);
 | 
			
		||||
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user