xref: /qemu/include/hw/misc/bcm2835_property.h (revision f802ff1e281eac50f2b4b177b180be97e80da21f)
104f1ab15SAndrew Baumann /*
204f1ab15SAndrew Baumann  * Raspberry Pi emulation (c) 2012 Gregory Estrade
36111a0c0SPhilippe Mathieu-Daudé  *
46111a0c0SPhilippe Mathieu-Daudé  * This work is licensed under the terms of the GNU GPL, version 2 or later.
56111a0c0SPhilippe Mathieu-Daudé  * See the COPYING file in the top-level directory.
604f1ab15SAndrew Baumann  */
704f1ab15SAndrew Baumann 
804f1ab15SAndrew Baumann #ifndef BCM2835_PROPERTY_H
904f1ab15SAndrew Baumann #define BCM2835_PROPERTY_H
1004f1ab15SAndrew Baumann 
1104f1ab15SAndrew Baumann #include "hw/sysbus.h"
1204f1ab15SAndrew Baumann #include "net/net.h"
13355a8cccSGrégory ESTRADE #include "hw/display/bcm2835_fb.h"
14db1015e9SEduardo Habkost #include "qom/object.h"
1504f1ab15SAndrew Baumann 
1604f1ab15SAndrew Baumann #define TYPE_BCM2835_PROPERTY "bcm2835-property"
178063396bSEduardo Habkost OBJECT_DECLARE_SIMPLE_TYPE(BCM2835PropertyState, BCM2835_PROPERTY)
1804f1ab15SAndrew Baumann 
19db1015e9SEduardo Habkost struct BCM2835PropertyState {
2004f1ab15SAndrew Baumann     /*< private >*/
2104f1ab15SAndrew Baumann     SysBusDevice busdev;
2204f1ab15SAndrew Baumann     /*< public >*/
23355a8cccSGrégory ESTRADE 
2404f1ab15SAndrew Baumann     MemoryRegion *dma_mr;
2504f1ab15SAndrew Baumann     AddressSpace dma_as;
2604f1ab15SAndrew Baumann     MemoryRegion iomem;
2704f1ab15SAndrew Baumann     qemu_irq mbox_irq;
28355a8cccSGrégory ESTRADE     BCM2835FBState *fbdev;
29355a8cccSGrégory ESTRADE 
3004f1ab15SAndrew Baumann     MACAddr macaddr;
31f0afa731SStephen Warren     uint32_t board_rev;
3204f1ab15SAndrew Baumann     uint32_t addr;
33*f802ff1eSDaniel Bertalan     char *command_line;
3404f1ab15SAndrew Baumann     bool pending;
35db1015e9SEduardo Habkost };
3604f1ab15SAndrew Baumann 
3704f1ab15SAndrew Baumann #endif
38