POWER on FreeBSD has been supported for quite some time. Support for Apple, Freescale, and Sony hardware is considered mature. Support for IBM, Raptor, and Tyan hardware is stable but being actively worked on.
The official project page at http://www.freebsd.org/platforms/ppc.html is known to be stale as of 20190705.
if you're adding relevant information here, please poke someone to update its source document at ppc.xml.
Contents
Supported Configurations
Supported Hardware
Listed in alphabetical order by manufacturer.
- Apple
- PowerPC ('New World') machines (ones with built-in USB ports, 1999-2006)
- Freescale
MPC85XX evaluation boards (powerpc, powerpcspe), AmigaOne A1222 (powerpc, powerpcspe), AmigaOne X5000 (powerpc, powerpc64)
- IBM
Open Firmware-based Power5 machines and succesors (including 9133), (powerpc64 only)
- Power8 and Power9-based systems (including IBM LC922, IC922, IBM 8247), (powerpc64 and powerpc64le)
- Sony
- Playstation 3 (powerpc64 only, starting with FreeBSD 9.0)
- Raptor Computing Systems
- Tyan
Tyan GN70-BP010 Power8 (powerpc64)
Supported Virtual Instances
- QEMU
See powerpc/QEMU.
Getting started
- Raptor and Tyan machines:
- Install the FreeBSD ISO (.iso) image. Don't use the USB memstick (.img) image.
At least FreeBSD 12 is needed, but FreeBSD-13.0-RELEASE or FreeBSD-14-CURRENT are recommended for Blackbird and Talos II. See OS version notes for more information.
Talos II with System Package/firmware v2.00 may crash in petitboot with LSI SAS controllers. This is fixed in v2.01-next, see Talos II Firmware Public Beta
When installing from USB on a Raptor machine, you may encounter a USB bug that prevents the installer root from being mounted. To work around this bug, wait at the mountroot> prompt until you see some probe related errors appear on the screen. This may take a minute to appear. Your USB drive should then attach and be usable. (type cd9660:/dev/iso9660/13_0_CURRENT_POWERPC64_CD after you see it attach on the console to retry the mount and continue with the installer.)
- This only ever seems to happen during initial boot. Plug and play of additional devices works fine after that point.
On a Tyan Palmetto system, if you are running a self-built PNOR image that was built from sources between Nov 22, 2017 and Jan 23, 2020, you likely are unable to boot ELFv2 kernels. If you are on the proprietary BMC software, the best solution is either to upgrade to OpenBMC (see https://github.com/openbmc/docs/blob/master/openbmc-conversion.md ) or to build a customized version of the palmetto PNOR that is compatible with the proprietary BMC. If you go with the second option, you will need an up-to-date op-build tree, but you will need to revert commit 4e54c75a6a954e27553cf878f19f49e4e7f4099e to switch back to the legacy flash access method. (The palmetto pnor files being auto-built by https://openpower.xyz/ are ONLY compatible with OpenBMC after Feb 15, 2020 due to mutually incompatible flash access settings that were forced due to the Pantsdown vulnerabilities against the AST BMC chip.)
- Apple machines:
- Starting with 9.0, the installer works properly, and most of the following instructions can be ignored:
Pre 9.0: http://people.freebsd.org/~nwhitehorn/ppcinstall.txt
- Sometimes you need these hints:
Booting from hard drive: boot cd:,\BOOT\LOADER cd:0
PXEbooting: boot enet:0,\\loader.ppc
- Booting alternative kernels easily from loader:
Edit /boot/defaults/loader.conf and uncomment the loader_delay="3" line.
- Reboot and press Ctrl-C during the delay after loader starts. (quick series of dots)
set bootfile=/boot/path/to/kernel
boot
- Quirks with specific firmware revisions:
Apple PowerBook6,5 4.8.7f1 BootROM:
Due to failure to clean up the MMU during initialization of OpenFirmware, the page at 0x00100000 is left mapped. This interferes with kernel loading.
Workaround: dev /memory@0 100000 1000 do-unmap
U-boot installs: powerpc/UBoot-Install
Ports
See powerpc/ports for the overview of ports built via gcc (the default).
Xorg
X11 on Power8/Power9 is believed to be stable now.
xorg should work on all supported Apple hardware. Console restore after leaving X11 may or may not work, depending on your graphics hardware.
Early on, Peter Grehan tested X11 on:
- rev B iMac (Rage 3D Pro 215GP, accel disabled).
700Mhz eMac (Nvidia GeForce2 MX)
12" 1.33G G4 powerbook (Nvidia GeForce G5200)
- and Martin Minkus has run it on a 350MHz iMac, Rage 128VR.
On ATI Radeon-based machines there are still some problems:
Sometimes Option "NoAccel" is required
- The Xserver sometimes seems to have problems querying the Monitor Modes
On Blackbird and Talos II with onboard graphics card, the colors will be wrong when using PowerPC64 (big-endian). To fix this, do the following:
Use a modified xf86-video-scfb driver: https://github.com/rayddteam/xf86-video-scfb/pull/6 (note that this needs the FBIO_GETRGBOFFS ioctl that is only available on FreeBSD-14-CURRENT).
The modified scfb driver requires a recent X11 version (at least 21.1.0). To use 1.20, the following patch must be applied: https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/573.
- To fix colors on (some) programs that use Mesa, the following patches are needed:
Sound
uaudio(4) works. snd_ai2s(4) and snd_davbus(4) support built-in audio on various Mac models.
See Also
/BookE /Bugs /IBM9133 /POWER8 /POWER9 /QEMU /Raptor /Raptor/Blackbird /Raptor/TalosII /ToDo /UBoot-Install /llvm-elfv2 |
External Links
Open Firmware Quick Reference: http://www.firmworks.com/QuickRef.html
Garance A. Drosehn's description about FreeBSD on the Minimac: http://lists.freebsd.org/pipermail/freebsd-ppc/2005-January/000814.html
FreeBSD on the PowerMac G-series thread on the FreeBSD Forum: https://forums.freebsd.org/threads/13827/
OpenPOWER I/O Architecture Version 2 Workgroup Specification