bcmdhd: Unknown symbol mmc_retune_enable (err -2) bcmdhd: Unknown symbol mmc_retune_disable (err -2) .config文件确保必要的配置项是什么
时间: 2024-09-06 12:01:28 浏览: 56
在Linux内核模块加载时出现"Unknown symbol"错误通常表示内核模块试图引用了一个在内核符号表中不存在的函数或变量。错误信息 "bcmdhd: Unknown symbol mmc_retune_enable (err -2)" 和 "bcmdhd: Unknown symbol mmc_retune_disable (err -2)" 指出bcmdhd模块在尝试使用`mmc_retune_enable`和`mmc_retune_disable`这两个函数时失败了,因为这些符号在内核中未定义。
要解决这个问题,你需要确认你的内核配置包含了这些符号所对应的模块或功能。通常,这些功能可能与内核的MMC(多媒体卡)子系统相关,因此你需要确保你的内核`.config`文件中有以下配置项:
1. `CONFIG_MMC=y` - 确保支持多媒体卡的内核配置是启用的。
2. `CONFIGMMC_RETUNE=y` - 启用MMC调整功能,这可能包括retune的支持。
3. 与具体无线网卡驱动相关的配置项,例如`CONFIG_BCMDHD=m` 或 `CONFIG_BCMDHD=y`,确保Broadcom的DHD无线驱动模块是启用的。
你需要进入内核源代码的根目录,然后运行以下命令来配置内核:
```bash
make menuconfig
```
然后,通过图形界面启用上述配置项。如果你已经有了`.config`文件,可以通过运行`make oldconfig`来更新配置,并根据需要回答提示问题。
完成这些配置后,你需要重新编译内核,并确保新的内核映像被正确安装和启动。这样,当你尝试加载`bcmdhd`模块时,应该不会再出现关于`mmc_retune_enable`和`mmc_retune_disable`的未定义符号错误。
阅读全文