Re: [PATCH] Sam440ep support
flat view
From: Gerhard Pircher <hidden>
Date: 2008-05-06 07:51:27
-------- Original-Nachricht --------
Datum: Tue, 06 May 2008 09:44:18 +1000 Von: Benjamin Herrenschmidt [off-list ref] An: Gerhard Pircher [off-list ref] CC: Kumar Gala <redacted>, <redacted>, <redacted> Betreff: Re: [PATCH] Sam440ep support
On Mon, 2008-05-05 at 21:50 +0200, Gerhard Pircher wrote:quoted
This is a (bad) hack that I also use on the AmigaOne to get the ALSA sound drivers working with DMA, because ALSA doesn't work with dma-noncoherent.c. The problem is the "nopage" mechanism, which fails with non coherent DMA allocations due to their own virtual address space (correct me, if I'm wrong). See this thread for more info: http://readlist.com/lists/vger.kernel.org/linux-kernel/45/226541.html This is a general problem that affects all powerpc boards that use dma-noncoherent.c with ALSA PCI drivers.The link above doesn't provide any useful information on the problem and it contains itself a non working link...
Sorry, I didn't check the embedded link. This one should work: http://www.uwsg.iu.edu/hypermail/linux/kernel/0406.2/0801.html IIRC the problem is the mmaping of non coherent DMA allocations, as you already know. The link above points to a very old (from 2004) and quite long thread where the correct DMA API for mmaping DMA allocations was discussed.
Can somebody explains exactly what's going on ? That shouldn't be hard to fix. I can't believe the problem has been around for 2 years and nobody actually bothered fixing it properly.
Takashi Iwai posted a preliminary patch a long time ago. I tested it on my machine and it failed with non coherent scatter-gather DMA allocations (I guess almost all ALSA PCI drivers use SG DMA?). Thanks! Gerhard -- GMX startet ShortView.de. Hier findest Du Leute mit Deinen Interessen! Jetzt dabei sein: http://www.shortview.de/?mc=sv_ext_mf@gmx