Statistics
| Branch: | Revision:

root / hw / sun4m.h @ dc828ca1

History | View | Annotate | Download (2.5 kB)

1 87ecb68b pbrook
#ifndef SUN4M_H
2 87ecb68b pbrook
#define SUN4M_H
3 87ecb68b pbrook
4 376253ec aliguori
#include "qemu-common.h"
5 376253ec aliguori
6 87ecb68b pbrook
/* Devices used by sparc32 system.  */
7 87ecb68b pbrook
8 87ecb68b pbrook
/* iommu.c */
9 ff403da6 blueswir1
void *iommu_init(target_phys_addr_t addr, uint32_t version, qemu_irq irq);
10 87ecb68b pbrook
void sparc_iommu_memory_rw(void *opaque, target_phys_addr_t addr,
11 87ecb68b pbrook
                                 uint8_t *buf, int len, int is_write);
12 87ecb68b pbrook
static inline void sparc_iommu_memory_read(void *opaque,
13 87ecb68b pbrook
                                           target_phys_addr_t addr,
14 87ecb68b pbrook
                                           uint8_t *buf, int len)
15 87ecb68b pbrook
{
16 87ecb68b pbrook
    sparc_iommu_memory_rw(opaque, addr, buf, len, 0);
17 87ecb68b pbrook
}
18 87ecb68b pbrook
19 87ecb68b pbrook
static inline void sparc_iommu_memory_write(void *opaque,
20 87ecb68b pbrook
                                            target_phys_addr_t addr,
21 87ecb68b pbrook
                                            uint8_t *buf, int len)
22 87ecb68b pbrook
{
23 87ecb68b pbrook
    sparc_iommu_memory_rw(opaque, addr, buf, len, 1);
24 87ecb68b pbrook
}
25 87ecb68b pbrook
26 87ecb68b pbrook
/* tcx.c */
27 dc828ca1 pbrook
void tcx_init(target_phys_addr_t addr, int vram_size, int width, int height,
28 87ecb68b pbrook
              int depth);
29 87ecb68b pbrook
30 87ecb68b pbrook
/* slavio_intctl.c */
31 87ecb68b pbrook
void *slavio_intctl_init(target_phys_addr_t addr, target_phys_addr_t addrg,
32 87ecb68b pbrook
                         const uint32_t *intbit_to_level,
33 87ecb68b pbrook
                         qemu_irq **irq, qemu_irq **cpu_irq,
34 87ecb68b pbrook
                         qemu_irq **parent_irq, unsigned int cputimer);
35 376253ec aliguori
void slavio_pic_info(Monitor *mon, void *opaque);
36 376253ec aliguori
void slavio_irq_info(Monitor *mon, void *opaque);
37 87ecb68b pbrook
38 7d85892b blueswir1
/* sbi.c */
39 7d85892b blueswir1
void *sbi_init(target_phys_addr_t addr, qemu_irq **irq, qemu_irq **cpu_irq,
40 7d85892b blueswir1
               qemu_irq **parent_irq);
41 7d85892b blueswir1
42 ee76f82e blueswir1
/* sun4c_intctl.c */
43 ee76f82e blueswir1
void *sun4c_intctl_init(target_phys_addr_t addr, qemu_irq **irq,
44 ee76f82e blueswir1
                        qemu_irq *parent_irq);
45 376253ec aliguori
void sun4c_pic_info(Monitor *mon, void *opaque);
46 376253ec aliguori
void sun4c_irq_info(Monitor *mon, void *opaque);
47 ee76f82e blueswir1
48 87ecb68b pbrook
/* slavio_timer.c */
49 87ecb68b pbrook
void slavio_timer_init_all(target_phys_addr_t base, qemu_irq master_irq,
50 19f8e5dd blueswir1
                           qemu_irq *cpu_irqs, unsigned int num_cpus);
51 87ecb68b pbrook
52 87ecb68b pbrook
/* slavio_misc.c */
53 87ecb68b pbrook
void *slavio_misc_init(target_phys_addr_t base, target_phys_addr_t power_base,
54 0019ad53 blueswir1
                       target_phys_addr_t aux1_base,
55 0019ad53 blueswir1
                       target_phys_addr_t aux2_base, qemu_irq irq,
56 6d0c293d blueswir1
                       qemu_irq cpu_halt, qemu_irq **fdc_tc);
57 87ecb68b pbrook
void slavio_set_power_fail(void *opaque, int power_failing);
58 87ecb68b pbrook
59 87ecb68b pbrook
/* cs4231.c */
60 87ecb68b pbrook
void cs_init(target_phys_addr_t base, int irq, void *intctl);
61 87ecb68b pbrook
62 87ecb68b pbrook
/* sparc32_dma.c */
63 216fdffa blueswir1
#include "sparc32_dma.h"
64 87ecb68b pbrook
65 87ecb68b pbrook
/* pcnet.c */
66 87ecb68b pbrook
void lance_init(NICInfo *nd, target_phys_addr_t leaddr, void *dma_opaque,
67 87ecb68b pbrook
                qemu_irq irq, qemu_irq *reset);
68 87ecb68b pbrook
69 7eb0c8e8 blueswir1
/* eccmemctl.c */
70 e42c20b4 blueswir1
void *ecc_init(target_phys_addr_t base, qemu_irq irq, uint32_t version);
71 7eb0c8e8 blueswir1
72 87ecb68b pbrook
#endif