I insmod the bcmdhd.ko,when wifi scan or send other command,sdio DMA driver print the log:omap_hsmmc 480d1000.mmc: MMC start dma failure
I found the issue apper in the code below:
static int omap_hsmmc_setup_dma_transfer(struct omap_hsmmc_host *host, struct mmc_request *req){
......
......
/* Sanity check: all the SG entries must be aligned by block size. */
for (i = 0; i < data->sg_len; i++) {
struct scatterlist *sgl;
sgl = data->sg + i;
if (sgl->length % data->blksz)
return -EINVAL;
}
........
}
what is the reason of the problem?And how to fix it?