Closed 1882COYS closed 10 months ago
I can confirm. Although for me, the shipped driver that comes with the Linux kernel works.
Yea, the Wi-Fi is file but Bluetooth audio is glitchy
@1882COYS With this driver or the shipped one?
The shipped one
DKMS always fails to compile the modules for both linux and linux-zen version 6.7. This is what I've got with my Arch installation:
==> dkms install --no-depmod rtl8821ce/1.0.5.r166.gb5b8a5c -k 6.7.0-zen3-1-zen
Error! Bad return status for module build on kernel: 6.7.0-zen3-1-zen (x86_64)
Consult /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/make.log for more information.
==> dkms install --no-depmod rtl8821ce/1.0.5.r166.gb5b8a5c -k 6.7.0-arch3-1
Error! Bad return status for module build on kernel: 6.7.0-arch3-1 (x86_64)
Consult /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/make.log for more information.
And this is what make.log tells:
make ARCH=x86_64 CROSS_COMPILE= -C /lib/modules/6.7.0-arch3-1/build M=/var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build modules
make[1]: Entering directory '/usr/lib/modules/6.7.0-arch3-1/build'
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_cmd.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_security.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_debug.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_io.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_ioctl_query.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_ioctl_set.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_ieee80211.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_mlme.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_mlme_ext.o
/var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_mlme.c: In function ‘rtw_drv_scan_by_self’:
/var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_mlme.c:3161:17: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
3161 | else
| ^~~~
/var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_mlme.c:3164:25: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
3164 | goto exit;
| ^~~~
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_mi.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_wlan_util.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_vht.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_pwrctrl.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_rf.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_chplan.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_recv.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_sta_mgt.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_ap.o
/var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_rf.c: In function ‘dump_txpwr_lmt’:
/var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_rf.c:765:9: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
765 | if (IS_HARDWARE_TYPE_JAGUAR_AND_JAGUAR2(adapter))
| ^~
In file included from /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/include/drv_types.h:60,
from /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_rf.c:17:
/var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/include/rtw_debug.h:220:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
220 | do {\
| ^~
/var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_rf.c:767:17: note: in expansion of macro ‘RTW_PRINT_SEL’
767 | RTW_PRINT_SEL(sel, "txpwr_lmt_5g_20_40_ref:0x%02x\n", rfctl->txpwr_lmt_5g_20_40_ref);
| ^~~~~~~~~~~~~
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/mesh/rtw_mesh.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/mesh/rtw_mesh_pathtbl.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/mesh/rtw_mesh_hwmp.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_xmit.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_p2p.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_rson.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_tdls.o
/var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_sta_mgt.c: In function ‘rtw_mfree_stainfo’:
/var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_sta_mgt.c:379:25: warning: the comparison will always evaluate as ‘true’ for the address of ‘lock’ will never be NULL [-Waddress]
379 | if (&psta->lock != NULL)
| ^~
In file included from /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/include/drv_types.h:108,
from /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_sta_mgt.c:17:
/var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/include/sta_info.h:263:17: note: ‘lock’ declared here
263 | _lock lock;
| ^~~~
/var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_ap.c: In function ‘rtw_ap_update_chbw_by_ifbmp’:
/var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_ap.c:4392:42: warning: the comparison will always evaluate as ‘true’ for the address of ‘padapters’ will never be NULL [-Waddress]
4392 | if (!(ifbmp & BIT(i)) || !dvobj->padapters)
| ^
In file included from /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_ap.c:17:
/var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/include/drv_types.h:1041:19: note: ‘padapters’ declared here
1041 | _adapter *padapters[CONFIG_IFACE_NUMBER];/*IFACE_ID_MAX*/
| ^~~~~~~~~
/var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_ap.c:4412:42: warning: the comparison will always evaluate as ‘true’ for the address of ‘padapters’ will never be NULL [-Waddress]
4412 | if (!(ifbmp & BIT(i)) || !dvobj->padapters)
| ^
/var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/include/drv_types.h:1041:19: note: ‘padapters’ declared here
1041 | _adapter *padapters[CONFIG_IFACE_NUMBER];/*IFACE_ID_MAX*/
| ^~~~~~~~~
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_br_ext.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_iol.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_sreset.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_btcoex_wifionly.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_btcoex.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_beamforming.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_odm.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_rm.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/rtw_rm_fsm.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/efuse/rtw_efuse.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/os_dep/osdep_service.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/os_dep/linux/os_intfs.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/os_dep/linux/pci_intf.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/os_dep/linux/pci_ops_linux.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/os_dep/linux/ioctl_linux.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/os_dep/linux/xmit_linux.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/os_dep/linux/mlme_linux.o
/var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/efuse/rtw_efuse.c: In function ‘rtw_efuse_analyze’:
/var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/efuse/rtw_efuse.c:781:17: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
781 | if (i % 16 == 0)
| ^~
In file included from /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/include/drv_types.h:60,
from /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/efuse/rtw_efuse.c:17:
/var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/include/rtw_debug.h:231:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
231 | do {\
| ^~
/var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/core/efuse/rtw_efuse.c:783:25: note: in expansion of macro ‘_RTW_PRINT_SEL’
783 | _RTW_PRINT_SEL(RTW_DBGDUMP, "%02X%s"
| ^~~~~~~~~~~~~~
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/os_dep/linux/recv_linux.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/os_dep/linux/ioctl_cfg80211.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/os_dep/linux/rtw_cfgvendor.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/os_dep/linux/wifi_regd.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/os_dep/linux/rtw_android.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/os_dep/linux/rtw_proc.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/os_dep/linux/rtw_rhashtable.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/os_dep/linux/ioctl_mp.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/hal/hal_intf.o
/var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/os_dep/linux/ioctl_cfg80211.c: In function ‘cfg80211_rtw_scan’:
/var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/os_dep/linux/ioctl_cfg80211.c:2911:33: warning: the comparison will always evaluate as ‘true’ for the address of ‘ssid’ will never be NULL [-Waddress]
2911 | if (ssids->ssid != NULL
| ^~
In file included from /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/include/osdep_service_linux.h:93,
from /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/include/osdep_service.h:50,
from /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/include/drv_types.h:27,
from /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/os_dep/linux/ioctl_cfg80211.c:17:
./include/net/cfg80211.h:2538:12: note: ‘ssid’ declared here
2538 | u8 ssid[IEEE80211_MAX_SSID_LEN];
| ^~~~
/var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/os_dep/linux/ioctl_cfg80211.c: At top level:
/var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/os_dep/linux/ioctl_cfg80211.c:9626:26: error: initialization of ‘int (*)(struct wiphy *, struct net_device *, struct cfg80211_ap_update *)’ from incompatible pointer type ‘int (*)(struct wiphy *, struct net_device *, struct cfg80211_beacon_data *)’ [-Werror=incompatible-pointer-types]
9626 | .change_beacon = cfg80211_rtw_change_beacon,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
/var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/os_dep/linux/ioctl_cfg80211.c:9626:26: note: (near initialization for ‘rtw_cfg80211_ops.change_beacon’)
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/hal/hal_com.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/hal/hal_com_phycfg.o
CC [M] /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/hal/hal_phy.o
cc1: some warnings being treated as errors
make[3]: *** [scripts/Makefile.build:243: /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build/os_dep/linux/ioctl_cfg80211.o] Error 1
make[3]: *** Waiting for unfinished jobs....
make[2]: *** [/usr/lib/modules/6.7.0-arch3-1/build/Makefile:1911: /var/lib/dkms/rtl8821ce/1.0.5.r166.gb5b8a5c/build] Error 2
make[1]: *** [Makefile:234: __sub-make] Error 2
make[1]: Leaving directory '/usr/lib/modules/6.7.0-arch3-1/build'
make: *** [Makefile:2244: modules] Error 2
Dunno if this will help anything but posting this here regardless if it does. Sorry for the lengthy log.
For those that do not know that there is already a pull request since 1st December 2023, https://github.com/tomaspinho/rtl8821ce/pull/339.
Does above pull request make the driver work on 6.7 kernel? I only have live Arch installation media right now, so not sure how I'll test it.
Yes, it does. Do not forget to switch to the proper branch because the fix is not on the master branch.
can confirm this works, will close issue
which one is the correct branch?
Master works again, changes merged
Title says it all, I have verified this by switching back to Linux 6.6.9 and am having no problems.