static struct omap_mcbsp_s *omap_mcbsp_init(MemoryRegion *system_memory,

                                            target_phys_addr_t base,

                                            qemu_irq txirq, qemu_irq rxirq,

                                            qemu_irq *dma, omap_clk clk)

{

    struct omap_mcbsp_s *s = (struct omap_mcbsp_s *)

            g_malloc0(sizeof(struct omap_mcbsp_s));



    s->txirq = txirq;

    s->rxirq = rxirq;

    s->txdrq = dma[0];

    s->rxdrq = dma[1];

    s->sink_timer = qemu_new_timer_ns(vm_clock, omap_mcbsp_sink_tick, s);

    s->source_timer = qemu_new_timer_ns(vm_clock, omap_mcbsp_source_tick, s);

    omap_mcbsp_reset(s);



    memory_region_init_io(&s->iomem, &omap_mcbsp_ops, s, "omap-mcbsp", 0x800);

    memory_region_add_subregion(system_memory, base, &s->iomem);



    return s;

}

static struct omap_mcbsp_s *omap_mcbsp_init(MemoryRegion *system_memory,

                                            target_phys_addr_t base,

                                            qemu_irq txirq, qemu_irq rxirq,

                                            qemu_irq *dma, omap_clk clk)

{

    struct omap_mcbsp_s *s = (struct omap_mcbsp_s *)

            g_malloc0(sizeof(struct omap_mcbsp_s));



    s->txirq = txirq;

    s->rxirq = rxirq;

    s->txdrq = dma[0];

    s->rxdrq = dma[1];

    s->sink_timer = qemu_new_timer_ns(vm_clock, omap_mcbsp_sink_tick, s);

    s->source_timer = qemu_new_timer_ns(vm_clock, omap_mcbsp_source_tick, s);

    omap_mcbsp_reset(s);



    memory_region_init_io(&s->iomem, &omap_mcbsp_ops, s, "omap-mcbsp", 0x800);

    memory_region_add_subregion(system_memory, base, &s->iomem);



    return s;

}

static struct omap_mcbsp_s *FUNC_0(MemoryRegion *VAR_0,

                                            target_phys_addr_t VAR_1,

                                            qemu_irq VAR_2, qemu_irq VAR_3,

                                            qemu_irq *VAR_4, omap_clk VAR_5)

{

    struct omap_mcbsp_s *VAR_6 = (struct omap_mcbsp_s *)

            g_malloc0(sizeof(struct omap_mcbsp_s));



    VAR_6->VAR_2 = VAR_2;

    VAR_6->VAR_3 = VAR_3;

    VAR_6->txdrq = VAR_4[0];

    VAR_6->rxdrq = VAR_4[1];

    VAR_6->sink_timer = qemu_new_timer_ns(vm_clock, omap_mcbsp_sink_tick, VAR_6);

    VAR_6->source_timer = qemu_new_timer_ns(vm_clock, omap_mcbsp_source_tick, VAR_6);

    omap_mcbsp_reset(VAR_6);



    memory_region_init_io(&VAR_6->iomem, &omap_mcbsp_ops, VAR_6, "omap-mcbsp", 0x800);

    memory_region_add_subregion(VAR_0, VAR_1, &VAR_6->iomem);



    return VAR_6;

}

static struct omap_mcbsp_s *FUNC_0(MemoryRegion *VAR_0,
target_phys_addr_t VAR_1,
qemu_irq VAR_2, qemu_irq VAR_3,
qemu_irq *VAR_4, omap_clk VAR_5)
{ struct omap_mcbsp_s *VAR_6 = (struct omap_mcbsp_s *)
g_malloc0(sizeof(struct omap_mcbsp_s)); VAR_6->VAR_2 = VAR_2; VAR_6->VAR_3 = VAR_3; VAR_6->txdrq = VAR_4[0]; VAR_6->rxdrq = VAR_4[1]; VAR_6->sink_timer = qemu_new_timer_ns(vm_clock, omap_mcbsp_sink_tick, VAR_6); VAR_6->source_timer = qemu_new_timer_ns(vm_clock, omap_mcbsp_source_tick, VAR_6); omap_mcbsp_reset(VAR_6); memory_region_init_io(&VAR_6->iomem, &omap_mcbsp_ops, VAR_6, "omap-mcbsp", 0x800); memory_region_add_subregion(VAR_0, VAR_1, &VAR_6->iomem); return VAR_6; }