1 #ifndef PRIMECELL_H 2 #define PRIMECELL_H 3 4 /* Declarations for ARM PrimeCell based periperals. */ 5 /* Also includes some devices that are currently only used by the 6 ARM boards. */ 7 8 /* pl022.c */ 9 typedef int (*ssi_xfer_cb)(void *, int); 10 void pl022_init(uint32_t base, qemu_irq irq, ssi_xfer_cb xfer_cb, 11 void *opaque); 12 13 /* pl061.c */ 14 void pl061_float_high(void *opaque, uint8_t mask); 15 qemu_irq *pl061_init(uint32_t base, qemu_irq irq, qemu_irq **out); 16 17 /* pl080.c */ 18 void *pl080_init(uint32_t base, qemu_irq irq, int nchannels); 19 20 /* pl190.c */ 21 qemu_irq *pl190_init(uint32_t base, qemu_irq irq, qemu_irq fiq); 22 23 /* realview_gic.c */ 24 qemu_irq *realview_gic_init(uint32_t base, qemu_irq parent_irq); 25 26 /* mpcore.c */ 27 extern qemu_irq *mpcore_irq_init(qemu_irq *cpu_irq); 28 29 /* arm-timer.c */ 30 void sp804_init(uint32_t base, qemu_irq irq); 31 void icp_pit_init(uint32_t base, qemu_irq *pic, int irq); 32 33 /* arm_sysctl.c */ 34 void arm_sysctl_init(uint32_t base, uint32_t sys_id); 35 36 /* versatile_pci.c */ 37 PCIBus *pci_vpb_init(qemu_irq *pic, int irq, int realview); 38 39 #endif 40