hw/block/fdc: Remove the check_media_rate property

This was only required for the pc-1.0 and earlier machine types.
Now that these have been removed, we can also drop the corresponding
code from the FDC device.

Signed-off-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: John Snow <jsnow@redhat.com>
Acked-by: John Snow <jsnow@redhat.com>
Message-Id: <20210203171832.483176-3-thuth@redhat.com>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
This commit is contained in:
Thomas Huth 2021-02-03 18:18:30 +01:00 committed by Laurent Vivier
parent 6661d9a58a
commit f5d33dd51f
2 changed files with 2 additions and 50 deletions

View File

@ -874,7 +874,6 @@ struct FDCtrl {
FloppyDriveType type; FloppyDriveType type;
} qdev_for_drives[MAX_FD]; } qdev_for_drives[MAX_FD];
int reset_sensei; int reset_sensei;
uint32_t check_media_rate;
FloppyDriveType fallback; /* type=auto failure fallback */ FloppyDriveType fallback; /* type=auto failure fallback */
/* Timers state */ /* Timers state */
uint8_t timer0; uint8_t timer0;
@ -1021,18 +1020,10 @@ static const VMStateDescription vmstate_fdrive_media_changed = {
} }
}; };
static bool fdrive_media_rate_needed(void *opaque)
{
FDrive *drive = opaque;
return drive->fdctrl->check_media_rate;
}
static const VMStateDescription vmstate_fdrive_media_rate = { static const VMStateDescription vmstate_fdrive_media_rate = {
.name = "fdrive/media_rate", .name = "fdrive/media_rate",
.version_id = 1, .version_id = 1,
.minimum_version_id = 1, .minimum_version_id = 1,
.needed = fdrive_media_rate_needed,
.fields = (VMStateField[]) { .fields = (VMStateField[]) {
VMSTATE_UINT8(media_rate, FDrive), VMSTATE_UINT8(media_rate, FDrive),
VMSTATE_END_OF_LIST() VMSTATE_END_OF_LIST()
@ -1689,8 +1680,7 @@ static void fdctrl_start_transfer(FDCtrl *fdctrl, int direction)
/* Check the data rate. If the programmed data rate does not match /* Check the data rate. If the programmed data rate does not match
* the currently inserted medium, the operation has to fail. */ * the currently inserted medium, the operation has to fail. */
if (fdctrl->check_media_rate && if ((fdctrl->dsr & FD_DSR_DRATEMASK) != cur_drv->media_rate) {
(fdctrl->dsr & FD_DSR_DRATEMASK) != cur_drv->media_rate) {
FLOPPY_DPRINTF("data rate mismatch (fdc=%d, media=%d)\n", FLOPPY_DPRINTF("data rate mismatch (fdc=%d, media=%d)\n",
fdctrl->dsr & FD_DSR_DRATEMASK, cur_drv->media_rate); fdctrl->dsr & FD_DSR_DRATEMASK, cur_drv->media_rate);
fdctrl_stop_transfer(fdctrl, FD_SR0_ABNTERM, FD_SR1_MA, 0x00); fdctrl_stop_transfer(fdctrl, FD_SR0_ABNTERM, FD_SR1_MA, 0x00);
@ -2489,8 +2479,7 @@ static void fdctrl_result_timer(void *opaque)
cur_drv->sect = (cur_drv->sect % cur_drv->last_sect) + 1; cur_drv->sect = (cur_drv->sect % cur_drv->last_sect) + 1;
} }
/* READ_ID can't automatically succeed! */ /* READ_ID can't automatically succeed! */
if (fdctrl->check_media_rate && if ((fdctrl->dsr & FD_DSR_DRATEMASK) != cur_drv->media_rate) {
(fdctrl->dsr & FD_DSR_DRATEMASK) != cur_drv->media_rate) {
FLOPPY_DPRINTF("read id rate mismatch (fdc=%d, media=%d)\n", FLOPPY_DPRINTF("read id rate mismatch (fdc=%d, media=%d)\n",
fdctrl->dsr & FD_DSR_DRATEMASK, cur_drv->media_rate); fdctrl->dsr & FD_DSR_DRATEMASK, cur_drv->media_rate);
fdctrl_stop_transfer(fdctrl, FD_SR0_ABNTERM, FD_SR1_MA, 0x00); fdctrl_stop_transfer(fdctrl, FD_SR0_ABNTERM, FD_SR1_MA, 0x00);
@ -2895,8 +2884,6 @@ static Property isa_fdc_properties[] = {
DEFINE_PROP_UINT32("dma", FDCtrlISABus, dma, 2), DEFINE_PROP_UINT32("dma", FDCtrlISABus, dma, 2),
DEFINE_PROP_DRIVE("driveA", FDCtrlISABus, state.qdev_for_drives[0].blk), DEFINE_PROP_DRIVE("driveA", FDCtrlISABus, state.qdev_for_drives[0].blk),
DEFINE_PROP_DRIVE("driveB", FDCtrlISABus, state.qdev_for_drives[1].blk), DEFINE_PROP_DRIVE("driveB", FDCtrlISABus, state.qdev_for_drives[1].blk),
DEFINE_PROP_BIT("check_media_rate", FDCtrlISABus, state.check_media_rate,
0, true),
DEFINE_PROP_SIGNED("fdtypeA", FDCtrlISABus, state.qdev_for_drives[0].type, DEFINE_PROP_SIGNED("fdtypeA", FDCtrlISABus, state.qdev_for_drives[0].type,
FLOPPY_DRIVE_TYPE_AUTO, qdev_prop_fdc_drive_type, FLOPPY_DRIVE_TYPE_AUTO, qdev_prop_fdc_drive_type,
FloppyDriveType), FloppyDriveType),

View File

@ -14,7 +14,6 @@ Testing:
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -44,7 +43,6 @@ Testing: -fda TEST_DIR/t.qcow2
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -84,7 +82,6 @@ Testing: -fdb TEST_DIR/t.qcow2
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -139,7 +136,6 @@ Testing: -fda TEST_DIR/t.qcow2 -fdb TEST_DIR/t.qcow2.2
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -195,7 +191,6 @@ Testing: -fdb
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -236,7 +231,6 @@ Testing: -drive if=floppy,file=TEST_DIR/t.qcow2
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -276,7 +270,6 @@ Testing: -drive if=floppy,file=TEST_DIR/t.qcow2,index=1
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -331,7 +324,6 @@ Testing: -drive if=floppy,file=TEST_DIR/t.qcow2 -drive if=floppy,file=TEST_DIR/t
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -392,7 +384,6 @@ Use -device floppy,unit=0,drive=... instead.
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -434,7 +425,6 @@ Use -device floppy,unit=1,drive=... instead.
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -478,7 +468,6 @@ Use -device floppy,unit=1,drive=... instead.
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -537,7 +526,6 @@ Testing: -drive if=none,file=TEST_DIR/t.qcow2 -device floppy,drive=none0
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -577,7 +565,6 @@ Testing: -drive if=none,file=TEST_DIR/t.qcow2 -device floppy,drive=none0,unit=1
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -617,7 +604,6 @@ Testing: -drive if=none,file=TEST_DIR/t.qcow2 -drive if=none,file=TEST_DIR/t.qco
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -678,7 +664,6 @@ Use -device floppy,unit=1,drive=... instead.
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -736,7 +721,6 @@ Use -device floppy,unit=0,drive=... instead.
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -808,7 +792,6 @@ Testing: -fda TEST_DIR/t.qcow2 -drive if=none,file=TEST_DIR/t.qcow2.2 -device fl
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -864,7 +847,6 @@ Testing: -fda TEST_DIR/t.qcow2 -drive if=none,file=TEST_DIR/t.qcow2.2 -device fl
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -920,7 +902,6 @@ Testing: -fdb TEST_DIR/t.qcow2 -drive if=none,file=TEST_DIR/t.qcow2.2 -device fl
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -976,7 +957,6 @@ Testing: -fdb TEST_DIR/t.qcow2 -drive if=none,file=TEST_DIR/t.qcow2.2 -device fl
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -1041,7 +1021,6 @@ Testing: -drive if=floppy,file=TEST_DIR/t.qcow2 -drive if=none,file=TEST_DIR/t.q
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -1097,7 +1076,6 @@ Testing: -drive if=floppy,file=TEST_DIR/t.qcow2 -drive if=none,file=TEST_DIR/t.q
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -1161,7 +1139,6 @@ Use -device floppy,unit=0,drive=... instead.
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -1219,7 +1196,6 @@ Use -device floppy,unit=0,drive=... instead.
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -1277,7 +1253,6 @@ Use -device floppy,unit=1,drive=... instead.
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -1335,7 +1310,6 @@ Use -device floppy,unit=1,drive=... instead.
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -1391,7 +1365,6 @@ Testing: -drive if=none,file=TEST_DIR/t.qcow2 -global floppy.drive=none0 -device
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -1473,7 +1446,6 @@ Testing: -device floppy
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -1500,7 +1472,6 @@ Testing: -device floppy,drive-type=120
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -1527,7 +1498,6 @@ Testing: -device floppy,drive-type=144
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -1554,7 +1524,6 @@ Testing: -device floppy,drive-type=288
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -1584,7 +1553,6 @@ Testing: -drive if=none,file=TEST_DIR/t.qcow2 -device floppy,drive=none0,drive-t
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -1624,7 +1592,6 @@ Testing: -drive if=none,file=TEST_DIR/t.qcow2 -device floppy,drive=none0,drive-t
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -1667,7 +1634,6 @@ Testing: -drive if=none,file=TEST_DIR/t.qcow2 -device floppy,drive=none0,logical
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"
@ -1707,7 +1673,6 @@ Testing: -drive if=none,file=TEST_DIR/t.qcow2 -device floppy,drive=none0,physica
dma = 2 (0x2) dma = 2 (0x2)
driveA = "" driveA = ""
driveB = "" driveB = ""
check_media_rate = true
fdtypeA = "auto" fdtypeA = "auto"
fdtypeB = "auto" fdtypeB = "auto"
fallback = "288" fallback = "288"