Android provides only wifi.c, which should be sufficient.
For some reason, Freescale tried to support all Qualcomm (Atheros), Broadcom (bcmdhd), and RealTek chips in one wifi-hal, that's wifi_unite.c (which has some bugs in it --- not solid programming I mean).
With your configuration (without modifying Android.mk), it will compile wifi.c, which I havn't tried.
BOARD_WLAN_DEVICE := bcmdhd
Since Freescale's intension is to bring you to use wifi_unite.c. You could change your configuration back to UNITE.
BOARD_WLAN_DEVICE := UNITE
If you have modified Android.mk to compile wifi_bcm.c, you may just try the following options to give it a try.
- change wifi_bcm.c to wifi_unite.c in Android.mk (for the BROADCOM block you added)
- just copy wifi_unite.c to wifi_bcm.c
- copy wifi.c to wifi_bcm.c (You might have to modify the code, and you have to change some configuration in BoardConfig.mk)
After all, have a comparison of wifi.c & wifi_unite.c then you will know what's going on.
Note: The source code I have is 2016 version, which is newer than the document (2015). Thus, I believe that wifi_bcm.c is removed for some reason.
Good luck~