# Problem with Longshine LCS-8038TXR7 NIC



## Nokobon (Apr 28, 2009)

Hello,

I've just installed FreeBSD 7.1 and now I like to get it on the network.
The NIC is Longshine LCS-8038TXR7.

First of all I wondered if this card is compatible to FreeBSD, as in the Hardware Notes of Release 7.1 only Longshine LCS-8038TX-R is listed as supported by the rl(4) driver. Is there a difference to my card?

ifconfig says:

```
rl0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=8<VLAN_MTU>
        ether 00:08:54:54:eb:94
        media: Ethernet autoselect
        status: active
```

...and in dmesg.boot the card is listed as:

```
rl0<RealTek 8139 10/100BaseTX>
```
As far as I know my NIC has a RealTek 8139C+, not just 8139.

On the driver CD that came along with the NIC are FreeBSD drivers and in the Readme.txt it also says:

```
Q:How to check whether my new driver is working ? 
A:Use the "dmesg|more" command and if you can 
          see "<RealTek 8139C+ 10/100BaseTX>" 
	  or the correct card information then it is working.
```

So the card isn't recognized correct, isn't it?

Well I've tried to install the drivers from the CD as explained in the Readme:

```
Method 1:
	1.Copy if_rl.ko in "modules" directory to "/modules" directory and overwrite 
	  the existing file.
	2.Modify the file "/boot/defaults/loader.conf" and set "if_rl_load" in "Network 
	  drivers" section to "Yes"
	3.Reboot.

Method 2:
	Because the FreeBSD kernel has a default Rtl8139C   driver, this default driver 
	will be loaded even though the NIC on your computer is Rtl8139C+(because they 
	have the same vender ID and device ID). To use the new features of 8139C+, you 
	need to update your NIC driver and recompile your FreeBSD kernel.

	The main steps you have to do:(FreeBSDSrcDir means the directory of FreeBSD source code
	and it may be "/usr/src/sys")

		0.Replace your NIC with the card listed above.
		1.copy if_rl.c and if_rlreg.h to /FreeBSDSrcDir/pci directory
		2.recompile your kernel	(you must install your FreeBSD source code first !!)

			# cd /usr/src/sys/i386/conf
			# /usr/sbin/config GENERIC
			# cd ../../compile/GENERIC
			# make depend
			# make
			# make install
			# reboot
```

Method 1 didn't change anything and Method 2 failed at compiling the Kernel.

What also surprised me is that on the CDROM there is the rl driver, but the manual page for rl includes the Note: 

```
support for the 8139C+ chip is provided by the re(4) driver.
```


So now I am absolutely confused: I don't know which driver I need and on which way I get it to work...
As FreeBSD Newbie I'm asking you for advice to configure the NIC 

Thanks,
Nokobon


----------



## Nokobon (May 3, 2009)

Well, I completely reinstalled FreeBSD with the Network Card already in the PCI-slot.

Now it works without any manuell configuration, but is still listed as Realtek 8139 instead of 8139C+.

I have no idea why...but it does it's job now without any problems, so what do I care


----------



## tangram (May 4, 2009)

You didn't need to do all that stuff. You just have tried changing the network card setting in /etc/rc.conf and test if the card is support by re or rl.


----------



## Nokobon (May 11, 2009)

tangram said:
			
		

> You didn't need to do all that stuff. You just have tried changing the network card setting in /etc/rc.conf and test if the card is support by re or rl.


Yes, that was my first thought, too.
But then I took a look at the Raedme:

```
Because the FreeBSD kernel has a default Rtl8139C   driver, this default driver 
	will be loaded even though the NIC on your computer is Rtl8139C+(because they 
	have the same vender ID and device ID). To use the new features of 8139C+, you 
	need to update your NIC driver and recompile your FreeBSD kernel.
```
That confused me and therefore I tried these complicated unnecessary methods...


----------

