FSF-style Free Software (Linux included) carries an unacceptable cost
for most embedded systems: the need to distribute source. No one wants
to distribute source code for the embedded control system for every
device they manufacture and distribute (think microwave ovens, cars,
elevators, VCRs, etc.).
Its not that its a secret, its just that its a pain in the ass.
I discussed making an exception for this case with RMS several years
ago, and although he didn't object to it philosophically, no one was
willing to invest the necessary effort to properly draft the appropriate
language for the GPL.