Hacker News new | ask | show | jobs
by eschaton 1060 days ago
Just use port and use SmartFirmware, a BSD-licensed IEEE-1275 Open Firmware implementation. It even includes a C to OF bytecode compiler for ease in porting drivers.
1 comments

As much nostalgia as I have for my Power Mac, Open Firmware doesn't solve anything in 2023. It doesn't natively boot any OS and it doesn't solve the blob "problem".
Open Firmware can boot an ELF image obtained in a variety of ways, and supply the booted image with both arguments and a device tree, it doesn’t need to do more to boot an OS. It can also be extended straightforwardly to provide boot security/attestation.

As for “solving” the “blob “problem,”” it provides a reasonable architecture for implementing drivers that are both platform- and architecture-independent; an OS can even choose to just use the drivers supplied by the firmware, by providing an equivalent environment.

In other words, it essentially solves the “How should an arbitrary system boot and pass control to an operating system, including how to interact with arbitrary devices?” problem. What more does anyone need?