]>
Commit | Line | Data |
---|---|---|
c667a25b PM |
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: | |
dde0c491 PM |
17 | * + QOM property "SYS_VERSION": value to use for SYS_VERSION register |
18 | * + QOM property "SYS_CONFIG": value to use for SYS_CONFIG register | |
c667a25b PM |
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 | ||
27 | #define TYPE_IOTKIT_SYSINFO "iotkit-sysinfo" | |
28 | #define IOTKIT_SYSINFO(obj) OBJECT_CHECK(IoTKitSysInfo, (obj), \ | |
29 | TYPE_IOTKIT_SYSINFO) | |
30 | ||
31 | typedef struct IoTKitSysInfo { | |
32 | /*< private >*/ | |
33 | SysBusDevice parent_obj; | |
34 | ||
35 | /*< public >*/ | |
36 | MemoryRegion iomem; | |
dde0c491 PM |
37 | |
38 | /* Properties */ | |
39 | uint32_t sys_version; | |
40 | uint32_t sys_config; | |
c667a25b PM |
41 | } IoTKitSysInfo; |
42 | ||
43 | #endif |