View previous topic :: View next topic |
Author |
Message |
Angrychile Apprentice


Joined: 27 Oct 2009 Posts: 235
|
Posted: Thu Dec 05, 2013 1:15 am Post subject: SOLVED: rtl8723au: the wireless card... |
|
|
I have bought a Lenovo Ideapad Yoga 13 and it contains rtl8723au as a wireless card. There is an unofficial driver for here. Just to point out before anyone asks, the card doesn't require firmware. I have been using ubuntu on this laptop with the driver and it has been working fine.
However, on gentoo, apparently it appears as an ethernet card. It shows up in ifconfig:
Code: | lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Local Loopback)
RX packets 8 bytes 792 (792.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 8 bytes 792 (792.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
sit0: flags=128<NOARP> mtu 1480
sit txqueuelen 0 (IPv6-in-IPv4)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wlp0s26u1u4i2: flags=4098<BROADCAST,MULTICAST> mtu 1500
ether 20:16:d8:f0:51:d9 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
|
However, iwlist claims that it doesn't support scanning. iw list and iw phy also show nothing. Finally, nm-applet calls it a ethernet connection. The driver is indeed loaded for the right thing:
Code: | #lsusb -t
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/8p, 480M
|__ Port 5: Dev 3, If 0, Class=Human Interface Device, Driver=usbhid, 12M
|__ Port 7: Dev 4, If 0, Class=Video, Driver=uvcvideo, 480M
|__ Port 7: Dev 4, If 1, Class=Video, Driver=uvcvideo, 480M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M
|__ Port 3: Dev 3, If 0, Class=Vendor Specific Class, Driver=, 480M
|__ Port 4: Dev 4, If 0, Class=Wireless, Driver=, 480M
|__ Port 4: Dev 4, If 1, Class=Wireless, Driver=, 480M
|__ Port 4: Dev 4, If 2, Class=Vendor Specific Class, Driver=rtl8723au, 480M
|__ Port 5: Dev 5, If 0, Class=Human Interface Device, Driver=usbhid, 12M |
This is the same device as in ubuntu.
Strangely, in ubuntu, both ifconfig -a shows it and iwlist scan works, but iw phys shows nothing!
Previously threads/posts that I have found on this issue end abruptly, as per usual: 1 and 2.
I should note that nothing out of the ordinary appears in dmesg. The only note worthy thing is that it is renamed by udev:
Code: |
[ 2.569212] usb 1-1.4: skipped 1 descriptor after configuration
[ 2.569332] usb 1-1.4: default language 0x0409
[ 2.569707] usb 1-1.4: udev 4, busnum 1, minor = 3
[ 2.569710] usb 1-1.4: New USB device found, idVendor=0bda, idProduct=1724
[ 2.569712] usb 1-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 2.569714] usb 1-1.4: Product: 802.11n WLAN Adapter
[ 2.569716] usb 1-1.4: Manufacturer: Realtek
[ 2.569718] usb 1-1.4: SerialNumber: 00e04c000001
[ 2.569894] usb 1-1.4: usb_probe_device
[ 2.569898] usb 1-1.4: configuration #1 chosen from 1 choice
[ 2.569967] usb 1-1.4: adding 1-1.4:1.0 (config #1, interface 0)
[ 2.570150] usb 1-1.4: adding 1-1.4:1.1 (config #1, interface 1)
[ 2.570259] usb 1-1.4: adding 1-1.4:1.2 (config #1, interface 2)
...
[ 2.939747] rtl8723au 1-1.4:1.2: usb_probe_interface
[ 2.939754] rtl8723au 1-1.4:1.2: usb_probe_interface - got id
...
[ 3.060046] usbcore: registered new interface driver rtl8723au
[ 3.068587] systemd-udevd[1305]: renamed network interface wlan0 to wlp0s26u1u4i2 |
In ubuntu, there is was a generated udev rules file that named it wlan0. Since the driver seemed to be installed well, perhaps the offender is udev? _________________ hola
Last edited by Angrychile on Thu Dec 05, 2013 8:24 pm; edited 1 time in total |
|
Back to top |
|
 |
Logicien Veteran


Joined: 16 Sep 2005 Posts: 1555 Location: Montréal
|
Posted: Thu Dec 05, 2013 3:27 am Post subject: |
|
|
Wireless devices are Ethernet devices with wireless extensions. When you do iwlist on Gentoo are you root? It can be needed. You may miss some necessary kernel options to make the rtl8723au work on Gentoo like 80211, Usb and things that are related. I dont think Udev can be faulty here because rename a device dont change it's fonctionnalities.
Are you sure that this module can work on non Ubuntu systems? You may have to follow Ubuntu Linux kernel configuration with Gentoo. _________________ Paul |
|
Back to top |
|
 |
666threesixes666 Veteran


Joined: 31 May 2011 Posts: 1248 Location: 42.68n 85.41w
|
Posted: Thu Dec 05, 2013 3:47 am Post subject: |
|
|
emerge linux-firmware & if all else fails post UBUNTUS lsmod & dmesg. |
|
Back to top |
|
 |
Angrychile Apprentice


Joined: 27 Oct 2009 Posts: 235
|
Posted: Thu Dec 05, 2013 7:13 am Post subject: |
|
|
Logicien wrote: | Wireless devices are Ethernet devices with wireless extensions. When you do iwlist on Gentoo are you root? It can be needed. You may miss some necessary kernel options to make the rtl8723au work on Gentoo like 80211, Usb and things that are related. I dont think Udev can be faulty here because rename a device dont change it's fonctionnalities.
Are you sure that this module can work on non Ubuntu systems? You may have to follow Ubuntu Linux kernel configuration with Gentoo. |
Yes, I was root. For udev, I see, I wasn't sure whether udev did more than just rename things, so I guess all that is in the kernel?
With regards to kernel options, cfg80211 is enabled. Obviously, something is right because linux tells the world about some network device, at least.
666threesixes666 wrote: | emerge linux-firmware & if all else fails post UBUNTUS lsmod & dmesg. |
As I said, it doesn't require firmware, as the linked post in the OP (the link 1) says. I guess it can't hurt to do it anyway.
Ubuntu dmesg
and
And here is in ubuntu lsmod
Code: | Module Size Used by
dm_crypt 23012 1
hid_sensor_magn_3d 13266 0
hid_sensor_gyro_3d 13266 0
hid_sensor_accel_3d 13279 0
hid_sensor_trigger 12916 3 hid_sensor_gyro_3d,hid_sensor_accel_3d,hid_sensor_magn_3d
industrialio_triggered_buffer 12882 3 hid_sensor_gyro_3d,hid_sensor_accel_3d,hid_sensor_magn_3d
kfifo_buf 13294 1 industrialio_triggered_buffer
industrialio 53968 6 hid_sensor_trigger,hid_sensor_gyro_3d,industrialio_triggered_buffer,hid_sensor_accel_3d,kfifo_buf,hid_sensor_magn_3d
hid_sensor_iio_common 13807 3 hid_sensor_gyro_3d,hid_sensor_accel_3d,hid_sensor_magn_3d
cuse 13566 3
cfg80211 504229 0
x86_pkg_temp_thermal 14269 0
intel_powerclamp 19031 0
coretemp 17728 0
kvm 457597 0
crc32_pclmul 13160 0
ghash_clmulni_intel 13259 0
aesni_intel 55720 6502
aes_x86_64 17131 1 aesni_intel
lrw 13294 1 aesni_intel
gf128mul 14951 1 lrw
glue_helper 14095 1 aesni_intel
ablk_helper 13597 1 aesni_intel
cryptd 20501 3253 ghash_clmulni_intel,aesni_intel,ablk_helper
joydev 17575 0
snd_hda_codec_hdmi 41732 1
uvcvideo 82247 0
snd_hda_codec_conexant 57136 1
videobuf2_vmalloc 13216 1 uvcvideo
videobuf2_memops 13362 1 videobuf2_vmalloc
videobuf2_core 40903 1 uvcvideo
videodev 139144 2 uvcvideo,videobuf2_core
microcode 23650 0
psmouse 104113 0
8723au 1086340 0
serio_raw 13462 0
snd_hda_intel 57183 3
snd_hda_codec 194881 3 snd_hda_codec_hdmi,snd_hda_codec_conexant,snd_hda_intel
hid_multitouch 17645 0
rts5139 318332 0
hid_sensor_hub 19096 5 hid_sensor_trigger,hid_sensor_gyro_3d,hid_sensor_accel_3d,hid_sensor_magn_3d,hid_sensor_iio_common
snd_hwdep 13613 1 snd_hda_codec
parport_pc 32866 0
snd_pcm 107140 3 snd_hda_codec_hdmi,snd_hda_codec,snd_hda_intel
ppdev 17711 0
snd_page_alloc 18798 2 snd_pcm,snd_hda_intel
snd_seq_midi 13324 0
snd_seq_midi_event 14899 1 snd_seq_midi
snd_rawmidi 30465 1 snd_seq_midi
rfcomm 74658 0
bnep 23966 2
snd_seq 66061 2 snd_seq_midi_event,snd_seq_midi
snd_seq_device 14497 3 snd_seq,snd_rawmidi,snd_seq_midi
bluetooth 391597 10 bnep,rfcomm
snd_timer 30038 2 snd_pcm,snd_seq
snd 73802 17 snd_hwdep,snd_timer,snd_hda_codec_hdmi,snd_hda_codec_conexant,snd_pcm,snd_seq,snd_rawmidi,snd_hda_codec,snd_hda_intel,snd_seq_device,snd_seq_midi
mac_hid 13253 0
soundcore 12680 1 snd
lpc_ich 21163 0
mei_me 18418 0
mei 78609 1 mei_me
lp 17799 0
parport 42481 3 lp,ppdev,parport_pc
nls_iso8859_1 12713 1
usbhid 53067 0
hid 106050 3 hid_multitouch,hid_sensor_hub,usbhid
i915 729653 3
i2c_algo_bit 13564 1 i915
ahci 30063 4
drm_kms_helper 53165 1 i915
libahci 32088 1 ahci
drm 303157 4 i915,drm_kms_helper
wmi 19363 0
video 19574 1 i915
|
and lsusb -t in ubuntu
Code: |
/: Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
/: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 480M
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/8p, 480M
|__ Port 5: Dev 3, If 0, Class=Human Interface Device, Driver=usbhid, 12M
|__ Port 7: Dev 4, If 0, Class=Video, Driver=uvcvideo, 480M
|__ Port 7: Dev 4, If 1, Class=Video, Driver=uvcvideo, 480M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M
|__ Port 3: Dev 3, If 0, Class=Vendor Specific Class, Driver=rts5139, 480M
|__ Port 4: Dev 4, If 0, Class=Wireless, Driver=, 480M
|__ Port 4: Dev 4, If 1, Class=Wireless, Driver=, 480M
|__ Port 4: Dev 4, If 2, Class=Vendor Specific Class, Driver=rtl8723au, 480M
|__ Port 5: Dev 5, If 0, Class=Human Interface Device, Driver=usbhid, 12M
|
as I said in the OP, the same. _________________ hola |
|
Back to top |
|
 |
Gusar Advocate

Joined: 09 Apr 2005 Posts: 2665 Location: Slovenia
|
Posted: Thu Dec 05, 2013 10:23 am Post subject: |
|
|
iw won't show anything because it only works with mac80211 drivers, but rtl8723au is a wext driver. It's weird that iwlist says scanning is not supported. I assume if you were missing wext stuff in your kernel, the driver wouldn't build. Or maybe it would, considering it uses a private wireless stack.
Does your kernel contain wext stuff (CONFIG_WIRELESS_EXT=y CONFIG_WEXT_CORE=y CONFIG_WEXT_PROC=y CONFIG_WEXT_PRIV=y)? If not, compile a new kernel and select the prism54 driver to be built, this will get you the wext stuff. Then compile rtl8723au again while running the new kernel.
PS. Where do you see the device is being treated as ethernet? It was registered as wlan0 and udev renamed it to wl<stuff>, so the system definitely knows it's wireless. Would be weird if it did not, the necessary commit was two months ago: https://github.com/lwfinger/rtl8723au/commit/e3e9c3a76e7aa83a517c79f3ede1b0a2c141ef81 |
|
Back to top |
|
 |
Angrychile Apprentice


Joined: 27 Oct 2009 Posts: 235
|
Posted: Thu Dec 05, 2013 8:22 pm Post subject: |
|
|
Gusar wrote: | iw won't show anything because it only works with mac80211 drivers, but rtl8723au is a wext driver. It's weird that iwlist says scanning is not supported. I assume if you were missing wext stuff in your kernel, the driver wouldn't build. Or maybe it would, considering it uses a private wireless stack.
Does your kernel contain wext stuff (CONFIG_WIRELESS_EXT=y CONFIG_WEXT_CORE=y CONFIG_WEXT_PROC=y CONFIG_WEXT_PRIV=y)? If not, compile a new kernel and select the prism54 driver to be built, this will get you the wext stuff. Then compile rtl8723au again while running the new kernel.
PS. Where do you see the device is being treated as ethernet? It was registered as wlan0 and udev renamed it to wl<stuff>, so the system definitely knows it's wireless. Would be weird if it did not, the necessary commit was two months ago: https://github.com/lwfinger/rtl8723au/commit/e3e9c3a76e7aa83a517c79f3ede1b0a2c141ef81 |
Dude! Awesome it works now. It turned out that CONFIG_WIRELESS_EXT and CONFIG_WEXT_{PROC,PRIV} were not set. How embarrasing. Building prism54 did the trick. _________________ hola |
|
Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|