Dear All,
I am using BSP L5.0.0_1.0.0-GA and I want to customize the implementation of wpa_supplicant_driver_cmd() in extern/wpa_supplicant_8 to support proprietary driver commands.
The wpa_supplicant_driver_cmd() calls wpa_drv_driver_cmd() which further calls an external function wpa_driver_nl80211_driver_cmd() to handle the driver commands.
extern int wpa_driver_nl80211_driver_cmd(void *priv, char *cmd, char *buf,
size_t buf_len);
However, where is the wpa_driver_nl80211_driver_cmd() function for Atheros AR6003? I searched through the whole root directory but yet could not find it. For i.MX6 sabresd board with the Silex WiFi module in clean BSP L5.0.0_1.0.0, where is this function?
Thanks in advance.
Solved! Go to Solution.
Finally, I found out the wpa_driver_nl80211_driver_cmd() function for Atheros AR6003 is actually implemented in
hardware/qcom/wlan/qcwcn/wpa_supplicant_8_lib/driver_cmd_nl80211.c, making use the static library lib_driver_cmd_qcwcn.a when linking /system/bin/wpa_supplicant.
Hi P P,
We are working on a new project and blocked by a similar issue, could you advise us:
1. How do you compile the driver_cmd_nl80211.c to lib_driver_cmd_qcwcn.a in Android BSP environment?
2. How to do the linking /system/bin/wpa_supplicant as you described?
It's our first time to integrate a Wifi module with wpa_supplicant package, it would be very helpful if you can provide us the steps in detail. Thanks in advance!
TF
Hello Tsung Fang Tu,
1. To build lib_driver_cmd_qcwcn.a, I simply run the Android build command "mm" under the path "hardware/qcom/wlan/qcwcn/wpa_supplicant_8_lib". It will generate the static library lib_driver_cmd_qcwcn.a.
2. In fsl/sabresd_6dq/BoardConfig.mk, BOARD_HOSTAPD_PRIVATE_LIB_QCOM & BOARD_WPA_SUPPLICANT_PRIVATE_LIB_QCOM are set to "lib_driver_cmd_qcwcn". Again when you run "mm" under the path "external/wpa_supplicant_8", the library defined by BOARD_WPA_SUPPLICANT_PRIVATE_LIB_QCOM will be linked.
Hope this helps.
Finally, I found out the wpa_driver_nl80211_driver_cmd() function for Atheros AR6003 is actually implemented in
hardware/qcom/wlan/qcwcn/wpa_supplicant_8_lib/driver_cmd_nl80211.c, making use the static library lib_driver_cmd_qcwcn.a when linking /system/bin/wpa_supplicant.
Thank you for posting the solution!