Re: Xircom Realport Cardbus Ethernet 10/100 + Modem 56
"Kevin Oberman" <[email protected]>
| Newsgroups | gmane.os.freebsd.devel.mobile |
|---|---|
| Message-ID | <[email protected]> |
> Date: Wed, 19 Jan 2005 20:56:36 +0100 > From: Robert Blacquiere <[email protected]> > Sender: [email protected] > > Hi all, > > I've been using this cardbus card on and off for debugging cases. And > last time i've used it was with 5.2.1 system which worked perfect. But > after upgrading to 5.3 and 5.3S it seems to hang my system. I've got some > wireless 16 and 32 bit cards and all work. But this one failes badly. > > I got the dc0 and sio4 device which all worked. > > I've tried also using: > hw.pci.allow_unsupported_io_range=1 > and have to add the following to prevent issues with the irda port. > hw.cbb.start_16_io="0x140" > > Does any body know a possible solution? It's hard to get some debug info. > Tomorrow i'll try and get dumping and some dmesg output available. Here is a kludge to make it work. The problem is probably a combination of a driver bug and a problem with busdma. Scott Long has been looking into this, but I have not heard anything from him for a while, so I guess I'll need to jog his elbow. In any case, this patch should get you back on-line. -- R. Kevin Oberman, Network Engineer Energy Sciences Network (ESnet) Ernest O. Lawrence Berkeley National Laboratory (Berkeley Lab) E-mail: [email protected] Phone: +1 510 486-8634 _______________________________________________ [email protected] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-mobile To unsubscribe, send any mail to "[email protected]"
if_dc.diff
(text/plain, 530 B)
--- if_dc.c~ Fri Oct 15 17:53:44 2004
+++ if_dc.c Mon Dec 20 14:22:48 2004
@@ -2151,8 +2151,8 @@
}
/* Allocate a busdma tag for mbufs. */
- error = bus_dma_tag_create(NULL, PAGE_SIZE, 0, BUS_SPACE_MAXADDR_32BIT,
- BUS_SPACE_MAXADDR, NULL, NULL, MCLBYTES * DC_TX_LIST_CNT,
+ error = bus_dma_tag_create(NULL, 1, 0, BUS_SPACE_MAXADDR_32BIT,
+ BUS_SPACE_MAXADDR, NULL, NULL, MCLBYTES,
DC_TX_LIST_CNT, MCLBYTES, 0, NULL, NULL, &sc->dc_mtag);
if (error) {
printf("dc%d: failed to allocate busdma tag\n", unit);