浏览代码

[PATCH] Old IDE, fix SATA detection for cabling

This is based on the proposed patches flying around but also checks that
the device in question is new enough to have word 93 rather thanb blindly
assuming word 93 == 0 means SATA (see ATA-5, ATA-7)

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Alan Cox 19 年之前
父节点
当前提交
1a1276e7b6
共有 1 个文件被更改,包括 4 次插入0 次删除
  1. 4 0
      drivers/ide/ide-iops.c

+ 4 - 0
drivers/ide/ide-iops.c

@@ -597,6 +597,10 @@ u8 eighty_ninty_three (ide_drive_t *drive)
 {
 	if(HWIF(drive)->udma_four == 0)
 		return 0;
+
+	/* Check for SATA but only if we are ATA5 or higher */
+	if (drive->id->hw_config == 0 && (drive->id->major_rev_num & 0x7FE0))
+		return 1;
 	if (!(drive->id->hw_config & 0x6000))
 		return 0;
 #ifndef CONFIG_IDEDMA_IVB