Create a new include file for the pl031's device struct, type macros, etc, so that it can be instantiated using the "embedded struct" coding style. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
		
			
				
	
	
		
			45 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			45 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/*
 | 
						|
 * ARM AMBA PrimeCell PL031 RTC
 | 
						|
 *
 | 
						|
 * Copyright (c) 2007 CodeSourcery
 | 
						|
 *
 | 
						|
 * This file is free software; you can redistribute it and/or modify
 | 
						|
 * it under the terms of the GNU General Public License version 2 as
 | 
						|
 * published by the Free Software Foundation.
 | 
						|
 *
 | 
						|
 * Contributions after 2012-01-13 are licensed under the terms of the
 | 
						|
 * GNU GPL, version 2 or (at your option) any later version.
 | 
						|
 */
 | 
						|
 | 
						|
#ifndef HW_TIMER_PL031
 | 
						|
#define HW_TIMER_PL031
 | 
						|
 | 
						|
#include "hw/sysbus.h"
 | 
						|
 | 
						|
#define TYPE_PL031 "pl031"
 | 
						|
#define PL031(obj) OBJECT_CHECK(PL031State, (obj), TYPE_PL031)
 | 
						|
 | 
						|
typedef struct PL031State {
 | 
						|
    SysBusDevice parent_obj;
 | 
						|
 | 
						|
    MemoryRegion iomem;
 | 
						|
    QEMUTimer *timer;
 | 
						|
    qemu_irq irq;
 | 
						|
 | 
						|
    /*
 | 
						|
     * Needed to preserve the tick_count across migration, even if the
 | 
						|
     * absolute value of the rtc_clock is different on the source and
 | 
						|
     * destination.
 | 
						|
     */
 | 
						|
    uint32_t tick_offset_vmstate;
 | 
						|
    uint32_t tick_offset;
 | 
						|
 | 
						|
    uint32_t mr;
 | 
						|
    uint32_t lr;
 | 
						|
    uint32_t cr;
 | 
						|
    uint32_t im;
 | 
						|
    uint32_t is;
 | 
						|
} PL031State;
 | 
						|
 | 
						|
#endif
 |