8devices / qcacld-2.0

Drivers for BLUE bean and RED bean modules
8 stars 13 forks source link

wlan_sdio: Unknown symbol cfg80211_connect_done (err 0) #11

Closed aigFsch closed 4 years ago

aigFsch commented 4 years ago

Good day,

I am trying to build the driver for the RedBean module. My current problem is that i get the above message, if i try to run the module with insmod.

Some key data to my build: Buildroot: 2019.05.1 CPU: NXP i.MX 6; ARM Cortex-A9 Linux Kernel: 4.9.88 Toolchain: gcc.8.3-armv7ahf

I applied the patches from the v4.9.11 directroy and as far as I can tell they apply correctly. The cfg80211_connect_done() should be added to /net/wireless/sme.c correct? If I build the driver, I already get a warning: WARNING: "cfg80211_connect_done" [/home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/wlan-sdio.ko] undefined!

Which obviously leads to the problem above.

Do you have any idea what might lead to this error?

Best regards

joerg-krause commented 4 years ago

Is cfg80211 built into the kernel or as a module? Probably cfg80211 is not loaded. Use modprobe instead of insmod, or use insmod cfg80211 before insmod wlan-sdio.

Nevinskas commented 4 years ago

Is cfg80211 built into the kernel or as a module? Probably cfg80211 is not loaded. Use modprobe instead of insmod, or use insmod cfg80211 before insmod wlan-sdio.

This message is being print at the end of the building process, there is nothing to be loaded yet. :)

@aigFsch could you provide the kernel config? Maybe you haven't enabled cfg80211 or some of its options?

aigFsch commented 4 years ago

Attached the kernel config (sdio.config) and the buildroot config. I hope that helps.

configs.zip

best regards

Nevinskas commented 4 years ago

Is it the only error for building? Could You show full error message? Also, are you building it as out-of-tree module?

aigFsch commented 4 years ago

I am pretty much building the driver, like it is described in the NXP-BD-SL guide. https://github.com/8devices/qcacld-2.0/blob/CNSS.LEA.NRT_3.0/docs/NXP-BD-SL-i.MX6.md

I edited the makefile according to my build.

ARCH=arm
KERNEL_SRC=/home/aig/fsimx6-B2019.08/build/buildroot-2019.05.1-fsimx6-B2019.08/output/build/linux-custom/
CROSS_COMPILE =/home/aig/fsimx6-B2019.08/build/buildroot-2019.05.1-fsimx6-B2019.08/output/host/bin/arm-linux-

Afterwards I deploy my buildroot image via tftp and the driver via ssh connection in eclipse. At least for now, during tests.

Here the output for the build: This time the wlan-usb as test. --> Same result here.

[aig@localhost qcacld-2.0-CNSS.LEA.NRT_3.0]$ make wlan-usb
make CONFIG_CLD_HL_USB_CORE=y -C /home/aig/fsimx6-B2019.08/build/buildroot-2019.05.1-fsimx6-B2019.08/output/build/linux-custom/ M=/home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0 modules WLAN_ROOT=/home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0 MODNAME?=wlan CONFIG_QCA_WIFI_ISOC=0 CONFIG_QCA_WIFI_2_0=1 CONFIG_QCA_CLD_WLAN=m WLAN_OPEN_SOURCE=1 CONFIG_LINUX_QCMBR=y CONFIG_PER_VDEV_TX_DESC_POOL=1 SAP_AUTH_OFFLOAD=1 CONFIG_QCA_LL_TX_FLOW_CT=1 CONFIG_WLAN_FEATURE_FILS=y CONFIG_FEATURE_COEX_PTA_CONFIG_ENABLE=y CONFIG_QCA_SUPPORT_TXRX_DRIVER_TCP_DEL_ACK=y CONFIG_WLAN_WAPI_MODE_11AC_DISABLE=y CONFIG_LINUX_QCMBR=y CONFIG_PMF_SUPPORT=y CONFIG_CFG80211_INTERNAL_REGDB=y BUILD_DRIVERFW_TOLOCAL=y CONFIG_NO_USE_BACKPORTS=y CONFIG_CFG80211_DEPEND_ON_KERNEL=y WLAN_OPEN_SOURCE=1  MODNAME=wlan-usb
make[1]: Entering directory '/home/aig/fsimx6-B2019.08/build/buildroot-2019.05.1-fsimx6-B2019.08/output/build/linux-custom'
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/HDD/src/wlan_hdd_assoc.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/HDD/src/wlan_hdd_cfg.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/HDD/src/wlan_hdd_debugfs.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/HDD/src/wlan_hdd_dev_pwr.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/HDD/src/wlan_hdd_dp_utils.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/HDD/src/wlan_hdd_early_suspend.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/HDD/src/wlan_hdd_ftm.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/HDD/src/wlan_hdd_hostapd.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/HDD/src/wlan_hdd_main.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/HDD/src/wlan_hdd_memdump.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/HDD/src/wlan_hdd_oemdata.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/HDD/src/wlan_hdd_request_manager.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/HDD/src/wlan_hdd_scan.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/HDD/src/wlan_hdd_softap_tx_rx.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/HDD/src/wlan_hdd_tx_rx.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/HDD/src/wlan_hdd_trace.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/HDD/src/wlan_hdd_wext.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/HDD/src/wlan_hdd_wmm.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/HDD/src/wlan_hdd_wowl.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/HDD/src/wlan_hdd_cfg80211.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/HDD/src/wlan_hdd_p2p.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/HDD/src/wlan_hdd_tdls.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/HDD/src/wlan_hdd_nan_datapath.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/EPPING/src/epping_main.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/EPPING/src/epping_txrx.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/EPPING/src/epping_tx.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/EPPING/src/epping_rx.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/EPPING/src/epping_helper.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/cfg/cfgApi.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/cfg/cfgDebug.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/cfg/cfgParamName.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/cfg/cfgProcMsg.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/cfg/cfgSendMsg.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/dph/dphHashTable.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limAIDmgmt.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limAdmitControl.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limApi.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limAssocUtils.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limDebug.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limFT.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limIbssPeerMgmt.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limLinkMonitoringAlgo.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limLogDump.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limP2P.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limProcessActionFrame.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limProcessAssocReqFrame.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limProcessAssocRspFrame.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limProcessAuthFrame.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limProcessBeaconFrame.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limProcessCfgUpdates.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limProcessDeauthFrame.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limProcessDisassocFrame.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limProcessMessageQueue.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limProcessMlmReqMessages.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limProcessMlmRspMessages.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limProcessProbeReqFrame.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limProcessProbeRspFrame.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limProcessSmeReqMessages.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limPropExtsUtils.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limRoamingAlgo.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limScanResultUtils.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limSecurityUtils.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limSendManagementFrames.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limSendMessages.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limSendSmeRspMessages.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limSerDesUtils.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limSession.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limSessionUtils.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limSmeReqUtils.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limStaHashApi.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limTimerUtils.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limTrace.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limUtils.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/limProcessTdls.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/lim/lim_process_fils.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/pmm/pmmAP.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/pmm/pmmApi.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/pmm/pmmDebug.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/sch/schApi.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/sch/schBeaconGen.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/sch/schBeaconProcess.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/sch/schDebug.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/sch/schMessage.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/rrm/rrmApi.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/MAC/src/pe/nan/nan_datapath.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SAP/src/sapApiLinkCntl.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SAP/src/sapChSelect.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SAP/src/sapFsm.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SAP/src/sapModule.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SME/src/ccm/ccmApi.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SME/src/ccm/ccmLogDump.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SME/src/sme_common/sme_Api.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SME/src/sme_common/sme_FTApi.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SME/src/sme_common/sme_Trace.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SME/src/csr/csrApiRoam.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SME/src/csr/csrApiScan.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SME/src/csr/csrCmdProcess.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SME/src/csr/csrLinkList.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SME/src/csr/csrLogDump.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SME/src/csr/csrNeighborRoam.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SME/src/csr/csrUtil.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SME/src/csr/csrTdlsProcess.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SME/src/oemData/oemDataApi.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SME/src/p2p/p2p_Api.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SME/src/pmc/pmcApi.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SME/src/pmc/pmc.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SME/src/pmc/pmcLogDump.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SME/src/QoS/sme_Qos.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SME/src/rrm/sme_rrm.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SME/src/nan/nan_Api.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SME/src/nan/nan_datapath_api.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SVC/src/nlink/wlan_nlink_srv.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SVC/src/ptt/wlan_ptt_sock_svc.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SVC/src/logging/wlan_logging_sock_svc.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SYS/common/src/wlan_qct_sys.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SYS/legacy/src/pal/src/palApiComm.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SYS/legacy/src/platform/src/VossWrapper.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SYS/legacy/src/system/src/macInitApi.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SYS/legacy/src/system/src/sysEntryFunc.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SYS/legacy/src/utils/src/dot11f.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SYS/legacy/src/utils/src/logApi.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SYS/legacy/src/utils/src/logDump.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SYS/legacy/src/utils/src/macTrace.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SYS/legacy/src/utils/src/parserApi.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SYS/legacy/src/utils/src/utilsApi.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SYS/legacy/src/utils/src/utilsParser.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/VOSS/src/vos_api.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/VOSS/src/vos_event.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/VOSS/src/vos_getBin.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/VOSS/src/vos_list.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/VOSS/src/vos_lock.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/VOSS/src/vos_memory.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/VOSS/src/vos_mq.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/VOSS/src/vos_nvitem.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/VOSS/src/vos_packet.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/VOSS/src/vos_sched.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/VOSS/src/vos_threads.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/VOSS/src/vos_timer.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/VOSS/src/vos_trace.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/VOSS/src/vos_types.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/VOSS/src/vos_utils.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/VOSS/src/vos_diag.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/WDA/src/wlan_qct_wda_debug.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/WDA/src/wlan_qct_wda_legacy.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/DFS/src/dfs_bindetects.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/DFS/src/dfs.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/DFS/src/dfs_debug.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/DFS/src/dfs_fcc_bin5.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/DFS/src/dfs_init.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/DFS/src/dfs_misc.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/DFS/src/dfs_nol.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/DFS/src/dfs_phyerr_tlv.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/DFS/src/dfs_process_phyerr.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/DFS/src/dfs_process_radarevent.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/DFS/src/dfs_staggered.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/WMA/regdomain.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/WMA/wlan_nv.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/WMA/wma.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/WMA/wma_dfs_interface.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/WMA/wma_nan_datapath.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/CLD_TXRX/TLSHIM/tl_shim.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/CLD_TXRX/TXRX/ol_txrx.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/CLD_TXRX/TXRX/ol_cfg.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/CLD_TXRX/TXRX/ol_rx.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/CLD_TXRX/TXRX/ol_rx_fwd.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/CLD_TXRX/TXRX/ol_rx_defrag.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/CLD_TXRX/TXRX/ol_tx_desc.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/CLD_TXRX/TXRX/ol_tx_classify.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/CLD_TXRX/TXRX/ol_tx.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/CLD_TXRX/TXRX/ol_rx_reorder_timeout.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/CLD_TXRX/TXRX/ol_rx_reorder.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/CLD_TXRX/TXRX/ol_rx_pn.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/CLD_TXRX/TXRX/ol_tx_queue.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/CLD_TXRX/TXRX/ol_txrx_peer_find.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/CLD_TXRX/TXRX/ol_txrx_event.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/CLD_TXRX/TXRX/ol_txrx_encap.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/CLD_TXRX/TXRX/ol_tx_send.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/CLD_TXRX/TXRX/ol_tx_sched.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/WMI/wmi_unified.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/WMI/wmi_tlv_helper.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/UTILS/FWLOG/dbglog_host.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/HTC/htc.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/HTC/htc_send.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/HTC/htc_recv.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/HTC/htc_services.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/COMMON/adf/adf_nbuf.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/COMMON/adf/adf_os_lock.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/COMMON/adf/adf_os_mem.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/COMMON/adf/linux/adf_os_defer_pvt.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/COMMON/adf/linux/adf_os_lock_pvt.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/COMMON/adf/linux/qdf_crypto.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/COMMON/adf/adf_trace.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/HIF/ath_procfs.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/HIF/USB/usbdrv.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/HIF/USB/hif_usb.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/HIF/USB/if_usb.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/HIF/USB/regtable.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/BMI/bmi.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/SERVICES/BMI/ol_fw.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/CLD_TXRX/HTT/htt_tx.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/CLD_TXRX/HTT/htt.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/CLD_TXRX/HTT/htt_t2h.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/CLD_TXRX/HTT/htt_h2t.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/CLD_TXRX/HTT/htt_fw_stats.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/CLD_TXRX/HTT/htt_rx.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/UTILS/PKTLOG/pktlog_ac.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/UTILS/PKTLOG/pktlog_internal.o
  CC [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/CORE/UTILS/PKTLOG/linux_ac.o
  LD [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/wlan-usb.o
  Building modules, stage 2.
  MODPOST 1 modules
WARNING: "cfg80211_connect_done" [/home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/wlan-usb.ko] undefined!
  CC      /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/wlan-usb.mod.o
  LD [M]  /home/aig/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/wlan-usb.ko
make[1]: Leaving directory '/home/aig/fsimx6-B2019.08/build/buildroot-2019.05.1-fsimx6-B2019.08/output/build/linux-custom'
[aig@localhost qcacld-2.0-CNSS.LEA.NRT_3.0]$ 
Nevinskas commented 4 years ago

It seems that function cfg80211_connect_done comes from 0003-cfg80211-Add-support-for-FILS-shared-key-authentication.patch patch. Check if the patch is applied correctly. Check if the symbol is exported. Then rebuild the kernel and try rebuilding driver.

aigFsch commented 4 years ago

I ran a make clean and built the entire kernel + patches again. The problem persists, even after the rebuild.

net/wireless/sme.c gets the patch applied correctly. It also seems like it should be exported, see below taken from sme.c. include/net/cfg80211.h also has the declaration for cfg80211_connect_done() added to it.

/* Consumes bss object one way or another */
void cfg80211_connect_done(struct net_device *dev,
        struct cfg80211_connect_resp_params *params,
        gfp_t gfp)
{
    struct wireless_dev *wdev = dev->ieee80211_ptr;
    struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy);
    struct cfg80211_event *ev;
    unsigned long flags;
    u8 *next;

    if (params->bss) {
        /* Make sure the bss entry provided by the driver is valid. */
        struct cfg80211_internal_bss *ibss = bss_from_pub(params->bss);

        if (WARN_ON(list_empty(&ibss->list))) {
            cfg80211_put_bss(wdev->wiphy, params->bss);
            return;
        }
    }

    ev = kzalloc(sizeof(*ev) + (params->bssid ? ETH_ALEN : 0) +
            params->req_ie_len + params->resp_ie_len +
            params->fils_kek_len + params->pmk_len +
            (params->pmkid ? WLAN_PMKID_LEN : 0), gfp);
    if (!ev) {
        cfg80211_put_bss(wdev->wiphy, params->bss);
        return;
    }

    ev->type = EVENT_CONNECT_RESULT;
    next = ((u8 *)ev) + sizeof(*ev);
    if (params->bssid) {
        ev->cr.bssid = next;
        memcpy((void *)ev->cr.bssid, params->bssid, ETH_ALEN);
        next += ETH_ALEN;
    }
    if (params->req_ie_len) {
        ev->cr.req_ie = next;
        ev->cr.req_ie_len = params->req_ie_len;
        memcpy((void *)ev->cr.req_ie, params->req_ie,
                params->req_ie_len);
        next += params->req_ie_len;
    }
    if (params->resp_ie_len) {
        ev->cr.resp_ie = next;
        ev->cr.resp_ie_len = params->resp_ie_len;
        memcpy((void *)ev->cr.resp_ie, params->resp_ie,
                params->resp_ie_len);
        next += params->resp_ie_len;
    }
    if (params->fils_kek_len) {
        ev->cr.fils_kek = next;
        ev->cr.fils_kek_len = params->fils_kek_len;
        memcpy((void *)ev->cr.fils_kek, params->fils_kek,
                params->fils_kek_len);
        next += params->fils_kek_len;
    }
    if (params->pmk_len) {
        ev->cr.pmk = next;
        ev->cr.pmk_len = params->pmk_len;
        memcpy((void *)ev->cr.pmk, params->pmk, params->pmk_len);
        next += params->pmk_len;
    }
    if (params->pmkid) {
        ev->cr.pmkid = next;
        memcpy((void *)ev->cr.pmkid, params->pmkid, WLAN_PMKID_LEN);
        next += WLAN_PMKID_LEN;
    }
    ev->cr.update_erp_next_seq_num = params->update_erp_next_seq_num;
    if (params->update_erp_next_seq_num)
        ev->cr.fils_erp_next_seq_num = params->fils_erp_next_seq_num;
    if (params->bss)
        cfg80211_hold_bss(bss_from_pub(params->bss));
    ev->cr.bss = params->bss;
    ev->cr.status = params->status;
    ev->cr.timeout_reason = params->timeout_reason;

    spin_lock_irqsave(&wdev->event_lock, flags);
    list_add_tail(&ev->list, &wdev->event_list);
    spin_unlock_irqrestore(&wdev->event_lock, flags);
    queue_work(cfg80211_wq, &rdev->event_work);
}
EXPORT_SYMBOL(cfg80211_connect_done);

All in all the patches seem to apply correctly. The only errors I am getting during the deployment of the patches, are parts that seem to be already applied.

[aig@localhost ~]$ cd ~/fsimx6-B2019.08/build/buildroot-2019.05.1-fsimx6-B2019.08/output/build/linux-custom/
[aig@localhost linux-custom]$ patch -p1 < ~/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/patches/NXP-i.MX6/0001-Disable-other-voltages-than-1.8V-for-SDIO.patch 
patching file drivers/mmc/core/core.c
Hunk #1 succeeded at 1964 (offset 137 lines).
[aig@localhost linux-custom]$ patch -p1 < ~/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/patches/kernel/v4.9.11/0001-Changes-for-wireless-and-cfg80211-for-v4.9.11-support.patch 
patching file include/net/cfg80211.h
Reversed (or previously applied) patch detected!  Assume -R? [n] n
Apply anyway? [n] y
Hunk #1 FAILED at 3056.
Hunk #2 FAILED at 3145.
Hunk #3 succeeded at 4243 with fuzz 1 (offset 28 lines).
Hunk #4 succeeded at 5848 with fuzz 2 (offset 38 lines).
2 out of 4 hunks FAILED -- saving rejects to file include/net/cfg80211.h.rej
patching file net/wireless/chan.c
Reversed (or previously applied) patch detected!  Assume -R? [n] n
Apply anyway? [n] y
Hunk #1 FAILED at 592.
1 out of 1 hunk FAILED -- saving rejects to file net/wireless/chan.c.rej
patching file net/wireless/db.txt
Reversed (or previously applied) patch detected!  Assume -R? [n] n
Apply anyway? [n] y
Hunk #1 FAILED at 1.
1 out of 1 hunk FAILED -- saving rejects to file net/wireless/db.txt.rej
patching file net/wireless/reg.c
Reversed (or previously applied) patch detected!  Assume -R? [n] n
Apply anyway? [n] y
Hunk #1 succeeded at 2303 with fuzz 2 (offset -27 lines).
patching file net/wireless/util.c
Reversed (or previously applied) patch detected!  Assume -R? [n] n
Apply anyway? [n] y
Hunk #1 FAILED at 1791.
1 out of 1 hunk FAILED -- saving rejects to file net/wireless/util.c.rej
[aig@localhost linux-custom]$ patch -p1 < ~/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/patches/kernel/v4.9.11/0002-Sysctl-support-for-TCP-IP-parameters-for-performance.patch 
patching file include/net/tcp.h
patching file net/ipv4/sysctl_net_ipv4.c
patching file net/ipv4/tcp.c
Hunk #2 succeeded at 1445 (offset 5 lines).
patching file net/ipv4/tcp_input.c
Hunk #1 succeeded at 5108 (offset 6 lines).
patching file net/ipv4/tcp_timer.c
Hunk #2 succeeded at 764 (offset 18 lines).
[aig@localhost linux-custom]$ patch -p1 < ~/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/patches/kernel/v4.9.11/0003-cfg80211-Add-support-for-FILS-shared-key-authentication.patch 
(Stripping trailing CRs from patch; use --binary to disable.)
patching file include/net/cfg80211.h
(Stripping trailing CRs from patch; use --binary to disable.)
patching file include/uapi/linux/nl80211.h
(Stripping trailing CRs from patch; use --binary to disable.)
patching file net/mac80211/mlme.c
(Stripping trailing CRs from patch; use --binary to disable.)
patching file net/wireless/core.h
(Stripping trailing CRs from patch; use --binary to disable.)
patching file net/wireless/mlme.c
(Stripping trailing CRs from patch; use --binary to disable.)
patching file net/wireless/nl80211.c
Hunk #2 succeeded at 7731 (offset 8 lines).
Hunk #3 succeeded at 7813 (offset 8 lines).
Hunk #4 succeeded at 7839 (offset 8 lines).
(Stripping trailing CRs from patch; use --binary to disable.)
patching file include/uapi/linux/nl80211.h
(Stripping trailing CRs from patch; use --binary to disable.)
patching file include/linux/ieee80211.h
(Stripping trailing CRs from patch; use --binary to disable.)
patching file include/net/cfg80211.h
(Stripping trailing CRs from patch; use --binary to disable.)
patching file include/linux/ieee80211.h
(Stripping trailing CRs from patch; use --binary to disable.)
patching file include/uapi/linux/nl80211.h
(Stripping trailing CRs from patch; use --binary to disable.)
patching file net/wireless/nl80211.c
Hunk #1 succeeded at 3754 (offset -3 lines).
Hunk #2 succeeded at 7823 (offset 8 lines).
(Stripping trailing CRs from patch; use --binary to disable.)
patching file include/linux/ieee80211.h
(Stripping trailing CRs from patch; use --binary to disable.)
patching file include/net/cfg80211.h
(Stripping trailing CRs from patch; use --binary to disable.)
patching file include/uapi/linux/nl80211.h
(Stripping trailing CRs from patch; use --binary to disable.)
patching file net/wireless/nl80211.c
Hunk #1 succeeded at 416 (offset 1 line).
Hunk #2 succeeded at 8038 (offset 8 lines).
(Stripping trailing CRs from patch; use --binary to disable.)
patching file include/linux/ieee80211.h
(Stripping trailing CRs from patch; use --binary to disable.)
patching file include/net/cfg80211.h
Hunk #4 succeeded at 5059 (offset 26 lines).
(Stripping trailing CRs from patch; use --binary to disable.)
patching file include/uapi/linux/nl80211.h
(Stripping trailing CRs from patch; use --binary to disable.)
patching file net/wireless/core.h
(Stripping trailing CRs from patch; use --binary to disable.)
patching file net/wireless/nl80211.c
Hunk #1 succeeded at 419 (offset 1 line).
Hunk #2 succeeded at 3774 (offset -3 lines).
Hunk #3 succeeded at 8791 (offset 8 lines).
Hunk #4 succeeded at 8893 (offset 8 lines).
Hunk #5 succeeded at 13188 (offset 6 lines).
Hunk #6 succeeded at 13217 (offset 6 lines).
(Stripping trailing CRs from patch; use --binary to disable.)
patching file net/wireless/nl80211.h
(Stripping trailing CRs from patch; use --binary to disable.)
patching file net/wireless/sme.c
Hunk #1 succeeded at 675 (offset -5 lines).
Hunk #2 succeeded at 763 (offset -5 lines).
[aig@localhost linux-custom]$ patch -p1 < ~/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/patches/kernel/v4.9.11/0004-cfg80211-Add-macros-to-indicate-backport-support-for.patch 
(Stripping trailing CRs from patch; use --binary to disable.)
patching file include/net/cfg80211.h
[aig@localhost linux-custom]$ patch -p1 < ~/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/patches/kernel/v4.9.11/0005-cfg80211-size-various-nl80211-messages-correctly.patch 
(Stripping trailing CRs from patch; use --binary to disable.)
patching file net/wireless/nl80211.c
Hunk #1 succeeded at 13041 (offset 23 lines).
Hunk #2 succeeded at 13197 (offset 27 lines).
Hunk #3 succeeded at 13249 (offset 37 lines).
Hunk #4 succeeded at 13286 (offset 37 lines).
Hunk #5 succeeded at 13362 (offset 37 lines).
Hunk #6 succeeded at 13733 (offset 37 lines).
Hunk #7 succeeded at 13777 (offset 37 lines).
Hunk #8 succeeded at 14586 (offset 35 lines).
[aig@localhost linux-custom]$ patch -p1 < ~/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/patches/kernel/v4.9.11/0006-cfg80211-Modifiying-__cfg80211_connect_result-API.patch 
(Stripping trailing CRs from patch; use --binary to disable.)
patching file net/wireless/core.h
(Stripping trailing CRs from patch; use --binary to disable.)
patching file net/wireless/mlme.c
(Stripping trailing CRs from patch; use --binary to disable.)
patching file net/wireless/sme.c
Hunk #3 succeeded at 656 (offset -5 lines).
Hunk #4 succeeded at 673 (offset -5 lines).
(Stripping trailing CRs from patch; use --binary to disable.)
patching file net/wireless/util.c
Hunk #1 succeeded at 945 (offset 2 lines).
Hunk #2 succeeded at 953 (offset 2 lines).
[aig@localhost linux-custom]$ patch -p1 < ~/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/patches/kernel/v4.9.11/0007-cfg80211-Match-4.9.11-kernel-cfg80211-nl80211_attrs-.patch 
(Stripping trailing CRs from patch; use --binary to disable.)
patching file include/uapi/linux/nl80211.h
[aig@localhost linux-custom]$ patch -p1 < ~/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/patches/kernel/v4.9.11/0008-cfg80211-Use-a-structure-to-pass-connect-response-pa.patch 
patching file net/wireless/core.h
patching file net/wireless/mlme.c
patching file net/wireless/nl80211.c
Hunk #1 succeeded at 13185 (offset 6 lines).
Hunk #2 succeeded at 13206 (offset 6 lines).
patching file net/wireless/nl80211.h
patching file net/wireless/sme.c
Hunk #3 succeeded at 659 (offset -5 lines).
Hunk #4 succeeded at 673 (offset -5 lines).
Hunk #5 succeeded at 721 (offset -5 lines).
Hunk #6 succeeded at 759 (offset -5 lines).
patching file net/wireless/util.c
Hunk #1 succeeded at 933 (offset 2 lines).
Hunk #2 succeeded at 944 (offset 2 lines).
[aig@localhost linux-custom]$ patch -p1 < ~/wlan_redbean/qcacld-2.0-CNSS.LEA.NRT_3.0/patches/kernel/v4.9.11/0009-cfg80211-Define-macro-to-indicate-support-for-new-cf.patch 
patching file include/net/cfg80211.h
Nevinskas commented 4 years ago

In kernel directory, check System.map file: does it contains cfg80211_connect_done? Is there net/wireless/sme.o file? Have You tired booting the kernel and loading the module?

aigFsch commented 4 years ago

There is no cfg80211_connect_done in System.map. net/wireless/sme.o exists in linux-custom.

I tried loading the module, but it is pretty much the same message as during the build:

wlan_sdio: Unknown symbol cfg80211_connect_done (err 0)
wlan_sdio: Unknown symbol cfg80211_connect_done (err 0)
insmod: can't insert 'wlan-sdio': unknown symbol in module, or unknown parameter
Nevinskas commented 4 years ago

Could you check: cat /proc/kallsyms | grep cfg80211_connect_done ? For example:

$ sudo cat /proc/kallsyms | grep cfg80211_connect_done
ffffffffc097e0e0 r __ksymtab_cfg80211_connect_done      [cfg80211]
ffffffffc0988735 r __kstrtab_cfg80211_connect_done      [cfg80211]
ffffffffc097d8ff t cfg80211_connect_done.cold   [cfg80211]
ffffffffc095acf0 T cfg80211_connect_done        [cfg80211]
aigFsch commented 4 years ago

$ sudo cat /proc/kallsyms | grep cfg80211_connect_done has no result. But a grep for cfg80211_connect results in

80b71628 r __ksymtab_cfg80211_connect_bss
80bb0ffa r __kstrtab_cfg80211_connect_bss

I get the feeling that my buildroot config does not use linux-custom for its build. Is that a possibility?

Nevinskas commented 4 years ago

It might be.

Try to rebuild the kernel with mac80211 and cfg80211 as modules, boot the kernel and load the modules. Then check /proc/kallsyms again.

joerg-krause commented 4 years ago

I get the feeling that my buildroot config does not use linux-custom for its build. Is that a possibility?

Did you add your custom kernel path via LINUX_OVERRIDE_SRCDIR to local.mk? Otherwise Buildroot uses the downloaded kernel 4.9.88.

aigFsch commented 4 years ago

Ok, I indeed did not implement my custom kernel properly. I have now set the LINUX_OVERRIDE_SRCDIR with the same path that is used to build the driver. After testing the driver build and /proc/kallsyms I have no changes to my problem.

It seems like I am missing some setting in my kernel build itself, that leads to me not finding the cfg80211_connect_done. Are there any problems, in me not adding the cfg80211 and mac80211 as modules, but as built into the kernel? In theory that should not make a difference, right? Or did I missinterprete something here?

aigFsch commented 4 years ago

It seems like I was indeed missing some kernel settings. Right now I had success in building the driver and it seems to start up ok.

# insmod /lib/modules/4.9.88-F\+S/wlan-sdio.ko
wlan_sdio: loading driver v4.5.24.4
ath_hif_sdio: HIF (Atheros/multi-bss)

So thanks for the help in getting me this far. Best regards