]> git.proxmox.com Git - qemu.git/blobdiff - hw/fdc.h
openpic: don't crash on a register access without a CPU context
[qemu.git] / hw / fdc.h
index 242730af8c2469ae51b1c2a12ec0af68a80aa5b3..a8f6f7c85027de3d5c7463b7556fafdb7cf0ce71 100644 (file)
--- a/hw/fdc.h
+++ b/hw/fdc.h
@@ -1,16 +1,24 @@
 #ifndef HW_FDC_H
 #define HW_FDC_H
 
+#include "qemu-common.h"
+
 /* fdc.c */
 #define MAX_FD 2
 
-typedef struct FDCtrl FDCtrl;
+typedef enum FDriveType {
+    FDRIVE_DRV_144  = 0x00,   /* 1.44 MB 3"5 drive      */
+    FDRIVE_DRV_288  = 0x01,   /* 2.88 MB 3"5 drive      */
+    FDRIVE_DRV_120  = 0x02,   /* 1.2  MB 5"25 drive     */
+    FDRIVE_DRV_NONE = 0x03,   /* No drive connected     */
+} FDriveType;
+
+ISADevice *fdctrl_init_isa(ISABus *bus, DriveInfo **fds);
+void fdctrl_init_sysbus(qemu_irq irq, int dma_chann,
+                        hwaddr mmio_base, DriveInfo **fds);
+void sun4m_fdctrl_init(qemu_irq irq, hwaddr io_base,
+                       DriveInfo **fds, qemu_irq *fdc_tc);
 
-FDCtrl *fdctrl_init_isa(DriveInfo **fds);
-FDCtrl *fdctrl_init_sysbus(qemu_irq irq, int dma_chann,
-                           target_phys_addr_t mmio_base, DriveInfo **fds);
-FDCtrl *sun4m_fdctrl_init(qemu_irq irq, target_phys_addr_t io_base,
-                          DriveInfo **fds, qemu_irq *fdc_tc);
-int fdctrl_get_drive_type(FDCtrl *fdctrl, int drive_num);
+FDriveType isa_fdc_get_drive_type(ISADevice *fdc, int i);
 
 #endif