Netgear GA311-rev-a1

  • Thread starter Deleted member 54719
  • Start date
D

Deleted member 54719

Guest
This is a mid 2000s 1000TX PCI network card based on the RTL8169S-32 chip. I have zero success using it on FreeBSD, although it is supported well under Linux.

The card is not recognized by the stock BSD driver, nor the Netgear downloaded sourcecode driver that is advertised as being compatible through FreeBSD 7.

I added some debugging code to the Netgear source driver (well, first added the correct vendor and device IDs to the driver), then printed out where the driver was failing. It fails during driver setup of the MAC. I then managed to get a hold of the datasheet for the RTL8169S-32 as well as reviewed the Linux driver and Whoa Charlie! That chip is a complicated device. There is much code in the Linux driver to setup and initialize the card: code that is beyond me with just a cursory glance. Nowhere near that amount of setup code exists in the Netgear supplied driver.

Has anyone addressed this particular device, or it's Broadcom engine under FreeBSD?
 
I guess due to the deafening sound of crickets chirping, no one has any info about RTL8169S-32 NIC support?
 
It had a netgear specific vender:device id so I modified the driver to include its id. It still failed at device setup. The weird thing is that Netlink provided a bsd driver for up through freebsd 7, but it didn't work in 11.
 
re: thread that mentioned the NIC by name - no joy. added the device id by hand and built then loaded the module with the following results.


re0: <RealTek 8169/8169S/8169SB(L)/8110S/8110SB(L) Gigabit Ethernet> port 0xde00-0xdeff mem 0xfe1eef00-0xfe1eefff irq 22 at device 1.0 on pci1
re0: Chip rev. 0x7c800000
re0: MAC rev. 0x00700000
re0: attaching PHYs failed
device_attach: re0 attach returned 6

This is where I was at a month ago when last I investigated. It fails when initializing the MAC. I know the card is good, as I can USB boot linux and use it in the target host.
 
Problem solved. The community driver for this card is broken. The Netgear legacy driver does work, but their instructions for building it are either incorrect or too hard to follow.

1) save the /sys/dev/re/if_re* files somewhere else
2) copy the if_re* files from the vendor archive to /sys/dev/re
3) go to /sys/modules/re
4) make clean (as root)
5) make (as root)
6) at this point I was able to kldload ./if_re.ko and the NIC initialized properly.
 
too much effort to make a cheap NIC to work and you don't know how it will perform in the heavy load. I would buy another NIC that have good support and throw away this one.
 
Back
Top