Sorry this change had to be done. As you can see from the
rest of the associated diff it's actually simplifying stuff.
The goal which got me at this was to finally make it possible
to unify udma_init and udma_tcq_taksfile.
Unfortuantely I have apparently missed the remaining usage of
taskfile.command in icside.c during find -exec grep...
However my changelog documented the change so I hope at least that
it was "pretty obvious" how to accomodate. BTW.> Disaster
1. could not occur becouse I deleted the usage of the read
variant altogether.
Anyway as always: Thank you for cheerishing this out.
>
> --- orig/drivers/ide/icside.c Mon Jun 3 10:24:34 2002
> +++ linux/drivers/ide/icside.c Mon Jun 3 11:54:42 2002
> @@ -517,33 +517,6 @@
> return 0;
> }
>
> -static int icside_dma_read(struct ata_device *drive, struct request *rq)
> -{
> - struct ata_channel *ch = drive->channel;
> - unsigned int cmd;
> -
> - if (icside_dma_common(drive, rq, DMA_MODE_READ))
> - return 1;
> -
> - if (drive->type != ATA_DISK)
> - return 0;
> -
> - ide_set_handler(drive, icside_dmaintr, WAIT_CMD, NULL);
> -
> - if ((rq->flags & REQ_DRIVE_ACB) && drive->addressing == 1) {
> - struct ata_taskfile *args = rq->special;
> - cmd = args->taskfile.command;
> - } else if (drive->addressing) {
> - cmd = WIN_READDMA_EXT;
> - } else {
> - cmd = WIN_READDMA;
> - }
> -
> - OUT_BYTE(cmd, IDE_COMMAND_REG);
> - enable_dma(ch->hw.dma);
> - return 0;
> -}
> -
> static int icside_dma_init(struct ata_device *drive, struct request *rq)
> {
> struct ata_channel *ch = drive->channel;
> @@ -559,11 +532,11 @@
>
> if ((rq->flags & REQ_DRIVE_ACB) && drive->addressing == 1) {
> struct ata_taskfile *args = rq->special;
> - cmd = args->taskfile.command;
> + cmd = args->cmd;
> } else if (drive->addressing) {
> - cmd = WIN_WRITEDMA_EXT;
> + cmd = rq_data_dir(rq) == WRITE ? WIN_WRITEDMA_EXT : WIN_READDMA_EXT;
> } else {
> - cmd = WIN_WRITEDMA;
> + cmd = rq_data_dir(rq) == WRITE ? WIN_WRITEDMA : WIN_READDMA;
> }
> OUT_BYTE(cmd, IDE_COMMAND_REG);
>
-
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/