diff options
author | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2008-04-28 17:44:39 -0400 |
---|---|---|
committer | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2008-04-28 17:44:39 -0400 |
commit | d309e0bb8e5f29692f10790f3e966f05bbfc9355 (patch) | |
tree | 276c78c6960a88df3ade6f96e96331b708235ec9 /drivers/ide/ide-io.c | |
parent | 089c5c7e0089c3461545be936bcd236cbf16b79a (diff) |
ide: move ide_tf_{load,read} to ide-iops.c
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers/ide/ide-io.c')
-rw-r--r-- | drivers/ide/ide-io.c | 43 |
1 files changed, 0 insertions, 43 deletions
diff --git a/drivers/ide/ide-io.c b/drivers/ide/ide-io.c index a6f2186773fa..5b675a001382 100644 --- a/drivers/ide/ide-io.c +++ b/drivers/ide/ide-io.c | |||
@@ -295,49 +295,6 @@ static void ide_complete_pm_request (ide_drive_t *drive, struct request *rq) | |||
295 | spin_unlock_irqrestore(&ide_lock, flags); | 295 | spin_unlock_irqrestore(&ide_lock, flags); |
296 | } | 296 | } |
297 | 297 | ||
298 | void ide_tf_read(ide_drive_t *drive, ide_task_t *task) | ||
299 | { | ||
300 | ide_hwif_t *hwif = drive->hwif; | ||
301 | struct ide_io_ports *io_ports = &hwif->io_ports; | ||
302 | struct ide_taskfile *tf = &task->tf; | ||
303 | |||
304 | if (task->tf_flags & IDE_TFLAG_IN_DATA) { | ||
305 | u16 data = hwif->INW(io_ports->data_addr); | ||
306 | |||
307 | tf->data = data & 0xff; | ||
308 | tf->hob_data = (data >> 8) & 0xff; | ||
309 | } | ||
310 | |||
311 | /* be sure we're looking at the low order bits */ | ||
312 | hwif->OUTB(drive->ctl & ~0x80, io_ports->ctl_addr); | ||
313 | |||
314 | if (task->tf_flags & IDE_TFLAG_IN_NSECT) | ||
315 | tf->nsect = hwif->INB(io_ports->nsect_addr); | ||
316 | if (task->tf_flags & IDE_TFLAG_IN_LBAL) | ||
317 | tf->lbal = hwif->INB(io_ports->lbal_addr); | ||
318 | if (task->tf_flags & IDE_TFLAG_IN_LBAM) | ||
319 | tf->lbam = hwif->INB(io_ports->lbam_addr); | ||
320 | if (task->tf_flags & IDE_TFLAG_IN_LBAH) | ||
321 | tf->lbah = hwif->INB(io_ports->lbah_addr); | ||
322 | if (task->tf_flags & IDE_TFLAG_IN_DEVICE) | ||
323 | tf->device = hwif->INB(io_ports->device_addr); | ||
324 | |||
325 | if (task->tf_flags & IDE_TFLAG_LBA48) { | ||
326 | hwif->OUTB(drive->ctl | 0x80, io_ports->ctl_addr); | ||
327 | |||
328 | if (task->tf_flags & IDE_TFLAG_IN_HOB_FEATURE) | ||
329 | tf->hob_feature = hwif->INB(io_ports->feature_addr); | ||
330 | if (task->tf_flags & IDE_TFLAG_IN_HOB_NSECT) | ||
331 | tf->hob_nsect = hwif->INB(io_ports->nsect_addr); | ||
332 | if (task->tf_flags & IDE_TFLAG_IN_HOB_LBAL) | ||
333 | tf->hob_lbal = hwif->INB(io_ports->lbal_addr); | ||
334 | if (task->tf_flags & IDE_TFLAG_IN_HOB_LBAM) | ||
335 | tf->hob_lbam = hwif->INB(io_ports->lbam_addr); | ||
336 | if (task->tf_flags & IDE_TFLAG_IN_HOB_LBAH) | ||
337 | tf->hob_lbah = hwif->INB(io_ports->lbah_addr); | ||
338 | } | ||
339 | } | ||
340 | |||
341 | /** | 298 | /** |
342 | * ide_end_drive_cmd - end an explicit drive command | 299 | * ide_end_drive_cmd - end an explicit drive command |
343 | * @drive: command | 300 | * @drive: command |