bcmdhd driver can not work with TI's SOC AM4378 and AM5728

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

We have use brcmfmac on TI and NXP platform with CY wifi chip.

It seems that the SDIO hardware is different between NXP and TI because it is needed to set "sd_sgentry_align = <512>" in dts node to let brcmfmac runs on IT's SOC.

My understand is TI's SDIO hardware can not handle variable length data block but NXP can.

The question is that I can not find the same parameter sd_sgentry_align in bcmdhd driver source code.

Is there a same parameter in bcmdhd code?

And If some one has the experience on porting bcmdhd to TI's SOC?

0 Likes
1 Solution
VinayakS_26
Moderator
Moderator
Moderator
100 replies posted 50 replies posted 25 replies posted

I believe in the dhd_sdio.c, there is a field in the dhd_bus structure,  "blocksize" that defines the block size of the SDIO transfer.

There is a macro  name USE_DYNAMIC_F2_BLKSIZE to generate variable block size. You could disable these flags in the makefile

In makefile, check the configurations for SDIO in the CONFIG_BCMDHD_SDIO, where in you could find the DHDCFLAGS for dynamic blocksize.

DHDCFLAGS += -DUSE_DYNAMIC_F2_BLKSIZE -DDYNAMIC_F2_BLKSIZE_FOR_NONLEGACY=256

-Vinayak

View solution in original post

4 Replies
VinayakS_26
Moderator
Moderator
Moderator
100 replies posted 50 replies posted 25 replies posted

I believe in the dhd_sdio.c, there is a field in the dhd_bus structure,  "blocksize" that defines the block size of the SDIO transfer.

There is a macro  name USE_DYNAMIC_F2_BLKSIZE to generate variable block size. You could disable these flags in the makefile

In makefile, check the configurations for SDIO in the CONFIG_BCMDHD_SDIO, where in you could find the DHDCFLAGS for dynamic blocksize.

DHDCFLAGS += -DUSE_DYNAMIC_F2_BLKSIZE -DDYNAMIC_F2_BLKSIZE_FOR_NONLEGACY=256

-Vinayak

Anonymous
Not applicable

Hi vnak,

Thanks for your help.

I find these flags in makefile:

ifneq ($(CONFIG_BCMDHD_SDIO),)

DHDCFLAGS += \

-DBCMSDIO -DMMC_SDIO_ABORT -DBCMLXSDMMC -DUSE_SDIOFIFO_IOVAR          \

-DBDC -DDHD_USE_IDLECOUNT -DCUSTOM_SDIO_F2_BLKSIZE=512                \

-DBCMSDIOH_TXGLOM -DBCMSDIOH_TXGLOM_EXT

And I change CUSTOM_SDIO_F2_BLKSIZE from 256 to 512 but still get the CM53 errors.

see the following errors.

~# ping -s 10000 192.168.2.1 -I wlan0

PING 192.168.2.1 (192.168.2.1): 10000 data bytes

[  328.828187] omap_hsmmc 480ad000.mmc: MMC start dma failure

[  328.833960] sdioh_request_packet_chain:CMD53 write failed with code -22

[  328.840949] dhd_bcmsdh_send_buf: sdio error -1, abort command and terminate frame.

[  328.849294] omap_hsmmc 480ad000.mmc: MMC start dma failure

[  328.855075] sdioh_request_packet_chain:CMD53 write failed with code -22

[  328.862034] dhd_bcmsdh_send_buf: sdio error -1, abort command and terminate frame.

[  329.778145] omap_hsmmc 480ad000.mmc: MMC start dma failure

[  329.783911] sdioh_request_packet_chain:CMD53 write failed with code -22

[  329.790882] dhd_bcmsdh_send_buf: sdio error -1, abort command and terminate frame.

[  330.778144] omap_hsmmc 480ad000.mmc: MMC start dma failure

[  330.783906] sdioh_request_packet_chain:CMD53 write failed with code -22

[  330.790868] dhd_bcmsdh_send_buf: sdio error -1, abort command and terminate frame.

0 Likes

hi:

        I have same bcmdhd driver problem  with TI am3352 .

         

         Have you solved the problem yet?

0 Likes

Hi:

     i have same problem with TI am3358,Have you solved the problem?

my log is:

[  139.429582] omap_hsmmc 47810000.mmc: MMC start dma failure

[  139.435397] sdioh_request_packet_chain:CMD53 write failed with code -22

[  139.442488] dhd_bcmsdh_send_buf: sdio error -1, abort command and terminate frame.

[  139.451194] omap_hsmmc 47810000.mmc: MMC start dma failure

[  139.457006] sdioh_request_packet_chain:CMD53 write failed with code -22

[  139.464015] dhd_bcmsdh_send_buf: sdio error -1, abort command and terminate frame.

[  139.472820] omap_hsmmc 47810000.mmc: MMC start dma failure

could you tell me hao to solve it ?

0 Likes