dma_ops->map_page == NULL

Mark Nelson markn at au1.ibm.com
Tue Jul 7 10:15:23 EST 2009


On Tuesday 07 July 2009 03:51:00 Kári Davíðsson wrote:
> I am doing a driver that uses dma_map_single().
> 
> After changing to to linux 2.6.29.3 I am getting
> segfaults in dma_map_single() because dma_ops->map_page is NULL.
> Actually dma_ops looks funky too.

When the 32 and 64bit DMA code was merged in .28 , map_/unmap_page() was
added in favour of map_/unmap_single() (which was later removed in .29)
so you'll have to replace your calls to dma_map_single() with
dma_map_page(). Just pass it the page and offset rather than the address.

Hope that helps!
Mark.

> 
> The driver is an of_platform_driver which is declared as an child of
> the lbp (fsl,lpb) node of the device tree.
> 
> This is on powerpc 5200b platform.
> 
> rg
> kd


More information about the Linuxppc-dev mailing list