 78d1404dcc
			
		
	
	
		78d1404dcc
		
	
	
	
	
		
			
			Implement the timers on the Freescale i.MX31 SoC. This is not a complete implementation, but gives enough for Linux to boot and run. In particular external triggers, which are not useful under QEMU, are not implemented. Signed-off-by: Philip O'Sullivan <philipo@ok-labs.com> Signed-off-by: Peter Chubb <peter.chubb@nicta.com.au> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
		
			
				
	
	
		
			35 lines
		
	
	
		
			710 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			35 lines
		
	
	
		
			710 B
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
|  * i.MX31 emulation
 | |
|  *
 | |
|  * Copyright (C) 2012 Peter Chubb
 | |
|  * NICTA
 | |
|  *
 | |
|  * This code is released under the GPL, version 2.0 or later
 | |
|  * See the file `../COPYING' for details.
 | |
|  */
 | |
| 
 | |
| #ifndef IMX_H
 | |
| #define IMX_H
 | |
| 
 | |
| void imx_serial_create(int uart, const target_phys_addr_t addr, qemu_irq irq);
 | |
| 
 | |
| typedef enum  {
 | |
|     NOCLK,
 | |
|     MCU,
 | |
|     HSP,
 | |
|     IPG,
 | |
|     CLK_32k
 | |
| } IMXClk;
 | |
| 
 | |
| uint32_t imx_clock_frequency(DeviceState *s, IMXClk clock);
 | |
| 
 | |
| void imx_timerp_create(const target_phys_addr_t addr,
 | |
|                       qemu_irq irq,
 | |
|                       DeviceState *ccm);
 | |
| void imx_timerg_create(const target_phys_addr_t addr,
 | |
|                       qemu_irq irq,
 | |
|                       DeviceState *ccm);
 | |
| 
 | |
| 
 | |
| #endif /* IMX_H */
 |