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