Lines Matching refs:drive
309 #define UD unit[drive]
310 #define UDT unit[drive].disktype
367 #define IS_BUFFERED(drive,side,track) \ argument
368 (BufferDrive == (drive) && BufferSide == (side) && BufferTrack == (track))
423 static void fd_select_drive( int drive );
429 static int do_format(int drive, int type, struct atari_format_descr *desc);
430 static void do_fd_action( int drive );
444 static void setup_req_params( int drive );
447 static void fd_probe( int drive );
448 static int fd_test_drive_present( int drive );
521 static void fd_select_drive( int drive ) in fd_select_drive() argument
526 if (drive == SelectedDrive) in fd_select_drive()
533 sound_ym.wd_data = (tmp | DSKDRVNONE) & ~(drive == 0 ? DSKDRV0 : DSKDRV1); in fd_select_drive()
546 SelectedDrive = drive; in fd_select_drive()
612 static int drive = 0; in check_change() local
618 if (++drive > 1 || !UD.connected) in check_change()
619 drive = 0; in check_change()
628 ~(drive == 0 ? DSKDRV0 : DSKDRV1); in check_change()
633 DPRINT(( "wpstat[%d] = %d\n", drive, stat )); in check_change()
635 set_bit (drive, &changed_floppies); in check_change()
743 static int do_format(int drive, int type, struct atari_format_descr *desc) in do_format() argument
761 q = unit[drive].disk[type]->queue; in do_format()
813 do_fd_action( drive ); in do_format()
835 static void do_fd_action( int drive ) in do_fd_action() argument
841 if (IS_BUFFERED( drive, ReqSide, ReqTrack )) { in do_fd_action()
846 setup_req_params( drive ); in do_fd_action()
864 if (SelectedDrive != drive) in do_fd_action()
865 fd_select_drive( drive ); in do_fd_action()
1440 unsigned int drive = p - unit; in floppy_check_events() local
1441 if (test_bit (drive, &fake_change)) { in floppy_check_events()
1445 if (test_bit (drive, &changed_floppies)) { in floppy_check_events()
1462 unsigned int drive = p - unit; in floppy_revalidate() local
1464 if (test_bit(drive, &changed_floppies) || in floppy_revalidate()
1465 test_bit(drive, &fake_change) || !p->disktype) { in floppy_revalidate()
1469 clear_bit(drive, &fake_change); in floppy_revalidate()
1470 clear_bit(drive, &changed_floppies); in floppy_revalidate()
1474 if (default_params[drive].blocks == 0) in floppy_revalidate()
1477 UDT = &default_params[drive]; in floppy_revalidate()
1485 static void setup_req_params( int drive ) in setup_req_params() argument
1496 read_track = (ReqCmd == READ && unit[drive].error_count == 0); in setup_req_params()
1508 int drive = floppy - unit; in ataflop_queue_rq() local
1512 drive, type, blk_rq_cur_sectors(bd->rq), in ataflop_queue_rq()
1525 unit[drive].error_count = 0; in ataflop_queue_rq()
1534 printk(KERN_ERR "Unknown Device: fd%d\n", drive ); in ataflop_queue_rq()
1551 printk(KERN_WARNING "fd%d: invalid disk format", drive ); in ataflop_queue_rq()
1557 printk(KERN_WARNING "fd%d: unsupported disk format", drive ); in ataflop_queue_rq()
1575 setup_req_params( drive ); in ataflop_queue_rq()
1576 do_fd_action( drive ); in ataflop_queue_rq()
1590 int drive = floppy - unit; in fd_locked_ioctl() local
1610 drive, dtp, dtp->name); in fd_locked_ioctl()
1655 drive, setprm.size, setprm.sect, setprm.stretch); in fd_locked_ioctl()
1686 drive, dtp->name, dtp); in fd_locked_ioctl()
1692 default_params[drive].name = dtp->name; in fd_locked_ioctl()
1693 default_params[drive].spt = dtp->spt; in fd_locked_ioctl()
1694 default_params[drive].blocks = dtp->blocks; in fd_locked_ioctl()
1695 default_params[drive].fdc_speed = dtp->fdc_speed; in fd_locked_ioctl()
1696 default_params[drive].stretch = dtp->stretch; in fd_locked_ioctl()
1708 dtp = &default_params[drive]; in fd_locked_ioctl()
1711 dtp = &user_params[drive]; in fd_locked_ioctl()
1724 drive, dtp->blocks, dtp->spt, dtp->stretch); in fd_locked_ioctl()
1752 return do_format(drive, type, &fmt_desc); in fd_locked_ioctl()
1756 default_params[drive].blocks = 0; in fd_locked_ioctl()
1763 set_bit(drive, &fake_change); in fd_locked_ioctl()
1788 static void __init fd_probe( int drive ) in fd_probe() argument
1793 if (!fd_test_drive_present( drive )) in fd_probe()
1798 switch( UserSteprate[drive] ) { in fd_probe()
1831 static int __init fd_test_drive_present( int drive ) in fd_test_drive_present() argument
1837 if (drive >= (MACH_IS_FALCON ? 1 : 2)) return( 0 ); in fd_test_drive_present()
1838 fd_select_drive( drive ); in fd_test_drive_present()
1880 int drive, cnt = 0; in config_types() local
1887 for( drive = 0; drive < FD_MAX_UNITS; drive++ ) { in config_types()
1888 fd_probe( drive ); in config_types()
1890 printk(KERN_INFO "fd%d\n", drive); in config_types()
1994 static int ataflop_alloc_disk(unsigned int drive, unsigned int type) in ataflop_alloc_disk() argument
2001 disk = blk_mq_alloc_disk(&unit[drive].tag_set, &lim, NULL); in ataflop_alloc_disk()
2006 disk->first_minor = drive + (type << 2); in ataflop_alloc_disk()
2008 sprintf(disk->disk_name, "fd%d", drive); in ataflop_alloc_disk()
2012 disk->private_data = &unit[drive]; in ataflop_alloc_disk()
2015 unit[drive].disk[type] = disk; in ataflop_alloc_disk()
2021 int drive = MINOR(dev) & 3; in ataflop_probe() local
2027 if (drive >= FD_MAX_UNITS || type >= NUM_DISK_MINORS) in ataflop_probe()
2029 if (unit[drive].disk[type]) in ataflop_probe()
2031 if (ataflop_alloc_disk(drive, type)) in ataflop_probe()
2033 if (add_disk(unit[drive].disk[type])) in ataflop_probe()
2035 unit[drive].registered[type] = true; in ataflop_probe()
2039 put_disk(unit[drive].disk[type]); in ataflop_probe()
2040 unit[drive].disk[type] = NULL; in ataflop_probe()