Eric W. Biederman ebiederman at
Mon Mar 31 15:02:01 CEST 2003

hcyun at writes:

> Hello, 
> I have a question regarding GPL and NDA issue. 
> I have documents for a specific chipset which I get  with NDA. 
> And I'm trying to port Linuxbios on that chipset. 
> As LinuxBIOS is GPL, I know I must make my port publicly available. 
> In this case, Is it a violation of NDA or not? Does it depend on NDA? 

Violating the spirit of an NDA has business consequences, regardless of
the legal ones so keeping good faith is necessary.

But that runs two ways.  If you a customer cannot use their product because
of NDA issues you have leverage to work out the issue with manufacturer
of the hardware.

In general a NDA does not preclude you from working on a chipset.

In many cases there are extra constrains to releasing code before the
hardware is publicly available.  So a source/binary release may need
to wait until the official launch of a product.

In all cases you can develop code and not release either the source
or the binary while you have an NDA.  And that meets the terms of the

For source code release the stipulation is that anyone who can get the
binary needs a means to get the source.

In a practical sense I have not yet seen hardware where knowing how to
program it appears to reveal how to build it.  Which is what I would
suspect manufacturers would be worried about.

Most NDA issues I have seen have come out of business NDA reflex and
can usually be resolved.  It also helps in the business arguments that
alternative suppliers of competing hardware have been successfully
worked with so you can threaten to switch hardware or even switch
hardware if you cannot use a piece of hardware because of NDA issues.

Also people tend to be particularly prickly NDA wise on the top of the
line hardware.  In most cases embedded products are a commodity and
volume market, with more custom systems being built.  So on the
embedded side I would expect the NDA issues to be easier to overcome.


More information about the coreboot mailing list