Date: Tue, 28 Jul 1998 16:35:53 -0400 (EDT) From: Bill Paul <wpaul@skynet.ctr.columbia.edu> To: hackers@FreeBSD.ORG Subject: Call for testers for 3c905B driver Message-ID: <199807282035.QAA27573@skynet.ctr.columbia.edu>
next in thread | raw e-mail | index | archive | help
For those of you that care, I have a 3Com 3c905B driver ready for testing for FreeBSD 3.0 and 2.2.x. You can obtain the driver source code from the following places: http://www.freebsd.org/~wpaul/3Com/3.0 FreeBSD 3.0 source code http://www.freebsd.org/~wpaul/3Com/2.2 FreeBSD 2.2.x source code There are two files: if_xl.c and if_xlreg.h, which should go in /sys/pci. The only differences between versions are those associated with differences between FreeBSD 2.2.x and 3.0-current (this includes timeout handling, a little bit of PCI configuration and multicast support). This driver should work with the 3c900, 3c905 and 3c905B Etherlink XL and Fast Etherlink XL boards, as well as integrated 3Com controllers on certain recent Dell systems (Optiplex GX1 and Precision). So far I have only tested it with a 3c905B-TX integrated controller on a Dell Optiplex and 3c900 COMBO card. Note that the vortex driver (if_vx.c) already supports the 3c900 and original 3c905 cards, but it uses PIO to transfer packets to and from the NIC's RAM. My driver uses bus master DMA instead. If you want to use my driver instead of the vortex driver for the 3c900 and 3c905 cards, you should edit /sys/pci/if_vx_pci.c and comment out the portion of vx_pci_probe() that checks the PCI device IDs for the Etherlink XL cards, otherwise the vortex driver may be assigned to them instead of mine. The xl driver includes support for BPF, ifmedia and multicast. For the 3c905B, there is a 64-bit multicast hash filter which will be used if detected. For the 3c900, you only have a 'receive all multicast' mode, which requires software filtering but is better than nothing. I still have a little work to do in the ifmedia support. You may need to force the card into the proper mode to support the connector you're using. For BNC, use ifconfig xl0 media 10base2/BNC. For AUI, use ifconfig xl0 media 10base5/AUI. For RJ-45, use ifconfig xl0 media 10baseT/UTP. For 3c905B cards, the media should be properly autodetected. You can use ifconfig xl0 media autoselect to initiate another autonegotiation session with a link partner. I would appreciate it if people with 3c900, 3c905 and 3c905B hardware could test this driver for me. I'm particularly interested to hear it it works correctly with Fast Etherlink XL boards (3c905 10/100 cards). These cards use a NatSemi 10/100 PHY via the MII interface: I don't have one of these to test, so I can't be sure the MII support will work correctly. If you test the driver, please sent me a note letting me know if it works or not. If it doesn't work, please try to describe the problem you're having throroughly. Specify a way to reproduce the problem, if possible. To add the driver to your kernel, you need to do the following: - Edit /sys/conf/files and add a line that says: pci/if_xl.c optional xl device-driver - Edit your kernel config file and add a line that says: device xl0 - Copy if_xl.c and if_xlreg.h to /sys/pci. - Compile a new kernel and boot it. You may optionally want to edit /sys/pci/if_vx_pci.c to stop it probing the Etherlink XL cards so that if_xl.c can see them. -Bill -- ============================================================================= -Bill Paul (212) 854-6020 | System Manager, Master of Unix-Fu Work: wpaul@ctr.columbia.edu | Center for Telecommunications Research Home: wpaul@skynet.ctr.columbia.edu | Columbia University, New York City ============================================================================= "It is not I who am crazy; it is I who am mad!" - Ren Hoek, "Space Madness" ============================================================================= To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199807282035.QAA27573>