mirror of https://github.com/xemu-project/xemu.git
etraxfs_timer: Rename etrax_timer to ETRAXTimerState
Signed-off-by: Andreas Färber <afaerber@suse.de>
This commit is contained in:
parent
831aab9b0b
commit
3c9a8a8c8e
|
@ -42,7 +42,7 @@
|
||||||
#define R_INTR 0x50
|
#define R_INTR 0x50
|
||||||
#define R_MASKED_INTR 0x54
|
#define R_MASKED_INTR 0x54
|
||||||
|
|
||||||
struct etrax_timer {
|
typedef struct ETRAXTimerState {
|
||||||
SysBusDevice busdev;
|
SysBusDevice busdev;
|
||||||
MemoryRegion mmio;
|
MemoryRegion mmio;
|
||||||
qemu_irq irq;
|
qemu_irq irq;
|
||||||
|
@ -72,12 +72,12 @@ struct etrax_timer {
|
||||||
uint32_t rw_ack_intr;
|
uint32_t rw_ack_intr;
|
||||||
uint32_t r_intr;
|
uint32_t r_intr;
|
||||||
uint32_t r_masked_intr;
|
uint32_t r_masked_intr;
|
||||||
};
|
} ETRAXTimerState;
|
||||||
|
|
||||||
static uint64_t
|
static uint64_t
|
||||||
timer_read(void *opaque, hwaddr addr, unsigned int size)
|
timer_read(void *opaque, hwaddr addr, unsigned int size)
|
||||||
{
|
{
|
||||||
struct etrax_timer *t = opaque;
|
ETRAXTimerState *t = opaque;
|
||||||
uint32_t r = 0;
|
uint32_t r = 0;
|
||||||
|
|
||||||
switch (addr) {
|
switch (addr) {
|
||||||
|
@ -103,7 +103,7 @@ timer_read(void *opaque, hwaddr addr, unsigned int size)
|
||||||
return r;
|
return r;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void update_ctrl(struct etrax_timer *t, int tnum)
|
static void update_ctrl(ETRAXTimerState *t, int tnum)
|
||||||
{
|
{
|
||||||
unsigned int op;
|
unsigned int op;
|
||||||
unsigned int freq;
|
unsigned int freq;
|
||||||
|
@ -167,7 +167,7 @@ static void update_ctrl(struct etrax_timer *t, int tnum)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void timer_update_irq(struct etrax_timer *t)
|
static void timer_update_irq(ETRAXTimerState *t)
|
||||||
{
|
{
|
||||||
t->r_intr &= ~(t->rw_ack_intr);
|
t->r_intr &= ~(t->rw_ack_intr);
|
||||||
t->r_masked_intr = t->r_intr & t->rw_intr_mask;
|
t->r_masked_intr = t->r_intr & t->rw_intr_mask;
|
||||||
|
@ -178,21 +178,21 @@ static void timer_update_irq(struct etrax_timer *t)
|
||||||
|
|
||||||
static void timer0_hit(void *opaque)
|
static void timer0_hit(void *opaque)
|
||||||
{
|
{
|
||||||
struct etrax_timer *t = opaque;
|
ETRAXTimerState *t = opaque;
|
||||||
t->r_intr |= 1;
|
t->r_intr |= 1;
|
||||||
timer_update_irq(t);
|
timer_update_irq(t);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void timer1_hit(void *opaque)
|
static void timer1_hit(void *opaque)
|
||||||
{
|
{
|
||||||
struct etrax_timer *t = opaque;
|
ETRAXTimerState *t = opaque;
|
||||||
t->r_intr |= 2;
|
t->r_intr |= 2;
|
||||||
timer_update_irq(t);
|
timer_update_irq(t);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void watchdog_hit(void *opaque)
|
static void watchdog_hit(void *opaque)
|
||||||
{
|
{
|
||||||
struct etrax_timer *t = opaque;
|
ETRAXTimerState *t = opaque;
|
||||||
if (t->wd_hits == 0) {
|
if (t->wd_hits == 0) {
|
||||||
/* real hw gives a single tick before reseting but we are
|
/* real hw gives a single tick before reseting but we are
|
||||||
a bit friendlier to compensate for our slower execution. */
|
a bit friendlier to compensate for our slower execution. */
|
||||||
|
@ -206,7 +206,7 @@ static void watchdog_hit(void *opaque)
|
||||||
t->wd_hits++;
|
t->wd_hits++;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void timer_watchdog_update(struct etrax_timer *t, uint32_t value)
|
static inline void timer_watchdog_update(ETRAXTimerState *t, uint32_t value)
|
||||||
{
|
{
|
||||||
unsigned int wd_en = t->rw_wd_ctrl & (1 << 8);
|
unsigned int wd_en = t->rw_wd_ctrl & (1 << 8);
|
||||||
unsigned int wd_key = t->rw_wd_ctrl >> 9;
|
unsigned int wd_key = t->rw_wd_ctrl >> 9;
|
||||||
|
@ -245,7 +245,7 @@ static void
|
||||||
timer_write(void *opaque, hwaddr addr,
|
timer_write(void *opaque, hwaddr addr,
|
||||||
uint64_t val64, unsigned int size)
|
uint64_t val64, unsigned int size)
|
||||||
{
|
{
|
||||||
struct etrax_timer *t = opaque;
|
ETRAXTimerState *t = opaque;
|
||||||
uint32_t value = val64;
|
uint32_t value = val64;
|
||||||
|
|
||||||
switch (addr)
|
switch (addr)
|
||||||
|
@ -298,7 +298,7 @@ static const MemoryRegionOps timer_ops = {
|
||||||
|
|
||||||
static void etraxfs_timer_reset(void *opaque)
|
static void etraxfs_timer_reset(void *opaque)
|
||||||
{
|
{
|
||||||
struct etrax_timer *t = opaque;
|
ETRAXTimerState *t = opaque;
|
||||||
|
|
||||||
ptimer_stop(t->ptimer_t0);
|
ptimer_stop(t->ptimer_t0);
|
||||||
ptimer_stop(t->ptimer_t1);
|
ptimer_stop(t->ptimer_t1);
|
||||||
|
@ -311,7 +311,7 @@ static void etraxfs_timer_reset(void *opaque)
|
||||||
|
|
||||||
static int etraxfs_timer_init(SysBusDevice *dev)
|
static int etraxfs_timer_init(SysBusDevice *dev)
|
||||||
{
|
{
|
||||||
struct etrax_timer *t = FROM_SYSBUS(typeof (*t), dev);
|
ETRAXTimerState *t = FROM_SYSBUS(typeof (*t), dev);
|
||||||
|
|
||||||
t->bh_t0 = qemu_bh_new(timer0_hit, t);
|
t->bh_t0 = qemu_bh_new(timer0_hit, t);
|
||||||
t->bh_t1 = qemu_bh_new(timer1_hit, t);
|
t->bh_t1 = qemu_bh_new(timer1_hit, t);
|
||||||
|
@ -340,7 +340,7 @@ static void etraxfs_timer_class_init(ObjectClass *klass, void *data)
|
||||||
static const TypeInfo etraxfs_timer_info = {
|
static const TypeInfo etraxfs_timer_info = {
|
||||||
.name = "etraxfs,timer",
|
.name = "etraxfs,timer",
|
||||||
.parent = TYPE_SYS_BUS_DEVICE,
|
.parent = TYPE_SYS_BUS_DEVICE,
|
||||||
.instance_size = sizeof (struct etrax_timer),
|
.instance_size = sizeof(ETRAXTimerState),
|
||||||
.class_init = etraxfs_timer_class_init,
|
.class_init = etraxfs_timer_class_init,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue