$ uname -a
Linux AOSCVLAB 5.13.0-aosc-main #1 SMP PREEMPT Thu Jul 8 21:34:00 CST 2021 x86_64 GNU/Linux
Bug description
Broadcom wl kernel modules cannot be built successfully when installing broadcom-wl package.
The contents of /var/lib/dkms/broadcom-wl/6.30.223.271/build/make.log:
DKMS make.log for broadcom-wl-6.30.223.271 for kernel 5.13.0-aosc-main (x86_64)
Thu Jul 22 00:00:59 CST 2021
make: Entering directory '/usr/src/linux-headers-5.13.0'
CFG80211 API is prefered for this kernel version
Using CFG80211 API
CC [M] /var/lib/dkms/broadcom-wl/6.30.223.271/build/src/shared/linux_osl.o
/var/lib/dkms/broadcom-wl/6.30.223.271/build/src/shared/linux_osl.c: In function ‘osl_reg_map’:
/var/lib/dkms/broadcom-wl/6.30.223.271/build/src/shared/linux_osl.c:949:10: error: implicit declaration of function ‘ioremap_nocache’; did you mean ‘ioremap_cache’? [-Werror=implicit-function-declaration]
949 | return (ioremap_nocache((unsigned long)pa, (unsigned long)size));
| ^~~~~~~~~~~~~~~
| ioremap_cache
/var/lib/dkms/broadcom-wl/6.30.223.271/build/src/shared/linux_osl.c:949:10: warning: returning ‘int’ from a function with return type ‘void *’ makes pointer from integer without a cast [-Wint-conversion]
949 | return (ioremap_nocache((unsigned long)pa, (unsigned long)size));
| ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/lib/dkms/broadcom-wl/6.30.223.271/build/src/shared/linux_osl.c: In function ‘osl_os_get_image_block’:
/var/lib/dkms/broadcom-wl/6.30.223.271/build/src/shared/linux_osl.c:1083:28: warning: passing argument 2 of ‘kernel_read’ makes pointer from integer without a cast [-Wint-conversion]
1083 | rdlen = kernel_read(fp, fp->f_pos, buf, len);
| ~~^~~~~~~
| |
| loff_t {aka long long int}
In file included from ./include/linux/huge_mm.h:8,
from ./include/linux/mm.h:726,
from /var/lib/dkms/broadcom-wl/6.30.223.271/build/src/include/linuxver.h:65,
from /var/lib/dkms/broadcom-wl/6.30.223.271/build/src/shared/linux_osl.c:25:
./include/linux/fs.h:3113:43: note: expected ‘void *’ but argument is of type ‘loff_t’ {aka ‘long long int’}
3113 | extern ssize_t kernel_read(struct file *, void *, size_t, loff_t *);
| ^~~~~~
/var/lib/dkms/broadcom-wl/6.30.223.271/build/src/shared/linux_osl.c:1083:37: warning: passing argument 3 of ‘kernel_read’ makes integer from pointer without a cast [-Wint-conversion]
1083 | rdlen = kernel_read(fp, fp->f_pos, buf, len);
| ^~~
| |
| char *
In file included from ./include/linux/huge_mm.h:8,
from ./include/linux/mm.h:726,
from /var/lib/dkms/broadcom-wl/6.30.223.271/build/src/include/linuxver.h:65,
from /var/lib/dkms/broadcom-wl/6.30.223.271/build/src/shared/linux_osl.c:25:
./include/linux/fs.h:3113:51: note: expected ‘size_t’ {aka ‘long unsigned int’} but argument is of type ‘char *’
3113 | extern ssize_t kernel_read(struct file *, void *, size_t, loff_t *);
| ^~~~~~
/var/lib/dkms/broadcom-wl/6.30.223.271/build/src/shared/linux_osl.c:1083:42: warning: passing argument 4 of ‘kernel_read’ makes pointer from integer without a cast [-Wint-conversion]
1083 | rdlen = kernel_read(fp, fp->f_pos, buf, len);
| ^~~
| |
| int
In file included from ./include/linux/huge_mm.h:8,
from ./include/linux/mm.h:726,
from /var/lib/dkms/broadcom-wl/6.30.223.271/build/src/include/linuxver.h:65,
from /var/lib/dkms/broadcom-wl/6.30.223.271/build/src/shared/linux_osl.c:25:
./include/linux/fs.h:3113:59: note: expected ‘loff_t *’ {aka ‘long long int *’} but argument is of type ‘int’
3113 | extern ssize_t kernel_read(struct file *, void *, size_t, loff_t *);
| ^~~~~~~~
cc1: some warnings being treated as errors
make[1]: *** [scripts/Makefile.build:272: /var/lib/dkms/broadcom-wl/6.30.223.271/build/src/shared/linux_osl.o] Error 1
make: *** [Makefile:1847: /var/lib/dkms/broadcom-wl/6.30.223.271/build] Error 2
make: Leaving directory '/usr/src/linux-headers-5.13.0'
Steps to reproduce
sudo apt install broadcom-wl
It seems that the source code in the package is only tested under Linux 4.x. I tried with https://github.com/antoineco/broadcom-wl, and it can be compiled under Linux 5.13 (with CONFIG_MODULE_SIG=n added to Makefile to bypass the error module verification failed: signature and/or required key missing - tainting kernel)
Package & system version
Bug description
Broadcom wl kernel modules cannot be built successfully when installing
broadcom-wl
package.The contents of
/var/lib/dkms/broadcom-wl/6.30.223.271/build/make.log
:Steps to reproduce
sudo apt install broadcom-wl
It seems that the source code in the package is only tested under Linux 4.x. I tried with https://github.com/antoineco/broadcom-wl, and it can be compiled under Linux 5.13 (with
CONFIG_MODULE_SIG=n
added toMakefile
to bypass the errormodule verification failed: signature and/or required key missing - tainting kernel
)