ide: add PC_FLAG_ZIP_DRIVE pc flag

Add PC_FLAG_ZIP_DRIVE pc flag, set it in idefloppy_do_request()
and check for it (instead of checking for IDEFLOPPY_FLAG_ZIP_DRIVE)
in idefloppy_transfer_pc().  This is a preparation for adding
generic ide_transfer_pc() helper.

There should be no functional changes caused by this patch.

Cc: Borislav Petkov <petkovbb@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
This commit is contained in:
Bartlomiej Zolnierkiewicz 2008-07-15 21:21:57 +02:00
parent 5a7b75ab42
commit 5d41893c0f
2 changed files with 7 additions and 2 deletions

View File

@ -559,7 +559,7 @@ static ide_startstop_t idefloppy_transfer_pc1(ide_drive_t *drive)
* 40 and 50msec work well. idefloppy_pc_intr will not be actually * 40 and 50msec work well. idefloppy_pc_intr will not be actually
* used until after the packet is moved in about 50 msec. * used until after the packet is moved in about 50 msec.
*/ */
if (floppy->flags & IDEFLOPPY_FLAG_ZIP_DRIVE) { if (pc->flags & PC_FLAG_ZIP_DRIVE) {
timeout = floppy->ticks; timeout = floppy->ticks;
expiry = &idefloppy_transfer_pc2; expiry = &idefloppy_transfer_pc2;
} else { } else {
@ -575,7 +575,7 @@ static ide_startstop_t idefloppy_transfer_pc1(ide_drive_t *drive)
hwif->dma_ops->dma_start(drive); hwif->dma_ops->dma_start(drive);
} }
if ((floppy->flags & IDEFLOPPY_FLAG_ZIP_DRIVE) == 0) if ((pc->flags & PC_FLAG_ZIP_DRIVE) == 0)
/* Send the actual packet */ /* Send the actual packet */
hwif->output_data(drive, NULL, floppy->pc->c, 12); hwif->output_data(drive, NULL, floppy->pc->c, 12);
@ -826,7 +826,11 @@ static ide_startstop_t idefloppy_do_request(ide_drive_t *drive,
return ide_stopped; return ide_stopped;
} }
if (floppy->flags & IDEFLOPPY_FLAG_ZIP_DRIVE)
pc->flags |= PC_FLAG_ZIP_DRIVE;
pc->rq = rq; pc->rq = rq;
return idefloppy_issue_pc(drive, pc); return idefloppy_issue_pc(drive, pc);
} }

View File

@ -607,6 +607,7 @@ enum {
PC_FLAG_WRITING = (1 << 6), PC_FLAG_WRITING = (1 << 6),
/* command timed out */ /* command timed out */
PC_FLAG_TIMEDOUT = (1 << 7), PC_FLAG_TIMEDOUT = (1 << 7),
PC_FLAG_ZIP_DRIVE = (1 << 8),
}; };
struct ide_atapi_pc { struct ide_atapi_pc {