Skip to contentSkip to conversation

ide: call udma_filter() before resorting to the UltraDMA mask

PATCH In review Sergei Shtylyov 2 participants 3 messages Sep 15, 2007 – Sep 17, 2007 libata

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 ide: call udma_filter() before resorting to the UltraDMA mask

Give the udma_filter() method call taking precedence over using the mode masks.

---
Posting this change separately as have been asked. Should apply to the current Linus' tree...

 drivers/ide/ide-dma.c |    7 +++---
 1 files changed, 4 insertions(+), 3 deletions(-)
drivers/ide/ide-dma.c +4 -3
Index: linux-2.6/drivers/ide/ide-dma.c
===================================================================
@@ -664,10 +664,11 @@ static unsigned int ide_get_mode_mask(id
 		if ((id->field_valid & 4) == 0)
 			break;
 
-		mask = id->dma_ultra & hwif->ultra_mask;
-
 		if (hwif->udma_filter)
-			mask &= hwif->udma_filter(drive);
+			mask = hwif->udma_filter(drive);
+		else
+			mask = hwif->ultra_mask;
+		mask &= id->dma_ultra;
 
 		if ((mask & 0x78) && (eighty_ninty_three(drive) == 0))
 			mask &= 0x07;