[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: How to get Realtek RTL8723BS WiFi working with Debian Bullseye on Pine A64+?



> which is expected as firmware != kernel module

Woops.

> to check, does `sudo dmesg | grep rtl8723` (without `) show the chip being initialised?

No, but at least wired ethernet works:

# dmesg|grep -i rtl
[   14.614875] dwmac-sun8i 1c30000.ethernet eth0: PHY [stmmac-0:01] driver [RTL8211E Gigabit Ethernet] (irq=POLL)

FWIW:

# uname -a
Linux <snipname> 5.10.0-3-arm64 #1 SMP Debian 5.10.13-1 (2021-02-06) aarch64 GNU/Linux
# uname -srvpio
Linux 5.10.0-3-arm64 #1 SMP Debian 5.10.13-1 (2021-02-06) unknown unknown GNU/Linux

Comparing the two above, is an "unknown" a minor bug in uname, or user error?


Poking around some, it seems some rtl8723bs things are there:

:/lib/modules/5.10.0-3-arm64# grep -i rtl8723bs *
grep: kernel: Is a directory
modules.alias:alias of:N*T*Crealtek,rtl8723bs-btC* hci_uart
modules.alias:alias of:N*T*Crealtek,rtl8723bs-bt hci_uart
modules.dep:kernel/drivers/staging/rtl8723bs/r8723bs.ko: kernel/net/wireless/cfg80211.ko kernel/net/rfkill/rfkill.ko
grep: modules.dep.bin: binary file matches
modules.order:kernel/drivers/staging/rtl8723bs/r8723bs.ko

# ls -F kernel/net/wi*
kernel/net/wimax:
wimax.ko

kernel/net/wireless:
cfg80211.ko  lib80211_crypt_ccmp.ko  lib80211_crypt_tkip.ko  lib80211_crypt_wep.ko  lib80211.ko


> Boot Armbian again and look at the Linux kernel dmesg output to see
which firmware is being loaded. Try to find that in Debian using
apt-file. 

> Can you check if armbian has the same kernel image? 


# uname -a
Linux <snipname> 5.10.12-sunxi64 #21.02.1 SMP Wed Feb 3 20:42:58 CET 2021 aarch64 GNU/Linux
# uname -srvpio
Linux 5.10.12-sunxi64 #21.02.1 SMP Wed Feb 3 20:42:58 CET 2021 unknown unknown GNU/Linux

Armbian does the "unknown" thing too.

# dmesg|grep -i rtl8723bs
[    8.093365] RTL8723BS: module init start
[    8.093383] RTL8723BS: rtl8723bs v4.3.5.5_12290.isthisaserialnumber
[    8.093387] RTL8723BS: rtl8723bs BT-Coex version = isthisaserialnumber
[    8.186225] RTL8723BS: rtw_ndev_init(wlan0)
[    8.197672] RTL8723BS: module init ret =0
[    9.376310] Bluetooth: hci0: RTL: loading rtl_bt/rtl8723bs_fw.bin
[    9.387212] bluetooth hci0: Direct firmware load for rtl_bt/rtl8723bs_fw.bin failed with error -2
[    9.387236] Bluetooth: hci0: RTL: firmware file rtl_bt/rtl8723bs_fw.bin not found
>>>[   69.493525] rtl8723bs: acquire FW from file:rtlwifi/rtl8723bs_nic.bin
[   72.976787] RTL8723BS: rtw_set_802_11_connect(wlan0)  fw_state = 0x00000008
[   73.111432] RTL8723BS: start auth
[   73.113961] RTL8723BS: auth success, start assoc
[   73.118152] RTL8723BS: rtw_cfg80211_indicate_connect(wlan0) BSS not found !!
[   73.118179] RTL8723BS: assoc success
[   73.122495] RTL8723BS: send eapol packet
[   73.128246] RTL8723BS: send eapol packet
[   73.128600] RTL8723BS: set pairwise key camid:4, addr:ab:cd:ef:gh:ij:kl, kid:0, type:AES
[   73.129380] RTL8723BS: set group key camid:5, addr:ab:cd:ef:gh:ij:kl, kid:2, type:TKIP

plus, success:

[   73.129523] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready

So Bluetooth isn't so happy, but at least Wifi is.

That (>>> above) FW file was found in Debian too, or at least a file by the same name (original post):

/usr/lib/firmware/rtlwifi/rtl8723bs_nic.bin

> the modern 'rtl8xxxu' that only supports USB style devices, and a cleaned-up version of the driver that is in staging, named 'rtlwifi' that also lacks support for rtl8723bs but supports some similar devices.

This is a "hat" type small (SDIO?) Wifi/BT card plugged onto the board, not a USB device, and the Pine A64+ hardware is dated March 21, 2016. 

Is there something I can (reasonably) do to help move this module thing along, or is the best advice to just wait more patiently?

On a related topic, what would it take to make the Pine Debian installs more nicely packaged, like the Raspbian installs? (Thanks, Gunnar!)

Thanks RobJE, Paul Wise, and Arnd Bergmann!


Reply to: