LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (https://www.linuxquestions.org/questions/slackware-14/)
-   -   Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (https://www.linuxquestions.org/questions/slackware-14/realtek-semiconductor-co-ltd-rtl8111-8168b-pci-express-gigabit-ethernet-controller-683656/)

morphynoman 11-15-2008 04:54 PM

Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller
 
Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev ff) (prog-if ff) !!! Unknown header type 7f

kernel 2.6.21.5
module r8169


Exact. This is. I can't get it working. Tell me what information may be needed. Thanks to all.

ErV 11-15-2008 05:18 PM

There are many similar threads on the internet.
Try to check them for possible solution.

Romanus81 11-15-2008 05:44 PM

Do these in a command prompt as root:

$ifconfig
$lsmod

and post the output.

Does $ifconfig eth0 up make it work?

morphynoman 11-21-2008 04:04 PM

Sorry for the delay, here is ifconfig

Code:

Morphy documentation # ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:12:C4:0E:86:70
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:2061255265 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
          Interrupt:18 Base address:0x8000

Here lsmod
Code:

Morphy documentation # lsmod
Module                  Size  Used by
i915                  25216  0
drm                    74516  1 i915
vboxdrv                65432  1
snd_seq_dummy          6788  0
snd_seq_oss            34688  0
snd_seq_midi_event    10240  1 snd_seq_oss
snd_seq                50640  5 snd_seq_dummy,snd_seq_oss,snd_seq_midi_event
snd_seq_device        10636  3 snd_seq_dummy,snd_seq_oss,snd_seq
snd_pcm_oss            41504  0
snd_mixer_oss          18432  1 snd_pcm_oss
pcmcia                35244  0
pcmcia_core            36628  1 pcmcia
capability              7304  0
commoncap              9344  1 capability
fuse                  41876  0
lp                    13864  0
parport_pc            27940  0
parport                34888  2 lp,parport_pc
pcspkr                  6400  0
psmouse                38792  0
arc4                    5888  2
ecb                    6656  2
iwl3945              169844  0
mac80211              157192  1 iwl3945
sdhci                  18828  0
r8169                  29704  0
mmc_core              25988  1 sdhci
cfg80211                9352  1 mac80211
snd_hda_intel        411540  6
snd_pcm                70148  4 snd_pcm_oss,snd_hda_intel
snd_timer              22788  4 snd_seq,snd_pcm
snd_page_alloc        12552  2 snd_hda_intel,snd_pcm
snd_hwdep              10756  1 snd_hda_intel
snd                    51620  18 snd_seq_dummy,snd_seq_oss,snd_seq,snd_seq_device,snd_pcm_oss,snd_mixer_oss,snd_hda_intel,snd_pcm,snd_timer,snd_hwdep
intel_agp              25500  1
sg                    30364  0
soundcore              9824  1 snd
agpgart                31304  3 drm,intel_agp
serio_raw              9220  0
ata_generic            9220  0
i2c_i801              11536  0
shpchp                33300  0
evdev                  12032  5


Romanus81 11-21-2008 06:30 PM

You might be running on a dhcp server, plug in the ethernet cable to your PC and type in as root either;
/etc/rc.d/rc.inet1 eth0_restart

or

ifconfig eth0 up
dhcpcd eth0

if it works but it doesn't work on startup, then your /etc/rc.d/rc.inet1 isn't activated.
as root;
chmod +x /etc/rc.d/rc.inet1

T3slider 11-21-2008 06:37 PM

The correct module is loaded and an interface appears in `ifconfig` output, meaning it is active. It just isn't configured. Have you run `netconfig` as root (or alternatively edit /etc/rc.d/rc.inet1.conf manually and restart the network interface)? I've had some problems with RealTek cards that required manually defining some connection attributes, but I don't know if it affects that card. See `man ethtool` if netconfig doesn't get it working (you may have to set the duplex and set the speed of the connection -- and turn autoneg off. You would have to try all of the combinations of half/full duplex and 1000/100/10 Mbps speed). Hopefully that isn't a problem on your card though.

disturbed1 11-21-2008 10:09 PM

I have a similar card
Code:

04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 02)
Your kernel does not a driver that works correctly for it. Even 2.6.26.2 does not have a correct driver. I had to get the driver from realtek themselves. http://www.realtek.com.tw/downloads/...Downloads=true
Code:

lsmod | grep 816
r8168                  30224  0

Notice the correct module is r8168 not r8169 Some of the folks on the Kernel IRC say this was fixed in later kernels.

The issue I had, the ethernet device would be recognized, sometimes get an IP, sometimes not. Then when it did get an IP, after some time, it would drop it.

For other RTL8169 cards, the default r8169 module works fine.
Code:

02:0a.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8169 Gigabit Ethernet (rev 10)

lsmod | grep r816
r8169                  26948  0


morphynoman 11-22-2008 03:21 PM

Ok, I downloaded r8169-6.008.00.tar.bz2 from the link of Realtek but you adviced me not to istall r8169 but r8168. I read somewhere that both modules work fine with our card. Should I try the one I downloaded?

Bertical 11-22-2008 06:33 PM

On my HP lappy the wireless card is detected as eth0 and the IP address from netconfig gets assigned to it. So wired networking doesn't work as eth1 doesn't have an address. I have to edit /etc/rc.d/rc.inet1.conf , delete the eth0 values and put them in eth1.

forum1793 11-22-2008 06:37 PM

I have same onboard NIC, I think.

as root: lspci shows RTL8111/8168B...
lsmod shows r8169.

This worked for me using slack12.1 with the 2.6.24.5 kernel and I haven't had any problems since. I have the 2.6.25.20, 2.6.26.8 and 2.6.27.6 kernels and it works for all of them.

But, I reread your inital post and see 2.6.21.. indicating slackware 12.0? The header error message also suggests problem.

First recommendation is to upgrade to slackware 12.1. If you don't want to do that get newer kernel. I would go with at least 2.6.25.11 but you should probably go with latest in 2.6.25 series. I'm having some problems with 2.6.26 and can't yet recommend. If you want you can try to install the r8169 you downloaded. Post if it works.

jay73 11-22-2008 06:41 PM

Err.. that NIC has been supported ever since 2.6.18. I should know because I have been using this type of NIC for the last three years.

forum1793 11-22-2008 06:42 PM

Quote:

Originally Posted by Bertical (Post 3351338)
On my HP lappy the wireless card is detected as eth0 and the IP address from netconfig gets assigned to it. So wired networking doesn't work as eth1 doesn't have an address. I have to edit /etc/rc.d/rc.inet1.conf , delete the eth0 values and put them in eth1.

Why doesn't it show up as wlan0? Which distribution/version are you running? Post rc.inet1.conf (less commented lines #).

disturbed1 11-23-2008 01:30 AM

Quote:

Originally Posted by jay73 (Post 3351343)
Err.. that NIC has been supported ever since 2.6.18. I should know because I have been using this type of NIC for the last three years.

Not sure what nic your using. But the one I have wasn't present in the market place until early 2008. The kernel was missing all of the vendor IDs. Honestly didn't know PCI Express GigE cards were common 3 years ago.

Don't see how it's possible your R8168 card was support with a vanilla kernel prior to 2.26.3, here's from that changelog
Quote:


As the 8168 wasn't supported by that version this patch simply removes
the bogus write from mac versions <= RTL_GIGA_MAC_VER_06.
So it wasn't possible for an r8168 to work properly prior to 2.26.3 ;) 2.18.x only goes to 2.18.8 and there are no patches for r8168. Other distros did hack their kernels by including Realtek's code on their own, perhaps that's what you are referring to?

2.26.5 does support some of the r8168 cards. But not all. There have been a plethoria of patches to the r8169 driver.

2.6.26.3 may have fixed the issue with my r8168, but I don't feel like updating the kernel again, as the Realtek drivers work just fine.
Quote:


r8169: avoid thrashing PCI conf space above RTL_GIGA_MAC_VER_06

commit 77332894c21165404496c56763d7df6c15c4bb09 upstream

The magic write to register 0x82 will often cause PCI config space on
my 8168 (PCI ID 10ec:8168, revision 2. mounted in an LG P300 laptop)
to be filled with ones during driver load, and thus breaking NIC
operation until reboot. If it does not happen on first driver load it
can easily be reproduced by unloading and loading the driver a few
times.
2.6.27.6 includes this patch which fixes the common problem of the nic going to sleep.
Quote:

r8169: wake up the PHY of the 8168

Upstream as a2de6b89b74b28052e293fdb39975a5a03c432e0

This is typically needed when some other OS puts the PHY
to sleep due to the disabling of WOL options in the BIOS
of the system.

jay73 11-23-2008 01:45 AM

Quote:

Not sure what nic your using. But the one I have wasn't present in the market place until early 2008. The kernel was missing all of the vendor IDs. Honestly didn't know PCI Express GigE cards were common 3 years ago.
Huh? Surely you are not implying that I am making this up? I ordered an ASUS P5B the day that core 2 duo was released (nearly three years ago). These boards are still available so it cannot be that difficult to check the NIC they have onboard. And yes, it was great fun getting it to work (still 2.6.15 back then and the driver available from realtek was total crap).

As for the type that came out only this year, you must be referring to the 8111C (mind the C, not B).

Yes, it is quite possible that support was simply patched on (note that the NIC used the r8169 or r1000 module at the time) but then nearly all distros did it (I think Slackware is the only major distro I did not give a spin back then; of all the rest, only Gentoo took somewhat longer to support the r8168). As for the issues you mention, yes, I had those too when I reached 2.6.24 but not before (the realtek driver worked fine, though). Right now, I am not sure what is happening. Either my modem is dying or the driver still does not work properly because I have been experiencing the occasional glitch again those lost few days...

forum1793 11-23-2008 12:28 PM

Quote:

Originally Posted by disturbed1 (Post 3351591)
...Don't see how it's possible your R8168 card was support with a vanilla kernel prior to 2.26.3...

Well, there's now at least two of us that said it is. And this is the NIC driver. If didn't work from the stock distribution, we would not be able to get new drivers over the internet without using different machines. That kind of headache we would remember.

I'm using the gigabyte 780g board. With the stock slackware 12.1 some of the PCI components showed up as unknown but they basically all worked. Using this NIC with stock drivers, I upgraded kernel. After 2.6.25 the PCI components are identified and no longer labeled as unknown. There's never been any problem with the NIC. In all cases, the module r8169 is used and worked well with the NIC that shows up in lspci as RTL8111/8168B..


All times are GMT -5. The time now is 02:47 PM.