xref: /qemu/include/hw/misc/a9scu.h (revision db1015e92e04835c9eb50c29625fe566d1202dbd)
1fc719d77SAndreas Färber /*
2fc719d77SAndreas Färber  * Cortex-A9MPCore Snoop Control Unit (SCU) emulation.
3fc719d77SAndreas Färber  *
4fc719d77SAndreas Färber  * Copyright (c) 2009 CodeSourcery.
5fc719d77SAndreas Färber  * Copyright (c) 2011 Linaro Limited.
6fc719d77SAndreas Färber  * Written by Paul Brook, Peter Maydell.
7fc719d77SAndreas Färber  *
8fc719d77SAndreas Färber  * This code is licensed under the GPL.
9fc719d77SAndreas Färber  */
10fc719d77SAndreas Färber #ifndef HW_MISC_A9SCU_H
11fc719d77SAndreas Färber #define HW_MISC_A9SCU_H
12fc719d77SAndreas Färber 
13fc719d77SAndreas Färber #include "hw/sysbus.h"
14*db1015e9SEduardo Habkost #include "qom/object.h"
15fc719d77SAndreas Färber 
16fc719d77SAndreas Färber /* A9MP private memory region.  */
17fc719d77SAndreas Färber 
18*db1015e9SEduardo Habkost struct A9SCUState {
19fc719d77SAndreas Färber     /*< private >*/
20fc719d77SAndreas Färber     SysBusDevice parent_obj;
21fc719d77SAndreas Färber     /*< public >*/
22fc719d77SAndreas Färber 
23fc719d77SAndreas Färber     MemoryRegion iomem;
24fc719d77SAndreas Färber     uint32_t control;
25fc719d77SAndreas Färber     uint32_t status;
26fc719d77SAndreas Färber     uint32_t num_cpu;
27*db1015e9SEduardo Habkost };
28*db1015e9SEduardo Habkost typedef struct A9SCUState A9SCUState;
29fc719d77SAndreas Färber 
30fc719d77SAndreas Färber #define TYPE_A9_SCU "a9-scu"
31fc719d77SAndreas Färber #define A9_SCU(obj) OBJECT_CHECK(A9SCUState, (obj), TYPE_A9_SCU)
32fc719d77SAndreas Färber 
33fc719d77SAndreas Färber #endif
34