# i386 FreeBSD 8.1-RELEASE - P811B-4R - rl driver



## h0kum (Aug 20, 2010)

Hi,

First I want to start with the note that I know Realtek is no good,
yet I will appreciate any assistance that you may provide.

here are details of the problem:

P811B is 4 port Ethernet card with built-in mini-PCI slot where I have
attached Atheros 802.11a/b/g/n Wireless PCI Adapter (AR5416).
That also requires to disable 4th port from the jumpers on the card.

I have installed FreeBSD 8.1-RELEASE i386

pciconf -vlb

```
pcib6@pci0:5:0:0:       class=0x060400 card=0x00000000 chip=0x814812d8
rev=0x00 hdr=0x01
   vendor     = 'Pericom Semiconductor'
   class      = bridge
   subclass   = PCI-PCI
rl0@pci0:6:8:0: class=0x020000 card=0x813910ec chip=0x813910ec rev=0x10 hdr=0x00
   vendor     = 'Realtek Semiconductor'
   device     = 'Realtek RTL8139 Family PCI Fast Ethernet NIC
(RTL-8139/8139C/8139D)'
   class      = network
   subclass   = ethernet
   bar   [14] = type Memory, range 32, base 0xe0110200, size 256, enabled
rl1@pci0:6:9:0: class=0x020000 card=0x813910ec chip=0x813910ec rev=0x10 hdr=0x00
   vendor     = 'Realtek Semiconductor'
   device     = 'Realtek RTL8139 Family PCI Fast Ethernet NIC
(RTL-8139/8139C/8139D)'
   class      = network
   subclass   = ethernet
   bar   [14] = type Memory, range 32, base 0xe0110100, size 256, enabled
rl2@pci0:6:10:0:        class=0x020000 card=0x813910ec chip=0x813910ec
rev=0x10 hdr=0x00
   vendor     = 'Realtek Semiconductor'
   device     = 'Realtek RTL8139 Family PCI Fast Ethernet NIC
(RTL-8139/8139C/8139D)'
   class      = network
   subclass   = ethernet
   bar   [10] = type I/O Port, range 32, base 0x1000, size 256, enabled
   bar   [14] = type Memory, range 32, base 0xe0110000, size 256, enabled
ath0@pci0:6:11:0:       class=0x028000 card=0x2071168c chip=0x0023168c
rev=0x01 hdr=0x00
   vendor     = 'Atheros Communications Inc.'
   device     = '802.11a/b/g/n Wireless PCI Adapter (AR5416)'
   class      = network
   bar   [10] = type Memory, range 32, base 0xe0100000, size 65536, enabled
```



dmesg

```
rl0: <RealTek 8139 10/100BaseTX> port 0x1200-0x12ff mem
0xe0110200-0xe01102ff irq 21 at device 8.0 on pci6
rl0: reset never completed!
rl0: unknown device ID: ffff assuming 8139
rl0: MII without any phy!
device_attach: rl0 attach returned 6
rl1: <RealTek 8139 10/100BaseTX> port 0x1100-0x11ff mem
0xe0110100-0xe01101ff irq 22 at device 9.0 on pci6
rl1: reset never completed!
rl1: unknown device ID: ffff assuming 8139
rl1: MII without any phy!
device_attach: rl1 attach returned 6
rl2: <RealTek 8139 10/100BaseTX> port 0x1000-0x10ff mem
0xe0110000-0xe01100ff irq 23 at device 10.0 on pci6
miibus1: <MII bus> on rl2
rlphy0: <RealTek internal media interface> PHY 0 on miibus1
rlphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
rl2: Ethernet address: 00:06:4f:67:08:f5
rl2: [ITHREAD]
rl2: link state changed to DOWN
```


ath0 works fine
rl2 works fine

rl0 and rl1 don't and of course as you may suspect they are missing
from ifconfig -a

if I remove the miniPCI Atheros and enable 4th port it is the same
picture but this time 4th port rl3 works fine and rl0, rl1, and rl2
don't in the same way.

Any suggestions will be much appreciated.


----------



## yongari@ (Aug 22, 2010)

I posted possible fix for the issue. See the following URL.
http://lists.freebsd.org/pipermail/freebsd-stable/2010-August/058348.html


----------



## h0kum (Aug 22, 2010)

*i386 FreeBSD 8.1-RELEASE - P811B-4R - rl driver - FIXED*

Hi,

I applied the patch provided by Pyun YongHyeon to the rl driver.
Then put 

```
hint.rl.0.prefer_iomap="0"  # for rl0
hint.rl.1.prefer_iomap="0"  # for rl1
hint.rl.3.prefer_iomap="0"  # for rl3
```

and all 3 adapters are now working fine.

I absolutely agree that Realtek makes low-end adapters.

But in my case scenario I am building a router with WiFi access point and this particular device allows me to do it on mini-ITX board ( single PCI slot ).

Again ... I want to send my thanks and regards to Pyun for making this possible for me.

Regards,
Nikola


----------

