Revision 63ffb564 hw/fdc.h

b/hw/fdc.h
1 1
#ifndef HW_FDC_H
2 2
#define HW_FDC_H
3 3

  
4
#include "isa.h"
4 5
#include "blockdev.h"
5 6

  
6 7
/* fdc.c */
7 8
#define MAX_FD 2
8 9

  
9
typedef struct FDCtrl FDCtrl;
10
static inline void fdctrl_init_isa(DriveInfo **fds)
11
{
12
    ISADevice *dev;
10 13

  
11
FDCtrl *fdctrl_init_isa(DriveInfo **fds);
12
FDCtrl *fdctrl_init_sysbus(qemu_irq irq, int dma_chann,
13
                           target_phys_addr_t mmio_base, DriveInfo **fds);
14
FDCtrl *sun4m_fdctrl_init(qemu_irq irq, target_phys_addr_t io_base,
15
                          DriveInfo **fds, qemu_irq *fdc_tc);
16
FDriveType fdctrl_get_drive_type(FDCtrl *fdctrl, int drive_num);
14
    dev = isa_create("isa-fdc");
15
    if (fds[0]) {
16
        qdev_prop_set_drive_nofail(&dev->qdev, "driveA", fds[0]->bdrv);
17
    }
18
    if (fds[1]) {
19
        qdev_prop_set_drive_nofail(&dev->qdev, "driveB", fds[1]->bdrv);
20
    }
21
    qdev_init_nofail(&dev->qdev);
22
}
17 23

  
24
void fdctrl_init_sysbus(qemu_irq irq, int dma_chann,
25
                        target_phys_addr_t mmio_base, DriveInfo **fds);
26
void sun4m_fdctrl_init(qemu_irq irq, target_phys_addr_t io_base,
27
                       DriveInfo **fds, qemu_irq *fdc_tc);
18 28
#endif

Also available in: Unified diff