Porting of the Linux kernel to the AmigaOne/Teron boards started with a version around v2.4.21. Unfortunately all v2.4 kernels lack support for non coherent DMA on the PPC architecture, thus any DMA transfer might corrupt data. This not only includes IDE/ATA UDMA transfers, but also network and USB data transfers. Thus it is not recommended to use any v2.4 Linux kernel on the AmigaOne/Teron boards. You have been warned!
The AmigaOne/Teron patches were initially ported by Ken Moffat to the v2.6 Linux kernel series while he tried to find a workaround for the DMA problem. He also discovered that the Articia S northbridge can't handle coherent memory transfers (where the M bit is set for memory mapping), which are a must for SMP systems. This might be the reason, why the dual 7410 CPU module was never released.
Kernel versions within this range are based on the old arch/ppc architecture in the Linux kernel source, where non-OpenFirmware compatible platforms used different startup code. More important however is that the v2.6 kernel series provides a non coherent [DMA implementation]. This is used on the AmigaOne to workaround the DMA bug in the northbridge.
With the merge of the arch/ppc and arch/ppc64 architecture it became necessary to port the AmigaOne specific setup code over to the new arch/powerpc architecture. The arch/powerpc architecture applies the concept of OpenFirmware compatible [device trees] to all supported platforms. For the AmigaOne a generic device tree was implemented that should work on all AmigaOne/Teron boards, but for example doesn't allow to differentiate the boards from userspace (through /proc/cpuinfo).
Since the AmigaOne's [U-Boot firmware] isn't device tree compatible yet, a small bootloader is included in the kernel image that fixes up the memory and cpu node in the device tree blob to tell the kernel how much memory the machine has and on what frequency it runs.