Lines Matching full:drive
146 static void fd_recalibrate(FDrive *drive) in fd_recalibrate() argument
152 FDrive *drive = opaque; in swim_change_cb() local
155 blk_set_perm(drive->blk, 0, BLK_PERM_ALL, &error_abort); in swim_change_cb()
157 if (!blkconf_apply_backend_options(drive->conf, in swim_change_cb()
158 !blk_supports_write_perm(drive->blk), in swim_change_cb()
178 FDrive *drive; in swim_drive_realize() local
183 drive = &bus->ctrl->drives[dev->unit]; in swim_drive_realize()
184 if (!drive->blk) { in swim_drive_realize()
196 drive = &bus->ctrl->drives[dev->unit]; in swim_drive_realize()
197 if (drive->blk) { in swim_drive_realize()
203 /* Anonymous BlockBackend for an empty drive */ in swim_drive_realize()
236 * 'enospc' is the default for -drive, 'report' is what blk_new() gives us in swim_drive_realize()
241 error_setg(errp, "fdc doesn't support drive option werror"); in swim_drive_realize()
245 error_setg(errp, "fdc doesn't support drive option rerror"); in swim_drive_realize()
249 drive->conf = &dev->conf; in swim_drive_realize()
250 drive->blk = dev->conf.blk; in swim_drive_realize()
251 drive->swimctrl = bus->ctrl; in swim_drive_realize()
253 blk_set_dev_ops(drive->blk, &swim_block_ops, drive); in swim_drive_realize()
263 k->desc = "virtual SWIM drive"; in swim_drive_class_init()
439 /* always answer "no drive present" */ in ismctrl_read()