Insmod bcmdhd throws the below error in cfg80211

The below error is thrown, while loading the bcmdhd module on nano. Any regulatory certificate to be updated?

[ 806.113798] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[ 806.124428] cfg80211: Problem loading in-kernel X.509 certificate (-129)
[ 806.142661] cfg80211: loaded regulatory.db is malformed or signature is missing/invalid

[ 2268.123180] cfg80211: disagrees about version of symbol module_layout
[2020-12-12 12:55:01] [56075.597104] bcmdhd: disagrees about version of symbol module_layout
[2020-12-12 12:55:01] [56135.770814] bcmdhd: Unknown symbol cfg80211_inform_bss_frame_data (err 0)
[2020-12-12 12:55:01] [56135.778081] bcmdhd: Unknown symbol cfg80211_sched_scan_results (err 0)
[2020-12-12 12:55:01] [56135.785290] bcmdhd: Unknown symbol cfg80211_scan_done (err 0)
[2020-12-12 12:55:01] [56135.791580] bcmdhd: Unknown symbol cfg80211_remain_on_channel_expired (err 0)

Thanks.

Hi,

Looks like the kernel version does not match the cfg80211 version. Could you use the same system to build both kernel and your kernel modules?

I don’t know about the specific error, but keep in mind one kernel feature can depend on another. Like @WayneWWW mentioned, you seem to have a module compiled for a different kernel config, and this is likely in turn why other symbols are missing (there are probably two reasons for the module to fail, rather than just version/configuration it was compiled against).