* [PATCH 4/6] ide: remove IDE_TFLAG_NO_SELECT_MASK taskfile flag
@ 2008-05-07 17:43 Bartlomiej Zolnierkiewicz
2008-05-08 20:58 ` Russell King
0 siblings, 1 reply; 3+ messages in thread
From: Bartlomiej Zolnierkiewicz @ 2008-05-07 17:43 UTC (permalink / raw)
To: linux-ide; +Cc: linux-kernel, Sergei Shtylyov, Russell King
Always call SELECT_MASK(..., 0) in ide_tf_load() (needs to be done
to match ide_set_irq(..., 1)) and then remove IDE_TFLAG_NO_SELECT_MASK
taskfile flag.
This change should only affect hpt366 and icside host drivers since
->maskproc(..., 0) for sgiioc4 is equivalent to ide_set_irq(..., 1).
Cc: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Cc: Russell King <rmk@arm.linux.org.uk>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
---
drivers/ide/ide-cd.c | 4 ++--
drivers/ide/ide-disk.c | 3 +--
drivers/ide/ide-floppy.c | 3 +--
drivers/ide/ide-iops.c | 4 +---
drivers/ide/ide-tape.c | 3 +--
drivers/scsi/ide-scsi.c | 2 +-
include/linux/ide.h | 1 -
7 files changed, 7 insertions(+), 13 deletions(-)
Index: b/drivers/ide/ide-cd.c
===================================================================
--- a/drivers/ide/ide-cd.c
+++ b/drivers/ide/ide-cd.c
@@ -530,8 +530,8 @@ static ide_startstop_t cdrom_start_packe
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. */
Index: b/drivers/ide/ide-disk.c
===================================================================
--- a/drivers/ide/ide-disk.c
+++ b/drivers/ide/ide-disk.c
@@ -198,8 +198,7 @@ static ide_startstop_t __ide_do_rw_disk(
}
memset(&task, 0, sizeof(task));
- task.tf_flags = IDE_TFLAG_NO_SELECT_MASK; /* FIXME? */
- task.tf_flags |= (IDE_TFLAG_TF | IDE_TFLAG_DEVICE);
+ task.tf_flags = IDE_TFLAG_TF | IDE_TFLAG_DEVICE;
if (drive->select.b.lba) {
if (lba48) {
Index: b/drivers/ide/ide-floppy.c
===================================================================
--- a/drivers/ide/ide-floppy.c
+++ b/drivers/ide/ide-floppy.c
@@ -667,8 +667,7 @@ static ide_startstop_t idefloppy_issue_p
if ((pc->flags & PC_FLAG_DMA_RECOMMENDED) && drive->using_dma)
dma = !hwif->dma_ops->dma_setup(drive);
- ide_pktcmd_tf_load(drive, IDE_TFLAG_NO_SELECT_MASK |
- IDE_TFLAG_OUT_DEVICE, bcount, dma);
+ ide_pktcmd_tf_load(drive, IDE_TFLAG_OUT_DEVICE, bcount, dma);
if (dma) {
/* Begin DMA, if necessary */
Index: b/drivers/ide/ide-iops.c
===================================================================
--- a/drivers/ide/ide-iops.c
+++ b/drivers/ide/ide-iops.c
@@ -121,9 +121,7 @@ static void ide_tf_load(ide_drive_t *dri
HIHI = 0xFF;
ide_set_irq(drive, 1);
-
- if ((task->tf_flags & IDE_TFLAG_NO_SELECT_MASK) == 0)
- SELECT_MASK(drive, 0);
+ SELECT_MASK(drive, 0);
if (task->tf_flags & IDE_TFLAG_OUT_DATA) {
u16 data = (tf->hob_data << 8) | tf->data;
Index: b/drivers/ide/ide-tape.c
===================================================================
--- a/drivers/ide/ide-tape.c
+++ b/drivers/ide/ide-tape.c
@@ -1046,8 +1046,7 @@ static ide_startstop_t idetape_issue_pc(
if ((pc->flags & PC_FLAG_DMA_RECOMMENDED) && drive->using_dma)
dma_ok = !hwif->dma_ops->dma_setup(drive);
- ide_pktcmd_tf_load(drive, IDE_TFLAG_NO_SELECT_MASK |
- IDE_TFLAG_OUT_DEVICE, bcount, dma_ok);
+ ide_pktcmd_tf_load(drive, IDE_TFLAG_OUT_DEVICE, bcount, dma_ok);
if (dma_ok)
/* Will begin DMA later */
Index: b/drivers/scsi/ide-scsi.c
===================================================================
--- a/drivers/scsi/ide-scsi.c
+++ b/drivers/scsi/ide-scsi.c
@@ -564,7 +564,7 @@ static ide_startstop_t idescsi_issue_pc(
hwif->sg_mapped = 0;
}
- ide_pktcmd_tf_load(drive, IDE_TFLAG_NO_SELECT_MASK, bcount, dma);
+ ide_pktcmd_tf_load(drive, 0, bcount, dma);
if (dma)
pc->flags |= PC_FLAG_DMA_OK;
Index: b/include/linux/ide.h
===================================================================
--- a/include/linux/ide.h
+++ b/include/linux/ide.h
@@ -854,7 +854,6 @@ extern void ide_end_drive_cmd(ide_drive_
enum {
IDE_TFLAG_LBA48 = (1 << 0),
- IDE_TFLAG_NO_SELECT_MASK = (1 << 1),
IDE_TFLAG_FLAGGED = (1 << 2),
IDE_TFLAG_OUT_DATA = (1 << 3),
IDE_TFLAG_OUT_HOB_FEATURE = (1 << 4),
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [PATCH 4/6] ide: remove IDE_TFLAG_NO_SELECT_MASK taskfile flag
2008-05-07 17:43 [PATCH 4/6] ide: remove IDE_TFLAG_NO_SELECT_MASK taskfile flag Bartlomiej Zolnierkiewicz
@ 2008-05-08 20:58 ` Russell King
2008-05-08 21:22 ` Bartlomiej Zolnierkiewicz
0 siblings, 1 reply; 3+ messages in thread
From: Russell King @ 2008-05-08 20:58 UTC (permalink / raw)
To: Bartlomiej Zolnierkiewicz; +Cc: linux-ide, linux-kernel, Sergei Shtylyov
On Wed, May 07, 2008 at 07:43:24PM +0200, Bartlomiej Zolnierkiewicz wrote:
> Always call SELECT_MASK(..., 0) in ide_tf_load() (needs to be done
> to match ide_set_irq(..., 1)) and then remove IDE_TFLAG_NO_SELECT_MASK
> taskfile flag.
>
> This change should only affect hpt366 and icside host drivers since
> ->maskproc(..., 0) for sgiioc4 is equivalent to ide_set_irq(..., 1).
Provided the two channels on icside are serialised (so IDE doesn't
try to enable IRQs on both channels at the same time) it shouldn't
be a problem.
However, since I don't use this driver anymore (using the PATA version
instead) I don't feel it's right for me to ack this change.
--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of:
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH 4/6] ide: remove IDE_TFLAG_NO_SELECT_MASK taskfile flag
2008-05-08 20:58 ` Russell King
@ 2008-05-08 21:22 ` Bartlomiej Zolnierkiewicz
0 siblings, 0 replies; 3+ messages in thread
From: Bartlomiej Zolnierkiewicz @ 2008-05-08 21:22 UTC (permalink / raw)
To: Russell King; +Cc: linux-ide, linux-kernel, Sergei Shtylyov
On Thursday 08 May 2008, Russell King wrote:
> On Wed, May 07, 2008 at 07:43:24PM +0200, Bartlomiej Zolnierkiewicz wrote:
> > Always call SELECT_MASK(..., 0) in ide_tf_load() (needs to be done
> > to match ide_set_irq(..., 1)) and then remove IDE_TFLAG_NO_SELECT_MASK
> > taskfile flag.
> >
> > This change should only affect hpt366 and icside host drivers since
> > ->maskproc(..., 0) for sgiioc4 is equivalent to ide_set_irq(..., 1).
>
> Provided the two channels on icside are serialised (so IDE doesn't
> try to enable IRQs on both channels at the same time) it shouldn't
> be a problem.
Yep, they are serialized.
> However, since I don't use this driver anymore (using the PATA version
> instead) I don't feel it's right for me to ack this change.
Thanks for taking a look anyway.
Bart
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2008-05-08 21:22 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-05-07 17:43 [PATCH 4/6] ide: remove IDE_TFLAG_NO_SELECT_MASK taskfile flag Bartlomiej Zolnierkiewicz
2008-05-08 20:58 ` Russell King
2008-05-08 21:22 ` Bartlomiej Zolnierkiewicz
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).