PowerPC64LE is landed in HEAD

Brandon Bergren bdragon at FreeBSD.org
Wed Sep 23 06:53:20 UTC 2020

As of r366063, all of the relevant bits of my work tree (minus enabling if_bxe, which is not yet working properly due to some queue initialization issue I haven't figured out) have been committed, making powerpc64le buildable and runnable without needing patches.

Current status:
* Self-hosting on POWER8 and POWER9. Cross build from AMD64 well tested as well. (Depends on the in-tree clang 11.0.0-rc2 compiler or a clang otherwise patched with https://reviews.llvm.org/D73425 -- the next time devel/llvm-devel updates to a new snapshot, it should become usable as well. The patch itself is a trivial change to the target code and should work on other versions just fine.)
* Installer works fine on POWER8 and POWER9. (Tested and supported on Raptor Talos II/Blackbird POWER9 and Tyan POWER8 equipment.)
* Will be part of the next snapshot run.

* Update the platform support matrix to list the new TARGET_ARCH.
* Send a pull request to add powerpc64le to the CI build matrix.
* Fix pseries loader logic to be able to interpret little endian kernels. (Initial bringup was done with -kernel / -append, bypassing loader entirely, and then switched to hardware as soon as the system console was working)
* Generally go through and retest qemu. Fix any issues preventing easy installability.
* Update bsd.cpu.mk for targeting a baseline MACHINE_CPU of power8 instead of "aim".
* Default to having the ISA207 atomics turned on.
* Fix the string optimizations I skipped in libc.
* Fix POWER9 Radix mode.
* Look into the feasibility of switching to 128 bit IEEE long double (it's dependent on software emulation on power8, which is supposedly something provided by the compiler.)
* Join or otherwise work more directly with clusteradm@ so I can help out with the POWER8 / POWER9 cluster hardware issues.

  Brandon Bergren
  bdragon at FreeBSD.org

More information about the freebsd-ppc mailing list