ide: move ide_pktcmd_tf_load() to ide-atapi.c
Then make it static and remove 'dma' argument. Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
This commit is contained in:
@@ -456,6 +456,25 @@ next_irq:
|
|||||||
return ide_started;
|
return ide_started;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void ide_pktcmd_tf_load(ide_drive_t *drive, u32 tf_flags, u16 bcount)
|
||||||
|
{
|
||||||
|
ide_hwif_t *hwif = drive->hwif;
|
||||||
|
ide_task_t task;
|
||||||
|
u8 dma = drive->dma;
|
||||||
|
|
||||||
|
memset(&task, 0, sizeof(task));
|
||||||
|
task.tf_flags = IDE_TFLAG_OUT_LBAH | IDE_TFLAG_OUT_LBAM |
|
||||||
|
IDE_TFLAG_OUT_FEATURE | tf_flags;
|
||||||
|
task.tf.feature = dma; /* Use PIO/DMA */
|
||||||
|
task.tf.lbam = bcount & 0xff;
|
||||||
|
task.tf.lbah = (bcount >> 8) & 0xff;
|
||||||
|
|
||||||
|
ide_tf_dump(drive->name, &task.tf);
|
||||||
|
hwif->tp_ops->set_irq(hwif, 1);
|
||||||
|
SELECT_MASK(drive, 0);
|
||||||
|
hwif->tp_ops->tf_load(drive, &task);
|
||||||
|
}
|
||||||
|
|
||||||
static u8 ide_read_ireason(ide_drive_t *drive)
|
static u8 ide_read_ireason(ide_drive_t *drive)
|
||||||
{
|
{
|
||||||
ide_task_t task;
|
ide_task_t task;
|
||||||
@@ -629,7 +648,7 @@ ide_startstop_t ide_issue_pc(ide_drive_t *drive)
|
|||||||
: WAIT_TAPE_CMD;
|
: WAIT_TAPE_CMD;
|
||||||
}
|
}
|
||||||
|
|
||||||
ide_pktcmd_tf_load(drive, tf_flags, bcount, drive->dma);
|
ide_pktcmd_tf_load(drive, tf_flags, bcount);
|
||||||
|
|
||||||
/* Issue the packet command */
|
/* Issue the packet command */
|
||||||
if (drive->atapi_flags & IDE_AFLAG_DRQ_INTERRUPT) {
|
if (drive->atapi_flags & IDE_AFLAG_DRQ_INTERRUPT) {
|
||||||
|
@@ -1192,26 +1192,6 @@ void ide_do_drive_cmd(ide_drive_t *drive, struct request *rq)
|
|||||||
}
|
}
|
||||||
EXPORT_SYMBOL(ide_do_drive_cmd);
|
EXPORT_SYMBOL(ide_do_drive_cmd);
|
||||||
|
|
||||||
void ide_pktcmd_tf_load(ide_drive_t *drive, u32 tf_flags, u16 bcount, u8 dma)
|
|
||||||
{
|
|
||||||
ide_hwif_t *hwif = drive->hwif;
|
|
||||||
ide_task_t task;
|
|
||||||
|
|
||||||
memset(&task, 0, sizeof(task));
|
|
||||||
task.tf_flags = IDE_TFLAG_OUT_LBAH | IDE_TFLAG_OUT_LBAM |
|
|
||||||
IDE_TFLAG_OUT_FEATURE | tf_flags;
|
|
||||||
task.tf.feature = dma; /* Use PIO/DMA */
|
|
||||||
task.tf.lbam = bcount & 0xff;
|
|
||||||
task.tf.lbah = (bcount >> 8) & 0xff;
|
|
||||||
|
|
||||||
ide_tf_dump(drive->name, &task.tf);
|
|
||||||
hwif->tp_ops->set_irq(hwif, 1);
|
|
||||||
SELECT_MASK(drive, 0);
|
|
||||||
hwif->tp_ops->tf_load(drive, &task);
|
|
||||||
}
|
|
||||||
|
|
||||||
EXPORT_SYMBOL_GPL(ide_pktcmd_tf_load);
|
|
||||||
|
|
||||||
void ide_pad_transfer(ide_drive_t *drive, int write, int len)
|
void ide_pad_transfer(ide_drive_t *drive, int write, int len)
|
||||||
{
|
{
|
||||||
ide_hwif_t *hwif = drive->hwif;
|
ide_hwif_t *hwif = drive->hwif;
|
||||||
|
@@ -1202,8 +1202,6 @@ void ide_read_bcount_and_ireason(ide_drive_t *, u16 *, u8 *);
|
|||||||
|
|
||||||
extern int drive_is_ready(ide_drive_t *);
|
extern int drive_is_ready(ide_drive_t *);
|
||||||
|
|
||||||
void ide_pktcmd_tf_load(ide_drive_t *, u32, u16, u8);
|
|
||||||
|
|
||||||
int ide_check_atapi_device(ide_drive_t *, const char *);
|
int ide_check_atapi_device(ide_drive_t *, const char *);
|
||||||
|
|
||||||
void ide_init_pc(struct ide_atapi_pc *);
|
void ide_init_pc(struct ide_atapi_pc *);
|
||||||
|
Reference in New Issue
Block a user