ide: make ide_pc_intr() static
* Always use ide_pc_intr as a handler in ide_pc_intr(). * Remove no longer used ide*_pc_intr() and 'handler' argument from ide_{transfer_pc,pc_intr}(). * Make ide_pc_intr() static. 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:
@@ -246,7 +246,12 @@ int ide_scsi_expiry(ide_drive_t *drive)
|
|||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(ide_scsi_expiry);
|
EXPORT_SYMBOL_GPL(ide_scsi_expiry);
|
||||||
|
|
||||||
ide_startstop_t ide_pc_intr(ide_drive_t *drive, ide_handler_t *handler)
|
/*
|
||||||
|
* This is the usual interrupt handler which will be called during a packet
|
||||||
|
* command. We will transfer some of the data (as requested by the drive)
|
||||||
|
* and will re-point interrupt handler to us.
|
||||||
|
*/
|
||||||
|
static ide_startstop_t ide_pc_intr(ide_drive_t *drive)
|
||||||
{
|
{
|
||||||
struct ide_atapi_pc *pc = drive->pc;
|
struct ide_atapi_pc *pc = drive->pc;
|
||||||
ide_hwif_t *hwif = drive->hwif;
|
ide_hwif_t *hwif = drive->hwif;
|
||||||
@@ -425,10 +430,9 @@ cmd_finished:
|
|||||||
rq->cmd[0], bcount);
|
rq->cmd[0], bcount);
|
||||||
next_irq:
|
next_irq:
|
||||||
/* And set the interrupt handler again */
|
/* And set the interrupt handler again */
|
||||||
ide_set_handler(drive, handler, timeout, expiry);
|
ide_set_handler(drive, ide_pc_intr, timeout, expiry);
|
||||||
return ide_started;
|
return ide_started;
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(ide_pc_intr);
|
|
||||||
|
|
||||||
static u8 ide_read_ireason(ide_drive_t *drive)
|
static u8 ide_read_ireason(ide_drive_t *drive)
|
||||||
{
|
{
|
||||||
@@ -464,8 +468,7 @@ static u8 ide_wait_ireason(ide_drive_t *drive, u8 ireason)
|
|||||||
return ireason;
|
return ireason;
|
||||||
}
|
}
|
||||||
|
|
||||||
ide_startstop_t ide_transfer_pc(ide_drive_t *drive,
|
ide_startstop_t ide_transfer_pc(ide_drive_t *drive, unsigned int timeout,
|
||||||
ide_handler_t *handler, unsigned int timeout,
|
|
||||||
ide_expiry_t *expiry)
|
ide_expiry_t *expiry)
|
||||||
{
|
{
|
||||||
struct ide_atapi_pc *pc = drive->pc;
|
struct ide_atapi_pc *pc = drive->pc;
|
||||||
@@ -491,7 +494,7 @@ ide_startstop_t ide_transfer_pc(ide_drive_t *drive,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Set the interrupt routine */
|
/* Set the interrupt routine */
|
||||||
ide_set_handler(drive, handler, timeout, expiry);
|
ide_set_handler(drive, ide_pc_intr, timeout, expiry);
|
||||||
|
|
||||||
/* Begin DMA, if necessary */
|
/* Begin DMA, if necessary */
|
||||||
if (pc->flags & PC_FLAG_DMA_OK) {
|
if (pc->flags & PC_FLAG_DMA_OK) {
|
||||||
|
@@ -193,12 +193,6 @@ static void ide_floppy_callback(ide_drive_t *drive, int dsc)
|
|||||||
idefloppy_end_request(drive, uptodate, 0);
|
idefloppy_end_request(drive, uptodate, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* The usual interrupt handler called during a packet command. */
|
|
||||||
static ide_startstop_t idefloppy_pc_intr(ide_drive_t *drive)
|
|
||||||
{
|
|
||||||
return ide_pc_intr(drive, idefloppy_pc_intr);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* What we have here is a classic case of a top half / bottom half interrupt
|
* What we have here is a classic case of a top half / bottom half interrupt
|
||||||
* service routine. In interrupt mode, the device sends an interrupt to signal
|
* service routine. In interrupt mode, the device sends an interrupt to signal
|
||||||
@@ -230,7 +224,7 @@ static ide_startstop_t idefloppy_start_pc_transfer(ide_drive_t *drive)
|
|||||||
* where the Busy flag was apparently being deasserted before the
|
* where the Busy flag was apparently being deasserted before the
|
||||||
* unit was ready to receive data. This was happening on a
|
* unit was ready to receive data. This was happening on a
|
||||||
* 1200 MHz Athlon system. 10/26/01 25msec is too short,
|
* 1200 MHz Athlon system. 10/26/01 25msec is too short,
|
||||||
* 40 and 50msec work well. idefloppy_pc_intr will not be actually
|
* 40 and 50msec work well. ide_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 (drive->atapi_flags & IDE_AFLAG_ZIP_DRIVE) {
|
if (drive->atapi_flags & IDE_AFLAG_ZIP_DRIVE) {
|
||||||
@@ -241,7 +235,7 @@ static ide_startstop_t idefloppy_start_pc_transfer(ide_drive_t *drive)
|
|||||||
expiry = NULL;
|
expiry = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
return ide_transfer_pc(drive, idefloppy_pc_intr, timeout, expiry);
|
return ide_transfer_pc(drive, timeout, expiry);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void ide_floppy_report_error(idefloppy_floppy_t *floppy,
|
static void ide_floppy_report_error(idefloppy_floppy_t *floppy,
|
||||||
|
@@ -618,18 +618,6 @@ static int ide_tape_io_buffers(ide_drive_t *drive, struct ide_atapi_pc *pc,
|
|||||||
return bcount;
|
return bcount;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* This is the usual interrupt handler which will be called during a packet
|
|
||||||
* command. We will transfer some of the data (as requested by the drive) and
|
|
||||||
* will re-point interrupt handler to us. When data transfer is finished, we
|
|
||||||
* will act according to the algorithm described before
|
|
||||||
* idetape_issue_pc.
|
|
||||||
*/
|
|
||||||
static ide_startstop_t idetape_pc_intr(ide_drive_t *drive)
|
|
||||||
{
|
|
||||||
return ide_pc_intr(drive, idetape_pc_intr);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Packet Command Interface
|
* Packet Command Interface
|
||||||
*
|
*
|
||||||
@@ -640,9 +628,9 @@ static ide_startstop_t idetape_pc_intr(ide_drive_t *drive)
|
|||||||
* The handling will be done in three stages:
|
* The handling will be done in three stages:
|
||||||
*
|
*
|
||||||
* 1. idetape_issue_pc will send the packet command to the drive, and will set
|
* 1. idetape_issue_pc will send the packet command to the drive, and will set
|
||||||
* the interrupt handler to idetape_pc_intr.
|
* the interrupt handler to ide_pc_intr.
|
||||||
*
|
*
|
||||||
* 2. On each interrupt, idetape_pc_intr will be called. This step will be
|
* 2. On each interrupt, ide_pc_intr will be called. This step will be
|
||||||
* repeated until the device signals us that no more interrupts will be issued.
|
* repeated until the device signals us that no more interrupts will be issued.
|
||||||
*
|
*
|
||||||
* 3. ATAPI Tape media access commands have immediate status with a delayed
|
* 3. ATAPI Tape media access commands have immediate status with a delayed
|
||||||
@@ -668,7 +656,7 @@ static ide_startstop_t idetape_pc_intr(ide_drive_t *drive)
|
|||||||
*/
|
*/
|
||||||
static ide_startstop_t idetape_transfer_pc(ide_drive_t *drive)
|
static ide_startstop_t idetape_transfer_pc(ide_drive_t *drive)
|
||||||
{
|
{
|
||||||
return ide_transfer_pc(drive, idetape_pc_intr, WAIT_TAPE_CMD, NULL);
|
return ide_transfer_pc(drive, WAIT_TAPE_CMD, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static ide_startstop_t idetape_issue_pc(ide_drive_t *drive,
|
static ide_startstop_t idetape_issue_pc(ide_drive_t *drive,
|
||||||
|
@@ -270,18 +270,9 @@ static int idescsi_end_request (ide_drive_t *drive, int uptodate, int nrsecs)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* Our interrupt handler.
|
|
||||||
*/
|
|
||||||
static ide_startstop_t idescsi_pc_intr (ide_drive_t *drive)
|
|
||||||
{
|
|
||||||
return ide_pc_intr(drive, idescsi_pc_intr);
|
|
||||||
}
|
|
||||||
|
|
||||||
static ide_startstop_t idescsi_transfer_pc(ide_drive_t *drive)
|
static ide_startstop_t idescsi_transfer_pc(ide_drive_t *drive)
|
||||||
{
|
{
|
||||||
return ide_transfer_pc(drive, idescsi_pc_intr,
|
return ide_transfer_pc(drive, ide_scsi_get_timeout(drive->pc),
|
||||||
ide_scsi_get_timeout(drive->pc),
|
|
||||||
ide_scsi_expiry);
|
ide_scsi_expiry);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -1188,9 +1188,7 @@ static inline unsigned long ide_scsi_get_timeout(struct ide_atapi_pc *pc)
|
|||||||
|
|
||||||
int ide_scsi_expiry(ide_drive_t *);
|
int ide_scsi_expiry(ide_drive_t *);
|
||||||
|
|
||||||
ide_startstop_t ide_pc_intr(ide_drive_t *drive, ide_handler_t *handler);
|
ide_startstop_t ide_transfer_pc(ide_drive_t *, unsigned int, ide_expiry_t *);
|
||||||
ide_startstop_t ide_transfer_pc(ide_drive_t *,
|
|
||||||
ide_handler_t *, unsigned int, ide_expiry_t *);
|
|
||||||
ide_startstop_t ide_issue_pc(ide_drive_t *,
|
ide_startstop_t ide_issue_pc(ide_drive_t *,
|
||||||
ide_handler_t *, unsigned int, ide_expiry_t *);
|
ide_handler_t *, unsigned int, ide_expiry_t *);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user