|
|
|
@ -14,8 +14,12 @@ |
|
|
|
#undef DEBUG_PUV3 |
|
|
|
#include "hw/unicore32/puv3.h" |
|
|
|
|
|
|
|
typedef struct { |
|
|
|
SysBusDevice busdev; |
|
|
|
#define TYPE_PUV3_GPIO "puv3_gpio" |
|
|
|
#define PUV3_GPIO(obj) OBJECT_CHECK(PUV3GPIOState, (obj), TYPE_PUV3_GPIO) |
|
|
|
|
|
|
|
typedef struct PUV3GPIOState { |
|
|
|
SysBusDevice parent_obj; |
|
|
|
|
|
|
|
MemoryRegion iomem; |
|
|
|
qemu_irq irq[9]; |
|
|
|
|
|
|
|
@ -96,7 +100,7 @@ static const MemoryRegionOps puv3_gpio_ops = { |
|
|
|
|
|
|
|
static int puv3_gpio_init(SysBusDevice *dev) |
|
|
|
{ |
|
|
|
PUV3GPIOState *s = FROM_SYSBUS(PUV3GPIOState, dev); |
|
|
|
PUV3GPIOState *s = PUV3_GPIO(dev); |
|
|
|
|
|
|
|
s->reg_GPLR = 0; |
|
|
|
s->reg_GPDR = 0; |
|
|
|
@ -127,7 +131,7 @@ static void puv3_gpio_class_init(ObjectClass *klass, void *data) |
|
|
|
} |
|
|
|
|
|
|
|
static const TypeInfo puv3_gpio_info = { |
|
|
|
.name = "puv3_gpio", |
|
|
|
.name = TYPE_PUV3_GPIO, |
|
|
|
.parent = TYPE_SYS_BUS_DEVICE, |
|
|
|
.instance_size = sizeof(PUV3GPIOState), |
|
|
|
.class_init = puv3_gpio_class_init, |
|
|
|
|