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