bcmdhd driver on iMX6Q (kernel 3.10.53)

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

bcmdhd driver on iMX6Q (kernel 3.10.53)

Jump to solution
3,712 Views
petertseng
Contributor IV

Hello Guys,

I am trying to use the bcmdhd wifi driver 43241 module on iMX6Q processor using kernel Freescale GA (3.10.53).

I am having an issue with the sdio registration. I would like to know if anyone here had the same issue and how did you solve it?.

cfg80211: Calling CRDA to update world regulatory domain

BCMDHD-WIFI-RFKILL set block on

IMX_RFKILL: Power-ON

mmc0: queuing unknown CIS tuple 0x80 (2 bytes)

mmc0: queuing unknown CIS tuple 0x80 (3 bytes)

mmc0: queuing unknown CIS tuple 0x80 (3 bytes)

mmc0: queuing unknown CIS tuple 0x80 (7 bytes)

mmc0: queuing unknown CIS tuple 0x80 (14 bytes)

mmc0: new high speed SDIO card at address 0001

Dongle Host Driver, version 1.88.57 (r436554)

Compiled in drivers/net/wireless/bcmdhd on May 28 2015 at 18:34:00

dhd_module_init: sdio_register_driver timeout or error

Labels (4)
Tags (4)
0 Kudos
1 Solution
1,899 Views
haoranwang
NXP Employee
NXP Employee

Hi,

     Bcmdhd seems need to config the Makefile to support DTS.

     You also need to modify the DTS file to enable it.

     Suggestion provide more info like detail logs.

     Thanks.

BRs,

Haoran

View solution in original post

0 Kudos
6 Replies
1,900 Views
haoranwang
NXP Employee
NXP Employee

Hi,

     Bcmdhd seems need to config the Makefile to support DTS.

     You also need to modify the DTS file to enable it.

     Suggestion provide more info like detail logs.

     Thanks.

BRs,

Haoran

0 Kudos
1,899 Views
CodeWarrior4_2M
Contributor II

Hi Haoran,

Could you please confirm if the -DCONFIG_WIFI_CONTROL_FUNC is required? I am looking at the code (see link below) and I do not see this defined enabled.

http://git.freescale.com/git/cgit.cgi/imx/linux-2.6-imx.git/tree/drivers/net/wireless/bcmdhd/Makefil...

Thanks for confirmation,

0 Kudos
1,899 Views
karltsou
Contributor I
0 Kudos
1,899 Views
mickaeltoumi
Contributor III

I do see CONFIG_WIFI_CONTROL_FUNC in bcmdhd code, but the .config does not show me the option (similar to Nexus 5). So it is still unclear if this is required or not.

I will add a define in the bcmdhd code to see if it makes a difference.

0 Kudos
1,899 Views
karltsou
Contributor I

Set CONFIG_WIFI_CONTROL_FUNC is NOT must to have, however it will be used for register platform driver that work as an low level interface hook up bcmdhd low level control (power, irq) on Google MSM kernel.

Check out below,

arch/arm/mach-msm/lge/Makefile - kernel/msm - Git at Google

arch/arm/mach-msm/lge/board-wifi-bcm.c - kernel/msm - Git at Google

Meanwhile platform driver device tree for iMX6q must be there.

Hope this help,

0 Kudos
1,899 Views
karltsou
Contributor I

Hi,

It looks like bcmdhd missing control interface that define in Makefile

-DCONFIG_WIFI_CONTROL_FUNC

Moreover you have to register platform device (bcmdhd platform driver will loop-up if this device exists) in subsys_initialcall.

BR,

-Karl

0 Kudos