[BUG/RFC/PATCH] drm: Fix for non-coherent DMA PowerPC

Gerhard Pircher gerhard_pircher at gmx.net
Mon Mar 3 09:30:12 EST 2008


-------- Original-Nachricht --------
> Datum: Mon, 03 Mar 2008 07:47:09 +1100
> Von: Benjamin Herrenschmidt <benh at kernel.crashing.org>
> An: Gerhard Pircher <gerhard_pircher at gmx.net>
> CC: airlied at linux.ie, linux-kernel at vger.kernel.org, dri-devel at lists.sourceforge.net, linuxppc-dev at ozlabs.org
> Betreff: Re: [BUG/RFC/PATCH] drm: Fix for non-coherent DMA PowerPC

> That doesn't look possible, which is weird... looks like we are passing
> 0 to clean_dcache_range().
> 
> Interestingly enough, I can -see- possible issues with the ppc32 DMA API
> when trying to use HIGHMEM but that isn't the case here... 
> 
> Can you add printk's to ati_pcigart.c to print the arguments passed to
> 
> +               dma_sync_single_for_device(&dev->pdev->dev,
> +                                          bus_address,
> +                                          max_pages * sizeof(u32),
> +                                          PCI_DMA_TODEVICE);
> +
> 
> And also print the result of bus_to_virt(bus_address) ?
> 
> Ben.

Okay, I changed the code to this:

>DRM_DEBUG("dev = 0x%x, bus_address = 0x%x, bus_to_virt = 0x%lx, max_pages = 0x%x\n",
>	(unsigned int)&dev->pdev->dev, bus_address,
>	(unsigned long)virt_to_bus(bus_address), max_pages);
>
>if (gart_info->gart_table_location == DRM_ATI_GART_MAIN) {
>	DRM_DEBUG("calling dma_sync_single_for_device()\n");
>	dma_sync_single_for_device(&dev->pdev->dev,
>		bus_address,
>		max_pages * sizeof(u32),
>		PCI_DMA_TODEVICE);
>}

It looks like dma_sync_single_for_device() is not called here (the debug
messages don't show up in kernel log). I also included the Xorg.0.log
file.

Gerhard
-- 
Psssst! Schon vom neuen GMX MultiMessenger gehört?
Der kann`s mit allen: http://www.gmx.net/de/go/multimessenger
-------------- next part --------------
A non-text attachment was scrubbed...
Name: dri_crash2.log
Type: text/x-log
Size: 89574 bytes
Desc: not available
URL: <http://lists.ozlabs.org/pipermail/linuxppc-dev/attachments/20080302/7c0ddbd3/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Xorg.0.log
Type: text/x-log
Size: 52913 bytes
Desc: not available
URL: <http://lists.ozlabs.org/pipermail/linuxppc-dev/attachments/20080302/7c0ddbd3/attachment-0001.bin>


More information about the Linuxppc-dev mailing list