mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 19:51:31 -04:00
ide: add ide_atapi_{discard_data,write_zeros} inline helpers
Add ide_atapi_{discard_data,write_zeros} inline helpers to <linux/ide.h>
and use them instead of home-brewn helpers in ide-{floppy,tape,scsi}.
There should be no functional changes caused by this patch.
Cc: Borislav Petkov <[email protected]>
Signed-off-by: Bartlomiej Zolnierkiewicz <[email protected]>
This commit is contained in:
parent
3ad6776cca
commit
7616c0ad20
4 changed files with 30 additions and 48 deletions
|
|
@ -229,23 +229,6 @@ static void ide_floppy_put(struct ide_floppy_obj *floppy)
|
|||
mutex_unlock(&idefloppy_ref_mutex);
|
||||
}
|
||||
|
||||
/*
|
||||
* Too bad. The drive wants to send us data which we are not ready to accept.
|
||||
* Just throw it away.
|
||||
*/
|
||||
static void idefloppy_discard_data(ide_drive_t *drive, unsigned int bcount)
|
||||
{
|
||||
while (bcount--)
|
||||
(void) HWIF(drive)->INB(IDE_DATA_REG);
|
||||
}
|
||||
|
||||
static void idefloppy_write_zeros(ide_drive_t *drive, unsigned int bcount)
|
||||
{
|
||||
while (bcount--)
|
||||
HWIF(drive)->OUTB(0, IDE_DATA_REG);
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Used to finish servicing a request. For read/write requests, we will call
|
||||
* ide_end_request to pass to the next buffer.
|
||||
|
|
@ -313,10 +296,9 @@ static void ide_floppy_io_buffers(ide_drive_t *drive, idefloppy_pc_t *pc,
|
|||
printk(KERN_ERR "%s: leftover data in %s, bcount == %d\n",
|
||||
drive->name, __func__, bcount);
|
||||
if (direction)
|
||||
idefloppy_write_zeros(drive, bcount);
|
||||
ide_atapi_write_zeros(drive, bcount);
|
||||
else
|
||||
idefloppy_discard_data(drive, bcount);
|
||||
|
||||
ide_atapi_discard_data(drive, bcount);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -541,7 +523,7 @@ static ide_startstop_t idefloppy_pc_intr (ide_drive_t *drive)
|
|||
printk(KERN_ERR "ide-floppy: The floppy wants "
|
||||
"to send us more data than expected "
|
||||
"- discarding data\n");
|
||||
idefloppy_discard_data(drive, bcount);
|
||||
ide_atapi_discard_data(drive, bcount);
|
||||
|
||||
ide_set_handler(drive,
|
||||
&idefloppy_pc_intr,
|
||||
|
|
|
|||
|
|
@ -518,16 +518,6 @@ static struct ide_tape_obj *ide_tape_chrdev_get(unsigned int i)
|
|||
return tape;
|
||||
}
|
||||
|
||||
/*
|
||||
* Too bad. The drive wants to send us data which we are not ready to accept.
|
||||
* Just throw it away.
|
||||
*/
|
||||
static void idetape_discard_data(ide_drive_t *drive, unsigned int bcount)
|
||||
{
|
||||
while (bcount--)
|
||||
(void) HWIF(drive)->INB(IDE_DATA_REG);
|
||||
}
|
||||
|
||||
static void idetape_input_buffers(ide_drive_t *drive, idetape_pc_t *pc,
|
||||
unsigned int bcount)
|
||||
{
|
||||
|
|
@ -538,7 +528,7 @@ static void idetape_input_buffers(ide_drive_t *drive, idetape_pc_t *pc,
|
|||
if (bh == NULL) {
|
||||
printk(KERN_ERR "ide-tape: bh == NULL in "
|
||||
"idetape_input_buffers\n");
|
||||
idetape_discard_data(drive, bcount);
|
||||
ide_atapi_discard_data(drive, bcount);
|
||||
return;
|
||||
}
|
||||
count = min(
|
||||
|
|
@ -1152,7 +1142,7 @@ static ide_startstop_t idetape_pc_intr(ide_drive_t *drive)
|
|||
printk(KERN_ERR "ide-tape: The tape wants to "
|
||||
"send us more data than expected "
|
||||
"- discarding data\n");
|
||||
idetape_discard_data(drive, bcount);
|
||||
ide_atapi_discard_data(drive, bcount);
|
||||
ide_set_handler(drive, &idetape_pc_intr,
|
||||
IDETAPE_WAIT_CMD, NULL);
|
||||
return ide_started;
|
||||
|
|
|
|||
Loading…
Reference in a new issue