[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <685f0c06-af1b-0bec-ac03-f9bf1f7a2b35@xenosoft.de>
Date: Tue, 15 Jan 2019 14:56:34 +0100
From: Christian Zigotzky <chzigotzky@...osoft.de>
To: Christoph Hellwig <hch@....de>
Cc: linux-arch@...r.kernel.org,
Darren Stevens <darren@...vens-zone.net>,
linux-kernel@...r.kernel.org, Julian Margetson <runaway@...dw.ms>,
linux-mm@...ck.org, iommu@...ts.linux-foundation.org,
Paul Mackerras <paulus@...ba.org>,
Olof Johansson <olof@...om.net>, linuxppc-dev@...ts.ozlabs.org
Subject: Re: use generic DMA mapping code in powerpc V4
On 15 January 2019 at 2:35PM, Christoph Hellwig wrote:
> On Tue, Jan 15, 2019 at 11:55:25AM +0100, Christian Zigotzky wrote:
>> Next step: 21074ef03c0816ae158721a78cabe9035938dddd (powerpc/dma: use the
>> generic direct mapping bypass)
>>
>> git clone git://git.infradead.org/users/hch/misc.git -b powerpc-dma.6 a
>>
>> git checkout 21074ef03c0816ae158721a78cabe9035938dddd
>>
>> I was able to compile the kernel for the AmigaOne X1000 (Nemo board with PA
>> Semi PA6T-1682M SoC). It boots but the PA Semi onboard ethernet doesn't
>> work.
> Thanks. But we are exactly missing the steps that are relevant. I've
> pushed a fixed up powerpc-dma.6 tree, which will only change starting from
> the first commit that didn't link.
>
> The first commit that changed from the old one is this one:
>
> http://git.infradead.org/users/hch/misc.git/commitdiff/257002094bc5935dd63207a380d9698ab81f0775
>
> which was that one that your compile failed on first.
>
> Thanks again for all your work!
>
Thank you! I tried the commit 240d7ecd7f6fa62e074e8a835e620047954f0b28
(powerpc/dma: use the dma-direct allocator for coherent platforms) again.
git clone git://git.infradead.org/users/hch/misc.git -b powerpc-dma.6 a
git checkout 240d7ecd7f6fa62e074e8a835e620047954f0b28
I modified the 'dma.c' patch because of the undefined references to
'__dma_nommu_free_coherent' and '__dma_nommu_alloc_coherent':
---
@@ -163,8 +99,13 @@ static inline void dma_nommu_sync_single(struct
device *dev,
#endif
const struct dma_map_ops dma_nommu_ops = {
+ .alloc = dma_direct_alloc,
+ .free = dma_direct_free,
.map_sg = dma_nommu_map_sg,
.unmap_sg = dma_nommu_unmap_sg,
.dma_supported = dma_direct_supported,
---
The X1000 boots and the PASEMI onboard ethernet works! X5000 (P5020
board): U-Boot loads the kernel and the dtb file. Then the kernel starts
but it doesn't find any hard disks (partitions).
-- Christian
Powered by blists - more mailing lists