Closed arun-gurung closed 6 years ago
Maybe similar to #4. Any build logs?
KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd`
make[1]: Entering directory `/usr/src/kernels/4.15.14-1.el7.elrepo.x86_64'
CFG80211 API is prefered for this kernel version
Using CFG80211 API
CC [M] /tmp/broadcom-wl-master/src/wl/sys/wl_linux.o
/tmp/broadcom-wl-master/src/wl/sys/wl_linux.c: In function ‘wl_init_timer’:
/tmp/broadcom-wl-master/src/wl/sys/wl_linux.c:2355:2: error: implicit declaration of function ‘init_timer’ [-Werror=implicit-function-declaration]
init_timer(&t->timer);
^
/tmp/broadcom-wl-master/src/wl/sys/wl_linux.c:2356:10: error: ‘struct timer_list’ has no member named ‘data’
t->timer.data = (ulong) t;
^
/tmp/broadcom-wl-master/src/wl/sys/wl_linux.c:2357:20: warning: assignment from incompatible pointer type [enabled by default]
t->timer.function = wl_timer;
^
/tmp/broadcom-wl-master/src/wl/sys/wl_linux.c: In function ‘wl_monitor’:
/tmp/broadcom-wl-master/src/wl/sys/wl_linux.c:2918:10: error: ‘struct net_device’ has no member named ‘last_rx’
skb->dev->last_rx = jiffies;
^
cc1: some warnings being treated as errors
make[2]: *** [/tmp/broadcom-wl-master/src/wl/sys/wl_linux.o] Error 1
make[1]: *** [_module_/tmp/broadcom-wl-master] Error 2
make[1]: Leaving directory `/usr/src/kernels/4.15.14-1.el7.elrepo.x86_64'
make: *** [all] Error 2
I updated today to mainline kernel 4.15.15 from elrepo and similar build error occurs.
KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd`
make[1]: Entering directory `/usr/src/kernels/4.15.15-1.el7.elrepo.x86_64'
CFG80211 API is prefered for this kernel version
Using CFG80211 API
CC [M] /tmp/broadcom-wl-master/src/shared/linux_osl.o
/tmp/broadcom-wl-master/src/shared/linux_osl.c: In function ‘osl_os_get_image_block’:
/tmp/broadcom-wl-master/src/shared/linux_osl.c:1079:2: warning: passing argument 2 of ‘kernel_read’ makes pointer from integer without a cast [enabled by default]
rdlen = kernel_read(fp, fp->f_pos, buf, len);
^
In file included from ./include/linux/huge_mm.h:7:0,
from ./include/linux/mm.h:463,
from /tmp/broadcom-wl-master/src/include/linuxver.h:65,
from /tmp/broadcom-wl-master/src/shared/linux_osl.c:25:
./include/linux/fs.h:2843:16: note: expected ‘void *’ but argument is of type ‘loff_t’
extern ssize_t kernel_read(struct file *, void *, size_t, loff_t *);
^
/tmp/broadcom-wl-master/src/shared/linux_osl.c:1079:2: warning: passing argument 3 of ‘kernel_read’ makes integer from pointer without a cast [enabled by default]
rdlen = kernel_read(fp, fp->f_pos, buf, len);
^
In file included from ./include/linux/huge_mm.h:7:0,
from ./include/linux/mm.h:463,
from /tmp/broadcom-wl-master/src/include/linuxver.h:65,
from /tmp/broadcom-wl-master/src/shared/linux_osl.c:25:
./include/linux/fs.h:2843:16: note: expected ‘size_t’ but argument is of type ‘char *’
extern ssize_t kernel_read(struct file *, void *, size_t, loff_t *);
^
/tmp/broadcom-wl-master/src/shared/linux_osl.c:1079:2: warning: passing argument 4 of ‘kernel_read’ makes pointer from integer without a cast [enabled by default]
rdlen = kernel_read(fp, fp->f_pos, buf, len);
^
In file included from ./include/linux/huge_mm.h:7:0,
from ./include/linux/mm.h:463,
from /tmp/broadcom-wl-master/src/include/linuxver.h:65,
from /tmp/broadcom-wl-master/src/shared/linux_osl.c:25:
./include/linux/fs.h:2843:16: note: expected ‘loff_t *’ but argument is of type ‘int’
extern ssize_t kernel_read(struct file *, void *, size_t, loff_t *);
^
CC [M] /tmp/broadcom-wl-master/src/wl/sys/wl_linux.o
/tmp/broadcom-wl-master/src/wl/sys/wl_linux.c: In function ‘wl_init_timer’:
/tmp/broadcom-wl-master/src/wl/sys/wl_linux.c:2355:2: error: implicit declaration of function ‘init_timer’ [-Werror=implicit-function-declaration]
init_timer(&t->timer);
^
/tmp/broadcom-wl-master/src/wl/sys/wl_linux.c:2356:10: error: ‘struct timer_list’ has no member named ‘data’
t->timer.data = (ulong) t;
^
/tmp/broadcom-wl-master/src/wl/sys/wl_linux.c:2357:20: warning: assignment from incompatible pointer type [enabled by default]
t->timer.function = wl_timer;
^
/tmp/broadcom-wl-master/src/wl/sys/wl_linux.c: In function ‘wl_monitor’:
/tmp/broadcom-wl-master/src/wl/sys/wl_linux.c:2918:10: error: ‘struct net_device’ has no member named ‘last_rx’
skb->dev->last_rx = jiffies;
^
cc1: some warnings being treated as errors
make[2]: *** [/tmp/broadcom-wl-master/src/wl/sys/wl_linux.o] Error 1
make[1]: *** [_module_/tmp/broadcom-wl-master] Error 2
make[1]: Leaving directory `/usr/src/kernels/4.15.15-1.el7.elrepo.x86_64'
make: *** [all] Error 2
Are you sure you're building the correct branch? I just got this kernel today from my OS repo, and everything built just fine:
DKMS make.log for broadcom-wl-6.30.223.271 for kernel 4.15.14-300.fc27.x86_64 (x86_64)
Wed Apr 4 09:10:32 CEST 2018
Wireless Extension is the only possible API for this kernel version
Using Wireless Extension API
KBUILD_NOPEDANTIC=1 make -C /lib/modules/4.15.14-300.fc27.x86_64/build M=`pwd`
make[1]: warning: jobserver unavailable: using -j1. Add '+' to parent make rule.
make[1]: Entering directory '/usr/src/kernels/4.15.14-300.fc27.x86_64'
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
CC [M] /var/lib/dkms/broadcom-wl/6.30.223.271/build/src/wl/sys/wl_linux.o
CC [M] /var/lib/dkms/broadcom-wl/6.30.223.271/build/src/wl/sys/wl_iw.o
CC [M] /var/lib/dkms/broadcom-wl/6.30.223.271/build/src/wl/sys/wl_cfg80211_hybrid.o
LD [M] /var/lib/dkms/broadcom-wl/6.30.223.271/build/wl.o
Building modules, stage 2.
CFG80211 API is prefered for this kernel version
Using CFG80211 API
MODPOST 1 modules
CC /var/lib/dkms/broadcom-wl/6.30.223.271/build/wl.mod.o
LD [M] /var/lib/dkms/broadcom-wl/6.30.223.271/build/wl.ko
make[1]: Leaving directory '/usr/src/kernels/4.15.14-300.fc27.x86_64'
I don't understand, because programming is over my head. I just installed the latest kernel from the repo and get the error.
This Git repository has two branches:
master
: the original, non-patched driver sources from Broadcompatch-linux4.7
: (default branch) with all patches applied for Linux 4.7 up to Linux 4.15Your build log suggests that you're currently on the master
Git branch, according to the line numbers and function declarations, which is wrong. Please checkout patch-linux4.7
and try again.
Thanks, you are right! I had used the master instead of patch-linux4.7, but now it compiles.
I updated to latest 4.15.14 rpm-package and now broadcom-wl will not compile. As I said, it compiles on 4.15.13.
This kernel comes from elrepo-kernel yum repository. http://elrepo.org/tiki/kernel-ml