]> err.no Git - linux-2.6/blobdiff - drivers/ide/ide-cd.c
Merge branch 'core/rcu' into core/rcu-for-linus
[linux-2.6] / drivers / ide / ide-cd.c
index 792a3cf73d6ead20e86ef795d8d279c5a45a06d8..d99847157186e9669efd3f56bfdb5eac54de7042 100644 (file)
@@ -188,16 +188,6 @@ static void cdrom_analyze_sense_data(ide_drive_t *drive,
        ide_cd_log_error(drive->name, failed_command, sense);
 }
 
-/* Initialize a ide-cd packet command request */
-void ide_cd_init_rq(ide_drive_t *drive, struct request *rq)
-{
-       struct cdrom_info *cd = drive->driver_data;
-
-       ide_init_drive_cmd(rq);
-       rq->cmd_type = REQ_TYPE_ATA_PC;
-       rq->rq_disk = cd->disk;
-}
-
 static void cdrom_queue_request_sense(ide_drive_t *drive, void *sense,
                                      struct request *failed_command)
 {
@@ -208,7 +198,9 @@ static void cdrom_queue_request_sense(ide_drive_t *drive, void *sense,
                sense = &info->sense_data;
 
        /* stuff the sense request in front of our current request */
-       ide_cd_init_rq(drive, rq);
+       blk_rq_init(NULL, rq);
+       rq->cmd_type = REQ_TYPE_ATA_PC;
+       rq->rq_disk = info->disk;
 
        rq->data = sense;
        rq->cmd[0] = GPCMD_REQUEST_SENSE;
@@ -221,7 +213,7 @@ static void cdrom_queue_request_sense(ide_drive_t *drive, void *sense,
        /* NOTE! Save the failed command in "rq->buffer" */
        rq->buffer = (void *) failed_command;
 
-       (void) ide_do_drive_cmd(drive, rq, ide_preempt);
+       ide_do_drive_cmd(drive, rq);
 }
 
 static void cdrom_end_request(ide_drive_t *drive, int uptodate)
@@ -538,8 +530,8 @@ static ide_startstop_t cdrom_start_packet_command(ide_drive_t *drive,
                info->dma = !hwif->dma_ops->dma_setup(drive);
 
        /* set up the controller registers */
-       ide_pktcmd_tf_load(drive, IDE_TFLAG_OUT_NSECT | IDE_TFLAG_OUT_LBAL |
-                          IDE_TFLAG_NO_SELECT_MASK, xferlen, info->dma);
+       ide_pktcmd_tf_load(drive, IDE_TFLAG_OUT_NSECT | IDE_TFLAG_OUT_LBAL,
+                          xferlen, info->dma);
 
        if (info->cd_flags & IDE_CD_FLAG_DRQ_INTERRUPT) {
                /* waiting for CDB interrupt, not DMA yet. */
@@ -2114,11 +2106,6 @@ static int ide_cd_probe(ide_drive_t *drive)
                        goto failed;
                }
        }
-       if (drive->scsi) {
-               printk(KERN_INFO "ide-cd: passing drive %s to ide-scsi "
-                                "emulation.\n", drive->name);
-               goto failed;
-       }
        info = kzalloc(sizeof(struct cdrom_info), GFP_KERNEL);
        if (info == NULL) {
                printk(KERN_ERR "%s: Can't allocate a cdrom structure\n",