瀏覽代碼

[PATCH] Fix and clean up quirk_intel_ide_combined() configuration

This change makes quirk_intel_ide_combined() dependent on the precise
conditions under which it is needed:

* IDE is built in
* IDE SATA option is not set
* ata_piix or ahci drivers are enabled

This fixes an issue where some modular configurations would not cause
the quirk to be enabled.

Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Signed-off-by: Linus torvalds <torvalds@osdl.org>
Jeff Garzik 19 年之前
父節點
當前提交
cc675230a9
共有 2 個文件被更改,包括 7 次插入2 次删除
  1. 2 2
      drivers/pci/quirks.c
  2. 5 0
      drivers/scsi/Kconfig

+ 2 - 2
drivers/pci/quirks.c

@@ -1233,7 +1233,7 @@ static void __init quirk_alder_ioapic(struct pci_dev *pdev)
 DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL,	PCI_DEVICE_ID_INTEL_EESSC,	quirk_alder_ioapic );
 DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL,	PCI_DEVICE_ID_INTEL_EESSC,	quirk_alder_ioapic );
 #endif
 #endif
 
 
-#ifdef CONFIG_SCSI_SATA
+#ifdef CONFIG_SCSI_SATA_INTEL_COMBINED
 static void __devinit quirk_intel_ide_combined(struct pci_dev *pdev)
 static void __devinit quirk_intel_ide_combined(struct pci_dev *pdev)
 {
 {
 	u8 prog, comb, tmp;
 	u8 prog, comb, tmp;
@@ -1310,7 +1310,7 @@ static void __devinit quirk_intel_ide_combined(struct pci_dev *pdev)
 		request_region(0x170, 8, "libata");	/* port 1 */
 		request_region(0x170, 8, "libata");	/* port 1 */
 }
 }
 DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL,    PCI_ANY_ID,	  quirk_intel_ide_combined );
 DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL,    PCI_ANY_ID,	  quirk_intel_ide_combined );
-#endif /* CONFIG_SCSI_SATA */
+#endif /* CONFIG_SCSI_SATA_INTEL_COMBINED */
 
 
 
 
 int pcie_mch_quirk;
 int pcie_mch_quirk;

+ 5 - 0
drivers/scsi/Kconfig

@@ -553,6 +553,11 @@ config SCSI_SATA_VITESSE
 
 
 	  If unsure, say N.
 	  If unsure, say N.
 
 
+config SCSI_SATA_INTEL_COMBINED
+	bool
+	depends on IDE=y && !BLK_DEV_IDE_SATA && (SCSI_SATA_AHCI || SCSI_ATA_PIIX)
+	default y
+
 config SCSI_BUSLOGIC
 config SCSI_BUSLOGIC
 	tristate "BusLogic SCSI support"
 	tristate "BusLogic SCSI support"
 	depends on (PCI || ISA || MCA) && SCSI && ISA_DMA_API
 	depends on (PCI || ISA || MCA) && SCSI && ISA_DMA_API