tag | line | file | source code |
drive | 76 | drivers/block/blk.h | extern void resetup_one_dev(struct gendisk *dev, int drive); |
drive | 682 | drivers/block/floppy.c | int drive = MINOR(CURRENT->dev); |
drive | 684 | drivers/block/floppy.c | if (ftd_msg[drive]) |
drive | 686 | drivers/block/floppy.c | floppy->name,drive); |
drive | 687 | drivers/block/floppy.c | current_type[drive] = floppy; |
drive | 688 | drivers/block/floppy.c | floppy_sizes[drive] = floppy->size >> 1; |
drive | 1111 | drivers/block/floppy.c | int i,drive,cnt,okay; |
drive | 1117 | drivers/block/floppy.c | drive = MINOR(inode->i_rdev); |
drive | 1127 | drivers/block/floppy.c | fake_change |= 1 << (drive & 3); |
drive | 1129 | drivers/block/floppy.c | drive &= 3; |
drive | 1133 | drivers/block/floppy.c | if (drive > 3) this_floppy = &floppy_type[drive >> 2]; |
drive | 1134 | drivers/block/floppy.c | else if ((this_floppy = current_type[drive & 3]) == NULL) |
drive | 1146 | drivers/block/floppy.c | if (fd_ref[drive & 3] != 1) |
drive | 1154 | drivers/block/floppy.c | format_req.device = drive; |
drive | 1171 | drivers/block/floppy.c | floppy_off(drive & 3); |
drive | 1178 | drivers/block/floppy.c | fake_change |= 1 << (drive & 3); |
drive | 1185 | drivers/block/floppy.c | if (drive < 0 || drive > 3) |
drive | 1189 | drivers/block/floppy.c | current_type[drive] = NULL; |
drive | 1190 | drivers/block/floppy.c | floppy_sizes[drive] = MAX_DISK_SIZE; |
drive | 1191 | drivers/block/floppy.c | keep_data[drive] = 0; |
drive | 1195 | drivers/block/floppy.c | memcpy_fromfs(user_params+drive, |
drive | 1198 | drivers/block/floppy.c | current_type[drive] = &user_params[drive]; |
drive | 1199 | drivers/block/floppy.c | floppy_sizes[drive] = user_params[drive].size >> 1; |
drive | 1201 | drivers/block/floppy.c | keep_data[drive] = -1; |
drive | 1207 | drivers/block/floppy.c | outb_p((current_DOR & 0xfc) | drive | |
drive | 1208 | drivers/block/floppy.c | (0x10 << drive),FD_DOR); |
drive | 1211 | drivers/block/floppy.c | keep_data[drive] = 1; |
drive | 1213 | drivers/block/floppy.c | keep_data[drive] = 0; |
drive | 1220 | drivers/block/floppy.c | ftd_msg[drive] = 1; |
drive | 1223 | drivers/block/floppy.c | ftd_msg[drive] = 0; |
drive | 1226 | drivers/block/floppy.c | min_report_error_cnt[drive] = (unsigned short) (param & 0x0f); |
drive | 1239 | drivers/block/floppy.c | static struct floppy_struct *find_base(int drive,int code) |
drive | 1245 | drivers/block/floppy.c | printk("fd%d is %s",drive,base->name); |
drive | 1248 | drivers/block/floppy.c | printk("fd%d is unknown type %d",drive,code); |
drive | 1273 | drivers/block/floppy.c | int drive; |
drive | 1276 | drivers/block/floppy.c | drive = inode->i_rdev & 3; |
drive | 1277 | drivers/block/floppy.c | old_dev = fd_device[drive]; |
drive | 1278 | drivers/block/floppy.c | if (fd_ref[drive]) |
drive | 1281 | drivers/block/floppy.c | fd_ref[drive]++; |
drive | 1282 | drivers/block/floppy.c | fd_device[drive] = inode->i_rdev; |
drive | 160 | drivers/block/genhd.c | void resetup_one_dev(struct gendisk *dev, int drive) |
drive | 163 | drivers/block/genhd.c | int start = drive<<dev->minor_shift; |
drive | 167 | drivers/block/genhd.c | current_minor = 1+(drive<<dev->minor_shift); |
drive | 168 | drivers/block/genhd.c | check_partition(dev, major+(drive<<dev->minor_shift)); |
drive | 179 | drivers/block/genhd.c | int drive; |
drive | 187 | drivers/block/genhd.c | for (drive=0 ; drive<dev->nr_real ; drive++) { |
drive | 188 | drivers/block/genhd.c | current_minor = 1+(drive<<dev->minor_shift); |
drive | 189 | drivers/block/genhd.c | check_partition(dev, major+(drive<<dev->minor_shift)); |
drive | 147 | drivers/block/hd.c | static int controller_ready(unsigned int drive, unsigned int head) |
drive | 154 | drivers/block/hd.c | outb_p(0xA0 | (drive<<4) | head, HD_CURRENT); |
drive | 187 | drivers/block/hd.c | static void hd_out(unsigned int drive,unsigned int nsect,unsigned int sect, |
drive | 193 | drivers/block/hd.c | if (drive>1 || head>15) |
drive | 201 | drivers/block/hd.c | if (!controller_ready(drive, head)) { |
drive | 206 | drivers/block/hd.c | outb_p(hd_info[drive].ctl,HD_CMD); |
drive | 208 | drivers/block/hd.c | outb_p(hd_info[drive].wpcom>>2,++port); |
drive | 213 | drivers/block/hd.c | outb_p(0xA0|(drive<<4)|head,++port); |
drive | 645 | drivers/block/hd.c | int drive, i; |
drive | 651 | drivers/block/hd.c | for (drive=0 ; drive<2 ; drive++) { |
drive | 652 | drivers/block/hd.c | hd_info[drive].cyl = *(unsigned short *) BIOS; |
drive | 653 | drivers/block/hd.c | hd_info[drive].head = *(2+BIOS); |
drive | 654 | drivers/block/hd.c | hd_info[drive].wpcom = *(unsigned short *) (5+BIOS); |
drive | 655 | drivers/block/hd.c | hd_info[drive].ctl = *(8+BIOS); |
drive | 656 | drivers/block/hd.c | hd_info[drive].lzone = *(unsigned short *) (12+BIOS); |
drive | 657 | drivers/block/hd.c | hd_info[drive].sect = *(14+BIOS); |
drive | 278 | drivers/block/xd.c | static int xd_readwrite (u_char operation,u_char drive,char *buffer,u_int block,u_int count) |
drive | 285 | 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 | 288 | drivers/block/xd.c | control = xd_info[drive].control; |
drive | 292 | drivers/block/xd.c | track = block / xd_info[drive].sectors; |
drive | 293 | drivers/block/xd.c | head = track % xd_info[drive].heads; |
drive | 294 | drivers/block/xd.c | cylinder = track / xd_info[drive].heads; |
drive | 295 | drivers/block/xd.c | sector = block % xd_info[drive].sectors; |
drive | 298 | drivers/block/xd.c | printk("xd_readwrite: drive = %d, head = %d, cylinder = %d, sector = %d, count = %d\n",drive,head,cylinder,sector,temp); |
drive | 302 | drivers/block/xd.c | xd_build(cmdblk,operation == READ ? CMD_READ : CMD_WRITE,drive,head,cylinder,sector,temp & 0xFF,control); |
drive | 305 | drivers/block/xd.c | case 1: printk("xd_readwrite: timeout, recalibrating drive\n"); xd_recalibrate(drive); return (0); |
drive | 324 | drivers/block/xd.c | static void xd_recalibrate (u_char drive) |
drive | 328 | drivers/block/xd.c | xd_build(cmdblk,CMD_RECALIBRATE,drive,0,0,0,0,0); |
drive | 372 | 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 | 375 | drivers/block/xd.c | cmdblk[1] = ((drive & 0x07) << 5) | (head & 0x1F); |
drive | 456 | drivers/block/xd.c | static u_char xd_initdrives (void (*init_drive)(u_char drive)) |
drive | 485 | drivers/block/xd.c | static void xd_dtc_init_drive (u_char drive) |
drive | 489 | drivers/block/xd.c | xd_build(cmdblk,CMD_DTCGETGEOM,drive,0,0,0,0,0); |
drive | 491 | drivers/block/xd.c | xd_info[drive].heads = buf[0x0A]; /* heads */ |
drive | 492 | drivers/block/xd.c | xd_info[drive].cylinders = ((u_short *) (buf))[0x04]; /* cylinders */ |
drive | 493 | drivers/block/xd.c | xd_info[drive].sectors = 17; /* sectors */ |
drive | 495 | drivers/block/xd.c | xd_info[drive].rwrite = ((u_short *) (buf + 1))[0x05]; /* reduced write */ |
drive | 496 | drivers/block/xd.c | xd_info[drive].precomp = ((u_short *) (buf + 1))[0x06]; /* write precomp */ |
drive | 497 | drivers/block/xd.c | xd_info[drive].ecc = buf[0x0F]; /* ecc length */ |
drive | 499 | drivers/block/xd.c | xd_info[drive].control = 0; /* control byte */ |
drive | 501 | 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 | 502 | drivers/block/xd.c | xd_build(cmdblk,CMD_DTCSETSTEP,drive,0,0,0,0,7); |
drive | 504 | drivers/block/xd.c | printk("xd_dtc_init_drive: error setting step rate for drive %d\n",drive); |
drive | 507 | drivers/block/xd.c | printk("xd_dtc_init_drive: error reading geometry for drive %d\n",drive); |
drive | 529 | drivers/block/xd.c | static void xd_wd_init_drive (u_char drive) |
drive | 533 | drivers/block/xd.c | xd_build(cmdblk,CMD_READ,drive,0,0,0,1,0); |
drive | 535 | drivers/block/xd.c | xd_info[drive].heads = buf[0x1AF]; /* heads */ |
drive | 536 | drivers/block/xd.c | xd_info[drive].cylinders = ((u_short *) (buf + 1))[0xD6]; /* cylinders */ |
drive | 537 | drivers/block/xd.c | xd_info[drive].sectors = 17; /* sectors */ |
drive | 539 | drivers/block/xd.c | xd_info[drive].rwrite = ((u_short *) (buf))[0xD8]; /* reduced write */ |
drive | 540 | drivers/block/xd.c | xd_info[drive].wprecomp = ((u_short *) (buf))[0xDA]; /* write precomp */ |
drive | 541 | drivers/block/xd.c | xd_info[drive].ecc = buf[0x1B4]; /* ecc length */ |
drive | 543 | drivers/block/xd.c | xd_info[drive].control = buf[0x1B5]; /* control byte */ |
drive | 545 | 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 | 548 | drivers/block/xd.c | printk("xd_wd_init_drive: error reading geometry for drive %d\n",drive); |
drive | 568 | drivers/block/xd.c | static void xd_seagate_init_drive (u_char drive) |
drive | 572 | drivers/block/xd.c | xd_build(cmdblk,CMD_ST11GETGEOM,drive,0,0,0,1,0); |
drive | 574 | drivers/block/xd.c | xd_info[drive].heads = buf[0x04]; /* heads */ |
drive | 575 | drivers/block/xd.c | xd_info[drive].cylinders = (buf[0x02] << 8) | buf[0x03]; /* cylinders */ |
drive | 576 | drivers/block/xd.c | xd_info[drive].sectors = buf[0x05]; /* sectors */ |
drive | 577 | drivers/block/xd.c | xd_info[drive].control = 0; /* control byte */ |
drive | 580 | drivers/block/xd.c | printk("xd_seagate_init_drive: error reading geometry from drive %d\n",drive); |
drive | 585 | drivers/block/xd.c | static void xd_override_init_drive (u_char drive) |
drive | 593 | 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 | 601 | drivers/block/xd.c | xd_info[drive].heads = (u_char) min[0] + 1; |
drive | 602 | drivers/block/xd.c | xd_info[drive].cylinders = (u_short) min[1] + 1; |
drive | 603 | drivers/block/xd.c | xd_info[drive].sectors = (u_char) min[2] + 1; |
drive | 604 | drivers/block/xd.c | xd_info[drive].control = 0; |
drive | 621 | 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 | 625 | drivers/block/xd.c | xd_build(cmdblk,command,drive,0,0,0,0,0); |
drive | 636 | drivers/block/xd.c | printk("xd_setparam: error setting characteristics for drive %d\n",drive); |
drive | 1431 | drivers/scsi/fdomain.c | int drive; |
drive | 1470 | drivers/scsi/fdomain.c | drive = MINOR(dev) / 16; |
drive | 1473 | drivers/scsi/fdomain.c | i = (struct drive_info *)( (char *)bios_base + 0x1f31 + drive * 25 ); |
drive | 1478 | drivers/scsi/fdomain.c | i = (struct drive_info *)( (char *)bios_base + 0x1f71 + drive * 10 ); |
drive | 1486 | drivers/scsi/fdomain.c | i = (struct drive_info *)( (char *)bios_base + 0x1f71 + drive * 10 ); |
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 | 134 | 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 | 135 | include/linux/xd.h | static void xd_override_init_drive (u_char drive); |