lkml.org 
[lkml]   [2003]   [Mar]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectPATCH: update ide-tape to match changes
diff -u --new-file --recursive --exclude-from /usr/src/exclude linux-2.5.65/drivers/ide/ide-tape.c linux-2.5.65-ac2/drivers/ide/ide-tape.c
--- linux-2.5.65/drivers/ide/ide-tape.c 2003-03-03 19:20:09.000000000 +0000
+++ linux-2.5.65-ac2/drivers/ide/ide-tape.c 2003-03-07 17:33:05.000000000 +0000
@@ -422,7 +422,7 @@
* sharing a (fast) ATA-2 disk with any (slow) new ATAPI device.
*/

-#define IDETAPE_VERSION "1.17b"
+#define IDETAPE_VERSION "1.17b-ac1"

#include <linux/config.h>
#include <linux/module.h>
@@ -2128,8 +2128,6 @@
if (temp > pc->buffer_size) {
printk(KERN_ERR "ide-tape: The tape wants to send us more data than expected - discarding data\n");
idetape_discard_data(drive, bcount.all);
- if (HWGROUP(drive)->handler != NULL) /* paranoia check */
- BUG();
ide_set_handler(drive, &idetape_pc_intr, IDETAPE_WAIT_CMD, NULL);
return ide_started;
}
@@ -2156,8 +2154,6 @@
if (tape->debug_level >= 2)
printk(KERN_INFO "ide-tape: [cmd %x] transferred %d bytes on that interrupt\n", pc->c[0], bcount.all);
#endif
- if (HWGROUP(drive)->handler != NULL) /* paranoia check */
- BUG();
ide_set_handler(drive, &idetape_pc_intr, IDETAPE_WAIT_CMD, NULL); /* And set the interrupt handler again */
return ide_started;
}
@@ -2235,8 +2231,6 @@
return ide_do_reset(drive);
}
tape->cmd_start_time = jiffies;
- if (HWGROUP(drive)->handler != NULL) /* paranoia check */
- BUG();
/* Set the interrupt routine */
ide_set_handler(drive, &idetape_pc_intr, IDETAPE_WAIT_CMD, NULL);
#ifdef CONFIG_BLK_DEV_IDEDMA
@@ -2325,8 +2319,6 @@
if (dma_ok) /* Will begin DMA later */
set_bit(PC_DMA_IN_PROGRESS, &pc->flags);
if (test_bit(IDETAPE_DRQ_INTERRUPT, &tape->flags)) {
- if (HWGROUP(drive)->handler != NULL) /* paranoia check */
- BUG();
ide_set_handler(drive, &idetape_transfer_pc, IDETAPE_WAIT_CMD, NULL);
OUT_BYTE(WIN_PACKETCMD, IDE_COMMAND_REG);
return ide_started;
@@ -5605,15 +5597,16 @@
*
* 0 If this tape driver is not currently supported by us.
*/
-static int idetape_identify_device (ide_drive_t *drive,struct hd_driveid *id)
+static int idetape_identify_device (ide_drive_t *drive)
{
struct idetape_id_gcw gcw;
+ struct hd_driveid *id = drive->id;
#if IDETAPE_DEBUG_INFO
unsigned short mask,i;
#endif /* IDETAPE_DEBUG_INFO */

- if (!id)
- return 0;
+ if (drive->id_read == 0)
+ return 1;

*((unsigned short *) &gcw) = id->config;

@@ -6287,7 +6280,7 @@
goto failed;
if (drive->media != ide_tape)
goto failed;
- if (!idetape_identify_device (drive, drive->id)) {
+ if (!idetape_identify_device (drive)) {
printk(KERN_ERR "ide-tape: %s: not supported by this version of ide-tape\n", drive->name);
goto failed;
}
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
\
 
 \ /
  Last update: 2005-03-22 13:34    [W:0.366 / U:0.064 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site