lwfinger / rtl8723bu

Driver for RTL8723BU
285 stars 145 forks source link

problem during wlan rename process #66

Open ronnygm opened 7 years ago

ronnygm commented 7 years ago

I'm trying to use a 8723bu based dongle with a am3359 based custom board. I'm currently using linux-4.10.8. I have already tried to use rtl8xxxu from the kernel but it did not worked for me. The wlan device was showing up but no carrier was detected and no packets were being sent or received. I checked with rfkill and everything seemed to be fine. So I disabled rtl8xxxu and switched to this repository.

I compiled the driver with the following modifications to the Makefile: ----------------------------------- Makefile ----------------------------------- @@ -15,7 +15,7 @@ EXTRA_CFLAGS += -Wno-unused-label EXTRA_CFLAGS += -Wno-unused-parameter EXTRA_CFLAGS += -Wno-unused-function EXTRA_CFLAGS += -Wno-unused -EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE +#EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE

ccflags-y += -D__CHECK_ENDIAN__

@@ -38,7 +38,7 @@ CONFIG_BT_COEXIST = y CONFIG_INTEL_WIDI = n CONFIG_WAPI_SUPPORT = n CONFIG_EFUSE_CONFIG_FILE = n -CONFIG_EXT_CLK = n +CONFIG_EXT_CLK = y CONFIG_TRAFFIC_PROTECT = y CONFIG_LOAD_PHY_PARA_FROM_FILE = y CONFIG_CALIBRATE_TX_POWER_BY_REGULATORY = n @@ -53,7 +53,7 @@ CONFIG_PNO_SUPPORT = n CONFIG_PNO_SET_DEBUG = n CONFIG_AP_WOWLAN = n ###################### Platform Related ####################### -CONFIG_PLATFORM_I386_PC = y +CONFIG_PLATFORM_I386_PC = n ###############################################################

CONFIG_DRVEXT_MODULE = n @@ -262,6 +262,9 @@ MODDESTDIR := /lib/modules/$(KVER)/kernel/drivers/net/wireless/ INSTALL_PREFIX := endif

+ifeq ($(CONFIG_PLATFORM_I386_PC), n) +EXTRA_CFLAGS+="-DRTW_USE_CFG80211_STA_EVENT -DCONFIG_IOCTL_CFG80211 -DCONFIG_P2P_IPS" +endif

ifneq ($(USER_MODULE_NAME),) MODULE_NAME := $(USER_MODULE_NAME)

I'm not sure if these modifications are correct or if this is the right way to do it. When the driver is loaded it thoughts a warning which I think is related to the wlan interface renaming process, maybe triggered by udev.

[ 5583.845174] usb 1-1.3: new high-speed USB device number 5 using musb-hdrc [ 5583.975848] usb 1-1.3: New USB device found, idVendor=0bda, idProduct=b720 [ 5583.975886] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 5583.975904] usb 1-1.3: Product: 802.11n WLAN Adapter [ 5583.975920] usb 1-1.3: Manufacturer: Realtek [ 5583.975936] usb 1-1.3: SerialNumber: 00e04c000001 [ 5583.977001] udevd[847]: Validate module index [ 5583.977619] udevd[847]: seq 1493 queued, 'add' 'usb' [ 5583.978683] udevd[847]: seq 1493 forked new worker [10464] [ 5583.988515] udevd[847]: seq 1494 queued, 'add' 'usb' [ 5583.992098] udevd[847]: seq 1495 queued, 'add' 'bluetooth' [ 5583.992531] udevd[847]: seq 1496 queued, 'add' 'rfkill' [ 5583.992867] udevd[847]: seq 1497 queued, 'add' 'usb' [ 5583.994479] Bluetooth: hci0: rtl: examining hci_ver=06 hci_rev=000b lmp_ver=06 lmp_subver=8723 [ 5583.994517] Bluetooth: hci0: rtl: loading rtl_bt/rtl8723b_config.bin [ 5583.994759] Bluetooth: hci0: rtl: loading rtl_bt/rtl8723b_fw.bin [ 5583.997478] Bluetooth: hci0: rom_version status=0 version=1 [ 5583.997788] Bluetooth: cfg_sz 44, total size 22540 [ 5583.998514] udevd[847]: seq 1498 queued, 'add' 'usb' [ 5584.004027] udevd[10464]: seq 1493 running [ 5584.009662] udevd[10464]: no db file to read /run/udev/data/c189:4: No such file or directory [ 5584.254290] RTL871X: module init start [ 5584.254330] RTL871X: rtl8723bu v4.3.6.11_12942.20141204_BTCOEX20140507-4E40 [ 5584.254343] RTL871X: rtl8723bu BT-Coex version = BTCOEX20140507-4E40 [ 5584.359156] RTL871X: rtw_ndev_init(wlan0) [ 5584.367728] usbcore: registered new interface driver rtl8723bu [ 5584.367754] RTL871X: module init ret=0 [ 5584.407247] rtl8723bu 1-1.3:1.2 wlan121: renamed from wlan0 [ 5584.409513] rtl8723bu 1-1.3:1.2 wlan2: renamed from wlan121 [ 5584.412034] ------------[ cut here ]------------ [ 5584.412093] WARNING: CPU: 0 PID: 10472 at fs/proc/generic.c:567 remove_proc_entry+0x88/0x11c [ 5584.412105] name 'wlan0' [ 5584.412115] Modules linked in: 8723bu(O) matrix_keypad usb_f_acm u_serial g_serial libcomposite tph_control btusb btrtl btbcm btintel bluetooth cfg80211 wkup_m3_ipc wkup_m3_rproc remoteproc hw_control virtio virtio_ring rfkill [last unloaded: 8723bu] [ 5584.412224] CPU: 0 PID: 10472 Comm: udevd Tainted: G W O 4.10.8 #11 [ 5584.412236] Hardware name: Generic AM33XX (Flattened Device Tree) [ 5584.412247] Backtrace: [ 5584.412301] [] (dump_backtrace) from [] (show_stack+0x18/0x1c) [ 5584.412322] r7:00000009 r6:00000000 r5:c0755a92 r4:d4b97cf8 [ 5584.412361] [] (show_stack) from [] (dump_stack+0x20/0x28) [ 5584.412399] [] (dump_stack) from [] (warn+0xe0/0xfc) [ 5584.412423] [] (warn) from [] (warn_slowpath_fmt+0x40/0x48) [ 5584.412445] r9:dcc08000 r8:dccc3800 r7:e0b16000 r6:dcc08000 r5:e0b19bd0 r4:00000000 [ 5584.412475] [] (warn_slowpath_fmt) from [] (remove_proc_entry+0x88/0x11c) [ 5584.412490] r3:e0b19bd0 r2:c0770a6d [ 5584.413301] [] (remove_proc_entry) from [] (rtw_adapter_proc_replace+0x68/0x98 [8723bu]) [ 5584.413339] r6:bf34173c r5:d4a43180 r4:000001d4 [ 5584.414177] [] (rtw_adapter_proc_replace [8723bu]) from [] (rtw_ndev_notifier_call+0x58/0x7c [8723bu]) [ 5584.414212] r9:00000004 r8:c09355dc r7:d4b97dfc r6:0000000a r5:0000000a r4:dccc3800 [ 5584.414602] [] (rtw_ndev_notifier_call [8723bu]) from [] (notifier_call_chain+0x4c/0x70) [ 5584.414626] r5:00000000 r4:fffffff7 [ 5584.414654] [] (notifier_call_chain) from [] (raw_notifier_call_chain+0x20/0x28) [ 5584.414678] r9:00000004 r8:d4b97ea0 r7:00000000 r6:dccc3800 r5:0000000a r4:d4b97dfc [ 5584.414709] [] (raw_notifier_call_chain) from [] (call_netdevice_notifiers_info+0x4c/0x5c) [ 5584.414733] [] (call_netdevice_notifiers_info) from [] (call_netdevice_notifiers+0x18/0x20) [ 5584.414758] r7:00000000 r6:c097cf50 r5:d4b97e18 r4:dccc3800 [ 5584.414789] [] (call_netdevice_notifiers) from [] (dev_change_name+0x260/0x324) [ 5584.414819] [] (dev_change_name) from [] (dev_ifsioc+0x2bc/0x320) [ 5584.414846] r10:00000000 r9:d4b96000 r8:00000000 r7:bf340c5c r6:dccc3800 r5:00008923 [ 5584.414858] r4:d4b97e90 [ 5584.414879] [] (dev_ifsioc) from [] (dev_ioctl+0x59c/0x760) [ 5584.414899] r8:00000000 r7:00000000 r6:00008923 r5:c0934b30 r4:be9792a0 [ 5584.414933] [] (dev_ioctl) from [] (sock_ioctl+0x2c/0x2d4) [ 5584.414961] r10:00000000 r9:d4b96000 r8:be9792a0 r7:00008923 r6:be9792a0 r5:00008923 [ 5584.414972] r4:fffffdfd [ 5584.415006] [] (sock_ioctl) from [] (vfs_ioctl+0x28/0x3c) [ 5584.415024] r7:00008923 r6:ddecc000 r5:dd2243a0 r4:be9792a0 [ 5584.415056] [] (vfs_ioctl) from [] (do_vfs_ioctl+0x8c/0x814) [ 5584.415082] [] (do_vfs_ioctl) from [] (SyS_ioctl+0x3c/0x60) [ 5584.415104] r10:00000000 r9:d4b96000 r8:be9792a0 r7:00008923 r6:ddecc000 r5:ddecc000 [ 5584.415218] r4:00000008 [ 5584.415258] [] (SyS_ioctl) from [] (ret_fast_syscall+0x0/0x3c) [ 5584.415281] r9:d4b96000 r8:c0107964 r7:00000036 r6:be9792b0 r5:be9792a0 r4:00071660 [ 5584.415295] ---[ end trace c269d3b13172f133 ]--- [ 5584.433173] wlan2 [ 5585.393915] RTL871X: RTW_ADAPTIVITYEN [ 5585.393940] AUTO, chplan:0x20, Regulation:0,0 [ 5585.393972] RTL871X: RTW_ADAPTIVITYMODE [ 5585.393977] NORMAL [ 5588.005319] RTL871X: rtw_set_802_11_connect(wlan2) fw_state=0x00000008 [ 5588.450230] RTL871X: start auth [ 5588.452620] RTL871X: auth success, start assoc [ 5588.456857] RTL871X: rtw_cfg80211_indicate_connect(wlan2) BSS not found !! [ 5588.456909] RTL871X: assoc success [ 5588.599452] RTL871X: send eapol packet [ 5588.606399] RTL871X: send eapol packet [ 5588.685519] RTL871X: set pairwise key camid:4, addr:c4:e9:84:85:11:7a, kid:0, type:AES [ 5588.687224] RTL871X: set group key camid:5, addr:c4:e9:84:85:11:7a, kid:2, type:AES [ 5590.417087] udevd[847]: Validate module index [ 5593.420689] udevd[847]: Validate module index [ 5593.954470] It's running [ 5593.954660] WIFI connected [ 5593.956676] udevd[10472]: '/bin/sh /etc/udev/rfkill.sh 1 wlan2' [10474] exit with return code 0 [ 5593.956889] udevd[10472]: passed device to netlink monitor 0x70970 [ 5593.956927] udevd[10472]: seq 1502 processed [ 5593.957885] udevd[847]: passed 228 byte device to netlink monitor 0x560b0 [ 5593.958112] udevd[847]: passed 228 byte device to netlink monitor 0x560b0 [ 5593.958306] udevd[847]: passed 228 byte device to netlink monitor 0x560b0 [ 5593.959382] udevd[847]: seq 1506 forked new worker [10530] [ 5593.959864] udevd[10473]: seq 1503 running [ 5597.011203] udevd[847]: cleanup idle workers [ 5597.011553] udevd[847]: Validate module index [ 5597.012731] udevd[10473]: Unload module index [ 5597.014035] udevd[847]: worker [10473] exited [ 5597.014891] udevd[10472]: Unload module index [ 5597.015794] udevd[10464]: Unload module index [ 5597.017068] udevd[10530]: Unload module index [ 5597.018512] udevd[10531]: Unload module index [ 5597.021873] udevd[847]: worker [10464] exited [ 5597.022020] udevd[847]: worker [10472] exited [ 5632.435583] cpsw 4a100000.ethernet eth0: Link is Down [ 5632.500766] udevd[847]: Validate module index [ 5632.501273] udevd[847]: seq 1510 queued, 'remove' 'ptp' [ 5632.502318] udevd[847]: seq 1510 forked new worker [10627] [ 5632.516315] udevd[10627]: seq 1510 running [ 5632.517501] udevd[10627]: passed device to netlink monitor 0x5c540 [ 5632.517551] udevd[10627]: seq 1510 processed [ 5632.543655] net eth0: initializing cpsw version 1.12 (0) [ 5632.645857] SMSC LAN8710/LAN8720 4a101000.mdio:00: attached PHY driver [SMSC LAN8710/LAN8720] (mii_bus:phy_addr=4a101000.mdio:00, irq=-1) [ 5632.650548] udevd[847]: seq 1511 queued, 'add' 'ptp' [ 5632.651585] udevd[10627]: seq 1511 running [ 5632.652104] udevd[10627]: no db file to read /run/udev/data/c251:0: No such file or directory [ 5632.652320] udevd[10627]: handling device node '/dev/ptp0', devnum=c251:0, mode=0600, uid=0, gid=0

Even though both Bluetooth and WIFI are fully functional.

ifconfig eth0 Link encap:Ethernet HWaddr 1C:BA:8C:EF:15:46
UP BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:18318 errors:0 dropped:0 overruns:0 frame:0 TX packets:2067 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:23713208 (22.6 MiB) TX bytes:324833 (317.2 KiB) Interrupt:174

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:34 errors:0 dropped:0 overruns:0 frame:0 TX packets:34 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:10833 (10.5 KiB) TX bytes:10833 (10.5 KiB)

wlan2 Link encap:Ethernet HWaddr 8C:18:D9:E2:63:83
inet addr:192.168.10.19 Bcast:192.168.10.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:244 errors:0 dropped:28 overruns:0 frame:0 TX packets:71 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:54059 (52.7 KiB) TX bytes:21411 (20.9 KiB)

I'm also getting similar warning after the USB dongle is removed from the system: [11537.282218] usb 1-1.3: USB disconnect, device number 5 [11537.283309] udevd[847]: Validate module index [11537.283821] udevd[847]: seq 1512 queued, 'remove' 'rfkill' [11537.284855] udevd[847]: seq 1512 forked new worker [16597] [11537.290992] RTL871X: rtw_cmd_thread: DriverStopped(1) SurpriseRemoved(1) break at line 452 [11537.291783] udevd[847]: seq 1513 queued, 'remove' 'bluetooth' [11537.292360] udevd[847]: seq 1514 queued, 'remove' 'usb' [11537.292753] udevd[847]: seq 1515 queued, 'remove' 'usb' [11537.293839] udevd[847]: seq 1515 forked new worker [16598] [11537.298278] udevd[16597]: seq 1512 running [11537.298638] udevd[16597]: no db file to read /run/udev/data/+rfkill:rfkill6: No such file or directory [11537.299325] udevd[16597]: passed device to netlink monitor 0x70480 [11537.304951] ------------[ cut here ]------------ [11537.305426] WARNING: CPU: 0 PID: 56 at net/wireless/core.c:1248 cfg80211_netdev_notifier_call+0x384/0x44c [cfg80211] [11537.305556] Modules linked in: 8723bu(O) matrix_keypad usb_f_acm u_serial g_serial libcomposite tph_control btusb btrtl btbcm btintel bluetooth cfg80211 wkup_m3_ipc wkup_m3_rproc remoteproc hw_control virtio virtio_ring rfkill [last unloaded: 8723bu] [11537.305668] CPU: 0 PID: 56 Comm: kworker/0:1 Tainted: G W O 4.10.8 #11 [11537.305681] Hardware name: Generic AM33XX (Flattened Device Tree) [11537.305722] Workqueue: usb_hub_wq hub_event [11537.305734] Backtrace: [11537.305782] [] (dump_backtrace) from [] (show_stack+0x18/0x1c) [11537.305818] r7:00000009 r6:00000000 r5:bf077204 r4:00000000 [11537.305857] [] (show_stack) from [] (dump_stack+0x20/0x28) [11537.305889] [] (dump_stack) from [] (warn+0xe0/0xfc) [11537.305921] [] (warn) from [] (warn_slowpath_null+0x28/0x30) [11537.305944] r9:c07b6a50 r8:dde92808 r7:dde8e400 r6:dccc3800 r5:dde8e540 r4:dde92800 [11537.306221] [] (warn_slowpath_null) from [] (cfg80211_netdev_notifier_call+0x384/0x44c [cfg80211]) [11537.306470] [] (cfg80211_netdev_notifier_call [cfg80211]) from [] (notifier_call_chain+0x4c/0x70) [11537.306505] r9:c07b6a50 r8:bf348394 r7:dd8edc8c r6:00000006 r5:00000000 r4:fffffff8 [11537.306530] [] (notifier_call_chain) from [] (raw_notifier_call_chain+0x20/0x28) [11537.306553] r9:c07b6a50 r8:014000c0 r7:dd8edca0 r6:dccc3800 r5:00000006 r4:dd8edc8c [11537.306585] [] (raw_notifier_call_chain) from [] (call_netdevice_notifiers_info+0x4c/0x5c) [11537.306616] [] (call_netdevice_notifiers_info) from [] (call_netdevice_notifiers+0x18/0x20) [11537.306635] r7:dd8edca0 r6:c07b6842 r5:dd8edcd0 r4:dccc3800 [11537.306661] [] (call_netdevice_notifiers) from [] (rollback_registered_many+0x250/0x3b8) [11537.306687] [] (rollback_registered_many) from [] (rollback_registered+0x30/0x48) [11537.306714] r9:bf348444 r8:dddfc000 r7:d4b85000 r6:d4b85188 r5:00000000 r4:dccc3800 [11537.306742] [] (rollback_registered) from [] (unregister_netdevice_queue+0x70/0xb4) [11537.306769] [] (unregister_netdevice_queue) from [] (unregister_netdev+0x20/0x28) [11537.306782] r5:00000000 r4:dccc3800 [11537.307593] [] (unregister_netdev) from [] (rtw_unregister_netdevs+0x6c/0x74 [8723bu]) [11537.307626] r5:00000000 r4:e0b16000 [11537.308439] [] (rtw_unregister_netdevs [8723bu]) from [] (rtw_dev_remove+0x24/0x7c [8723bu]) [11537.308477] r7:00000000 r6:dcdac400 r5:dddfc000 r4:e0b16000 [11537.308871] [] (rtw_dev_remove [8723bu]) from [] (usb_unbind_interface+0x94/0x218) [11537.308895] r5:00000000 r4:dddfc020 [11537.308931] [] (usb_unbind_interface) from [] (device_release_driver_internal+0xdc/0x1c8) [11537.308955] r10:c094af90 r9:c078507d r8:00000034 r7:dddfc054 r6:bf348444 r5:00000000 [11537.308973] r4:dddfc020 [11537.308999] [] (device_release_driver_internal) from [] (device_release_driver+0x18/0x1c) [11537.309023] r9:c078507d r8:dddfc078 r7:dcdac470 r6:c0926d80 r5:dd9517ac r4:dddfc020 [11537.309049] [] (device_release_driver) from [] (bus_remove_device+0xe8/0x124) [11537.309074] [] (bus_remove_device) from [] (device_del+0x184/0x2a8) [11537.309098] r7:dcdac470 r6:dddfc074 r5:dddfc074 r4:dddfc020 [11537.309122] [] (device_del) from [] (usb_disable_device+0x104/0x234) [11537.309145] r9:c079856a r8:ddcb1400 r7:00000002 r6:dddfc000 r5:00000000 r4:dcdac400 [11537.309168] [] (usb_disable_device) from [] (usb_disconnect+0x90/0x194) [11537.309196] r10:dde02a00 r9:00000000 r8:dcdac4a4 r7:dcdac470 r6:00000000 r5:00000000 [11537.309207] r4:dcdac400 [11537.309228] [] (usb_disconnect) from [] (hub_event+0x724/0x110c) [11537.309250] r10:dde02a00 r9:00000000 r8:00000001 r7:ddcb2000 r6:00000100 r5:00000003 [11537.309268] r4:ddd1c2fc r3:ddcb1400 [11537.309294] [] (hub_event) from [] (process_one_work+0x194/0x2ec) [11537.309317] r10:00000008 r9:00000000 r8:de3c5500 r7:00000000 r6:c090e404 r5:ddd1c2fc [11537.309328] r4:dd8df000 [11537.309349] [] (process_one_work) from [] (worker_thread+0x284/0x3e4) [11537.309377] r10:00000008 r9:dd8df018 r8:c090e418 r7:c09128c0 r6:c090e404 r5:c090e404 [11537.309389] r4:dd8df000 [11537.309417] [] (worker_thread) from [] (kthread+0x120/0x138) [11537.309440] r10:dd932ad8 r9:c0138e6c r8:dd8df000 r7:dd841ea4 r6:ffffe000 r5:dd938940 [11537.309453] r4:dd932ac0 r3:00000000 [11537.309488] [] (kthread) from [] (ret_from_fork+0x14/0x3c) [11537.309509] r10:00000000 r9:00000000 r8:00000000 r7:00000000 r6:00000000 r5:c013d824 [11537.309520] r4:dd938940 [11537.309533] ---[ end trace c269d3b13172f134 ]--- [11537.334635] RTL871X: rtw_ndev_uninit(wlan2) [11537.347207] RTL871X: rtw_dev_unload: driver not in IPS [11537.382414] wlan2 [11537.583079] WIFI disconnected [11540.885914] cpsw 4a100000.ethernet eth0: Link is Up - 100Mbps/Full - flow control off

After re-connection everything works fine too, but with the same kernel warnings. Summarizing, everything works fine but I would like to know if I can just ignore these warnings. Am I missing some setting in the kernel? Can I ignore this warning message? Is there any way I can get rid of it? Thanks again for the help.