# Realtek RTL8191SE (Lenovo Thinkpad T500)



## jrick (Aug 9, 2009)

I am having lots of trouble trying to get this wifi card to work. I bought my thinkpad on the assumption that the "Thinkpad Wifi" was Atheros, but apparently with the T400/T500 series Lenovo has switched to using Realtek chips.

First, some system info:


```
% uname -a
FreeBSD FGD135 8.0-BETA2 FreeBSD 8.0-BETA2 #0: Sat Aug  8 23:51:45 EDT 2009     joshua@FGD135:/usr/obj/usr/src/sys/GENERIC  amd64

% pciconf -lbcv
...
none4@pci0:3:0:0:       class=0x028000 card=0xe02010ec chip=0x817210ec rev=0x10 hdr=0x00
    vendor     = 'Realtek Semiconductor'
    class      = network
    bar   [10] = type I/O Port, range 32, base 0x2000, size 256, enabled
    bar   [14] = type Memory, range 32, base 0xf4300000, size 16384, enabled
    cap 01[40] = powerspec 3  supports D0 D1 D2 D3  current D0
    cap 05[50] = MSI supports 1 message, 64 bit
    cap 10[70] = PCI-Express 1 legacy endpoint max data 128(256) link x1(x1)
...
```

I have downloaded the drivers from http://www.station-drivers.com/tele...91se_1080.7.0520(www.station-drivers.com).exe (as recommended from this thread) and extracted it using 7zip on Windows.

In the extracted files, I see something like this:


```
% tree rtl8191se
rtl8191se
|-- 91_92_SE_Driver
|   |-- VistaX64
|   |   |-- net8192se.cat
|   |   |-- net8192se.inf
|   |   `-- rtl8192se.sys
|   |-- VistaX86
|   |   |-- net8192se.cat
|   |   |-- net8192se.inf
|   |   `-- rtl8192se.sys
|   |-- Win2K
|   |   |-- net8192se.inf
|   |   `-- rtl8192se.sys
|   |-- WinX64
|   |   |-- net8192se.cat
|   |   |-- net8192se.inf
|   |   `-- rtl8192se.sys
|   `-- WinXP
|       |-- net8192se.cat
|       |-- net8192se.inf
|       `-- rtl8192se.sys
|-- DATA
|   |-- 8192SE.ini
|   |-- RtWLan.ico
|   |-- RtlService.ini
|   |-- TrayIcon.bmp
|   |-- Vista
|   |   `-- 8192SE.ini
|   |-- WPS
|   |-- background.jpg
|   |-- background2.jpg
|   `-- text.file
|-- ISLangUni.ini
|-- ISSetup.dll
|-- IsConfig.ini
|-- Release notes
|   |-- ISS_Release.txt
|   |-- Release_92SE.txt
|   `-- Utility_Release.txt
|-- Setup.exe
|-- Setup.ini
|-- _Setup.dll
|-- background.jpg
|-- data1.cab
|-- data1.hdr
|-- data2.cab
|-- layout.bin
|-- setup.ico
|-- setup.inx
`-- setup.iss

9 directories, 44 files
```

I first tried using ndisgen on the VistaX64 drivers. I was able to create a loadable kernel module, and it did appear in kldstat. However, there was no /dev/ndis0 device. I tried again using the drivers in the WinX64 directory, however whenever I load these modules, I get a kernel panic (I think).

Is there anyone who has experience using this card, and why I am unable to get a ndis0 device when I load the kernel modules?


----------



## morbit (Aug 11, 2009)

> with the T400/T500 series Lenovo has switched to using Realtek chips.



My T400 still got Atheros.


```
$ dmesg -a | grep ath
ath0: <Atheros 5424/2424> mem 0xf4200000-0xf420ffff irq 17 at device 0.0 on pci3
ath0: [ITHREAD]
ath0: AR2425 mac 14.2 RF5424 phy 7.0
```

Sorry for not staying on topic.


----------



## jrick (Aug 11, 2009)

morbit said:
			
		

> My T400 still got Atheros.
> 
> 
> ```
> ...



Huh, odd. I thought both of them used Realtek chipsets now, but maybe it's just the T500.


----------



## alexandre (Jul 26, 2010)

It may be useless to indicate it by now, since your message has been posted a long time ago. But anyway, it might work with drivers in the section for Unix, rtl819*, rather than those in the section for Windows.
http://www.realtek.com.tw/products/productsView.aspx?Langid=1&PNid=21&PFid=48&Level=5&Conn=4


----------



## paulfrottawa (Jul 14, 2011)

I would like to compile this on Freebsd 8.2


RTL8191SE-VA2
From:
http://www.realtek.com.tw/downloads...226&DownTypeID=3&GetDown=false&Downloads=true

But I'm getting errors:

Here's some output.

```
comp5# make
"Makefile", line 11: Need an operator
"Makefile", line 14: Missing dependency operator
"Makefile", line 18: Need an operator
"Makefile", line 21: Missing dependency operator
"Makefile", line 22: warning: duplicate script for target "ifeq" ignored
"Makefile", line 23: Need an operator
"Makefile", line 26: Need an operator
"Makefile", line 49: Missing dependency operator
"Makefile", line 50: warning: duplicate script for target "ifeq" ignored
"Makefile", line 50: warning: duplicate script for target "(RTL8192SE,)" ignored
"Makefile", line 50: warning: duplicate script for target "(RTL8192SE_SA)" ignored
"Makefile", line 51: Need an operator
"Makefile", line 52: Missing dependency operator
"Makefile", line 53: warning: duplicate script for target "ifeq" ignored
"Makefile", line 53: warning: duplicate script for target "(RTL8192SE,)" ignored
"Makefile", line 54: Need an operator
make: fatal errors encountered -- cannot continue
comp5# gmake
make: chdir /lib/modules/8.2-RELEASE/build: No such file or directory
gmake: *** [all] Error 1
comp5#
```
 So I create /lib/modules/8.2-RELEASE/build and get this error.


```
comp5# gmake
make: don't know how to make modules. Stop
gmake: *** [all] Error 2
comp5#
```

Here's my pciconf -lbcv


```
none2@pci0:3:0:0:	class=0x028000 card=0x815110ec chip=0x817210ec rev=0x10 hdr=0x00
    vendor     = 'Realtek Semiconductor'
    device     = 'Realtek RTL8191SE wireless LAN 802.11N PCI-E NIC (RTL8191SE ?)'
    class      = network
    bar   [10] = type I/O Port, range 32, base 0x2000, size 256, enabled
    bar   [14] = type Memory, range 32, base 0x94600000, size 16384, enabled
    cap 01[40] = powerspec 3  supports D0 D1 D2 D3  current D0
    cap 05[50] = MSI supports 1 message, 64 bit 
    cap 10[70] = PCI-Express 1 legacy endpoint max data 128(256) link x1(x1)
ecap 0001[100] = AER 1 0 fatal 0 non-fatal 1 corrected
ecap 0002[140] = VC 1 max VC0
ecap 0003[160] = Serial 1 885522feff4ce000
```

Thanks in advance anyone.


----------



## morbit (Jul 14, 2011)

Are you trying to compile linux driver, or use this chip on FreeBSD?

If latter, write kind request to freebsd-wireless@FreeBSD.org 

There is PR already.

http://www.freebsd.org/cgi/query-pr.cgi?pr=155642


----------



## paulfrottawa (Jul 14, 2011)

OK Ill try the mailing list.

I have tried to do the ndisgen way but there's firmware required. That how Suse people got it working. 

So now I'm trying the later because tobisha's driver for windows doesn't have that firmware.
_________________________---
PS: Do I create a new mailing list request or use the follow up from that link?


----------



## morbit (Jul 14, 2011)

You have probably already read https://www.dan.me.uk/blog/2010/01/25/ndis-wifi-drivers-in-freebsd-project-evil/ ?

It seems that with i386 (only) some got lucky.


----------



## richardpl (Jul 19, 2011)

NDISulator for amd64 works on 8.2


----------



## paulfrottawa (Jul 21, 2011)

More info of "pciconf -lbcv" from Freebsd 9.0 beta1


```
none1@pci0:3:0:0:	class=0x028000 card=0x815110ec chip=0x817210ec rev=0x10 hdr=0x00
    vendor     = 'Realtek Semiconductor Co., Ltd.'
    device     = 'RTL8191SEvB Wireless LAN Controller'
    class      = network
    bar   [10] = type I/O Port, range 32, base 0x2000, size 256, enabled
    bar   [14] = type Memory, range 32, base 0xd4600000, size 16384, enabled
    cap 01[40] = powerspec 3  supports D0 D1 D2 D3  current D0
    cap 05[50] = MSI supports 1 message, 64 bit 
    cap 10[70] = PCI-Express 1 legacy endpoint max data 128(256) link x1(x1)
ecap 0001[100] = AER 1 0 fatal 0 non-fatal 1 corrected
ecap 0002[140] = VC 1 max VC0
ecap 0003[160] = Serial 1 885522feff4ce000
```


----------



## openwiki (Sep 7, 2011)

Hello world, 

I did some tests with ndisgen with vistax64_amd64 .inf and .sup driver.
Conversion of net8192se.inf failed with iconv.

Now I suppose , this scenario :
net8192se.inf contain chinese , japanese , arabic characters so iconv has difficult to convert all these languages.
é©æ‡‰æ€§å‚³è¼¸çŽ‡èª¿è®Šè‡ªå‹•åŒ–æ¨¡å¼ = Adaptive automatic transmission rate modulation mode

I mean that a manual translation in english of all this text will give good result with iconv.

Have you some experience with this problem ?

best regards.


----------



## openwiki (Sep 8, 2011)

Hello,

I apologize to you. net8192se.inf has bad control characters.
I summarize.
`iconv -f UTF-16 -t UTF-8 net8192se.inf`
It allows a conversion, but ndisgen failed.

So I add ^M^J in hex on amd64 0D 00 0A 00 at end of file.

ndisgen builds rtl8192se_sys.ko. But after loading, kernel don't reconize this module.

So ndisgen with Vistax64 driver failed today.


----------



## pkrich (Jan 3, 2012)

Dear guys! I've bought nettop computer with *RTL8192SU* USB wifi card integrated for pfSense box. So, how can I put it to work? pfSense is based on FreeBSD 7.2. I hope it's possible, but how? Somebody found an answer?


----------

