153cb9a1cSAndreas Färber /* 253cb9a1cSAndreas Färber * ARM11MPCore Snoop Control Unit (SCU) emulation 353cb9a1cSAndreas Färber * 453cb9a1cSAndreas Färber * Copyright (c) 2006-2007 CodeSourcery. 553cb9a1cSAndreas Färber * Copyright (c) 2013 SUSE LINUX Products GmbH 653cb9a1cSAndreas Färber * Written by Paul Brook and Andreas Färber 753cb9a1cSAndreas Färber * 853cb9a1cSAndreas Färber * This code is licensed under the GPL. 953cb9a1cSAndreas Färber */ 1053cb9a1cSAndreas Färber 1153cb9a1cSAndreas Färber #ifndef HW_MISC_ARM11SCU_H 1253cb9a1cSAndreas Färber #define HW_MISC_ARM11SCU_H 1353cb9a1cSAndreas Färber 1453cb9a1cSAndreas Färber #include "hw/sysbus.h" 15db1015e9SEduardo Habkost #include "qom/object.h" 1653cb9a1cSAndreas Färber 1753cb9a1cSAndreas Färber #define TYPE_ARM11_SCU "arm11-scu" 18*8063396bSEduardo Habkost OBJECT_DECLARE_SIMPLE_TYPE(ARM11SCUState, ARM11_SCU) 1953cb9a1cSAndreas Färber 20db1015e9SEduardo Habkost struct ARM11SCUState { 2153cb9a1cSAndreas Färber /*< private >*/ 2253cb9a1cSAndreas Färber SysBusDevice parent_obj; 2353cb9a1cSAndreas Färber /*< public >*/ 2453cb9a1cSAndreas Färber 2553cb9a1cSAndreas Färber uint32_t control; 2653cb9a1cSAndreas Färber uint32_t num_cpu; 2753cb9a1cSAndreas Färber MemoryRegion iomem; 28db1015e9SEduardo Habkost }; 2953cb9a1cSAndreas Färber 3053cb9a1cSAndreas Färber #endif 31