/* callback for packet commands */
void (*pc_callback)(struct ide_drive_s *, int);
+ void (*pc_update_buffers)(struct ide_drive_s *, struct ide_atapi_pc *);
+ int (*pc_io_buffers)(struct ide_drive_s *, struct ide_atapi_pc *,
+ unsigned int, int);
+
unsigned long atapi_flags;
struct ide_atapi_pc request_sense_pc;
REQ_IDETAPE_WRITE = (1 << 3),
};
-void ide_queue_pc_head(ide_drive_t *, struct gendisk *, struct ide_atapi_pc *,
- struct request *);
int ide_queue_pc_tail(ide_drive_t *, struct gendisk *, struct ide_atapi_pc *);
int ide_do_test_unit_ready(ide_drive_t *, struct gendisk *);
int ide_do_start_stop(ide_drive_t *, struct gendisk *, int);
int ide_set_media_lock(ide_drive_t *, struct gendisk *, int);
+void ide_create_request_sense_cmd(ide_drive_t *, struct ide_atapi_pc *);
+void ide_retry_pc(ide_drive_t *, struct gendisk *);
static inline unsigned long ide_scsi_get_timeout(struct ide_atapi_pc *pc)
{
int ide_scsi_expiry(ide_drive_t *);
-ide_startstop_t ide_pc_intr(ide_drive_t *drive, ide_handler_t *handler,
- void (*update_buffers)(ide_drive_t *, struct ide_atapi_pc *),
- void (*retry_pc)(ide_drive_t *),
- int (*io_buffers)(ide_drive_t *, struct ide_atapi_pc *, unsigned int,
- int));
+ide_startstop_t ide_pc_intr(ide_drive_t *drive, ide_handler_t *handler);
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 *,