FPGARelated.com
Forums

practical experience with GPL IP core in commercial product

Started by Unknown November 4, 2014
Hi DJ,

DJ Delorie <dj@delorie.com> wrote:
>> http://www.gnu.org/licenses/gpl-faq.html#GPLRequireSourcePostedPublic > > Don't read the FAQ, read the license itself: > > "Conveying under any other circumstances is permitted solely under the > conditions stated below." > > I.e. the license makes conditions, but does not change the license of > the other parts. There may be *other* conditions which you must *also* > meet, based on the *other* licenses, but those conditionsare not changed > by also using GPL'd parts.
Quoting the Preamble: "To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others." and again: "...if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code."
> So if you combine a GPL'd work with a proprietary work, the result is > not GPL'd - the result is that you just can't distribute it, since the > licenses have conflicts which you cannot resolve.
Meaning that using GPL'ed work with proprietary work is *viable* only if proprietary work is licensed under a GPL-compatible license.
>> But if you release the modified version to the public in some way, the >> GPL requires you to make the modified source code available to the >> program's users, under the GPL. [...]" > > Even this doesn't say that the license of the other parts changes, only > that the distribution must be under the terms required by the GPL, as it > applies to the GPL'd portion.
I believe you are distorting my statements. The terms required by the GPL do not apply to the GPL'ed portion only, they apply to the entire work: "You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged"
> >> This is because Xilinx licenses are not 'viral'. > > No license is 'viral'. The terms either apply or you don't use it. > If you use multiple licenses, all terms apply.
Licenses like GPL are defined *viral* or *copyleft*, meaning that they call for distrubution under the *very same terms* for any derivative work.
>> In the OP use case, if (s)he uses a piece of code GPL'ed, in the event >> of redistributing the final work, (s)he has to release the final work >> under the GPL license. This implies that any IP license used which is >> not GPL-compatible cannot be used. > > The wording makes the causality vague. I would say "The only way to > legally release a work that includes GPL'd portions, is under the terms > of the GPL." I would not say "if you... then you have to..." because > that implies that you're being forced to do something that you aren't > forced to do.
Quoting RMS (http://www.gnu.org/licenses/rms-why-gplv3.html): &ldquo;If you include code under this license in a larger program, the larger program must be under this license too.&rdquo; The license 'enforce' the obligation to license a derived work under the same terms. And that is the reason why GPLv2 and GPLv3 are not compatible, since they both would require to have the larger program released under each of them, which is not possible. Al
Hi Rick,

rickman <gnuarm@gmail.com> wrote:
[]
> If no one can view the flash blocks, then they won't know the IP is in > there either.
from Wikipedia: "In ordinary language, the term crime denotes an unlawful act punishable by a state". The simple fact that is punishable, qualifies it as a crime. And sooner or later someone may have access to those 'blocks' and legitimately sue you for license infringement. Al
On 11/6/2014 4:28 AM, alb wrote:
> Hi Rick, > > rickman <gnuarm@gmail.com> wrote: > [] >> If no one can view the flash blocks, then they won't know the IP is in >> there either. > > from Wikipedia: "In ordinary language, the term crime denotes an > unlawful act punishable by a state". > > The simple fact that is punishable, qualifies it as a crime. And sooner > or later someone may have access to those 'blocks' and legitimately sue > you for license infringement.
Actually there is no law broken by violating the terms of the license. So no crime is committed in any event. This is a licensing issue, a civil matter. If the license says you distribute the source code in the same manner as the compiled code, you should be able to include it in the internal Flash. Very easy on a device that is very possibly running Linux anyway. -- Rick
Hi Rick,

In article <m3fgme$jv2$1@dont-email.me> you wrote:
[]
>> The simple fact that is punishable, qualifies it as a crime. And sooner >> or later someone may have access to those 'blocks' and legitimately sue >> you for license infringement. > > Actually there is no law broken by violating the terms of the license. > So no crime is committed in any event. > This is a licensing issue, a civil matter.
I'm not sure if license infringement can be qualified as copyright infringement, but the latter may have criminal provisions. So it's a crime. And in 2007 violations of the GPLv2 was claimed by SFLC which filed coopyright infringement lawsuits.
> If the license says you > distribute the source code in the same manner as the compiled code, you > should be able to include it in the internal Flash. Very easy on a > device that is very possibly running Linux anyway.
No matter how you turn it around, you should allow people to *see* the source and be able to modify, no matter which distribution mean you use. If your flash has an image of a GNU/Linux system it has to have the sources as well (not a lot practical for an embedded system with size constraints). Al
On 06/11/14 11:21, alb wrote:
> Hi Rick, > > In article <m3fgme$jv2$1@dont-email.me> you wrote: > [] >>> The simple fact that is punishable, qualifies it as a crime. And sooner >>> or later someone may have access to those 'blocks' and legitimately sue >>> you for license infringement. >> >> Actually there is no law broken by violating the terms of the license. >> So no crime is committed in any event. >> This is a licensing issue, a civil matter. > > I'm not sure if license infringement can be qualified as copyright > infringement, but the latter may have criminal provisions. So it's a > crime. And in 2007 violations of the GPLv2 was claimed by SFLC which > filed coopyright infringement lawsuits.
The GPL builds on copyright laws, rather than licensing laws. There are various reasons for this (IANAL) - I think part of it is that a licence involves an agreement between two parties, while copyright is decided entirely by the author/owner of the work. Copyright laws are mostly civil laws - and therefore breaking them is not a crime, and can lead to fines, compensation suites, and cease-and-desist orders but not jail sentences. Copyright infringements /can/ be a crime if there is significant financial gain by breaking the terms of the copyright. (So if you copy a film and give it away, you can be sued for compensation by the copyright owner - but if you sell lots of copies, you can be jailed.) Breaking "technical restrictions to enforce copyright" can also be a crime in some countries (like the USA with the DCMA laws) - but that does not apply with the source code is easily available. Thus GPL abuses will normally be civil law violations, but might be criminal if the abuser made money while depriving the rightful owner from the market.
> >> If the license says you >> distribute the source code in the same manner as the compiled code, you >> should be able to include it in the internal Flash. Very easy on a >> device that is very possibly running Linux anyway. > > No matter how you turn it around, you should allow people to *see* the > source and be able to modify, no matter which distribution mean you use. > If your flash has an image of a GNU/Linux system it has to have the > sources as well (not a lot practical for an embedded system with size > constraints). > > Al >
On Thursday, November 6, 2014 4:57:46 AM UTC-5, rickman wrote:
> If the license says you=20 > distribute the source code in the same manner as the compiled code, you=
=20
> should be able to include it in the internal Flash.
The license doesn't actually say that; earlier posts in this thread were sl= ightly misleading. The license gives you some options on how to do it, but the gist is the sou= rce has to be made available and transferred to others downstream in a conv= entional manner. 8-track tapes is probably a stretch in this day and age; = buried in flash blocks only accessible via JTAG/BDM is probably out of the = question.
al.basili@gmail.com (alb) writes:
>> The GPL doesn't work well on actual hardware (resistors, circuit boards, >> fabricated mechanical parts, etc), because the concept of "copying" is >> hugely different - software is just data, it can be copied for >> effectively free. > > I believe you are confusing 'free speech' with 'free beer'.
No, I've been involved in Free Software and OSS for over 20 years now, I know the difference. The GPL is effective at protecting the freedom (as in speech) of software *because* copying source code is effectively free (as in beer).
> and whoever is twisting the meaning of free software toward believing > that is 'free of cost'
I didn't say software was free (as in beer), I said it can be copied for effectively free. How many man-hours of labor does it take to copy a megabyte of data? How much internet cost does it take to transfer that? These costs are typically trivial (essentially free) relative to the development and other costs of a package (which the GPL allows you to be compensated for, and rightfully so).
>> Hardware has a real cost per item. IIRC this has >> come up in the past and the FSF just isn't interested in trying to make >> the GPL apply to hardware, although other groups have made attempts at >> "open source hardware" but that's more of a promise than a license. > > There are 'open source hardware' that are at a mature stage ready to use > (see CERN OHL) and actually already used in production. I wish one of > those guys can chime in here, but I'm not sure if they are frequent > users of this group.
I've looked at some of them, and inevitably there's something in the EDA chain that's proprietary, which kinda ruins it. But even so, my point was, you can't just "copy" a resistor or FPGA device, you have to buy each one. The non-trivial cost of such hardware "changes the game" relative to software, which is why the FSF itself didn't get involved. Meanwhile, the Open Harware groups are doing a great job at producing hardware for which all the design files and specs are open, but design files and specs are - wait for it - just data. It's not the hardware itself that's freely copyable, it's the design of the hardware that's copyable. Each instance of the hardware still has to be made "from new parts" as it were.
> Meaning that using GPL'ed work with proprietary work is *viable* only if > proprietary work is licensed under a GPL-compatible license.
Yup, I agree. However, there are many GPL-compatible licenses out there. My point is that combining a GPL'd part with a something-else'd part does NOT make the whole work GPL'd, it makes the whole work some hybrid that's a combination of both sets of terms. The something-else'd part might, for example, be *more* strict about freedom than the GPL.
> I believe you are distorting my statements. The terms required by the > GPL do not apply to the GPL'ed portion only, they apply to the entire > work:
The terms apply, just like the terms of any other licensed part apply. The result is the intersection of all the terms. One set does not override the other.
>> No license is 'viral'. The terms either apply or you don't use it. >> If you use multiple licenses, all terms apply. > > Licenses like GPL are defined *viral* or *copyleft*, meaning that they > call for distrubution under the *very same terms* for any derivative > work.
I see no such "definition" in the GPL. It's a license. It has terms, like any other license. You must follow them, like any other license. This is why you should have lawyers read the licenses - they know to avoid shock terms like "viral" and "copyleft" and tell you what you can actually do.
> Quoting RMS (http://www.gnu.org/licenses/rms-why-gplv3.html):
RMS is not the GPL. Quote the license, not people talking about it.
> The license 'enforce' the obligation to license a derived work under the > same terms.
No, *compatible* terms. Not the *same* terms.
> And that is the reason why GPLv2 and GPLv3 are not compatible, since > they both would require to have the larger program released under each > of them, which is not possible.
The GPLv2 and GPLv3 are not compatible because they have incompatible license terms within, and combining the two results in an empty intersection of terms - there are no terms under which you can distribute the result. Note that GPLv1 and GPLv2 *are* compatible.
On 11/6/2014 1:29 PM, DJ Delorie wrote:
> >>> Hardware has a real cost per item. IIRC this has >>> come up in the past and the FSF just isn't interested in trying to make >>> the GPL apply to hardware, although other groups have made attempts at >>> "open source hardware" but that's more of a promise than a license. >> >> There are 'open source hardware' that are at a mature stage ready to use >> (see CERN OHL) and actually already used in production. I wish one of >> those guys can chime in here, but I'm not sure if they are frequent >> users of this group. > > I've looked at some of them, and inevitably there's something in the EDA > chain that's proprietary, which kinda ruins it. But even so, my point > was, you can't just "copy" a resistor or FPGA device, you have to buy > each one. The non-trivial cost of such hardware "changes the game" > relative to software, which is why the FSF itself didn't get involved.
Not trying to be argumentative, but what aspect of open sourcing does the cost of hardware impact? I don't really follow what you are saying.
> Meanwhile, the Open Harware groups are doing a great job at producing > hardware for which all the design files and specs are open, but design > files and specs are - wait for it - just data. It's not the hardware > itself that's freely copyable, it's the design of the hardware that's > copyable. Each instance of the hardware still has to be made "from > new parts" as it were.
Yes, but why does that change anything? The purpose of open source software is to open the exchange of ideas. Open source hardware does the same thing, no? -- Rick
On 11/6/2014 7:33 AM, David Brown wrote:
> Copyright laws are mostly civil laws - and therefore breaking them is > not a crime, and can lead to fines, compensation suites, and > cease-and-desist orders but not jail sentences. Copyright infringements > /can/ be a crime if there is significant financial gain by breaking the > terms of the copyright. (So if you copy a film and give it away, you > can be sued for compensation by the copyright owner - but if you sell > lots of copies, you can be jailed.) Breaking "technical restrictions to > enforce copyright" can also be a crime in some countries (like the USA > with the DCMA laws) - but that does not apply with the source code is > easily available. > > > Thus GPL abuses will normally be civil law violations, but might be > criminal if the abuser made money while depriving the rightful owner > from the market.
Making money is not required. See section (C) below. (a) Criminal Infringement. &#4294967295; (1) In general. &#4294967295; Any person who willfully infringes a copyright shall be punished as provided under section 2319 of title 18, if the infringement was committed &#4294967295; (A) for purposes of commercial advantage or private financial gain; (B) by the reproduction or distribution, including by electronic means, during any 180-day period, of 1 or more copies or phonorecords of 1 or more copyrighted works, which have a total retail value of more than $1,000; or (C) by the distribution of a work being prepared for commercial distribution, by making it available on a computer network accessible to members of the public, if such person knew or should have known that the work was intended for commercial distribution. So releasing any work by "a computer network" that was intended for "commercial distribution" is committing a crime. I'm not clear on what "commercial distribution" implies, but I'm not sure it requires a profit motive. Not sure how this might apply to GPL code since the act that makes it a copyright violation (not sharing the source) means you can't be in violation of section (C)... However, section (A) is easy enough to qualify for. All you need to do is sell one copy of your derivative work without satisfying the GPL, *if* this is covered under copyright law. If a license is given and you fail to live up to the terms of the license, that is a licensing issue, not a copyright issue. -- Rick