Markus Stockhausen <markus.stockhausen@xxxxxx> wrote: > > + /* Write back any uncommitted data to memory. */ > + if (hreq->buflen) > + dma_sync_single_for_device(cdev->dev, virt_to_phys(hreq->buf), > + hreq->buflen, DMA_TO_DEVICE); This is not how the DMA API works. You must not do virt_to_phys. Instead use dma_map_single and dma_sync_* is not necessary unless you are using the mapping for something else. Cheers, -- Email: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt