cilynx / rtl88x2bu

rtl88x2bu driver updated for current kernels.
http://www.wolfteck.com/2018/02/22/wsky_1200mbps_wireless_usb_wifi_adapter/
GNU General Public License v2.0
1.61k stars 316 forks source link

Can't compile on RPI `dmb ish` not supported #175

Open botto opened 2 years ago

botto commented 2 years ago

I'm getting

/tmp/ccEoZkwk.s: Assembler messages:
/tmp/ccEoZkwk.s:1738: Error: selected processor does not support `dmb ish' in ARM mode
/tmp/ccEoZkwk.s:1749: Error: selected processor does not support `dmb ish' in ARM mode

When compiling on the pi with 5.10 kernel and gcc 10.3

MaxG87 commented 2 years ago

I cant confirm this. I recently build the driver on RPI. Can you give some more information, e.g. the RPI version and the git revision hash?

botto commented 2 years ago

RPI 4 B+ 8GB Git revision: e8ad266af883b60e88012957e89bf361924ea5ec RPI uname: 5.10.63-v7l+ #1459 SMP Wed Oct 6 16:41:57 BST 2021 armv7l GNU/Linux GCC Version: gcc (Raspbian 10.3.0-11+rpi1) 10.3.0

MaxG87 commented 2 years ago

Have you edited the Makefile to switch to ARM? Its a bit hidden in the README.md. In some big script-like section it is stated that one has to do

sed -i 's/I386_PC = y/I386_PC = n/' Makefile
sed -i 's/ARM_RPI = n/ARM_RPI = y/' Makefile

before starting compilation. If that solves your issue, I would love to review a PR with some improvements on this topic.

StudioEtrange commented 2 years ago

Exact same error on a raspberry pi 4 And yes, I have run

sed -i 's/I386_PC = y/I386_PC = n/' Makefile
sed -i 's/ARM_RPI = n/ARM_RPI = y/' Makefile

Still have the issue on a Kali 2021.4 32bit version

# uname -a
Linux ether 5.4.83-Re4son-v7l+ #4 SMP Debian kali-pi (2021-11-05) armv7l GNU/Linux

# gcc --version
gcc (Debian 11.2.0-10) 11.2.0
Copyright (C) 2021 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

└─# cat /var/lib/dkms/rtl88x2bu/5.8.7.1/build/make.log
DKMS make.log for rtl88x2bu-5.8.7.1 for kernel 5.4.83-Re4son-v7l+ (armv7l)
Sun Jan 16 03:21:22 AM CET 2022
Makefile:1302: ARM_RPI or ARM_NV_NANO requested. Must disable -Werror.
make ARCH=arm CROSS_COMPILE= -C /lib/modules/5.4.83-Re4son-v7l+/build M=/var/lib/dkms/rtl88x2bu/5.8.7.1/build  modules
make[1]: Entering directory '/usr/src/linux-headers-5.4.83-Re4son-v7l+'
/usr/src/rtl88x2bu-5.8.7.1/Makefile:1302: ARM_RPI or ARM_NV_NANO requested. Must disable -Werror.
  CC [M]  /var/lib/dkms/rtl88x2bu/5.8.7.1/build/core/rtw_cmd.o
In file included from ./include/linux/byteorder/little_endian.h:11,
                 from ./arch/arm/include/uapi/asm/byteorder.h:22,
                 from ./include/asm-generic/bitops/le.h:6,
                 from ./arch/arm/include/asm/bitops.h:268,
                 from ./include/linux/bitops.h:26,
                 from ./include/linux/kernel.h:12,
                 from ./include/linux/list.h:9,
                 from ./include/linux/module.h:9,
                 from /usr/src/rtl88x2bu-5.8.7.1/include/basic_types.h:76,
                 from /usr/src/rtl88x2bu-5.8.7.1/include/drv_types.h:26,
                 from /usr/src/rtl88x2bu-5.8.7.1/core/rtw_cmd.c:17:
./include/linux/byteorder/generic.h: In function ‘cpu_to_be32_array’:
./include/linux/byteorder/generic.h:195:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘unsigned int’} [-Wsign-compare]
  195 |         for (i = 0; i < len; i++)
      |                       ^

A LOT OF WARNING THEN

/usr/src/rtl88x2bu-5.8.7.1/include/rtw_mlme_ext.h: In function ‘check_mlmeinfo_state’:
/usr/src/rtl88x2bu-5.8.7.1/include/rtw_mlme_ext.h:603:49: warning: comparison of integer expressions of different signedness: ‘u32’ {aka ‘unsigned int’} and ‘sint’ {aka ‘int’} [-Wsign-compare]
  603 |         if ((plmeext->mlmext_info.state & 0x03) == state)
      |                                                 ^~
/usr/src/rtl88x2bu-5.8.7.1/core/rtw_cmd.c: In function ‘rtw_chk_hi_queue_hdl’:
/usr/src/rtl88x2bu-5.8.7.1/core/rtw_cmd.c:4140:66: warning: comparison of integer expressions of different signedness: ‘s32’ {aka ‘int’} and ‘u32’ {aka ‘unsigned int’} [-Wsign-compare]
 4140 |         while (_FALSE == empty && rtw_get_passing_time_ms(start) < rtw_get_wait_hiq_empty_ms()) {
      |                                                                  ^
/tmp/ccThfPvv.s: Messages de l'assembleur:
/tmp/ccThfPvv.s:1733: Erreur: le processeur choisi ne supporte pas « dmb ish » en mode ARM
/tmp/ccThfPvv.s:1744: Erreur: le processeur choisi ne supporte pas « dmb ish » en mode ARM
make[2]: *** [scripts/Makefile.build:266 : /var/lib/dkms/rtl88x2bu/5.8.7.1/build/core/rtw_cmd.o] Erreur 1
make[1]: *** [Makefile:1732: /var/lib/dkms/rtl88x2bu/5.8.7.1/build] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-5.4.83-Re4son-v7l+'
make: *** [Makefile:2390: modules] Error 2