]>
Commit | Line | Data |
---|---|---|
7c62aeb8 AB |
1 | /* |
2 | * Raspberry Pi emulation (c) 2012 Gregory Estrade | |
3 | * Upstreaming code cleanup [including bcm2835_*] (c) 2013 Jan Petrous | |
4 | * | |
5 | * Rasperry Pi 2 emulation and refactoring Copyright (c) 2015, Microsoft | |
6 | * Written by Andrew Baumann | |
7 | * | |
8 | * This code is licensed under the GNU GPLv2 and later. | |
9 | */ | |
10 | ||
11 | #ifndef BCM2835_PERIPHERALS_H | |
12 | #define BCM2835_PERIPHERALS_H | |
13 | ||
14 | #include "qemu-common.h" | |
15 | #include "exec/address-spaces.h" | |
16 | #include "hw/sysbus.h" | |
97398d90 | 17 | #include "hw/char/bcm2835_aux.h" |
5e9c2a8d | 18 | #include "hw/display/bcm2835_fb.h" |
6717f587 | 19 | #include "hw/dma/bcm2835_dma.h" |
7c62aeb8 AB |
20 | #include "hw/intc/bcm2835_ic.h" |
21 | #include "hw/misc/bcm2835_property.h" | |
22 | #include "hw/misc/bcm2835_mbox.h" | |
23 | #include "hw/sd/sdhci.h" | |
24 | ||
25 | #define TYPE_BCM2835_PERIPHERALS "bcm2835-peripherals" | |
26 | #define BCM2835_PERIPHERALS(obj) \ | |
27 | OBJECT_CHECK(BCM2835PeripheralState, (obj), TYPE_BCM2835_PERIPHERALS) | |
28 | ||
29 | typedef struct BCM2835PeripheralState { | |
30 | /*< private >*/ | |
31 | SysBusDevice parent_obj; | |
32 | /*< public >*/ | |
33 | ||
34 | MemoryRegion peri_mr, peri_mr_alias, gpu_bus_mr, mbox_mr; | |
35 | MemoryRegion ram_alias[4]; | |
36 | qemu_irq irq, fiq; | |
37 | ||
38 | SysBusDevice *uart0; | |
97398d90 | 39 | BCM2835AuxState aux; |
5e9c2a8d | 40 | BCM2835FBState fb; |
6717f587 | 41 | BCM2835DMAState dma; |
7c62aeb8 AB |
42 | BCM2835ICState ic; |
43 | BCM2835PropertyState property; | |
44 | BCM2835MboxState mboxes; | |
45 | SDHCIState sdhci; | |
46 | } BCM2835PeripheralState; | |
47 | ||
48 | #endif /* BCM2835_PERIPHERALS_H */ |