Lines Matching refs:drive

12  * Drive/Driver settings can be retrieved by reading the drive's
81 ide_drive_t *drive = (ide_drive_t *)m->private;
84 if (!drive) {
92 if (taskfile_lib_get_identify(drive, buf) == 0) {
130 * @drive: drive to read from
131 * @setting: drive setting
133 * Read a drive setting and return the value. The caller
141 static int ide_read_setting(ide_drive_t *drive,
148 val = ds->get(drive);
155 * @drive: drive to read from
156 * @setting: drive setting
159 * Write a drive setting if it is possible. The caller
171 static int ide_write_setting(ide_drive_t *drive,
183 return ide_devset_execute(drive, ds, val);
188 static int set_xfer_rate (ide_drive_t *drive, int arg)
203 return ide_no_data_taskfile(drive, &cmd);
234 ide_drive_t *drive = (ide_drive_t *) m->private;
241 d = drive->settings;
255 mul_factor = setting->mulf ? setting->mulf(drive) : 1;
256 div_factor = setting->divf ? setting->divf(drive) : 1;
258 rc = ide_read_setting(drive, setting);
285 ide_drive_t *drive = PDE_DATA(file_inode(file));
361 if (drive->settings)
362 setting = ide_find_setting(drive->settings, name);
369 mul_factor = setting->mulf ? setting->mulf(drive) : 1;
370 div_factor = setting->divf ? setting->divf(drive) : 1;
371 ide_write_setting(drive, setting, val * div_factor / mul_factor);
401 ide_drive_t *drive = (ide_drive_t *) m->private;
404 drive->cyl, drive->head, drive->sect);
406 drive->bios_cyl, drive->bios_head, drive->bios_sect);
413 ide_drive_t *drive = (ide_drive_t *) seq->private;
414 char *m = (char *)&drive->id[ATA_ID_PROD];
422 ide_drive_t *drive = (ide_drive_t *)m->private;
423 struct device *dev = &drive->gendev;
437 ide_drive_t *drive = (ide_drive_t *) m->private;
440 switch (drive->media) {
496 void ide_proc_register_driver(ide_drive_t *drive, struct ide_driver *driver)
499 drive->settings = driver->proc_devsets(drive);
502 ide_add_proc_entries(drive->proc, driver->proc_entries(drive), drive);
509 * @drive: drive
513 * for a given drive.
518 void ide_proc_unregister_driver(ide_drive_t *drive, struct ide_driver *driver)
520 ide_remove_proc_entries(drive->proc, driver->proc_entries(drive));
527 drive->settings = NULL;
536 ide_drive_t *drive;
540 ide_port_for_each_dev(i, drive, hwif) {
541 if ((drive->dev_flags & IDE_DFLAG_PRESENT) == 0)
544 drive->proc = proc_mkdir(drive->name, parent);
545 if (drive->proc) {
546 ide_add_proc_entries(drive->proc, generic_drive_entries, drive);
548 drive->proc, &ide_settings_proc_ops,
549 drive);
551 sprintf(name, "ide%d/%s", (drive->name[2]-'a')/2, drive->name);
552 ent = proc_symlink(drive->name, proc_ide_root, name);
557 void ide_proc_unregister_device(ide_drive_t *drive)
559 if (drive->proc) {
560 remove_proc_entry("settings", drive->proc);
561 ide_remove_proc_entries(drive->proc, generic_drive_entries);
562 remove_proc_entry(drive->name, proc_ide_root);
563 remove_proc_entry(drive->name, drive->hwif->proc);
564 drive->proc = NULL;