1This is an implementation of Open Firmware, a processor-independent
2firmware design. Open Firmware is specified by IEEE 1275-1994,
3Standard for Boot (Initialization, Configuration) Firmware. The
4IEEE standard designation lapsed in 1999, when the Open Firmware
5working group declined to go through the rather time-consuming
6IEEE reaffirmation process, but the design lives on.
8This implementation was written primarily by Mitch Bradley, the
9original author of Open Firmware. The bulk of the recent
10development was done at Firmworks by Bradley and colleagues.
11It traces its roots back to the original Open Boot firmware
12implementation that Bradley developed at Sun Microsystems in the
13late 80s and early 90s. That in turn had roots in Forthmacs,
14a Forth programming language implementation developed and
15marketed during the early 80s by Bradley Forthware. And
16Forthmacs, in turn, owes a debt of gratitude to the public
17domain Forth implementations F83, developed by Michael Perry,
18and MVP Forth, by Glen Haydon. Lilian Walter wrote the USB stack.
20Most of the files within this source tree are licensed under
21the MIT open source license, primarily the files copyrighted
22by Firmworks (including code that Firmworks purchased from
23Bradley Forthware). Some files are licensed under other forms
24of open source license - Sun Microsystems released their core
25Open Boot code under a variant of the BSD license, and a few
26C source files from outside sources carry a GPL license.
27See the individual files for details.
29A few of the files are not copyrighted at all; such files
30include binary graphics images that serve as simple examples,
31files that are very short or essentially trival, load scripts
32that are primarily just simple lists of other files, and simple
33makefiles. The non-copyrighted files do not constitute
34significant intellectual property.
36This Open Firmware implementation has been ported to quite a
37few different CPUs and platforms. The initial release contains
38the processor-independent core code, x86 CPU support, drivers
39for some common PC peripherals, and the current version of the
40port to the One Laptop per Child computer. The support code
41for other CPUs and devices, and documentation, will be released
42as time permits.