svn commit: r195474 - projects/mips/sys/mips/atheros

Oleksandr Tymoshenko gonzo at FreeBSD.org
Wed Jul 8 17:20:54 UTC 2009


Author: gonzo
Date: Wed Jul  8 17:20:53 2009
New Revision: 195474
URL: http://svn.freebsd.org/changeset/base/195474

Log:
  - Fix PCI routing code

Modified:
  projects/mips/sys/mips/atheros/ar71xx_pci.c
  projects/mips/sys/mips/atheros/ar71xxreg.h

Modified: projects/mips/sys/mips/atheros/ar71xx_pci.c
==============================================================================
--- projects/mips/sys/mips/atheros/ar71xx_pci.c	Wed Jul  8 17:10:16 2009	(r195473)
+++ projects/mips/sys/mips/atheros/ar71xx_pci.c	Wed Jul  8 17:20:53 2009	(r195474)
@@ -513,8 +513,11 @@ ar71xx_pci_maxslots(device_t dev)
 static int
 ar71xx_pci_route_interrupt(device_t pcib, device_t device, int pin)
 {
+	if (pci_get_slot(device) < AR71XX_PCI_BASE_SLOT)
+		panic("%s: PCI slot %d is less then AR71XX_PCI_BASE_SLOT",
+		    __func__, pci_get_slot(device));
 
-	return (pin);
+	return (pci_get_slot(device) - AR71XX_PCI_BASE_SLOT);
 }
 
 static device_method_t ar71xx_pci_methods[] = {

Modified: projects/mips/sys/mips/atheros/ar71xxreg.h
==============================================================================
--- projects/mips/sys/mips/atheros/ar71xxreg.h	Wed Jul  8 17:10:16 2009	(r195473)
+++ projects/mips/sys/mips/atheros/ar71xxreg.h	Wed Jul  8 17:20:53 2009	(r195474)
@@ -42,6 +42,10 @@
 #define AR71XX_PCI_IRQ_START		0
 #define AR71XX_PCI_IRQ_END		2
 #define AR71XX_PCI_NIRQS		3
+/*
+ * PCI devices slots are starting from this number
+ */
+#define	AR71XX_PCI_BASE_SLOT		17
 
 /* PCI config registers */
 #define	AR71XX_PCI_LCONF_CMD		0x17010000


More information about the svn-src-projects mailing list