Module Name:    src
Committed By:   jakllsch
Date:           Wed Feb  2 04:18:14 UTC 2011

Modified Files:
        src/sys/dev/pci: sdhc_pci.c

Log Message:
Like some other TI SDHCI parts, PCI_PRODUCT_TI_PCIXX12SD also needs the SD
card moved to the SDHCI controller.


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 src/sys/dev/pci/sdhc_pci.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/pci/sdhc_pci.c
diff -u src/sys/dev/pci/sdhc_pci.c:1.3 src/sys/dev/pci/sdhc_pci.c:1.4
--- src/sys/dev/pci/sdhc_pci.c:1.3	Fri Oct  2 04:38:47 2009
+++ src/sys/dev/pci/sdhc_pci.c	Wed Feb  2 04:18:14 2011
@@ -1,4 +1,4 @@
-/*	$NetBSD: sdhc_pci.c,v 1.3 2009/10/02 04:38:47 uebayasi Exp $	*/
+/*	$NetBSD: sdhc_pci.c,v 1.4 2011/02/02 04:18:14 jakllsch Exp $	*/
 /*	$OpenBSD: sdhc_pci.c,v 1.7 2007/10/30 18:13:45 chl Exp $	*/
 
 /*
@@ -18,7 +18,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: sdhc_pci.c,v 1.3 2009/10/02 04:38:47 uebayasi Exp $");
+__KERNEL_RCSID(0, "$NetBSD: sdhc_pci.c,v 1.4 2011/02/02 04:18:14 jakllsch Exp $");
 
 #include <sys/param.h>
 #include <sys/device.h>
@@ -89,6 +89,15 @@
 	},
 
 	{
+		PCI_VENDOR_TI,
+		PCI_PRODUCT_TI_PCIXX12SD,
+		0xffff,
+		0xffff,
+		3,
+		SDHC_PCI_QUIRK_TI_HACK
+	},
+
+	{
 		PCI_VENDOR_ENE,
 		PCI_PRODUCT_ENE_CB712,
 		0xffff,
@@ -278,11 +287,19 @@
 	pcitag_t tag;
 	pcireg_t id, reg;
 
-	/* Look at func 3 for the flash device */
-	tag = pci_make_tag(pc, pa->pa_bus, pa->pa_device, 3);
+	/* Look at func - 1 for the flash device */
+	tag = pci_make_tag(pc, pa->pa_bus, pa->pa_device, pa->pa_function - 1);
 	id = pci_conf_read(pc, tag, PCI_ID_REG);
-	if (PCI_PRODUCT(id) != PCI_PRODUCT_TI_PCI72111FM)
+	if (PCI_VENDOR(id) != PCI_VENDOR_TI) {
 		return;
+	}
+	switch (PCI_PRODUCT(id)) {
+	case PCI_PRODUCT_TI_PCI72111FM:
+	case PCI_PRODUCT_TI_PCIXX12FM:
+		break;
+	default:
+		return;
+	}
 
 	/*
 	 * Disable MMC/SD on the flash media controller so the

Reply via email to