Subject: putting functionality in firmware vs OS
To: None <tech-kern@NetBSD.ORG>
From: David Seifert <>
List: tech-kern
Date: 07/29/1998 12:28:21
> According to the PCI spec, the
> system firmware is supposed to program the mapping registers for
> PCI devices; AFAIK, the operating system software isn't really supposed
> to muck with them.

Why does the PCI spec care whether the code that mucks with these
registers is linked into the lump called firmware or the lump called
the OS?

For small machines (workstations) I think the firmware
should do as little as possible.  Sanity test memory,
init the memory's ecc and a few essential things, load the OS
and jump to it.

>From an open sources point of view, if your firmware
has a bug or just doesn't do what you want it to,
you're stuck, on most machines.  (Good luck getting
the source code and build tools for the firmware on most
machines.)  If that functionality is in the OS, you can
make it do what you want.

Big machines are of course a whole other world.