linux-ide.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] libata on SATA only (non-combined) & legcy mode
@ 2005-07-15  7:02 Seiichi Ikarashi
  0 siblings, 0 replies; only message in thread
From: Seiichi Ikarashi @ 2005-07-15  7:02 UTC (permalink / raw)
  To: Linux IDE

Hi Jeff,

The libata driver cannot be loaded if a system has a CD-ROM drive
connected via SATA instead of PATA because this is not combined
mode and reserved no ports in quirk_intel_ide_combined() function.
I think SATA only (non-combined) && legacy mode should be treated
as same as such combined mode. How about following patch?

----------------------- Original Message -----------------------
--- linux-2.6.11.7/drivers/pci/quirks.c.orig	2005-04-08 03:57:08.000000000 +0900
+++ linux-2.6.11.7/drivers/pci/quirks.c	2005-07-15 15:19:21.000000000 +0900
@@ -1195,7 +1195,7 @@ static void __devinit quirk_intel_ide_co
 		else if (tmp == 0x6)	/* bits 11x */
 			comb = (1 << 2);	/* PATA port 0, SATA port 1 */
 		else
-			return;			/* not in combined mode */
+			comb = 0;		/* not in combined mode */
 	} else {
 		WARN_ON((ich != 6) && (ich != 7));
 		tmp &= 0x3;  /* interesting bits 1:0 */
@@ -1204,7 +1204,7 @@ static void __devinit quirk_intel_ide_co
 		else if (tmp & (1 << 1))
 			comb = (1 << 0);	/* SATA port 0, PATA port 1 */
 		else
-			return;			/* not in combined mode */
+			comb = 0;		/* not in combined mode */
 	}
 
 	/*
@@ -1224,8 +1224,13 @@ static void __devinit quirk_intel_ide_co
 	 */
 	if (comb == (1 << 0))
 		request_region(0x1f0, 8, "libata");	/* port 0 */
-	else
+	else if (comb == (1 << 2))
 		request_region(0x170, 8, "libata");	/* port 1 */
+
+	if (comb == 0 && (prog & 0x5) == 0) {   /* Legacy but SATA only */
+		request_region(0x1f0, 8, "libata");     /* port 0 */
+		request_region(0x170, 8, "libata");     /* port 1 */
+	}
 }
 DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL,    PCI_ANY_ID,	  quirk_intel_ide_combined );
 #endif /* CONFIG_SCSI_SATA */
--------------------- Original Message Ends --------------------

-- 
Seiichi Ikarashi <ikarashi@miraclelinux.com>


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2005-07-15  7:02 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-07-15  7:02 [PATCH] libata on SATA only (non-combined) & legcy mode Seiichi Ikarashi

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).