[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: AmigaOne 2.6.x Linux kernel port

A few more comments I forgot to make earlier -

On Wed, 30 Nov 2005, Gerhard Pircher wrote:
I tried to change the code
to handle the AmigaOne platform as a non cache coherent architecture and to
do all necessary cache flushes in software. AFAIK also the developers of
AmigaOS4 have worked around the bugs of the ArticiaS in this way. Well,
first it seemed that I had succeeded and Linux was working correctly with
DMA (tested it by calculating the checksum of a 700MB ISO file and with DMA
activated for the IDE drives), but after porting my patches from kernel to it became apparent that the patches don't work
correctly yet (but better as the other attempts ;-). Also the kernel
reported a lot of "lost interrupts" messages and errors about expired "DMA

The problem, as BenH pointed out, is that the main ppc code assumes cache coherency for these CPUs - unlike some of the embedded processors. I never got it to work reliably after Bart rewrote some of the ide code in circa 2.6.10, but the errors sound familiar - been there, still got the scars :)

I included all relevant patches for the AmigaOne below. My patches are for
"include/asm-ppc/dma-mapping.h" and
"arch/ppc/kernel/amigaone_dma-mapping.c". The other patches were either made
by some OS4 developers (Ross Vumbaca) or Ken Moffat (ported the patches to
2.6.x). If somebody wants to take a look at all the patches for the 2.6.x
kernel, just write me.

My attempts to port this should still be somewhere at http://www.ntlworld.com/zarniwhoop/ if anybody cares - bear in mind that I never exposed these for comment in "the proper place" (ppc-dev) because I was still trying to track down why my machine would lock up while trying to build a new toolchain (gcc-3.4 in those days) - the problem turned out to be inadequate cooling, which eventually destroyed my cpu or mobo - so apart from me, nobody here has seen these patches, but I'm willing to comment on what I did, to the extent that I can remember.

The authorship of the original 2.4 patches is vague - I think Ross told me that his work was mostly admin (apart from the floppy code), most of it seems to have come from the Friedens or Bill Mueller, although clearly based on other 2.4 ppc code.

 das eine Mal als Tragödie, das andere Mal als Farce

Reply to: