Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 24 Mar 2005 18:08:53 +0800
From:      wsk <wsk@gddsn.org.cn>
To:        jhb@FreeBSD.org, current@freebsd.org
Subject:   Re: <SOLEVD> Rocketport uPCI ioaddr mapping failed under FreeBSD-5.3&CURRENT
Message-ID:  <424291B5.1060204@gddsn.org.cn>

next in thread | raw e-mail | index | archive | help
>
>
>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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?424291B5.1060204>