制作 Broadcom BCM4313 驱动程序时出现错误:函数“create_proc_entry”的隐式声明

制作 Broadcom BCM4313 驱动程序时出现错误:函数“create_proc_entry”的隐式声明

我正在尝试使用这些为我的 bcm4313 无线网络适配器构建驱动程序来自 Broadcom 的说明

我收到此错误:

KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd`
make[1]: Entering directory `/usr/src/linux-headers-3.11.0-15-generic'
CFG80211 API is prefered for this kernel version
Using CFG80211 API
  CC [M]  /home/keroles/hybrid_wl/src/wl/sys/wl_linux.o
/home/keroles/hybrid_wl/src/wl/sys/wl_linux.c: In function ‘wl_tkip_printstats’:
/home/keroles/hybrid_wl/src/wl/sys/wl_linux.c:3246:7: warning: passing argument 1 of ‘wl->tkipmodops->print_stats’ from incompatible pointer type [enabled by default]
       wl->tkip_bcast_data[idx]);
       ^
/home/keroles/hybrid_wl/src/wl/sys/wl_linux.c:3246:7: note: expected ‘struct seq_file *’ but argument is of type ‘char *’
/home/keroles/hybrid_wl/src/wl/sys/wl_linux.c:3249:4: warning: passing argument 1 of ‘wl->tkipmodops->print_stats’ from incompatible pointer type [enabled by default]
    wl->tkipmodops->print_stats(debug_buf, wl->tkip_ucast_data);
    ^
/home/keroles/hybrid_wl/src/wl/sys/wl_linux.c:3249:4: note: expected ‘struct seq_file *’ but argument is of type ‘char *’
/home/keroles/hybrid_wl/src/wl/sys/wl_linux.c: In function ‘wl_reg_proc_entry’:
/home/keroles/hybrid_wl/src/wl/sys/wl_linux.c:3470:2: error: implicit declaration of function ‘create_proc_entry’ [-Werror=implicit-function-declaration]
  if ((wl->proc_entry = create_proc_entry(tmp, 0644, NULL)) == NULL) {
  ^
/home/keroles/hybrid_wl/src/wl/sys/wl_linux.c:3470:22: warning: assignment makes pointer from integer without a cast [enabled by default]
  if ((wl->proc_entry = create_proc_entry(tmp, 0644, NULL)) == NULL) {
                      ^
/home/keroles/hybrid_wl/src/wl/sys/wl_linux.c:3475:16: error: dereferencing pointer to incomplete type
  wl->proc_entry->read_proc = wl_proc_read;
                ^
/home/keroles/hybrid_wl/src/wl/sys/wl_linux.c:3476:16: error: dereferencing pointer to incomplete type
  wl->proc_entry->write_proc = wl_proc_write;
                ^
/home/keroles/hybrid_wl/src/wl/sys/wl_linux.c:3477:16: error: dereferencing pointer to incomplete type
  wl->proc_entry->data = wl;
                ^
cc1: some warnings being treated as errors
make[2]: *** [/home/keroles/hybrid_wl/src/wl/sys/wl_linux.o] Error 1
make[1]: *** [_module_/home/keroles/hybrid_wl] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-3.11.0-15-generic'
make: *** [all] Error 2

我不知道为什么,有什么想法吗?

答案1

首先,我使用的是 BCM4313 驱动程序,并且通过 wifi 连接的互联网编写此程序。为了让它工作,我所做的就是安装位于软件和更新中的附加驱动程序。它为我安装了 STA 驱动程序。当然,您需要通过以太网电缆连接互联网。

祝您有美好的一天,我会再次为您提供帮助。

相关内容