xref: /qemu/include/hw/arm/primecell.h (revision 97aff481656b984559a3b6602e6be69ebbe746a4)
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 /* realview_gic.c */
21 qemu_irq *realview_gic_init(uint32_t base, qemu_irq parent_irq);
22 
23 /* mpcore.c */
24 extern qemu_irq *mpcore_irq_init(qemu_irq *cpu_irq);
25 
26 /* arm_sysctl.c */
27 void arm_sysctl_init(uint32_t base, uint32_t sys_id);
28 
29 /* versatile_pci.c */
30 PCIBus *pci_vpb_init(qemu_irq *pic, int realview);
31 
32 #endif
33