Re: Legal help to (Apache) NuttX RTOS: adding licenseed driver

2023-12-12 Thread Pavel Pisa
Hello everybody,

thanks for discussion. I understand that licesing, preventing
damages by misbehavior etc. are quite wide area and I have
some general interrest in these topics. But for actual case,
my original question and point is simple.

If we contribute the work (our work) with next the
SPDX-License-Identifier line, could it be included
in mainline NuttX tree (if we reach technical and other
criteria)?

// SPDX-License-Identifier: GPL-2.0+ OR BSD-2-Clause OR Apache-2.0

We have (at this moment) rights and agreement in the original
author group to change license in this direction from GPL-2.0.
We do not expect to rely or reuse any third party GPL licensed
code (the ported/reused code fragments are fully
independent of Linux SocketCAN and networking layer)
in NuttX case.

We are aware that if some major contributor does not agree
with some of the OR clauses later, they can be removed
without our consent.

But this arrangement would help us to prevent obstacles to
contribute in the single stream to all three OSes.

  - Linux kernel, which is GPL-2.0-only but has no problem
to accept combined licenses with BSD-2-Clause (3k+ files),
even Apache-2.0 OR MIT without GPL are accepted/found
in the sources.
  - RTEMS, which is primarily BSD-2-Clause, but has more
SPDX lines with Apache-2.0, other combined with GPL
  - NuttX, Apache-2.0

and as long as there is no opposition and removal clauses
of the SPDX-License-Identifier line, we can freely copy
RTOS independent parts of the sources between systems.

Best wishes,

Pavel
--
Pavel Pisa

phone:  +420 603531357
e-mail: p...@cmp.felk.cvut.cz
Department of Control Engineering FEE CVUT
Karlovo namesti 13, 121 35, Prague 2
university: http://control.fel.cvut.cz/
personal:   http://cmp.felk.cvut.cz/~pisa
company:https://pikron.com/ PiKRON s.r.o.
Kankovskeho 1235, 182 00 Praha 8, Czech Republic
projects:   https://www.openhub.net/accounts/ppisa
social: https://social.kernel.org/ppisa
CAN related:http://canbus.pages.fel.cvut.cz/
RISC-V education: https://comparch.edu.cvut.cz/
Open Technologies Research Education and Exchange Services
https://gitlab.fel.cvut.cz/otrees/org/-/wikis/home


Re: Legal help to (Apache) NuttX RTOS: adding licenseed driver

2023-12-11 Thread Shane Curcuru

Gregory Nutt wrote on 12/10/23 5:22 PM:


On 12/10/2023 4:05 PM, Shane Curcuru wrote:


I think we have to be careful with the word "contribution".  The ASF 
cannot accept any contribution that is licensed and copyrighted by 
some other entity.  To "contribute" the code is to donate the code to 
the ASF without retaining any claims to it. Then the code belongs to 
the ASF and can be re-licensed as Apache 2.0 with the ASF copyright.


Er, no, that's not how the ASF treats "contributions".  In general, 
when someone contributes their copyrighted work to an Apache project, 
they keep the copyright, and merely license enough rights to the ASF 
such that the ASF (through our projects) can then re-ship that 
contribution at any point in the future as part of a larger work, 
under terms like the Apache-2.0 license.

...[snip]...


That use of the word "contribution" is causing me a little cognitive 
dissonance, but I will adapt.  Synonyms for "contribution" include 
donation, gift, present, grant, etc., most which are not interchangeable 
with "contribution" in this context.


"Contribution" is a specific term defined in the Apache-2.0 license, so 
when we're using it in reference to someone committing code (or other 
things) to an ASF repository, we're using the specific definition there.


  https://www.apache.org/licenses/LICENSE-2.0#definitions

How does the copyright holder "license enough rights to the ASF"?  I 
suppose that is via the license that they chose for the work, rather 
than through any specific interaction with the ASF?


If the copyright holder is a committer on any ASF project, then they've 
already signed the ICLA, which lays out in detail what they agree to 
whenever they're checking in code to any ASF repository.


  https://www.apache.org/licenses/contributor-agreements.html

So if you're looking for general information, the first step is to read 
the license and ICLA in detail, and then ask questions relating to 
specific parts therein.


But it feels like we've lost sight of the actual question for the 
project, which is something about "is it OK to accept *this* bit of code 
in our repository" - or something like that.


If the project is looking for an answer about legal questions, it always 
helps to be *very* specific about what you want to do, as in "Is it OK 
if so-and-so checks in this file ->, which is under this license -> to 
our project in this directory?" or the like.


In general, in terms of code with multiple licenses, one question the 
ASF likes to ask is that the copyright owner of the code is explicitly 
saying it's available under a permissive license, or is otherwise 
helping to commit the code at the ASF.  That's not strictly a legal 
question, more a policy one: the ASF prefers contributions into our 
project repositories that are *willingly* given (and are licensed 
appropriately).


I hope that helps more than confuses things!

--
- Shane
  Member
  The Apache Software Foundation



Re: Legal help to (Apache) NuttX RTOS: adding licenseed driver

2023-12-10 Thread Gregory Nutt



On 12/10/2023 4:05 PM, Shane Curcuru wrote:


I think we have to be careful with the word "contribution".  The ASF 
cannot accept any contribution that is licensed and copyrighted by 
some other entity.  To "contribute" the code is to donate the code to 
the ASF without retaining any claims to it. Then the code belongs to 
the ASF and can be re-licensed as Apache 2.0 with the ASF copyright.


Er, no, that's not how the ASF treats "contributions".  In general, 
when someone contributes their copyrighted work to an Apache project, 
they keep the copyright, and merely license enough rights to the ASF 
such that the ASF (through our projects) can then re-ship that 
contribution at any point in the future as part of a larger work, 
under terms like the Apache-2.0 license.

...[snip]...


That use of the word "contribution" is causing me a little cognitive 
dissonance, but I will adapt.  Synonyms for "contribution" include 
donation, gift, present, grant, etc., most which are not interchangeable 
with "contribution" in this context.


How does the copyright holder "license enough rights to the ASF"?  I 
suppose that is via the license that they chose for the work, rather 
than through any specific interaction with the ASF?


Greg



Re: Legal help to (Apache) NuttX RTOS: adding licenseed driver

2023-12-10 Thread justin
HI,

That’s not quite correct; the ASF doesn’t ask for copyright transfer, just 
permission to distribute under the Apache license. But yes, a contribution that 
is 3rd party code is not really a contribution in strict terms and 3rd party 
code is treated differently to code contributed to an ASF project under the 
Apache license.

Kind Regards,
Justin

> On 11 Dec 2023, at 1:54 am, Gregory Nutt  wrote:
> 
> On 12/10/2023 7:15 AM, Alan C. Assis wrote:
>> I understand your point. And in fact I think the issue is not your
>> contribution itself, but the future contribution from developers of RTEMS
>> and Linux that are using GPL.
> I think we have to be careful with the word "contribution".  The ASF cannot 
> accept any contribution that is licensed and copyrighted by some other 
> entity.  To "contribute" the code is to donate the code to the ASF without 
> retaining any claims to it.  Then the code belongs to the ASF and can be 
> re-licensed as Apache 2.0 with the ASF copyright.
> 
> What you are talking about has to be treated as third party code that resides 
> with the Apache NuttX code.  It is not Apache NuttX code.
> 



Re: Legal help to (Apache) NuttX RTOS: adding licenseed driver

2023-12-10 Thread Shane Curcuru

Gregory Nutt wrote on 12/10/23 9:54 AM:

On 12/10/2023 7:15 AM, Alan C. Assis wrote:

I understand your point. And in fact I think the issue is not your
contribution itself, but the future contribution from developers of RTEMS
and Linux that are using GPL.


I think we have to be careful with the word "contribution".  The ASF 
cannot accept any contribution that is licensed and copyrighted by some 
other entity.  To "contribute" the code is to donate the code to the ASF 
without retaining any claims to it. Then the code belongs to the ASF and 
can be re-licensed as Apache 2.0 with the ASF copyright.


Er, no, that's not how the ASF treats "contributions".  In general, when 
someone contributes their copyrighted work to an Apache project, they 
keep the copyright, and merely license enough rights to the ASF such 
that the ASF (through our projects) can then re-ship that contribution 
at any point in the future as part of a larger work, under terms like 
the Apache-2.0 license.


Any contributions still "belong" copyright-wise to the original author, 
who can continue to do whatever else they want with their code, 
including submitting to other projects, possibly under other licenses.


The legal framework for contributions is twofold, so folks interested in 
details really need to read both of these:


- Apache-2.0 license, section 5. Submission of Contributions
  https://www.apache.org/licenses/LICENSE-2.0#contributions

- Individual Contributor License Agreement
  https://www.apache.org/licenses/contributor-agreements.html#clas

The point is that the ASF only takes enough licensed rights so that we 
can safely ship code in our projects, *and* so that users of Apache 
projects only have to comply with the Apache-2.0 license overall.


--
- Shane
  Member
  The Apache Software Foundation


Re: Legal help to (Apache) NuttX RTOS: adding licenseed driver

2023-12-10 Thread Alan C. Assis
Thank you Greg!

Indeed, that should be the path in this case, it should be treated as 3rd
party code.

Licensing a software as dual license (or triple license as in this case)
makes things more complicated.

Best Regards,

Alan

On Sun, Dec 10, 2023 at 11:54 AM Gregory Nutt  wrote:

> On 12/10/2023 7:15 AM, Alan C. Assis wrote:
>
> I understand your point. And in fact I think the issue is not your
> contribution itself, but the future contribution from developers of RTEMS
> and Linux that are using GPL.
>
> I think we have to be careful with the word "contribution".  The ASF
> cannot accept any contribution that is licensed and copyrighted by some
> other entity.  To "contribute" the code is to donate the code to the ASF
> without retaining any claims to it.  Then the code belongs to the ASF and
> can be re-licensed as Apache 2.0 with the ASF copyright.
>
> What you are talking about has to be treated as third party code that
> resides with the Apache NuttX code.  It is not Apache NuttX code.
>


Re: Legal help to (Apache) NuttX RTOS: adding licenseed driver

2023-12-10 Thread Gregory Nutt

On 12/10/2023 7:15 AM, Alan C. Assis wrote:

I understand your point. And in fact I think the issue is not your
contribution itself, but the future contribution from developers of RTEMS
and Linux that are using GPL.


I think we have to be careful with the word "contribution".  The ASF 
cannot accept any contribution that is licensed and copyrighted by some 
other entity.  To "contribute" the code is to donate the code to the ASF 
without retaining any claims to it. Then the code belongs to the ASF and 
can be re-licensed as Apache 2.0 with the ASF copyright.


What you are talking about has to be treated as third party code that 
resides with the Apache NuttX code.  It is not Apache NuttX code.


Re: Legal help to (Apache) NuttX RTOS: adding licenseed driver

2023-12-10 Thread Alan C. Assis
Hi Pavel,

I understand your point. And in fact I think the issue is not your
contribution itself, but the future contribution from developers of RTEMS
and Linux that are using GPL.
Those developers couldn't be comfortable contributing their improvements
back to other OS that don't use GPL license.

To be honest, I think it would have been better if the driver was using a
very permissive license like BSD (no patent related as Apache and no
restrictions like GPL) and we could include it by adding the info in the
NOTICE file.

On the other hand I don't know if your driver requires some "GPL" function
from Linux kernel, in that case defining that your module is BSD forbids it
from using some kernel functions.

Best Regards,

On Tue, Dec 5, 2023 at 1:11 PM Pavel Pisa  wrote:

> Hello Alan and others,
>
> On 11/10/23, Justin Mclean  wrote:
> > HI,
> >
> > If it is dual (or more) licensed as Apache 2.0 or GPL then you can take
> > the most permissive license, i.e Apache 2.0 and include it in an ASF
> > project under that license.
>
> thanks for the discussion but I have had no doubts about
> above statement from the discussion start.
>
> Main question is if it is acceptable for NuttX to include
> files with complete SPDX-License-Identifier which we
> consider to use for result of years of our work
>
> // SPDX-License-Identifier: GPL-2.0+ OR BSD-2-Clause OR Apache-2.0
>
> The reason why it would be better for us is that if we work
> on the NuttX variant we can reuse our and possibly others
> contribution in that variant even for Linux kernel and RTEMS.
>
> For sure, there is no obstacle and rule to prevent remove
> of some of the licensed from the code anytime later.
>
> But solving and maintaining separately two or three driver branches
> incompatible by licenses and permanently checking if there
> is not some contribution of somebody other whom rights
> can be violated, is additional burden.
>
> And at least I am quite loaded and I am not sure if I will
> be motivated enough to work and waste time on three variants
> of code. Especially when it seems to be arranged by some others
> that it will stay as my enthusiast work and those who have and will
> have income from my investment shows habits like from Gold rush
> time.
>
> I have moved my focus to prepare new QtRvSim release now (L2 cache,
> RISC-V ACLINT, MTIMER, SSWI & Co) and new open source motion controllers,
> that are planned to be NuttX based as well. I have lot of work on my
> motion controllers delivered and successfully used at ESA projects as
> well, so I do not monitor NuttX list too much these times. We run
> RTEMS CAN subsystem development now, probably CTU CAN FD would be the
> first supported target but it is not so sure now.
>
> Best wishes,
>
> Pavel
> --
> Pavel Pisa
>
> phone:  +420 603531357
> e-mail: p...@cmp.felk.cvut.cz
> Department of Control Engineering FEE CVUT
> Karlovo namesti 13, 121 35, Prague 2
> university: http://control.fel.cvut.cz/
> personal:   http://cmp.felk.cvut.cz/~pisa
> company:https://pikron.com/ PiKRON s.r.o.
> Kankovskeho 1235, 182 00 Praha 8, Czech Republic
> projects:   https://www.openhub.net/accounts/ppisa
> social: https://social.kernel.org/ppisa
> CAN related:http://canbus.pages.fel.cvut.cz/
> RISC-V education: https://comparch.edu.cvut.cz/
> Open Technologies Research Education and Exchange Services
> https://gitlab.fel.cvut.cz/otrees/org/-/wikis/home
>


Re: Legal help to (Apache) NuttX RTOS: adding licenseed driver

2023-12-05 Thread Pavel Pisa
Hello Alan and others,

On 11/10/23, Justin Mclean  wrote:
> HI,
>
> If it is dual (or more) licensed as Apache 2.0 or GPL then you can take
> the most permissive license, i.e Apache 2.0 and include it in an ASF
> project under that license.

thanks for the discussion but I have had no doubts about
above statement from the discussion start.

Main question is if it is acceptable for NuttX to include
files with complete SPDX-License-Identifier which we
consider to use for result of years of our work

// SPDX-License-Identifier: GPL-2.0+ OR BSD-2-Clause OR Apache-2.0

The reason why it would be better for us is that if we work
on the NuttX variant we can reuse our and possibly others
contribution in that variant even for Linux kernel and RTEMS.

For sure, there is no obstacle and rule to prevent remove
of some of the licensed from the code anytime later.

But solving and maintaining separately two or three driver branches
incompatible by licenses and permanently checking if there
is not some contribution of somebody other whom rights
can be violated, is additional burden.

And at least I am quite loaded and I am not sure if I will
be motivated enough to work and waste time on three variants
of code. Especially when it seems to be arranged by some others
that it will stay as my enthusiast work and those who have and will
have income from my investment shows habits like from Gold rush
time.

I have moved my focus to prepare new QtRvSim release now (L2 cache,
RISC-V ACLINT, MTIMER, SSWI & Co) and new open source motion controllers,
that are planned to be NuttX based as well. I have lot of work on my
motion controllers delivered and successfully used at ESA projects as
well, so I do not monitor NuttX list too much these times. We run
RTEMS CAN subsystem development now, probably CTU CAN FD would be the
first supported target but it is not so sure now.

Best wishes,

Pavel
--
Pavel Pisa

phone:  +420 603531357
e-mail: p...@cmp.felk.cvut.cz
Department of Control Engineering FEE CVUT
Karlovo namesti 13, 121 35, Prague 2
university: http://control.fel.cvut.cz/
personal:   http://cmp.felk.cvut.cz/~pisa
company:https://pikron.com/ PiKRON s.r.o.
Kankovskeho 1235, 182 00 Praha 8, Czech Republic
projects:   https://www.openhub.net/accounts/ppisa
social: https://social.kernel.org/ppisa
CAN related:http://canbus.pages.fel.cvut.cz/
RISC-V education: https://comparch.edu.cvut.cz/
Open Technologies Research Education and Exchange Services
https://gitlab.fel.cvut.cz/otrees/org/-/wikis/home


Re: Legal help to (Apache) NuttX RTOS: adding licenseed driver

2023-11-27 Thread Tomek CEDRO
On Tue, Nov 28, 2023 at 12:08 AM Alan C. Assis wrote:
> Thank you very much Justin!
> I forgot to redirect your response to @dev-nuttx
> So, according with Justin we could take the most permissive license and use 
> it!
> Best Regards,
> Alan

Great news! Thank you Alan and Justin!! :-)

-- 
CeDeROM, SQ7MHZ, http://www.tomek.cedro.info


Re: Legal help to (Apache) NuttX RTOS: adding licenseed driver

2023-11-27 Thread Alan C. Assis
Thank you very much Justin!

I forgot to redirect your response to @dev-nuttx

So, according with Justin we could take the most permissive license and use it!

Best Regards,

Alan

On 11/10/23, Justin Mclean  wrote:
> HI,
>
> If it is dual (or more) licensed as Apache 2.0 or GPL then you can take the
> most permissive license, i.e Apache 2.0 and include it in an ASF project
> under that license.
>
> Kind Regards,
> Justin
>
>> On 11 Nov 2023, at 12:35 am, Alan C. Assis  wrote:
>>
>> Dear ASF Legal team,
>>
>> We have a user/company struggling to get a CAN Drivers included on
>> (Apache) NuttX RTOS.
>>
>> The issue is because this driver was original release as GPL to be
>> included into Linux kernel, then the original authors accepted to
>> re-license it as Dual License: GPL and Apache.
>>
>> However we have "Gulliverian" dilemma, some people believe it is fine
>> to include it on NuttX, since it release as Apache, and the other half
>> believe it is not, because it is Apache and GPL.
>>
>> This dilemma is already set for more than 3 months without any
>> perspective of solution. So, who in ASF could be our legal support to
>> fix it?
>>
>> Unfortunately the authors cannot release the source code only as
>> Apache license, because it needs to be included in the Linux kernel.
>>
>> Please find below the email from the customer asking for help:
>>
>> "Can you please ask via Apache JIRA for clarification of the correct
>> way to specify multiple licence options for a work. For example is
>> this an acceptable statement, so Nuttx could include the work via the
>> Apache-2.0 licence (as per
>> https://www.apache.org/legal/resolved.html#mutually-exclusive):
>>
>> // SPDX-License-Identifier: GPL-2.0+ OR BSD-2-Clause OR Apache-2.0
>>
>> Specifically for the CTUCANFD driver the original authors have
>> proposed that they could re-licence their code as follows:
>>
>> // SPDX-License-Identifier: GPL-2.0+ OR BSD-2-Clause OR Apache-2.0
>> /***
>> *
>> * CTU CAN FD IP Core
>> *
>> * Copyright (C) 2015-2018 Ondrej Ille  FEE CTU
>> * Copyright (C) 2018-2020 Ondrej Ille  self-funded
>> * Copyright (C) 2018-2019 Martin Jerabek  FEE
>> CTU
>> * Copyright (C) 2018-2020 Pavel Pisa  FEE
>> CTU/self-funded
>> *
>> * Project advisors:
>> * Jiri Novak 
>> * Pavel Pisa 
>> *
>> * Department of Measurement (http://meas.fel.cvut.cz/)
>> * Faculty of Electrical Engineering (http://www.fel.cvut.cz)
>> * Czech Technical University(http://www.cvut.cz/)
>> */
>>
>> This question follows on from the Nuttx-dev thread titled RE: CTU CAN
>> FD driver multi-licence for Nuttx, see:
>> https://lists.apache.org/thread/ooq1dfvs2qnp131c2s1lb7hnojv91w3l
>> There were several opinions about the validity of multi-licenced code
>> and the possible interpretations of the word 'OR' which prevented a
>> resolution of the question."
>>
>> BR,
>>
>> Alan
>>
>> -
>> To unsubscribe, e-mail: legal-discuss-unsubscr...@apache.org
>> For additional commands, e-mail: legal-discuss-h...@apache.org
>>
>
>