patch-2.3.51 linux/drivers/block/ide-disk.c

Next file: linux/drivers/block/ide-geometry.c
Previous file: linux/drivers/block/hpt366.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.3.50/linux/drivers/block/ide-disk.c linux/drivers/block/ide-disk.c
@@ -105,8 +105,11 @@
 	 * The ATA spec tells large drives to return
 	 * C/H/S = 16383/16/63 independent of their size.
 	 * Some drives can be jumpered to use 15 heads instead of 16.
+	 * Some drives can be jumpered to use 4092 cyls instead of 16383.
 	 */
-	if (id->cyls == 16383 && id->sectors == 63 &&
+	if ((id->cyls == 16383
+	     || (id->cyls == 4092 && id->cur_cyls == 16383)) &&
+	    id->sectors == 63 &&
 	    (id->heads == 15 || id->heads == 16) &&
 	    id->lba_capacity >= 16383*63*id->heads)
 		return 1;

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)