xref: /qemu/include/hw/misc/iotkit-sysinfo.h (revision 138ca49a)
1 /*
2  * ARM IoTKit system information block
3  *
4  * Copyright (c) 2018 Linaro Limited
5  * Written by Peter Maydell
6  *
7  *  This program is free software; you can redistribute it and/or modify
8  *  it under the terms of the GNU General Public License version 2 or
9  *  (at your option) any later version.
10  */
11 
12 /*
13  * This is a model of the "system information block" which is part of the
14  * Arm IoTKit and documented in
15  * http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ecm0601256/index.html
16  * QEMU interface:
17  *  + QOM property "SYS_VERSION": value to use for SYS_VERSION register
18  *  + QOM property "SYS_CONFIG": value to use for SYS_CONFIG register
19  *  + sysbus MMIO region 0: the system information register bank
20  */
21 
22 #ifndef HW_MISC_IOTKIT_SYSINFO_H
23 #define HW_MISC_IOTKIT_SYSINFO_H
24 
25 #include "hw/sysbus.h"
26 #include "qom/object.h"
27 
28 #define TYPE_IOTKIT_SYSINFO "iotkit-sysinfo"
29 OBJECT_DECLARE_SIMPLE_TYPE(IoTKitSysInfo, IOTKIT_SYSINFO)
30 
31 struct IoTKitSysInfo {
32     /*< private >*/
33     SysBusDevice parent_obj;
34 
35     /*< public >*/
36     MemoryRegion iomem;
37 
38     /* Properties */
39     uint32_t sys_version;
40     uint32_t sys_config;
41 };
42 
43 #endif
44