Statistics
| Branch: | Revision:

root / hw / sun4m.h @ ee76f82e

History | View | Annotate | Download (3.2 kB)

1
#ifndef SUN4M_H
2
#define SUN4M_H
3

    
4
/* Devices used by sparc32 system.  */
5

    
6
/* iommu.c */
7
void *iommu_init(target_phys_addr_t addr, uint32_t version);
8
void sparc_iommu_memory_rw(void *opaque, target_phys_addr_t addr,
9
                                 uint8_t *buf, int len, int is_write);
10
static inline void sparc_iommu_memory_read(void *opaque,
11
                                           target_phys_addr_t addr,
12
                                           uint8_t *buf, int len)
13
{
14
    sparc_iommu_memory_rw(opaque, addr, buf, len, 0);
15
}
16

    
17
static inline void sparc_iommu_memory_write(void *opaque,
18
                                            target_phys_addr_t addr,
19
                                            uint8_t *buf, int len)
20
{
21
    sparc_iommu_memory_rw(opaque, addr, buf, len, 1);
22
}
23

    
24
/* tcx.c */
25
void tcx_init(DisplayState *ds, target_phys_addr_t addr, uint8_t *vram_base,
26
              unsigned long vram_offset, int vram_size, int width, int height,
27
              int depth);
28

    
29
/* slavio_intctl.c */
30
void *slavio_intctl_init(target_phys_addr_t addr, target_phys_addr_t addrg,
31
                         const uint32_t *intbit_to_level,
32
                         qemu_irq **irq, qemu_irq **cpu_irq,
33
                         qemu_irq **parent_irq, unsigned int cputimer);
34
void slavio_pic_info(void *opaque);
35
void slavio_irq_info(void *opaque);
36

    
37
/* sbi.c */
38
void *sbi_init(target_phys_addr_t addr, qemu_irq **irq, qemu_irq **cpu_irq,
39
               qemu_irq **parent_irq);
40

    
41
/* sun4c_intctl.c */
42
void *sun4c_intctl_init(target_phys_addr_t addr, qemu_irq **irq,
43
                        qemu_irq *parent_irq);
44

    
45
/* slavio_timer.c */
46
void slavio_timer_init_all(target_phys_addr_t base, qemu_irq master_irq,
47
                           qemu_irq *cpu_irqs, unsigned int num_cpus);
48

    
49
/* slavio_serial.c */
50
SerialState *slavio_serial_init(target_phys_addr_t base, qemu_irq irq,
51
                                CharDriverState *chr1, CharDriverState *chr2);
52
void slavio_serial_ms_kbd_init(target_phys_addr_t base, qemu_irq irq,
53
                               int disabled);
54

    
55
/* slavio_misc.c */
56
void *slavio_misc_init(target_phys_addr_t base, target_phys_addr_t power_base,
57
                       qemu_irq irq);
58
void slavio_set_power_fail(void *opaque, int power_failing);
59

    
60
/* esp.c */
61
#define ESP_MAX_DEVS 7
62
void esp_scsi_attach(void *opaque, BlockDriverState *bd, int id);
63
void *esp_init(target_phys_addr_t espaddr,
64
               void *dma_opaque, qemu_irq irq, qemu_irq *reset);
65

    
66
/* cs4231.c */
67
void cs_init(target_phys_addr_t base, int irq, void *intctl);
68

    
69
/* sparc32_dma.c */
70
void *sparc32_dma_init(target_phys_addr_t daddr, qemu_irq parent_irq,
71
                       void *iommu, qemu_irq **dev_irq, qemu_irq **reset);
72
void ledma_memory_read(void *opaque, target_phys_addr_t addr,
73
                       uint8_t *buf, int len, int do_bswap);
74
void ledma_memory_write(void *opaque, target_phys_addr_t addr,
75
                        uint8_t *buf, int len, int do_bswap);
76
void espdma_memory_read(void *opaque, uint8_t *buf, int len);
77
void espdma_memory_write(void *opaque, uint8_t *buf, int len);
78

    
79
/* pcnet.c */
80
void lance_init(NICInfo *nd, target_phys_addr_t leaddr, void *dma_opaque,
81
                qemu_irq irq, qemu_irq *reset);
82

    
83
/* eccmemctl.c */
84
void *ecc_init(target_phys_addr_t base, uint32_t version);
85

    
86
#endif