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