Recently I've been working on a specific project: running 32-bit ARM Haiku on the Toshiba AC100, a 2010 netbook based on the NVIDIA Tegra 2 chip with 512 MB of RAM.
The main hurdle was the Tegra 2's FPU, which is limited to 16 registers (VFPv3-D16). Since all precompiled ARM packages require 32 registers, every C++ program crashed on startup. I had to recompile the whole toolchain, system libraries, and about 70 packages (including Python 3.11, Git, Vim, Curl, and SDL2).
The setup is non-intrusive: U-Boot is loaded into RAM over USB via tegrarcm, and Haiku boots from the microSD card in EFI mode without touching the internal storage.
After fixing several bugs both in QEMU and on actual hardware (memory handling, USB keyboard, SDHCI/eMMC drivers, and the NVEC controller for the touchpad, battery, and brightness), the system reached the desktop. I enabled the second Cortex-A9 core by fixing the scheduler, reaching a measured 1.94x speedup, and wrote the audio driver for the Realtek codec.
The current build 103 (a 2 GB image) provides a desktop with Tracker and Deskbar, dual-core support, keyboard, touchpad, audio, battery, clock, and apps like Vision, Pe, BePDF, and WonderBrush 3. Still left to work on are system power-off, Wi-Fi (requiring an ath9k_htc port), HDMI, and graphics acceleration, since the display currently uses U-Boot's 16-bit framebuffer.
If you have an AC100 and want to try it out, I can share the image and setup instructions.
