tag | line | file | source code |
drive | 143 | drivers/block/floppy.c | #define UDP (&drive_params[drive]) |
drive | 144 | drivers/block/floppy.c | #define UDRS (&drive_state[drive]) |
drive | 145 | drivers/block/floppy.c | #define UFDCS (&fdc_state[FDC(drive)]) |
drive | 442 | drivers/block/floppy.c | register unsigned char drive, unit, newdor,olddor; |
drive | 449 | drivers/block/floppy.c | drive = REVDRIVE(fdc,unit); |
drive | 475 | drivers/block/floppy.c | int drive; |
drive | 481 | drivers/block/floppy.c | for ( drive = 0; drive < N_DRIVE; drive++) |
drive | 482 | drivers/block/floppy.c | if (FDC(drive) == fdc && |
drive | 488 | drivers/block/floppy.c | static void set_fdc(int drive) |
drive | 490 | drivers/block/floppy.c | if ( drive >= 0 ){ |
drive | 491 | drivers/block/floppy.c | fdc = FDC(drive); |
drive | 492 | drivers/block/floppy.c | current_drive = drive; |
drive | 505 | drivers/block/floppy.c | static void lock_fdc(int drive) |
drive | 512 | drivers/block/floppy.c | set_fdc(drive); |
drive | 513 | drivers/block/floppy.c | if ( drive >= 0 ){ |
drive | 587 | drivers/block/floppy.c | int i, drive, saved_drive; |
drive | 591 | drivers/block/floppy.c | drive = (saved_drive + i + 1 ) % N_DRIVE; |
drive | 594 | drivers/block/floppy.c | set_fdc(drive); |
drive | 596 | drivers/block/floppy.c | if(! (set_dor( fdc, ~3, UNIT(drive) | ( 0x10 << UNIT(drive))) & |
drive | 597 | drivers/block/floppy.c | (0x10 << UNIT(drive)))) |
drive | 600 | drivers/block/floppy.c | set_dor( fdc, ~( 0x10 << UNIT(drive) ), 0 ); |
drive | 1375 | drivers/block/floppy.c | static void floppy_on(unsigned int drive) |
drive | 2249 | drivers/block/floppy.c | static int user_reset_fdc(int drive, int arg) |
drive | 2254 | drivers/block/floppy.c | lock_fdc(drive); |
drive | 2292 | drivers/block/floppy.c | static void poll_drive(int drive) |
drive | 2294 | drivers/block/floppy.c | lock_fdc(drive); |
drive | 2299 | drivers/block/floppy.c | static char *drive_name(int type, int drive ) |
drive | 2324 | drivers/block/floppy.c | static int raw_cmd_ioctl(int drive, void *param) |
drive | 2333 | drivers/block/floppy.c | if ( i == drive ){ |
drive | 2404 | drivers/block/floppy.c | int i,device,drive,type,cnt; |
drive | 2413 | drivers/block/floppy.c | drive = DRIVE(MINOR(device)); |
drive | 2419 | drivers/block/floppy.c | name = drive_name(type,drive); |
drive | 2432 | drivers/block/floppy.c | else if ((this_floppy = current_type[drive]) == |
drive | 2437 | drivers/block/floppy.c | poll_drive(drive); |
drive | 2452 | drivers/block/floppy.c | lock_fdc(drive); |
drive | 2454 | drivers/block/floppy.c | i = raw_cmd_ioctl(drive, (void *) param); |
drive | 2469 | drivers/block/floppy.c | lock_fdc(drive); |
drive | 2470 | drivers/block/floppy.c | current_type[drive] = NULL; |
drive | 2471 | drivers/block/floppy.c | floppy_sizes[drive] = 2; |
drive | 2476 | drivers/block/floppy.c | lock_fdc(drive); |
drive | 2518 | drivers/block/floppy.c | lock_fdc(drive); |
drive | 2523 | drivers/block/floppy.c | user_params[drive] = newparams; |
drive | 2524 | drivers/block/floppy.c | if (buffer_drive == drive && |
drive | 2525 | drivers/block/floppy.c | buffer_max > user_params[drive].sect) |
drive | 2526 | drivers/block/floppy.c | buffer_max=user_params[drive].sect; |
drive | 2527 | drivers/block/floppy.c | current_type[drive] = &user_params[drive]; |
drive | 2528 | drivers/block/floppy.c | floppy_sizes[drive] = user_params[drive].size >> 1; |
drive | 2539 | drivers/block/floppy.c | user_params[drive].sect || |
drive | 2545 | drivers/block/floppy.c | return user_reset_fdc( drive, (int)param); |
drive | 2557 | drivers/block/floppy.c | lock_fdc(drive); |
drive | 2578 | drivers/block/floppy.c | static void set_base_type(int drive,int code) |
drive | 2584 | drivers/block/floppy.c | printk("fd%d is %s", drive, default_drive_params[code].name); |
drive | 2587 | drivers/block/floppy.c | printk("fd%d is not installed", drive); |
drive | 2589 | drivers/block/floppy.c | printk("fd%d is unknown type %d",drive,code); |
drive | 2594 | drivers/block/floppy.c | int drive; |
drive | 2596 | drivers/block/floppy.c | for (drive=0; drive<N_DRIVE ; drive++){ |
drive | 2613 | drivers/block/floppy.c | register int drive; |
drive | 2615 | drivers/block/floppy.c | drive = DRIVE(device); |
drive | 2618 | drivers/block/floppy.c | (( changed_floppies | fake_change ) & ( 1 << drive))) |
drive | 2645 | drivers/block/floppy.c | int drive= DRIVE(inode->i_rdev); |
drive | 2669 | drivers/block/floppy.c | int drive; |
drive | 2680 | drivers/block/floppy.c | drive = DRIVE(inode->i_rdev); |
drive | 2681 | drivers/block/floppy.c | if ( drive >= N_DRIVE ) |
drive | 2684 | drivers/block/floppy.c | if (command_status == FD_COMMAND_DETECT && drive >= current_drive) { |
drive | 2715 | drivers/block/floppy.c | if (buffer_drive == drive) |
drive | 2733 | drivers/block/floppy.c | if (user_reset_fdc(drive, FD_RESET_IF_NEEDED)) |
drive | 2738 | drivers/block/floppy.c | if (changed_floppies & ( 1 << drive )) |
drive | 2750 | drivers/block/floppy.c | static int ack_change(int drive) |
drive | 2752 | drivers/block/floppy.c | unsigned int mask = 1 << drive; |
drive | 2755 | drivers/block/floppy.c | if ( buffer_drive == drive ) |
drive | 2767 | drivers/block/floppy.c | int drive = DRIVE( dev ); |
drive | 2768 | drivers/block/floppy.c | unsigned int mask = 1 << drive; |
drive | 2776 | drivers/block/floppy.c | return ack_change(drive); |
drive | 2781 | drivers/block/floppy.c | user_reset_fdc(drive, FD_RESET_IF_NEEDED); |
drive | 2782 | drivers/block/floppy.c | poll_drive(drive); |
drive | 2785 | drivers/block/floppy.c | return ack_change(drive); |
drive | 161 | drivers/block/genhd.c | void resetup_one_dev(struct gendisk *dev, int drive) |
drive | 164 | drivers/block/genhd.c | int start = drive<<dev->minor_shift; |
drive | 168 | drivers/block/genhd.c | current_minor = 1+(drive<<dev->minor_shift); |
drive | 169 | drivers/block/genhd.c | check_partition(dev, major+(drive<<dev->minor_shift)); |
drive | 180 | drivers/block/genhd.c | int drive; |
drive | 188 | drivers/block/genhd.c | for (drive=0 ; drive<dev->nr_real ; drive++) { |
drive | 189 | drivers/block/genhd.c | current_minor = 1+(drive<<dev->minor_shift); |
drive | 190 | drivers/block/genhd.c | check_partition(dev, major+(drive<<dev->minor_shift)); |
drive | 155 | drivers/block/hd.c | static int controller_ready(unsigned int drive, unsigned int head) |
drive | 162 | drivers/block/hd.c | outb_p(0xA0 | (drive<<4) | head, HD_CURRENT); |
drive | 195 | drivers/block/hd.c | static void hd_out(unsigned int drive,unsigned int nsect,unsigned int sect, |
drive | 202 | drivers/block/hd.c | if (drive>1 || head>15) { |
drive | 204 | drivers/block/hd.c | drive, cyl, head, sect); |
drive | 214 | drivers/block/hd.c | if (!controller_ready(drive, head)) { |
drive | 215 | drivers/block/hd.c | special_op[drive] += reset = 1; |
drive | 219 | drivers/block/hd.c | outb_p(hd_info[drive].ctl,HD_CMD); |
drive | 221 | drivers/block/hd.c | outb_p(hd_info[drive].wpcom>>2,++port); |
drive | 226 | drivers/block/hd.c | outb_p(0xA0|(drive<<4)|head,++port); |
drive | 975 | drivers/block/hd.c | int drive, i; |
drive | 981 | drivers/block/hd.c | for (drive=0 ; drive<2 ; drive++) { |
drive | 982 | drivers/block/hd.c | bios_info[drive].cyl = hd_info[drive].cyl = *(unsigned short *) BIOS; |
drive | 983 | drivers/block/hd.c | bios_info[drive].head = hd_info[drive].head = *(2+BIOS); |
drive | 984 | drivers/block/hd.c | bios_info[drive].wpcom = hd_info[drive].wpcom = *(unsigned short *) (5+BIOS); |
drive | 985 | drivers/block/hd.c | bios_info[drive].ctl = hd_info[drive].ctl = *(8+BIOS); |
drive | 986 | drivers/block/hd.c | bios_info[drive].lzone = hd_info[drive].lzone = *(unsigned short *) (12+BIOS); |
drive | 987 | drivers/block/hd.c | bios_info[drive].sect = hd_info[drive].sect = *(14+BIOS); |
drive | 989 | drivers/block/hd.c | if (hd_info[drive].cyl && NR_HD == drive) |
drive | 322 | drivers/block/xd.c | static int xd_readwrite (u_char operation,u_char drive,char *buffer,u_int block,u_int count) |
drive | 329 | drivers/block/xd.c | printk("xd_readwrite: operation = %s, drive = %d, buffer = 0x%X, block = %d, count = %d\n",operation == READ ? "read" : "write",drive,buffer,block,count); |
drive | 332 | drivers/block/xd.c | control = xd_info[drive].control; |
drive | 336 | drivers/block/xd.c | track = block / xd_info[drive].sectors; |
drive | 337 | drivers/block/xd.c | head = track % xd_info[drive].heads; |
drive | 338 | drivers/block/xd.c | cylinder = track / xd_info[drive].heads; |
drive | 339 | drivers/block/xd.c | sector = block % xd_info[drive].sectors; |
drive | 342 | drivers/block/xd.c | printk("xd_readwrite: drive = %d, head = %d, cylinder = %d, sector = %d, count = %d\n",drive,head,cylinder,sector,temp); |
drive | 346 | drivers/block/xd.c | xd_build(cmdblk,operation == READ ? CMD_READ : CMD_WRITE,drive,head,cylinder,sector,temp & 0xFF,control); |
drive | 351 | drivers/block/xd.c | xd_recalibrate(drive); |
drive | 372 | drivers/block/xd.c | static void xd_recalibrate (u_char drive) |
drive | 376 | drivers/block/xd.c | xd_build(cmdblk,CMD_RECALIBRATE,drive,0,0,0,0,0); |
drive | 420 | drivers/block/xd.c | static u_char *xd_build (u_char *cmdblk,u_char command,u_char drive,u_char head,u_short cylinder,u_char sector,u_char count,u_char control) |
drive | 423 | drivers/block/xd.c | cmdblk[1] = ((drive & 0x07) << 5) | (head & 0x1F); |
drive | 507 | drivers/block/xd.c | static u_char xd_initdrives (void (*init_drive)(u_char drive)) |
drive | 536 | drivers/block/xd.c | static void xd_dtc_init_drive (u_char drive) |
drive | 540 | drivers/block/xd.c | xd_build(cmdblk,CMD_DTCGETGEOM,drive,0,0,0,0,0); |
drive | 542 | drivers/block/xd.c | xd_info[drive].heads = buf[0x0A]; /* heads */ |
drive | 543 | drivers/block/xd.c | xd_info[drive].cylinders = ((u_short *) (buf))[0x04]; /* cylinders */ |
drive | 544 | drivers/block/xd.c | xd_info[drive].sectors = 17; /* sectors */ |
drive | 546 | drivers/block/xd.c | xd_info[drive].rwrite = ((u_short *) (buf + 1))[0x05]; /* reduced write */ |
drive | 547 | drivers/block/xd.c | xd_info[drive].precomp = ((u_short *) (buf + 1))[0x06]; /* write precomp */ |
drive | 548 | drivers/block/xd.c | xd_info[drive].ecc = buf[0x0F]; /* ecc length */ |
drive | 550 | drivers/block/xd.c | xd_info[drive].control = 0; /* control byte */ |
drive | 552 | drivers/block/xd.c | xd_setparam(CMD_DTCSETPARAM,drive,xd_info[drive].heads,xd_info[drive].cylinders,((u_short *) (buf + 1))[0x05],((u_short *) (buf + 1))[0x06],buf[0x0F]); |
drive | 553 | drivers/block/xd.c | xd_build(cmdblk,CMD_DTCSETSTEP,drive,0,0,0,0,7); |
drive | 555 | drivers/block/xd.c | printk("xd_dtc_init_drive: error setting step rate for drive %d\n",drive); |
drive | 558 | drivers/block/xd.c | printk("xd_dtc_init_drive: error reading geometry for drive %d\n",drive); |
drive | 580 | drivers/block/xd.c | static void xd_wd_init_drive (u_char drive) |
drive | 584 | drivers/block/xd.c | xd_build(cmdblk,CMD_READ,drive,0,0,0,1,0); |
drive | 586 | drivers/block/xd.c | xd_info[drive].heads = buf[0x1AF]; /* heads */ |
drive | 587 | drivers/block/xd.c | xd_info[drive].cylinders = ((u_short *) (buf + 1))[0xD6]; /* cylinders */ |
drive | 588 | drivers/block/xd.c | xd_info[drive].sectors = 17; /* sectors */ |
drive | 590 | drivers/block/xd.c | xd_info[drive].rwrite = ((u_short *) (buf))[0xD8]; /* reduced write */ |
drive | 591 | drivers/block/xd.c | xd_info[drive].wprecomp = ((u_short *) (buf))[0xDA]; /* write precomp */ |
drive | 592 | drivers/block/xd.c | xd_info[drive].ecc = buf[0x1B4]; /* ecc length */ |
drive | 594 | drivers/block/xd.c | xd_info[drive].control = buf[0x1B5]; /* control byte */ |
drive | 596 | drivers/block/xd.c | xd_setparam(CMD_WDSETPARAM,drive,xd_info[drive].heads,xd_info[drive].cylinders,((u_short *) (buf))[0xD8],((u_short *) (buf))[0xDA],buf[0x1B4]); |
drive | 599 | drivers/block/xd.c | printk("xd_wd_init_drive: error reading geometry for drive %d\n",drive); |
drive | 619 | drivers/block/xd.c | static void xd_seagate_init_drive (u_char drive) |
drive | 623 | drivers/block/xd.c | xd_build(cmdblk,CMD_ST11GETGEOM,drive,0,0,0,1,0); |
drive | 625 | drivers/block/xd.c | xd_info[drive].heads = buf[0x04]; /* heads */ |
drive | 626 | drivers/block/xd.c | xd_info[drive].cylinders = (buf[0x02] << 8) | buf[0x03]; /* cylinders */ |
drive | 627 | drivers/block/xd.c | xd_info[drive].sectors = buf[0x05]; /* sectors */ |
drive | 628 | drivers/block/xd.c | xd_info[drive].control = 0; /* control byte */ |
drive | 631 | drivers/block/xd.c | printk("xd_seagate_init_drive: error reading geometry from drive %d\n",drive); |
drive | 653 | drivers/block/xd.c | static void xd_omti_init_drive (u_char drive) |
drive | 656 | drivers/block/xd.c | xd_override_init_drive(drive); |
drive | 659 | drivers/block/xd.c | xd_info[drive].control = 2; |
drive | 664 | drivers/block/xd.c | static void xd_override_init_drive (u_char drive) |
drive | 672 | drivers/block/xd.c | xd_build(cmdblk,CMD_SEEK,drive,(u_char) test[0],(u_short) test[1],(u_char) test[2],0,0); |
drive | 680 | drivers/block/xd.c | xd_info[drive].heads = (u_char) min[0] + 1; |
drive | 681 | drivers/block/xd.c | xd_info[drive].cylinders = (u_short) min[1] + 1; |
drive | 682 | drivers/block/xd.c | xd_info[drive].sectors = (u_char) min[2] + 1; |
drive | 683 | drivers/block/xd.c | xd_info[drive].control = 0; |
drive | 700 | drivers/block/xd.c | static void xd_setparam (u_char command,u_char drive,u_char heads,u_short cylinders,u_short rwrite,u_short wprecomp,u_char ecc) |
drive | 704 | drivers/block/xd.c | xd_build(cmdblk,command,drive,0,0,0,0,0); |
drive | 715 | drivers/block/xd.c | printk("xd_setparam: error setting characteristics for drive %d\n",drive); |
drive | 1483 | drivers/scsi/fdomain.c | int drive; |
drive | 1528 | drivers/scsi/fdomain.c | drive = MINOR(dev) / 16; |
drive | 1531 | drivers/scsi/fdomain.c | i = (struct drive_info *)( (char *)bios_base + 0x1f31 + drive * 25 ); |
drive | 1536 | drivers/scsi/fdomain.c | i = (struct drive_info *)( (char *)bios_base + 0x1f71 + drive * 10 ); |
drive | 41 | include/linux/blkdev.h | extern void resetup_one_dev(struct gendisk *dev, int drive); |
drive | 103 | include/linux/xd.h | void (*init_drive)(u_char drive); |
drive | 110 | include/linux/xd.h | static u_char xd_initdrives (void (*init_drive)(u_char drive)); |
drive | 118 | include/linux/xd.h | static int xd_readwrite (u_char operation,u_char drive,char *buffer,u_int block,u_int count); |
drive | 119 | include/linux/xd.h | static void xd_recalibrate (u_char drive); |
drive | 123 | include/linux/xd.h | static u_char *xd_build (u_char *cmdblk,u_char command,u_char drive,u_char head,u_short cylinder,u_char sector,u_char count,u_char control); |
drive | 129 | include/linux/xd.h | static void xd_dtc_init_drive (u_char drive); |
drive | 131 | include/linux/xd.h | static void xd_wd_init_drive (u_char drive); |
drive | 133 | include/linux/xd.h | static void xd_seagate_init_drive (u_char drive); |
drive | 135 | include/linux/xd.h | static void xd_omti_init_drive (u_char drive); |
drive | 136 | include/linux/xd.h | static void xd_setparam (u_char command,u_char drive,u_char heads,u_short cylinders,u_short rwrite,u_short wprecomp,u_char ecc); |
drive | 137 | include/linux/xd.h | static void xd_override_init_drive (u_char drive); |