Y
y_p_w
Guest
Phil Tomson wrote:
The irony is that their mission statement mentions the LGPL as
the basis for their preferred license. Here's part of their
mission statement:
<http://opencores.org/projects.cgi/web/opencores/mission>
"Our main objective is to design and publish core designs under a
license for hardware modelled on the Lesser General Public License
(LGPL) for software. We are committed to the ideal of freely
available, freely usable and re-usable open source hardware."
Several of their authors don't seem to have used this psuedo-
LGPL license they refer to, but the actual LGPL itself.
Thanks. The core I was looking at was hosted at opensource.org.In article <591da479.0408051151.3a1491d4@posting.google.com>,
y_p_w <y_p_w@hotmail.com> wrote:
So I'll just sum up what we're looking at, what we'll do with it,
and what we can or would rather not do:
1) I've located an open-source Verilog description (released under
the LGPL) of a hardware function we'd like to use.
2) We would have no problem releasing our modifications of this
code or giving credit to the original author; it only seems
fair.
That may or may not be required, however it's nice that you're flexible in
this area.
3) My employer would be extremely hesistant to release our other
HDL source code used in this design. Like most companies in
our industry, we are in the business of selling proprietary
hardware.
I doubt you would have to release the rest of your HDL code.
4) Much of the LGPL language doesn't seem to apply to the
hardware development flow.
Is this doable? It sounds like the LGPL was meant to allow for
open-source software to be used in otherwise proprietary products.
However - using the LGPL seems to be navigating a minefield in
this respect. The standard GPL makes things extremely clear -
you don't use it for proprietary products. In a worst case
situation, might it be possible to ask the author for permission
to use it under the terms of a different license (modified BSD
perhaps)?
It seems that you're in uncharted territory here. I suspect that, as you
say, the LGPL doesn't really apply here to your final product.
Essentially, you're taking an LGPL component written in an HDL and
synthesizing it to another form that gets realized in hardware. The
analogy _could_ be made to compiling and linking in the software world,
however, the language of the LGPL (as you note) does seem to refer to
software (object files and shared libraries) not hardware.
One thing that the LGPL is often interpreted to exclude is dynamic linking
- you apparently can't produces a dll/so file and dynamically link against
it. However, static linking is allowed by the LGPL. I don't know if
that kind of analogy can be stretched to your situation with hardware.
I would tend to see what you're doing as being closer to 'static linking'
than it is to 'dynamic linking'.
If I were you I would contact the author of your module and ask him what
his intent was for putting it under the LGPL. It looks like perhaps we
need some different type of Open Source license for hardware. As you say,
the GPL makes it clear that you can't use said component in a proprietary
system, but the LGPL seems unclear in this context.
The irony is that their mission statement mentions the LGPL as
the basis for their preferred license. Here's part of their
mission statement:
<http://opencores.org/projects.cgi/web/opencores/mission>
"Our main objective is to design and publish core designs under a
license for hardware modelled on the Lesser General Public License
(LGPL) for software. We are committed to the ideal of freely
available, freely usable and re-usable open source hardware."
Several of their authors don't seem to have used this psuedo-
LGPL license they refer to, but the actual LGPL itself.