2012-04-08 11:32:46

by Jan Simonson

[permalink] [raw]
Subject: RTL8192e-pci NIC

Hello,

I'm using a Samsung R720 laptop with a RTL8192e-pci NIC and Fedora 16. The
driver has been in kmod-staging from fusion until recently. Now it is removed
from staging and instead a driver is included in the kernel pack from Fedora.
After booting with this new kernel the relevant modules are loaded (see below)
but the wireless connection is not available. Using the module earlier from
Fusion worked most of the time and better and better over time.

[root@ymer ~]# uname -r
3.3.0-8.fc16.x86_64
[root@ymer ~]# lsmod|grep rtl
rtl8192se 93742 0
rtlwifi 104513 1 rtl8192se
mac80211 496450 2 rtl8192se,rtlwifi
cfg80211 195558 2 rtlwifi,mac80211
[root@ymer ~]# modinfo rtl8192se
filename:
/lib/modules/3.3.0-8.fc16.x86_64/kernel/drivers/net/wireless/rtlwifi/rtl8192se/rtl8192se.ko
firmware: rtlwifi/rtl8192sefw.bin
description: Realtek 8192S/8191S 802.11n PCI wireless
license: GPL
author: Larry Finger <[email protected]>
author: Realtek WlanFAE <[email protected]>
author: lizhaoming <[email protected]>
alias: pci:v000010ECd00008174sv*sd*bc*sc*i*
alias: pci:v000010ECd00008173sv*sd*bc*sc*i*
alias: pci:v000010ECd00008172sv*sd*bc*sc*i*
alias: pci:v000010ECd00008171sv*sd*bc*sc*i*
alias: pci:v000010ECd00008192sv*sd*bc*sc*i*
depends: rtlwifi,mac80211
intree: Y
vermagic: 3.3.0-8.fc16.x86_64 SMP mod_unload
parm: swenc:Set to 1 for software crypto (default 0)
(bool)
parm: ips:Set to 0 to not use link power save (default 1)
(bool)
parm: swlps:Set to 1 to use SW control power save (default 0)
(bool)
parm: fwlps:Set to 1 to use FW control power save (default 1)
(bool)
parm: debug:Set debug level (0-5) (default 0) (int)
[root@ymer ~]# lspci -nnv
snip---
02:00.0 Network controller [0280]: Realtek Semiconductor Co., Ltd.
RTL8192E/RTL8192SE Wireless LAN Controller [10ec:8192] (rev 01)
Subsystem: Askey Computer Corp. Device [144f:7160]
Flags: fast devsel, IRQ 16
I/O ports at 3000 [size=256]
Memory at f6000000 (32-bit, non-prefetchable) [size=16K]
Capabilities: [40] Power Management version 3
Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit+
Capabilities: [70] Express Legacy Endpoint, MSI 00
Capabilities: [100] Advanced Error Reporting
Capabilities: [140] Virtual Channel
Capabilities: [160] Device Serial Number 93-8a-a9-fe-ff-d2-24-00
Kernel modules: rtl8192se
snip---
[root@ymer ~]#

What is wrong and what shall I do to make the NIC function?

Best regards
Jan Simonson


2012-04-09 15:57:07

by Larry Finger

[permalink] [raw]
Subject: Re: RTL8192e-pci NIC

On 04/09/2012 10:10 AM, Jan Simonson wrote:

> In fact the module I used earier was included in rpm kmod-staging from the
> fusion repositary and thus strictly speaking not a part of Fedora. For some
> reason the r8192e-pci module was dropped from kmod-staging and I believed that
> the modules in Fedora would function. Now I know better!
>
> I managed to compile and install r8192e-pci into
> /lib/modules/3.3.1-3.fc16.x86_64/kernel/drivers/staging/rtl8192e/rtl8192e/
> (I'm running 3.3.1-3.fc16.x86_64 now) and also rtllib.ko,
> rtllib_crypt_ccmp.ko, rtllib_crypt_tkip.ko and rtllib_crypt_wep.ko into
> /lib/modules/3.3.1-3.fc16.x86_64/kernel/drivers/staging/rtl8192e/
> However trying to insmod any of them only results in
> insmod: error inserting 'xxx': -1 Unknown symbol in module
>
> They probably depend on each other so I have tested with everyone first, but to
> no avail. They must depend on some other module. I also tested with modprobe,
> but that didn't function either as they are not listed in modules.dep.
>
> Any pointer to how to make a correct entry in modules.dep or what they are
> depending on would be much appreciated.

The first step would be to look at the output of dmesg to see what actual
problem is reported. The kernel is not tolerant of just any module, and
building modules outside the tree is quite complicated. It will probably take
less time if you get the Fedora source, adjust the configuration, and rebuild
the kernel. Otherwise, you will need to prepare the special makefile needed for
building outside the kernel.

For modules.dep to be updated, you need to copy the appropriate modules into the
/lib/modules/`uname -r`/ directory tree, and then run the command 'depmod -a'.

As I do not use Fedora, I was not aware of Fusion. Perhaps you could get them to
reinstate this driver in their package. In addition, you might post a bug at
Redhat in hopes that they will change their standard configuration. As a last
resort, you could switch to a distro that includes this driver in their standard
kernels.

Larry

2012-04-11 15:51:19

by Jan Simonson

[permalink] [raw]
Subject: Re: RTL8192e-pci NIC

måndagen den 9 april 2012 17.16.25 skrev Larry Finger:
> Yes, but not likely very soon. This card is relatively rare, and there are
> several drivers for more common Realtek devices in staging.
>
> @Jan - There is one other option. As you can compile drivers, I will prepare
> a tested copy of the driver that will compile on all recent kernels, and
> put the source on my ftp site.

That would be very helpful! I look forward to hear from you again when it's
available on your ftp site.

Thanks again for helping me with this problem.

Jan

2012-04-09 20:33:11

by Jan Simonson

[permalink] [raw]
Subject: Re: RTL8192e-pci NIC

måndagen den 9 april 2012 15.26.30 skrev du:
> On Mon, Apr 09, 2012 at 10:57:03AM -0500, Larry Finger wrote:
> > As I do not use Fedora, I was not aware of Fusion. Perhaps you could
> > get them to reinstate this driver in their package. In addition, you
> > might post a bug at Redhat in hopes that they will change their
> > standard configuration. As a last resort, you could switch to a
> > distro that includes this driver in their standard kernels.

Actually I managed to load the modules and wlan0 shows up. (I follwed your
advice to use the same Fedora kernel and run depmod). Unfortunately I'm still
unable to connect to any network with or without encryption.

> Yeah, this is reasonable advice. I don't know why Fusion droped this
> package, but it might have been due to me making their life harder by
> integrating compat-wireless directly into the Fedora kernels. Since I
> am no longer doing that, they may be willing to reverse that decision.

I filed this bug http://bugzilla.rpmfusion.org/show_bug.cgi?id=2265 with Fusion
in case they were not aware of the two versions.

> I don't really see including a staging driver in Fedora unless it is
> clearly on the path to the "normal" part of the kernel. Any chance
> of that?

The TODO-file in kernel-3.3.fc16/linux-3.3.x86_64/drivers/staging/rtl8192e/
reads:

* merge into drivers/net/wireless/rtllib/rtl8192e
* clean up function naming

But when is, of course, another question.

Jan

2012-04-13 15:13:55

by Jan Simonson

[permalink] [raw]
Subject: Re: RTL8192e-pci NIC

onsdagen den 11 april 2012 11.02.28 skrev Larry Finger:
> I copied the kernel source into a separate directory and created a
> stand-alone build file. All that is working, but I discovered that
> sometime since kernel 3.2, the driver stopped working with my AP that uses
> WPA and 802.11g. The AP's that run 802.11g/WEP and 802.11n/WPA2 are OK. I'm
> bisecting now to find that problem.

Thanks, I'm standing by for information of where I can find your ftp site when
you are finished working with the driver.

Jan

2012-04-09 19:32:24

by John W. Linville

[permalink] [raw]
Subject: Re: RTL8192e-pci NIC

On Mon, Apr 09, 2012 at 10:57:03AM -0500, Larry Finger wrote:

> As I do not use Fedora, I was not aware of Fusion. Perhaps you could
> get them to reinstate this driver in their package. In addition, you
> might post a bug at Redhat in hopes that they will change their
> standard configuration. As a last resort, you could switch to a
> distro that includes this driver in their standard kernels.

Yeah, this is reasonable advice. I don't know why Fusion droped this
package, but it might have been due to me making their life harder by
integrating compat-wireless directly into the Fedora kernels. Since I
am no longer doing that, they may be willing to reverse that decision.

I don't really see including a staging driver in Fedora unless it is
clearly on the path to the "normal" part of the kernel. Any chance
of that?

John
--
John W. Linville Someday the world will need a hero, and you
[email protected] might be all we have. Be ready.

2012-04-13 16:08:01

by Larry Finger

[permalink] [raw]
Subject: Re: RTL8192e-pci NIC

On 04/13/2012 10:11 AM, Jan Simonson wrote:
> onsdagen den 11 april 2012 11.02.28 skrev Larry Finger:
>> I copied the kernel source into a separate directory and created a
>> stand-alone build file. All that is working, but I discovered that
>> sometime since kernel 3.2, the driver stopped working with my AP that uses
>> WPA and 802.11g. The AP's that run 802.11g/WEP and 802.11n/WPA2 are OK. I'm
>> bisecting now to find that problem.
>
> Thanks, I'm standing by for information of where I can find your ftp site when
> you are finished working with the driver.

Bisection failed for some reason. I still have not found why 802.11g/WPA does
not work.

Larry


2012-04-09 22:16:29

by Larry Finger

[permalink] [raw]
Subject: Re: RTL8192e-pci NIC

On 04/09/2012 02:26 PM, John W. Linville wrote:
> On Mon, Apr 09, 2012 at 10:57:03AM -0500, Larry Finger wrote:
>
>> As I do not use Fedora, I was not aware of Fusion. Perhaps you could
>> get them to reinstate this driver in their package. In addition, you
>> might post a bug at Redhat in hopes that they will change their
>> standard configuration. As a last resort, you could switch to a
>> distro that includes this driver in their standard kernels.
>
> Yeah, this is reasonable advice. I don't know why Fusion droped this
> package, but it might have been due to me making their life harder by
> integrating compat-wireless directly into the Fedora kernels. Since I
> am no longer doing that, they may be willing to reverse that decision.
>
> I don't really see including a staging driver in Fedora unless it is
> clearly on the path to the "normal" part of the kernel. Any chance
> of that?

Yes, but not likely very soon. This card is relatively rare, and there are
several drivers for more common Realtek devices in staging.

@Jan - There is one other option. As you can compile drivers, I will prepare a
tested copy of the driver that will compile on all recent kernels, and put the
source on my ftp site.

Larry


2012-04-09 15:10:43

by Jan Simonson

[permalink] [raw]
Subject: Re: RTL8192e-pci NIC

söndagen den 8 april 2012 11.16.04 skrev Larry Finger:
> On 04/08/2012 06:16 AM, Jan Simonson wrote:

> > I'm using a Samsung R720 laptop with a RTL8192e-pci NIC and Fedora 16. The
> > driver has been in kmod-staging from fusion until recently. Now it is
> > removed from staging and instead a driver is included in the kernel pack
> > from Fedora. After booting with this new kernel the relevant modules are
> > loaded (see below) but the wireless connection is not available. Using
> > the module earlier from Fusion worked most of the time and better and
> > better over time.

> To fix your problem, you need to run a kernel that contains r8192e_pci in
> its configuration. Driver rtl8192se cannot work with this device under any
> circumstances.
>
> I just downloaded a copy of the Fedora 16 Live CD and booted it in a virtual
> machine. The kernel there is 3.1.0-7.fc16.i686. It the configuration file,
> CONFIG_RTL8192E is not set, thus your device would not work with this
> kernel.
>
> @John: Was there a policy change at Fedora regarding staging drivers? Is
> there some kernel that has them enabled?

In fact the module I used earier was included in rpm kmod-staging from the
fusion repositary and thus strictly speaking not a part of Fedora. For some
reason the r8192e-pci module was dropped from kmod-staging and I believed that
the modules in Fedora would function. Now I know better!

I managed to compile and install r8192e-pci into
/lib/modules/3.3.1-3.fc16.x86_64/kernel/drivers/staging/rtl8192e/rtl8192e/
(I'm running 3.3.1-3.fc16.x86_64 now) and also rtllib.ko,
rtllib_crypt_ccmp.ko, rtllib_crypt_tkip.ko and rtllib_crypt_wep.ko into
/lib/modules/3.3.1-3.fc16.x86_64/kernel/drivers/staging/rtl8192e/
However trying to insmod any of them only results in
insmod: error inserting 'xxx': -1 Unknown symbol in module

They probably depend on each other so I have tested with everyone first, but to
no avail. They must depend on some other module. I also tested with modprobe,
but that didn't function either as they are not listed in modules.dep.

Any pointer to how to make a correct entry in modules.dep or what they are
depending on would be much appreciated.

Best regards
Jan

2012-04-08 16:16:09

by Larry Finger

[permalink] [raw]
Subject: Re: RTL8192e-pci NIC

On 04/08/2012 06:16 AM, Jan Simonson wrote:
> Hello,
>
> I'm using a Samsung R720 laptop with a RTL8192e-pci NIC and Fedora 16. The
> driver has been in kmod-staging from fusion until recently. Now it is removed
> from staging and instead a driver is included in the kernel pack from Fedora.
> After booting with this new kernel the relevant modules are loaded (see below)
> but the wireless connection is not available. Using the module earlier from
> Fusion worked most of the time and better and better over time.
>
> [root@ymer ~]# uname -r
> 3.3.0-8.fc16.x86_64
> [root@ymer ~]# lsmod|grep rtl
> rtl8192se 93742 0
> rtlwifi 104513 1 rtl8192se
> mac80211 496450 2 rtl8192se,rtlwifi
> cfg80211 195558 2 rtlwifi,mac80211
> [root@ymer ~]# modinfo rtl8192se
> filename:
> /lib/modules/3.3.0-8.fc16.x86_64/kernel/drivers/net/wireless/rtlwifi/rtl8192se/rtl8192se.ko
> firmware: rtlwifi/rtl8192sefw.bin
> description: Realtek 8192S/8191S 802.11n PCI wireless
> license: GPL
> author: Larry Finger<[email protected]>
> author: Realtek WlanFAE<[email protected]>
> author: lizhaoming<[email protected]>
> alias: pci:v000010ECd00008174sv*sd*bc*sc*i*
> alias: pci:v000010ECd00008173sv*sd*bc*sc*i*
> alias: pci:v000010ECd00008172sv*sd*bc*sc*i*
> alias: pci:v000010ECd00008171sv*sd*bc*sc*i*
> alias: pci:v000010ECd00008192sv*sd*bc*sc*i*
> depends: rtlwifi,mac80211
> intree: Y
> vermagic: 3.3.0-8.fc16.x86_64 SMP mod_unload
> parm: swenc:Set to 1 for software crypto (default 0)
> (bool)
> parm: ips:Set to 0 to not use link power save (default 1)
> (bool)
> parm: swlps:Set to 1 to use SW control power save (default 0)
> (bool)
> parm: fwlps:Set to 1 to use FW control power save (default 1)
> (bool)
> parm: debug:Set debug level (0-5) (default 0) (int)
> [root@ymer ~]# lspci -nnv
> snip---
> 02:00.0 Network controller [0280]: Realtek Semiconductor Co., Ltd.
> RTL8192E/RTL8192SE Wireless LAN Controller [10ec:8192] (rev 01)
> Subsystem: Askey Computer Corp. Device [144f:7160]
> Flags: fast devsel, IRQ 16
> I/O ports at 3000 [size=256]
> Memory at f6000000 (32-bit, non-prefetchable) [size=16K]
> Capabilities: [40] Power Management version 3
> Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit+
> Capabilities: [70] Express Legacy Endpoint, MSI 00
> Capabilities: [100] Advanced Error Reporting
> Capabilities: [140] Virtual Channel
> Capabilities: [160] Device Serial Number 93-8a-a9-fe-ff-d2-24-00
> Kernel modules: rtl8192se
> snip---
> [root@ymer ~]#
>
> What is wrong and what shall I do to make the NIC function?

Unfortunately, there are two PCI devices with ID 10ec:8192. The one with rev 10
uses rtl8192se, but the one with rev 01 (your device) uses driver r8192e_pci.ko
from drivers/staging/r8192e/.

When the system finds that PCI ID, it will load one of the two drivers. In the
probe routine of that driver, the revision number is tested, and an error is
returned. At that point, the other driver (if available) is loaded and it tests
the revision. Again it returns an error if the revision is wrong.

When the correct driver was not loaded first, the incorrect one will remain
loaded; however, it will be inactive.

To fix your problem, you need to run a kernel that contains r8192e_pci in its
configuration. Driver rtl8192se cannot work with this device under any
circumstances.

I just downloaded a copy of the Fedora 16 Live CD and booted it in a virtual
machine. The kernel there is 3.1.0-7.fc16.i686. It the configuration file,
CONFIG_RTL8192E is not set, thus your device would not work with this kernel.

@John: Was there a policy change at Fedora regarding staging drivers? Is there
some kernel that has them enabled?

Larry




2012-04-16 22:28:34

by Larry Finger

[permalink] [raw]
Subject: Re: RTL8192e-pci NIC

On 04/11/2012 10:51 AM, Jan Simonson wrote:
>
> That would be very helpful! I look forward to hear from you again when it's
> available on your ftp site.
>
> Thanks again for helping me with this problem.

As you saw from the copies of E-mails, my problem was in the configuration of my
kernel. The stand-alone source is available from

http://www.lwfinger.com/realtek/rtl8192e_pci_sa.tar.bz2

Download any unpack that file, cd to rtl8192e_sa and do a 'make' followed by
'sudo make install'. Your device should then work.

For anyone else reading this thread, this step is needed for Fedora and other
distros that do not enable staging drivers.

Larry


2012-04-11 16:02:32

by Larry Finger

[permalink] [raw]
Subject: Re: RTL8192e-pci NIC

On 04/11/2012 10:51 AM, Jan Simonson wrote:
>
> That would be very helpful! I look forward to hear from you again when it's
> available on your ftp site.
>
> Thanks again for helping me with this problem.

I copied the kernel source into a separate directory and created a stand-alone
build file. All that is working, but I discovered that sometime since kernel
3.2, the driver stopped working with my AP that uses WPA and 802.11g. The AP's
that run 802.11g/WEP and 802.11n/WPA2 are OK. I'm bisecting now to find that
problem.

Larry