4 Replies Latest reply on Jun 11, 2019 7:28 PM by user_4299776

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

    dafo_2404681

      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?

       

       

       

        • 1. Re: bcmdhd driver can not work with TI's SOC AM4378 and AM5728
          VinayakS_26

          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

          1 of 1 people found this helpful
          • 2. Re: bcmdhd driver can not work with TI's SOC AM4378 and AM5728
            dafo_2404681

            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.

            • 3. Re: bcmdhd driver can not work with TI's SOC AM4378 and AM5728
              paja_3992786

              hi:

                      I have same bcmdhd driver problem  with TI am3352 .

                       

                       Have you solved the problem yet?

              • 4. Re: bcmdhd driver can not work with TI's SOC AM4378 and AM5728
                user_4299776

                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 ?