<SOLEVD> Rocketport uPCI ioaddr mapping failed under FreeBSD-5.3&CURRENT

wsk wsk at gddsn.org.cn
Thu Mar 24 02:10:42 PST 2005


>
>
>Can you try this patch below and verify it works?  If so, I'd like to commit 
>it.  Thanks!
>
>Index: rp_pci.c
>===================================================================
>RCS file: /usr/cvs/src/sys/dev/rp/rp_pci.c,v
>retrieving revision 1.9
>diff -u -r1.9 rp_pci.c
>--- rp_pci.c	21 Jun 2004 13:02:25 -0000	1.9
>+++ rp_pci.c	23 Mar 2005 19:37:43 -0000
>@@ -67,6 +67,7 @@
> #define RP_DEVICE_ID_4J		0x0007
> #define RP_DEVICE_ID_6M		0x000C
> #define RP_DEVICE_ID_4M		0x000D
>+#define RP_DEVICE_ID_UPCI_8O	0x0805
> 
> /**************************************************************************
>   MUDBAC remapped for PCI
>@@ -177,7 +178,14 @@
> 
> 	ctlp->bus_ctlp = NULL;
> 
>-	ctlp->io_rid[0] = 0x10;
>+	switch (pci_get_devid(dev)) {
>+	case RP_DEVICE_ID_UPCI_8O:
>+		ctlp->io_rid[0] = PCIR_BAR(2);
>+		break;
>+	default:
>+		ctlp->io_rid[0] = PCIR_BAR(0);
>+		break;
>+	}
> 	ctlp->io[0] = bus_alloc_resource_any(dev, SYS_RES_IOPORT,
> 		&ctlp->io_rid[0], RF_ACTIVE);
> 	if(ctlp->io[0] == NULL) {
>
    I've been tested and works failled after patched your diff! here is 
my boot msgs:
rp0: <RocketPort PCI> port 0xdd80-0xddff,0xde00-0xdeff mem 
0xfcedff80-0xfcedffff irq 19 at device 10.0 on pci2
rp0: failed: rid 0x10 is memory, requested 4
rp0: ioaddr mapping failed for RocketPort(PCI).
device_attach: rp0 attach returned 6



More information about the freebsd-current mailing list