FreeBSD razvija podrsku za lowend i highend AmigaOne

[SIZE=5]Podrska za PPC e500 v2 SOC
(AmigaOne Tabor ploča http://a-eon.biz/news/News_Release_A1222.pdf )

powerpcspe Target[/SIZE]
Links
Source Tree[/URL] URL: [URL=“https://svnweb.freebsd.org/base/projects/powerpcspe/”][base] Index of /projects/powerpcspe
Contact: Justin Hibbits <[email protected]>

This project aims to enable the use of the Signal Processing Engine found in the NXP/Freescale e500v2 SoC. The SPE uses opcodes overlapping with those of Altivec, so they are mutually exclusive. Additionally, the e500v2 does not have a traditional FPU, and instead uses the SPE for all floating point operations (or emulation, as is currently done). Combined with the fact that the SPE ABI is incompatible with the traditional ABI, a new MACHINE_ARCH has been created to address these incompatibilities.

A project branch has been created for the work. A powerpcspe kernel boots on the RouterBoard RB800, and the base utilities run properly.

[SIZE=4]Open tasks:[/SIZE]
[LIST=1]
[*]Potentially optimizing setjmp/longjmp to not use SPE unless it has already been enabled. This would save the kernel switch for processes that do not otherwise use the SPE. This is a low priority task which may not be completed.

[/LIST]
Podrška za PPC64 AmigaOne x5000

[SIZE=5]AmigaOne X5000 Support[/SIZE]
Links
URL: AmigaOne X5000
Contact: Justin Hibbits <[email protected]>

This project is a continuation of the Book-E QorIQ support enhancements by Semihalf dating back to 2012.

The AmigaOne X5000 series of AmigaOS-compatible systems uses the Freescale QorIQ series of SoCs for a desktop-class form factor. The work here entails adding support for the e5500 core itself, in addition to support for the SoC peripherals.

Currently, most of the code to enable basic support is checked in: dTSEC (ethernet), core support (e500mc, e5500). As part of this, rman, the kernel resource manager, was enhanced to use uintmax_t for resources. This allows devices to be physically above the 4GB boundary on 32-bit systems. With a statically compiled device tree, it boots to multiuser mode with nfsroot, and can be used as normal (serial and SSH logins once configured).

This project was sponsored by Alex Perez (Inertial Computing).

[SIZE=4]Open tasks:[/SIZE]
[LIST=1]
[*]eSDHC driver: Work has been started on this, hijacking the imx_sdhc.c from Ian Lepore, but there are still bugs: missing DMA from the iMX driver, and odd timeouts after the system starts up.

[*]SATA support: There is a WIP driver for the SATA controller, but it is currently very slow, about 11MB/s on a SATA 2 link. It currently relies on a 10ms delay on every SATA transaction for it to be even somewhat stable. Without this delay, the disk scan never works and I have not yet figured out why.

[*]Local console (VGA) support: It currently boots with a serial console. vgapci0 is seen if there is a PCIe graphics card, but vt(4) does not attach to it yet.

[*]64-bit support: The CPU on the board is a P5020, a 64-bit e5500 dual-core SoC. Currently, booke support in FreeBSD is 32-bit only.

[*]SMP: SMP support on Book-E hardware is currently broken.

[*]U-boot support: Currently this uses a compiled-in device tree, but it would be preferable to use the device tree provided by u-boot, or at least the Linux-compatible device tree.

[*]More work is needed on the DPAA front (Datapath Acceleration Architecture) to improve the Ethernet driver and utilize the SEC engine for crypto, random(4), and IPSec.
[/LIST]