Discussion:
Initial draft of OpenShader Open Hardware License (OSOHL) and FAQ
(too old to reply)
Timothy Normand Miller
2013-01-03 21:45:13 UTC
Permalink
Here's a proposed draft of my hardware licensing terms. Read everything
carefully before complaining.

Let the yelling begin. :)



OpenShader Open Hardware License (OSOHL)

(0) This "Work" is defined to be this document or source code, parts of
this document or source code, or derivative works of this document or
source code. Use of the Work, in whole or in part, must comply with
the licensing terms below.

(1) This Work is licensed as a proprietary ("Original") copyrighted work,
all rights belonging to Timothy Normand Miller. Timothy Normand Miller may
use this Work under those terms and has the right to publish, license, and
sell this Work and derivative works as he sees fit. To remove these
rights,
you must remove this clause. Under the Original licensing terms, third
parties may download, view, and redistribute this Work. Third parties are
NOT permitted to sell this Work or relicense it under any terms other than
those expressed in clauses (1) and (2).

(2) At your discretion, you have the right to REMOVE the Original copyright
in clause (1) and APPLY the GNU General Public License (GPL) as published
by
the Free Software Foundation; either version 2 of the License, or (at your
option) any later version. By performing this action, you are making an
explicit fork. This is the only circumstance where modification of this
license by a third party is permitted. Contributions to such a fork may
not be contributed back to Original version.

(3) Use of this Work without clause (1) forfeits the right to use any
trademarks owned by Timothy Normand Miller, Traversal Technology, the Open
Graphics Project, or related organizations. "OpenShader" is a trademark of
Timothy Normand Miller.

(4) Patches, modifications, changes, and extensions (collectively,
"Modifications") to this Work that are submitted to the Open Graphics
Project, the Open Graphics Mailing List, directly to Timothy Normand
Miller,
or to an agent thereof must be SIGNED by the author of said Modification
(including the words "signed off by" and the author's name), granting
Timothy Normand Miller copyright privileges under clause (1).
Unsigned Modifications will be ignored. Your inclusion of
the signature implies that you have read and agreed with this license
and have verified that you are in compliance with applicable law.

(5) Modifications committed directly to an officially recognized source
code repository are signed implicitly. Those who have write access to
such a repository and who commit Modifications to that repository grant
rights to Timothy Normand Miller under clause (1), by virtue of having
write access and choosing to submit Modifications.

(6) It is the responsibility of the submitter of a Modification to ensure
that they have the right to submit the Modification and that they have
all the necessary permissions (including without limitation, patents
and copyrights) from any other contributors or third parties.

(7) An implementation of this Work that is considered analogous to a
"binary distribution" is defined as any form that is not easily
readable by humans ("non-preferred"), which includes, but is not
limited to: Fixed-function IC (e.g. ASIC), fixed-function IC masks
or other fabrication intermediate step, variable-function IC (e.g.
FPGA), FPGA bitfile, compiled or translated simulation model.

(8) The submitter of a Modification assigns copyright of the Modification
to Timothy Normand Miller. Depending on your local laws, you may be able
to assign joint copyright to Timothy Normand Miller and yourself.
Alternatively, you may need to assign copyright exclusively to
Timothy Normand Miller. Assigning joint copyright to Timothy Normand Miller
yourself is preferable because it will allow you to make unrestricted use
of
your work in the future.

(9) The submitter of a Modification forfeits the right to any patents
covered by This Work and pledges to not enforce any patents covered by
This Work.

(10) At your discretion, you are encouraged to add comments to the
"Contributions" section of this Work, indicating the nature of your
Modification.




Frequently Asked Questions

*** May I sell or otherwise profit from a Work covered by the Original
license?

A: Yes, if you apply clause (2), removing the Original license. Then,
you may sell the Work under the terms of the GPL.

A: Yes, if you enter into a contract agreement where you share royalties
with the original licensor (Timothy Normand Miller).


*** If I contribute under the Original licensing terms, will my
contributions
be published?

A: All third-party contributions will be published under the Original
terms,
such that the GPL may be applied in its stead.

A: If you are a user under a royalty contract, permitted modifications will
be governed by the contract, and you are NOT REQUIRED to publish those
modifications.


*** When do the licensing terms NOT apply?

A: If you do not redistribute this Work, then you are not bound by its
licensing terms. For instance, if you were to Modify the Work for use in
academic experiments, publishing your scientific data does NOT require you
to also publish your Modifications. (Although sharing of Modifications is
always strongly encouraged.) If you share a Modified version of the Work
(under the Original license) within an ACADEMIC institution (e.g. a
university), this is NOT considered to be redistribution. If you
share a Modified version of the Work within a COMMERCIAL institution
(e.g. a chip manufacturer), then this IS considered to be redistribution.


*** What does the original licensor (Timothy Normand Miller) plan to do with
royalties earned from commercial licensing of OpenShader hardware designs?

A: Reinvest the proceeds back into the Free Software and Open Hardware
communities. A committee will be formed to decide where the money will be
invested. The original licensor will be permitted to use some of the
licensing revenue to pay for overhead, such as legal fees, commercial
business licenses, office space, other administrative fees, etc.


*** Why does the original licensor (Timothy Normand Miller) insist on full
legal rights to covered Works?

A: Frankly, I don't trust any other organization to manage this properly.
I am the custodian of this Work and have the moral responsibility to ensure
that the contributing community is treated fairly. The only way for me to
ensure this is to ensure that I have full legal control over covered Works.
I'm sure that many paranoids will be watching me carefully, looking for any
reason to complain. Do bear in mind that this project is very important to
me, and I would not do anything to abuse the FOSS community that places
their
trust in me.


*** Why do you require the Original license be explicitly swapped with the
GPL,
rather than employing a dual license?

A: There is a history of people not grasping the terms of the dual license.
There is no practical difference, only a philosophical one. The advantage
of
doing it this way is that there is no ambiguity about whether or not a given
outside contribution can be sold commercially. If someone contributes to a
GPL version, then it's not called OpenShader, and it's off limits to me. If
someone contributes to the Original version, they know that the GPL does
not
apply (but can if someone forks according to clause (2)).


*** What Works will this license apply to?

A: The above license is intended ONLY for hardware designs (e.g. Verilog
code)
that have revenue potential. If the OpenShader hardware design becomes
commercially viable, then there must be a mechanism by which revenue can be
earned and then reinvested in the FOSS community.

A: The license will NOT be applied to Works that are purely software.
This includes software drivers and the OpenShader GPU simulator. For those,
we will always use FOSS licenses. The simulator will be licensed under
pure GPL, and drivers will use the X11/MIT license.


*** Will the hardware design ever be considered to be a derivative work of
the simulator?

A: No. The simulator and hardware design will influence each other
heavily,
but being of different designs (albeit similar architectures), written in
different languages, they will only be considered "documentation" for each
other. This is an explicit declaration.
--
Timothy Normand Miller, PhD
Assistant Professor of Computer Science, Binghamton University
http://www.cs.binghamton.edu/~millerti/<http://www.cse.ohio-state.edu/~millerti>
Open Graphics Project
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.duskglow.com/pipermail/open-graphics/attachments/20130103/134645d7/attachment.html>
Eitan Adler
2013-01-03 22:27:44 UTC
Permalink
Post by Timothy Normand Miller
Here's a proposed draft of my hardware licensing terms. Read everything
carefully before complaining.
Meta comment:

Licensing is hard and depends on subtle choice of wording. "Crayon
licenses" not drafted by a lawyer almost certain mean something
different than one would expect. Think about a Lawyer trying to write
C code. ;)

Second Meta Comment:

Could we try for something LGPL like instead of GPL. This allows this
code to be mixed with freely licensed hardware as well without losing
the motivation for the restrictive license.

Third Meta Comment:

Try contacting the OSI via the license-discuss list: they may have an
interest in this discussion.
Post by Timothy Normand Miller
OpenShader Open Hardware License (OSOHL)
(0) This "Work" is defined to be this document or source code, parts of
this document or source code, or derivative works of this document or
source code. Use of the Work, in whole or in part, must comply with
the licensing terms
This work does *not* include derived works. Those are different works
derived from this one.
Post by Timothy Normand Miller
below.
So term 0 need not be complied with ;) ?
Post by Timothy Normand Miller
(1) This Work is licensed as a proprietary ("Original") copyrighted work,
all rights belonging to Timothy Normand Miller. Timothy Normand Miller may
use this Work under those terms and has the right to publish, license, and
sell this Work and derivative works as he sees fit.
This is assumed. I would use the generic term "licensor" instead of your name.
Post by Timothy Normand Miller
To remove these rights,
you must remove this clause. Under the Original licensing terms, third
parties may download, view, and redistribute this Work. Third parties are
NOT permitted to sell this Work or relicense it under any terms other than
those expressed in clauses (1) and (2).
This clause likely does not work as intended. See how the LGPL / GPL word this.
Post by Timothy Normand Miller
(2) At your discretion, you have the right to REMOVE the Original copyright
in clause (1) and APPLY the GNU General Public License (GPL) as published by
the Free Software Foundation; either version 2 of the License, or (at your
option) any later version. By performing this action, you are making an
explicit fork. This is the only circumstance where modification of this
license by a third party is permitted. Contributions to such a fork may
not be contributed back to Original version.
This clause is not required. Instead "dual license" the code under
the (L)GPLv2. This makes this license simpler.
Post by Timothy Normand Miller
(3) Use of this Work without clause (1) forfeits the right to use any
trademarks owned by Timothy Normand Miller, Traversal Technology, the Open
Graphics Project, or related organizations. "OpenShader" is a trademark of
Timothy Normand Miller.
No forfeiture require. Is OpenGraphics or OpenShader registered.

"No trademark or patent rights held by ______ are waived, abandoned,
surrendered, licensed or otherwise affected by this document." is the
language to use. (See
https://creativecommons.org/publicdomain/zero/1.0/legalcode).

Note that inclusion of this language may not qualify this license as
open source per the OSI.
Post by Timothy Normand Miller
(4) Patches, modifications, changes, and extensions (collectively,
"Modifications") to this Work that are submitted to the Open Graphics
Project, the Open Graphics Mailing List, directly to Timothy Normand Miller,
or to an agent thereof must be SIGNED by the author of said Modification
(including the words "signed off by" and the author's name), granting
Timothy Normand Miller copyright privileges under clause (1).
Unsigned Modifications will be ignored. Your inclusion of
the signature implies that you have read and agreed with this license
and have verified that you are in compliance with applicable law.
This is called copyright assignment and should not be part of the
license. Rather it should be a policy of the project.
Post by Timothy Normand Miller
(5) Modifications committed directly to an officially recognized source
code repository are signed implicitly. Those who have write access to
such a repository and who commit Modifications to that repository grant
rights to Timothy Normand Miller under clause (1), by virtue of having
write access and choosing to submit Modifications.
Ditto. This may require a legal document as well.
Post by Timothy Normand Miller
(6) It is the responsibility of the submitter of a Modification to ensure
that they have the right to submit the Modification and that they have
all the necessary permissions (including without limitation, patents
and copyrights) from any other contributors or third parties.
Once again, policy, not license.
Post by Timothy Normand Miller
(7) An implementation of this Work that is considered analogous to a
"binary distribution" is defined as any form that is not easily
readable by humans ("non-preferred"), which includes, but is not
limited to: Fixed-function IC (e.g. ASIC), fixed-function IC masks
or other fabrication intermediate step, variable-function IC (e.g.
FPGA), FPGA bitfile, compiled or translated simulation model.
This needs to be cleaned up by a lawyer.
Post by Timothy Normand Miller
(8) The submitter of a Modification assigns copyright of the Modification
to Timothy Normand Miller. Depending on your local laws, you may be able
to assign joint copyright to Timothy Normand Miller and yourself.
Alternatively, you may need to assign copyright exclusively to
Timothy Normand Miller. Assigning joint copyright to Timothy Normand Miller
yourself is preferable because it will allow you to make unrestricted use of
your work in the future.
Policy, not license. What if I *fork* the project, and commit my own
changes. This is what the license is intended to cover.

Also, is it fully assigned or joint copyright?
Post by Timothy Normand Miller
(9) The submitter of a Modification forfeits the right to any patents
covered by This Work and pledges to not enforce any patents covered by
This Work.
See the Apache license for appropriate text here.
Post by Timothy Normand Miller
(10) At your discretion, you are encouraged to add comments to the
"Contributions" section of this Work, indicating the nature of your
Modification.
This needs to be cleaned up - or rather removed.
Post by Timothy Normand Miller
Frequently Asked Questions
People asked questions already?
Post by Timothy Normand Miller
A: Yes, if you apply clause (2), removing the Original license. Then,
you may sell the Work under the terms of the GPL.
Again, any chance of LGPL instead of GPL? This is more free without
loss of function.

...
Post by Timothy Normand Miller
A: If you are a user under a royalty contract, permitted modifications will
be governed by the contract, and you are NOT REQUIRED to publish those
modifications.
this is a difference license / contact and may depend on *those* terms
Post by Timothy Normand Miller
share a Modified version of the Work within a COMMERCIAL institution
(e.g. a chip manufacturer), then this IS considered to be redistribution.
This isn't how the license reads.
Post by Timothy Normand Miller
*** Why does the original licensor (Timothy Normand Miller) insist on full
legal rights to covered Works?
A: Frankly, I don't trust any other organization to manage this properly.
I am the custodian of this Work and have the moral responsibility to ensure
that the contributing community is treated fairly. The only way for me to
ensure this is to ensure that I have full legal control over covered Works.
I'm sure that many paranoids will be watching me carefully, looking for any
reason to complain. Do bear in mind that this project is very important to
me, and I would not do anything to abuse the FOSS community that places
their trust in me.
Perhaps the OSI / SPI / SFLC may be willing to help. In particular
the SPI offers legal services to organizations.
Post by Timothy Normand Miller
*** Why do you require the Original license be explicitly swapped with the
GPL,
rather than employing a dual license?
If someone contributes to a
GPL version, then it's not called OpenShader, and it's off limits to me. If
someone contributes to the Original version, they know that the GPL does not
apply (but can if someone forks according to clause (2)).
There are practical differences: it mainly makes the license more
complex without much reason.
Post by Timothy Normand Miller
A: The license will NOT be applied to Works that are purely software.
This includes software drivers and the OpenShader GPU simulator. For those,
we will always use FOSS licenses. The simulator will be licensed under
pure GPL, and drivers will use the X11/MIT license.
Yay! Free drivers!

This isn't clear from the license, but it shouldn't be. This is
policy, not license. :)
Post by Timothy Normand Miller
*** Will the hardware design ever be considered to be a derivative work of
the simulator?
Derivative work is a legal term of art. The answer doesn't cover it.
--
Eitan Adler
Timothy Normand Miller
2013-01-04 02:18:55 UTC
Permalink
Thank you for your comments. You appear to have some experience with this.
Post by Eitan Adler
Post by Timothy Normand Miller
Here's a proposed draft of my hardware licensing terms. Read everything
carefully before complaining.
Licensing is hard and depends on subtle choice of wording. "Crayon
licenses" not drafted by a lawyer almost certain mean something
different than one would expect. Think about a Lawyer trying to write
C code. ;)
Yeah, this is a dilemma I am facing.
Post by Eitan Adler
Could we try for something LGPL like instead of GPL. This allows this
code to be mixed with freely licensed hardware as well without losing
the motivation for the restrictive license.
I specifically DO NOT want this. By applying LGPL some company could sell
this in their SoC for $billions, as long as they published their
modifications to just the GPU portion. If someone uses this under the
terms of the GPL (like putting it together with other open source hardware
components), then I want to encourage that and don't want to ask for
royalties. If some smart phone maker decides that our design is more
energy efficient than PowerVR and wants to use it in their SoC, then I want
us to bring in revenue in the same way that PowerVR does. So the basic
idea is that to get the design without the GPL "viral" element, they have
to pay money.

Note that there is a small issue with some chips where a standard component
is hard to open source with the rest of the design, and we need to exempt
this. For instance, it may be more cost-effective to use a pre-built PCIe
controller or GDDR5 memory controller, and we should exempt this from the
GPL requirement. Carefully.
Post by Eitan Adler
Try contacting the OSI via the license-discuss list: they may have an
interest in this discussion.
Good idea. Maybe I can delegate that to someone. :) Meanwhile, I need
something I can slap on code I want to post to the list next week
Post by Eitan Adler
Post by Timothy Normand Miller
OpenShader Open Hardware License (OSOHL)
(0) This "Work" is defined to be this document or source code, parts of
this document or source code, or derivative works of this document or
source code. Use of the Work, in whole or in part, must comply with
the licensing terms
This work does *not* include derived works. Those are different works
derived from this one.
Well, it does in a viral way, but this is an IP distinction that I'm sure a
lawyer would take issue with.
Post by Eitan Adler
Post by Timothy Normand Miller
below.
So term 0 need not be complied with ;) ?
Post by Timothy Normand Miller
(1) This Work is licensed as a proprietary ("Original") copyrighted work,
all rights belonging to Timothy Normand Miller. Timothy Normand Miller
may
Post by Timothy Normand Miller
use this Work under those terms and has the right to publish, license,
and
Post by Timothy Normand Miller
sell this Work and derivative works as he sees fit.
This is assumed. I would use the generic term "licensor" instead of your name.
Post by Timothy Normand Miller
To remove these rights,
you must remove this clause. Under the Original licensing terms, third
parties may download, view, and redistribute this Work. Third parties
are
Post by Timothy Normand Miller
NOT permitted to sell this Work or relicense it under any terms other
than
Post by Timothy Normand Miller
those expressed in clauses (1) and (2).
This clause likely does not work as intended. See how the LGPL / GPL word this.
Post by Timothy Normand Miller
(2) At your discretion, you have the right to REMOVE the Original
copyright
Post by Timothy Normand Miller
in clause (1) and APPLY the GNU General Public License (GPL) as
published by
Post by Timothy Normand Miller
the Free Software Foundation; either version 2 of the License, or (at
your
Post by Timothy Normand Miller
option) any later version. By performing this action, you are making an
explicit fork. This is the only circumstance where modification of this
license by a third party is permitted. Contributions to such a fork may
not be contributed back to Original version.
This clause is not required. Instead "dual license" the code under
the (L)GPLv2. This makes this license simpler.
I tried dual-licensing and got into some trouble over it.
Post by Eitan Adler
Post by Timothy Normand Miller
(3) Use of this Work without clause (1) forfeits the right to use any
trademarks owned by Timothy Normand Miller, Traversal Technology, the
Open
Post by Timothy Normand Miller
Graphics Project, or related organizations. "OpenShader" is a trademark
of
Post by Timothy Normand Miller
Timothy Normand Miller.
No forfeiture require. Is OpenGraphics or OpenShader registered.
They are not registered, but I supposed I should register them.
Post by Eitan Adler
"No trademark or patent rights held by ______ are waived, abandoned,
surrendered, licensed or otherwise affected by this document." is the
language to use. (See
https://creativecommons.org/publicdomain/zero/1.0/legalcode).
Got it.
Post by Eitan Adler
Note that inclusion of this language may not qualify this license as
open source per the OSI.
IIRC, the FSF made a statement that they're perfectly fine with companies
using trademark protection for a brand identity. So they defend the right
of CentOS to maintain a more accessible fork of RHEL, and they also think
that Red Hat is within their rights to say that CentOS cannot use the
trademark "Red Hat" without permission.
Post by Eitan Adler
Post by Timothy Normand Miller
(4) Patches, modifications, changes, and extensions (collectively,
"Modifications") to this Work that are submitted to the Open Graphics
Project, the Open Graphics Mailing List, directly to Timothy Normand
Miller,
Post by Timothy Normand Miller
or to an agent thereof must be SIGNED by the author of said Modification
(including the words "signed off by" and the author's name), granting
Timothy Normand Miller copyright privileges under clause (1).
Unsigned Modifications will be ignored. Your inclusion of
the signature implies that you have read and agreed with this license
and have verified that you are in compliance with applicable law.
This is called copyright assignment and should not be part of the
license. Rather it should be a policy of the project.
Ok. So at the very least, I need two documents, one for licensing terms,
the other for project policy. I also agree that I should generify the name
of the copyright holder, because I don't mind if someone else copies my
license.
Post by Eitan Adler
Post by Timothy Normand Miller
(5) Modifications committed directly to an officially recognized source
code repository are signed implicitly. Those who have write access to
such a repository and who commit Modifications to that repository grant
rights to Timothy Normand Miller under clause (1), by virtue of having
write access and choosing to submit Modifications.
Ditto. This may require a legal document as well.
Post by Timothy Normand Miller
(6) It is the responsibility of the submitter of a Modification to ensure
that they have the right to submit the Modification and that they have
all the necessary permissions (including without limitation, patents
and copyrights) from any other contributors or third parties.
Once again, policy, not license.
Post by Timothy Normand Miller
(7) An implementation of this Work that is considered analogous to a
"binary distribution" is defined as any form that is not easily
readable by humans ("non-preferred"), which includes, but is not
limited to: Fixed-function IC (e.g. ASIC), fixed-function IC masks
or other fabrication intermediate step, variable-function IC (e.g.
FPGA), FPGA bitfile, compiled or translated simulation model.
This needs to be cleaned up by a lawyer.
Post by Timothy Normand Miller
(8) The submitter of a Modification assigns copyright of the Modification
to Timothy Normand Miller. Depending on your local laws, you may be able
to assign joint copyright to Timothy Normand Miller and yourself.
Alternatively, you may need to assign copyright exclusively to
Timothy Normand Miller. Assigning joint copyright to Timothy Normand
Miller
Post by Timothy Normand Miller
yourself is preferable because it will allow you to make unrestricted
use of
Post by Timothy Normand Miller
your work in the future.
Policy, not license. What if I *fork* the project, and commit my own
changes. This is what the license is intended to cover.
Somehow, I'm trying to get across that if you fork the project, it has to
be under GPL. Of course, you can commit anything you want to the GPL
version. The next question is what about if you BOTH fork the project AND
commit things to the original. You might have to demonstrate proper
compartmentalization due to the potential conflict of interest; you need to
be sure that what you commit to the Original is your own work and not
something you got from someone else committing to the GPL'd fork.
Post by Eitan Adler
Also, is it fully assigned or joint copyright?
Whatever gives the original licensor all of the rights specified here.
Post by Eitan Adler
Post by Timothy Normand Miller
(9) The submitter of a Modification forfeits the right to any patents
covered by This Work and pledges to not enforce any patents covered by
This Work.
See the Apache license for appropriate text here.
Post by Timothy Normand Miller
(10) At your discretion, you are encouraged to add comments to the
"Contributions" section of this Work, indicating the nature of your
Modification.
This needs to be cleaned up - or rather removed.
Yeah, this is a hold-over from old stuff. It's neither license nor policy.
It's coding standard. :)
Post by Eitan Adler
Post by Timothy Normand Miller
Frequently Asked Questions
People asked questions already?
Well, some of them have been asked before. Others I expect to be
frequently asked.
Post by Eitan Adler
Post by Timothy Normand Miller
A: Yes, if you apply clause (2), removing the Original license. Then,
you may sell the Work under the terms of the GPL.
Again, any chance of LGPL instead of GPL? This is more free without
loss of function.
I want it to be free to you and to people at other universities. I want
the likes of Apple and Samsung to have to pay for use of it.
Post by Eitan Adler
...
Post by Timothy Normand Miller
A: If you are a user under a royalty contract, permitted modifications
will
Post by Timothy Normand Miller
be governed by the contract, and you are NOT REQUIRED to publish those
modifications.
this is a difference license / contact and may depend on *those* terms
Post by Timothy Normand Miller
share a Modified version of the Work within a COMMERCIAL institution
(e.g. a chip manufacturer), then this IS considered to be redistribution.
This isn't how the license reads.
Then this should be moved into the license.
Post by Eitan Adler
Post by Timothy Normand Miller
*** Why does the original licensor (Timothy Normand Miller) insist on
full
Post by Timothy Normand Miller
legal rights to covered Works?
A: Frankly, I don't trust any other organization to manage this
properly.
Post by Timothy Normand Miller
I am the custodian of this Work and have the moral responsibility to
ensure
Post by Timothy Normand Miller
that the contributing community is treated fairly. The only way for me
to
Post by Timothy Normand Miller
ensure this is to ensure that I have full legal control over covered
Works.
Post by Timothy Normand Miller
I'm sure that many paranoids will be watching me carefully, looking for
any
Post by Timothy Normand Miller
reason to complain. Do bear in mind that this project is very important
to
Post by Timothy Normand Miller
me, and I would not do anything to abuse the FOSS community that places
their trust in me.
Perhaps the OSI / SPI / SFLC may be willing to help. In particular
the SPI offers legal services to organizations.
We'll have to look into that.
Post by Eitan Adler
Post by Timothy Normand Miller
*** Why do you require the Original license be explicitly swapped with
the
Post by Timothy Normand Miller
GPL,
rather than employing a dual license?
If someone contributes to a
GPL version, then it's not called OpenShader, and it's off limits to me.
If
Post by Timothy Normand Miller
someone contributes to the Original version, they know that the GPL does
not
Post by Timothy Normand Miller
apply (but can if someone forks according to clause (2)).
There are practical differences: it mainly makes the license more
complex without much reason.
That's true. I just want to avoid what happened before.
Post by Eitan Adler
Post by Timothy Normand Miller
A: The license will NOT be applied to Works that are purely software.
This includes software drivers and the OpenShader GPU simulator. For
those,
Post by Timothy Normand Miller
we will always use FOSS licenses. The simulator will be licensed under
pure GPL, and drivers will use the X11/MIT license.
Yay! Free drivers!
This isn't clear from the license, but it shouldn't be. This is
policy, not license. :)
Post by Timothy Normand Miller
*** Will the hardware design ever be considered to be a derivative work
of
Post by Timothy Normand Miller
the simulator?
Derivative work is a legal term of art. The answer doesn't cover it.
So, what I gather from Wikipedia is that a "derivative work" is a work that
contains substantial new creative content that it can be considers a new
work, but which is nevertheless based substantially on preexisting works.
What I'm trying to make clear here is that although the simulator and
synthesizable GPU will mirror each other's architectures, they are not
derived from each other in any way that should require that one's licensing
terms would apply to the other.
Post by Eitan Adler
--
Eitan Adler
Thanks for the feedback. We now have another sub-project, which is to
devise licensing and policy terms to apply to the code that I want to start
releasing.

Meanwhile, I'm thinking it'll be safe for me to just say that I own the
copyright and that anyone wishing to contribute will have to explicitly
make arrangements with me first. Same for getting a GPL version -- we can
apply the GPL explicitly to snapshots, including a comment that explains
that the GPL version is not the original. Something like that.
--
Timothy Normand Miller, PhD
Assistant Professor of Computer Science, Binghamton University
http://www.cs.binghamton.edu/~millerti/<http://www.cse.ohio-state.edu/~millerti>
Open Graphics Project
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.duskglow.com/pipermail/open-graphics/attachments/20130103/e8b3b4d4/attachment-0001.html>
Eitan Adler
2013-01-04 02:59:01 UTC
Permalink
Post by Timothy Normand Miller
Thank you for your comments. You appear to have some experience with this.
Post by Eitan Adler
Licensing is hard and depends on subtle choice of wording. "Crayon
licenses" not drafted by a lawyer almost certain mean something
different than one would expect. Think about a Lawyer trying to write
C code. ;)
Yeah, this is a dilemma I am facing.
Proposal: come up with set of goals and desires rather than legal
text. Send these goals over to license-discuss. I am happy to
Shepard this process. Let them ensure that whatever goals are desired
still is "open source". Once we have that then it requires taking the
time (and possibly money) to find a lawyer willing to write the
license. This is the only way you are going to get a useful license
that may stand up in court.

In this case it seems almost like GPLv2 would meet your needs exactly.

I do have some concerns that the GPL is meant for code, not hardware,
but since the hardware actually *is* code (verilog or whatever) this
isn't a real concern.
Post by Timothy Normand Miller
Post by Eitan Adler
Could we try for something LGPL like instead of GPL.
I specifically DO NOT want this.
ack.
Post by Timothy Normand Miller
For instance, it may be more cost-effective to use a pre-built PCIe
controller or GDDR5 memory controller, and we should exempt this from the
GPL requirement. Carefully.
GPL applies to code you license only. If you could find existing
non-GPL software whose license lets you use it, this is okay. For
example GPLed code on Windows. ;)
Post by Timothy Normand Miller
Good idea. Maybe I can delegate that to someone. :)
I'm happy to do this, provided the goals are clearly laid out by you
(or others on this list).
Post by Timothy Normand Miller
Meanwhile, I need
something I can slap on code I want to post to the list next week
Suggestion: start with GPLv2 because it sounds like what you want
already. Let the discussion play out and then possibly change it
later.
Post by Timothy Normand Miller
Post by Eitan Adler
This work does *not* include derived works. Those are different works
derived from this one.
Well, it does in a viral way, but this is an IP distinction that I'm sure a
lawyer would take issue with.
Yes, this is what I meant.
Post by Timothy Normand Miller
Post by Eitan Adler
This clause is not required. Instead "dual license" the code under
the (L)GPLv2. This makes this license simpler.
I tried dual-licensing and got into some trouble over it.
You mentioned confusion. I'd be curious what kind of confusion:
Mozilla Firefox does pretty well with tri-licensing.
Post by Timothy Normand Miller
They are not registered, but I supposed I should register them.
I'm not sure of that value of a registered trademark above and beyond
normal usage. Just a thought.
Post by Timothy Normand Miller
Post by Eitan Adler
Note that inclusion of this language may not qualify this license as
open source per the OSI.
As I mentioned
Post by Timothy Normand Miller
IIRC, the FSF made a statement that they're perfectly fine with companies
using trademark protection for a brand identity.
See http://opensource.org/faq#cc-zero for the gist and search on the
licence-review list for "CC0" for the detailed discusion.
Including an explicit patent exemption is likely to make the license
*not* open source.

I would however consider an apache like patent retaliation clause ("if
you sue us over patent issues, you lose your rights to use the
software").
Post by Timothy Normand Miller
Ok. So at the very least, I need two documents, one for licensing terms,
the other for project policy.
Yes. You may also need a third: the actual "copyright assignment"
form. Personally, I'd look into a foundation for this effort or ask
the SPI if they are willing to act as the host for the assignment. I
am willing to approach them provided there is consensus on this list.
Note that requiring copyright assignment is very useful for the goals
of the project (eventually licensing out the work to commercial users)
but it does tend to reduce contribution.
Post by Timothy Normand Miller
I also agree that I should generify the name
of the copyright holder, because I don't mind if someone else copies my
license.
Cool.
Post by Timothy Normand Miller
Somehow, I'm trying to get across that if you fork the project, it has to be
under GPL. Of course, you can commit anything you want to the GPL version.
The GPL itself does this.
Post by Timothy Normand Miller
The next question is what about if you BOTH fork the project AND commit
things to the original. You might have to demonstrate proper
compartmentalization due to the potential conflict of interest; you need to
be sure that what you commit to the Original is your own work and not
something you got from someone else committing to the GPL'd fork.
The "easy" way to do this is to is dual licensing the original, but
you mentioned you didn't want to do this.
The "hard" way is to include a "switch me out for the GPL at your
behest" and then require in the policy document that any contributions
use the "OpenGraphics Hardware License" and *not* the GPL (which could
then be switched out later by the forks).

Note that commercial users can *still* use the GPL version with this method.

A third option, is to just straight up use the GPL and offer an
additional commercial license to those that want it. I believe MySQL
uses this model.
Post by Timothy Normand Miller
Post by Eitan Adler
Also, is it fully assigned or joint copyright?
Whatever gives the original licensor all of the rights specified here.
Ack.
Post by Timothy Normand Miller
Yeah, this is a hold-over from old stuff. It's neither license nor policy.
It's coding standard. :)
:)
Post by Timothy Normand Miller
Post by Eitan Adler
Post by Timothy Normand Miller
Frequently Asked Questions
People asked questions already?
:)
Post by Timothy Normand Miller
I want it to be free to you and to people at other universities. I want the
likes of Apple and Samsung to have to pay for use of it.
Post by Eitan Adler
Post by Timothy Normand Miller
share a Modified version of the Work within a COMMERCIAL institution
(e.g. a chip manufacturer), then this IS considered to be
redistribution.
This isn't how the license reads.
Then this should be moved into the license.
http://opensource.org/osd

= quote =
6. No Discrimination Against Fields of Endeavor
The license must not restrict anyone from making use of the program in
a specific field of endeavor. For example, it may not restrict the
program from being used in a business, or from being used for genetic
research.
======

That said, what you *can* do is offer the license on terms that the
commercial users wouldn't want to use (GPL) and offer a second (paid)
license that permits binary only redistribution.
Post by Timothy Normand Miller
Post by Eitan Adler
Perhaps the OSI / SPI / SFLC may be willing to help. In particular
the SPI offers legal services to organizations.
We'll have to look into that.
As above, I'm willing to approach them, provided there is consensus
from you and this list in general.
Post by Timothy Normand Miller
So, what I gather from Wikipedia is that a "derivative work" is a work that
contains substantial new creative content that it can be considers a new
work, but which is nevertheless based substantially on preexisting works.
Yes. For instance, if I were to publish a book called "Harry Potter -
the Eight Story" which makes use of characters and plots from previous
books.
Post by Timothy Normand Miller
What I'm trying to make clear here is that although the simulator and
synthesizable GPU will mirror each other's architectures, they are not
derived from each other in any way that should require that one's licensing
terms would apply to the other.
This should be made clear on the website, and from the LICENSE or
COPYIND files in the respective repositories: not in the license.
--
Eitan Adler
Troy Benjegerdes
2013-01-04 06:42:15 UTC
Permalink
Post by Eitan Adler
Proposal: come up with set of goals and desires rather than legal
text. Send these goals over to license-discuss. I am happy to
Shepard this process. Let them ensure that whatever goals are desired
still is "open source". Once we have that then it requires taking the
time (and possibly money) to find a lawyer willing to write the
license. This is the only way you are going to get a useful license
that may stand up in court.
In this case it seems almost like GPLv2 would meet your needs exactly.
I do have some concerns that the GPL is meant for code, not hardware,
but since the hardware actually *is* code (verilog or whatever) this
isn't a real concern.
There is going to be some problem with this, and we're only going to
find it out with lots of review, and maybe litigation. This is why
I like explicit dual (or triple, or more) license models.

I'd also propose we start *from the beginning* by tracking every
contributor, so that if at some point we do need to change the license,
each and every contributor can be offered some sort of notification to
either approve the new license, or state their code must be cleanroomed
for a new license.

This is technically a project policy, with the goal of allowing migration
to a new license. Linux, for example, has no way to move to anything other
than GPLv2.
Post by Eitan Adler
Suggestion: start with GPLv2 because it sounds like what you want
already. Let the discussion play out and then possibly change it
later.
how about: GPLv2, or at your option, GPLv3, or AGPLv3, or any later version
Post by Eitan Adler
I would however consider an apache like patent retaliation clause ("if
you sue us over patent issues, you lose your rights to use the
software").
Post by Timothy Normand Miller
Ok. So at the very least, I need two documents, one for licensing terms,
the other for project policy.
Yes. You may also need a third: the actual "copyright assignment"
form. Personally, I'd look into a foundation for this effort or ask
the SPI if they are willing to act as the host for the assignment. I
am willing to approach them provided there is consensus on this list.
Note that requiring copyright assignment is very useful for the goals
of the project (eventually licensing out the work to commercial users)
but it does tend to reduce contribution.
My thought is we want unofficial (or even official) development forks
and sandbox clones that take code regardless of assignment, but that
there's a good policy (and code to validate that 'official' releases
only use code that's been properly assigned)
Timothy Normand Miller
2013-01-04 20:02:09 UTC
Permalink
Post by Troy Benjegerdes
Post by Eitan Adler
Proposal: come up with set of goals and desires rather than legal
text. Send these goals over to license-discuss. I am happy to
Shepard this process. Let them ensure that whatever goals are desired
still is "open source". Once we have that then it requires taking the
time (and possibly money) to find a lawyer willing to write the
license. This is the only way you are going to get a useful license
that may stand up in court.
In this case it seems almost like GPLv2 would meet your needs exactly.
I do have some concerns that the GPL is meant for code, not hardware,
but since the hardware actually *is* code (verilog or whatever) this
isn't a real concern.
There is going to be some problem with this, and we're only going to
find it out with lots of review, and maybe litigation. This is why
I like explicit dual (or triple, or more) license models.
I'd also propose we start *from the beginning* by tracking every
contributor, so that if at some point we do need to change the license,
each and every contributor can be offered some sort of notification to
either approve the new license, or state their code must be cleanroomed
for a new license.
Yeah. Like people have to ask me to be allowed to make contributions, so I
can grill them on the terms that they have to agree to.
Post by Troy Benjegerdes
This is technically a project policy, with the goal of allowing migration
to a new license. Linux, for example, has no way to move to anything other
than GPLv2.
Post by Eitan Adler
Suggestion: start with GPLv2 because it sounds like what you want
already. Let the discussion play out and then possibly change it
later.
how about: GPLv2, or at your option, GPLv3, or AGPLv3, or any later version
Post by Eitan Adler
I would however consider an apache like patent retaliation clause ("if
you sue us over patent issues, you lose your rights to use the
software").
Post by Timothy Normand Miller
Ok. So at the very least, I need two documents, one for licensing
terms,
Post by Eitan Adler
Post by Timothy Normand Miller
the other for project policy.
Yes. You may also need a third: the actual "copyright assignment"
form. Personally, I'd look into a foundation for this effort or ask
the SPI if they are willing to act as the host for the assignment. I
am willing to approach them provided there is consensus on this list.
Note that requiring copyright assignment is very useful for the goals
of the project (eventually licensing out the work to commercial users)
but it does tend to reduce contribution.
My thought is we want unofficial (or even official) development forks
and sandbox clones that take code regardless of assignment, but that
there's a good policy (and code to validate that 'official' releases
only use code that's been properly assigned)
Good idea. Basically, a commercial licensee can see that the Official
version has been put under rigorous testing, while they can't be sure of
that for the GPL-only version. But then, they won't want the GPL-only
version anyhow.
--
Timothy Normand Miller, PhD
Assistant Professor of Computer Science, Binghamton University
http://www.cs.binghamton.edu/~millerti/<http://www.cse.ohio-state.edu/~millerti>
Open Graphics Project
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.duskglow.com/pipermail/open-graphics/attachments/20130104/8ebff3b4/attachment.html>
gary sheppard
2013-01-04 20:20:12 UTC
Permalink
http://en.wikipedia.org/wiki/Affero_General_Public_License

Essentially equivalent to the GPL V3 but also closes the ASP Loophole that
was in GPL V2. It is considered to be orientated towards web space.


On Fri, Jan 4, 2013 at 12:02 PM, Timothy Normand Miller
Post by Timothy Normand Miller
Post by Troy Benjegerdes
Post by Eitan Adler
Proposal: come up with set of goals and desires rather than legal
text. Send these goals over to license-discuss. I am happy to
Shepard this process. Let them ensure that whatever goals are desired
still is "open source". Once we have that then it requires taking the
time (and possibly money) to find a lawyer willing to write the
license. This is the only way you are going to get a useful license
that may stand up in court.
In this case it seems almost like GPLv2 would meet your needs exactly.
I do have some concerns that the GPL is meant for code, not hardware,
but since the hardware actually *is* code (verilog or whatever) this
isn't a real concern.
There is going to be some problem with this, and we're only going to
find it out with lots of review, and maybe litigation. This is why
I like explicit dual (or triple, or more) license models.
I'd also propose we start *from the beginning* by tracking every
contributor, so that if at some point we do need to change the license,
each and every contributor can be offered some sort of notification to
either approve the new license, or state their code must be cleanroomed
for a new license.
Yeah. Like people have to ask me to be allowed to make contributions, so
I can grill them on the terms that they have to agree to.
Post by Troy Benjegerdes
This is technically a project policy, with the goal of allowing migration
to a new license. Linux, for example, has no way to move to anything other
than GPLv2.
Post by Eitan Adler
Suggestion: start with GPLv2 because it sounds like what you want
already. Let the discussion play out and then possibly change it
later.
how about: GPLv2, or at your option, GPLv3, or AGPLv3, or any later version
Post by Eitan Adler
I would however consider an apache like patent retaliation clause ("if
you sue us over patent issues, you lose your rights to use the
software").
Post by Timothy Normand Miller
Ok. So at the very least, I need two documents, one for licensing
terms,
Post by Eitan Adler
Post by Timothy Normand Miller
the other for project policy.
Yes. You may also need a third: the actual "copyright assignment"
form. Personally, I'd look into a foundation for this effort or ask
the SPI if they are willing to act as the host for the assignment. I
am willing to approach them provided there is consensus on this list.
Note that requiring copyright assignment is very useful for the goals
of the project (eventually licensing out the work to commercial users)
but it does tend to reduce contribution.
My thought is we want unofficial (or even official) development forks
and sandbox clones that take code regardless of assignment, but that
there's a good policy (and code to validate that 'official' releases
only use code that's been properly assigned)
Good idea. Basically, a commercial licensee can see that the Official
version has been put under rigorous testing, while they can't be sure of
that for the GPL-only version. But then, they won't want the GPL-only
version anyhow.
--
Timothy Normand Miller, PhD
Assistant Professor of Computer Science, Binghamton University
http://www.cs.binghamton.edu/~millerti/<http://www.cse.ohio-state.edu/~millerti>
Open Graphics Project
_______________________________________________
Open-graphics mailing list
Open-graphics at duskglow.com
http://lists.duskglow.com/mailman/listinfo/open-graphics
List service provided by Duskglow Consulting, LLC (www.duskglow.com)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.duskglow.com/pipermail/open-graphics/attachments/20130104/005a7d03/attachment-0001.html>
Eitan Adler
2013-01-04 03:01:54 UTC
Permalink
Post by Timothy Normand Miller
Post by Eitan Adler
Note that inclusion of this language may not qualify this license as
open source per the OSI.
IIRC, the FSF made a statement that they're perfectly fine with companies
using trademark protection for a brand identity. So they defend the right
of CentOS to maintain a more accessible fork of RHEL, and they also think
that Red Hat is within their rights to say that CentOS cannot use the
trademark "Red Hat" without permission.
Rereading the thread I think the placement of my comment may have lead
to confusion:

I meant for this comment to relate to

===
Post by Timothy Normand Miller
(9) The submitter of a Modification forfeits the right to any patents
covered by This Work and pledges to not enforce any patents covered by
This Work.
===

not the trademark clause, which is probably okay. ;)
--
Eitan Adler
gary sheppard
2013-01-04 03:55:15 UTC
Permalink
http://www.ifosslr.org/ifosslr/article/view/69

Link to a PDF that talks about Hardware Lic... Opinions?
Post by Eitan Adler
Post by Timothy Normand Miller
Post by Eitan Adler
Note that inclusion of this language may not qualify this license as
open source per the OSI.
IIRC, the FSF made a statement that they're perfectly fine with companies
using trademark protection for a brand identity. So they defend the
right
Post by Timothy Normand Miller
of CentOS to maintain a more accessible fork of RHEL, and they also think
that Red Hat is within their rights to say that CentOS cannot use the
trademark "Red Hat" without permission.
Rereading the thread I think the placement of my comment may have lead
I meant for this comment to relate to
===
Post by Timothy Normand Miller
(9) The submitter of a Modification forfeits the right to any patents
covered by This Work and pledges to not enforce any patents covered by
This Work.
===
not the trademark clause, which is probably okay. ;)
--
Eitan Adler
_______________________________________________
Open-graphics mailing list
Open-graphics at duskglow.com
http://lists.duskglow.com/mailman/listinfo/open-graphics
List service provided by Duskglow Consulting, LLC (www.duskglow.com)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.duskglow.com/pipermail/open-graphics/attachments/20130103/d4886b66/attachment.html>
Troy Benjegerdes
2013-01-04 06:22:22 UTC
Permalink
Post by Timothy Normand Miller
Note that there is a small issue with some chips where a standard component
is hard to open source with the rest of the design, and we need to exempt
this. For instance, it may be more cost-effective to use a pre-built PCIe
controller or GDDR5 memory controller, and we should exempt this from the
GPL requirement. Carefully.
If you are at the point where you have everything but are missing an open
GDDR5 & PCIe controller, please call me and I will mortgage the q3u.be and
brick patents (and anything else I can) and fund development of open versions.

The other way to look at this is just charge a commercial license fee if the
PCIe core vendor is concerned. I don't see how you need any exemption here.

Just because I build a Gaisler LEON-Sparc and instantiate it on a Xilinx
or Altera doesn't require the FPGA vendor tools to be open source. (We all
currently run GPL code on non-GPL silicon mask cpus, how is using a PCIe
core different?)
Post by Timothy Normand Miller
Good idea. Maybe I can delegate that to someone. :) Meanwhile, I need
something I can slap on code I want to post to the list next week
I'm going to suggest creating a blank project with only the license file,
and a code review tool. (I'd suggest Bitbucket or Github), and maybe fork
it to start dumping code into.
Post by Timothy Normand Miller
Post by Eitan Adler
This clause is not required. Instead "dual license" the code under
the (L)GPLv2. This makes this license simpler.
I tried dual-licensing and got into some trouble over it.
I think I understand why you're trying to do this, but the cure might
be worse than the disease. You might have a way to make it work, but
it needs legal review first.
Post by Timothy Normand Miller
Post by Eitan Adler
Post by Timothy Normand Miller
(3) Use of this Work without clause (1) forfeits the right to use any
trademarks owned by Timothy Normand Miller, Traversal Technology, the
Open
Post by Timothy Normand Miller
Graphics Project, or related organizations. "OpenShader" is a trademark
of
Post by Timothy Normand Miller
Timothy Normand Miller.
No forfeiture require. Is OpenGraphics or OpenShader registered.
They are not registered, but I supposed I should register them.
Register them now.

I'd also like to have a little bit of discussion on whether filing
for provisional patents that are derivative works of
http://q3u.be/patent/q3ube/ would either usefull, or conflicting.
Post by Timothy Normand Miller
Post by Eitan Adler
"No trademark or patent rights held by ______ are waived, abandoned,
surrendered, licensed or otherwise affected by this document." is the
language to use. (See
https://creativecommons.org/publicdomain/zero/1.0/legalcode).
Got it.
Post by Eitan Adler
Note that inclusion of this language may not qualify this license as
open source per the OSI.
IIRC, the FSF made a statement that they're perfectly fine with companies
using trademark protection for a brand identity. So they defend the right
of CentOS to maintain a more accessible fork of RHEL, and they also think
that Red Hat is within their rights to say that CentOS cannot use the
trademark "Red Hat" without permission.
Debian has 'iceweasel' instead of firefox. I'm less concerned about the OSI
than compliance with the Debian social contract and free software guidelines.
Brand protection should be fine.
Post by Timothy Normand Miller
Somehow, I'm trying to get across that if you fork the project, it has to
be under GPL. Of course, you can commit anything you want to the GPL
version. The next question is what about if you BOTH fork the project AND
commit things to the original. You might have to demonstrate proper
compartmentalization due to the potential conflict of interest; you need to
be sure that what you commit to the Original is your own work and not
something you got from someone else committing to the GPL'd fork.
I expect I may be in this position. I plan on combining the openshader
with one, or all, of the following:

* Milkmist SOC
* Gaisler LEON-sparc (LGPL)
* YASEP (AGPLv3)
* Infiniband-fpga GPLv2, probably moving to AGPLv3
* q3ube AGPLv3 software & patent hybrid
Post by Timothy Normand Miller
I want it to be free to you and to people at other universities. I want
the likes of Apple and Samsung to have to pay for use of it.
How about if I ship 30 million game consoles but include the silicon masks
and layout tools in the default Debian install that ships on the console?
Post by Timothy Normand Miller
Post by Eitan Adler
Post by Timothy Normand Miller
If someone contributes to a
GPL version, then it's not called OpenShader, and it's off limits to me.
If
Post by Timothy Normand Miller
someone contributes to the Original version, they know that the GPL does
not
Post by Timothy Normand Miller
apply (but can if someone forks according to clause (2)).
There are practical differences: it mainly makes the license more
complex without much reason.
That's true. I just want to avoid what happened before.
Some of what happened before is unavoidable. if^h^hWhen we are successful,
some will be irritable about something. What happened before will happen
again in a different way. Focus on the things you want to see happen,
rather than on what you'd rather avoid.
Post by Timothy Normand Miller
Post by Eitan Adler
Post by Timothy Normand Miller
A: The license will NOT be applied to Works that are purely software.
This includes software drivers and the OpenShader GPU simulator. For
those,
Post by Timothy Normand Miller
we will always use FOSS licenses. The simulator will be licensed under
pure GPL, and drivers will use the X11/MIT license.
Yay! Free drivers!
This isn't clear from the license, but it shouldn't be. This is
policy, not license. :)
Post by Timothy Normand Miller
*** Will the hardware design ever be considered to be a derivative work
of
Post by Timothy Normand Miller
the simulator?
Derivative work is a legal term of art. The answer doesn't cover it.
So, what I gather from Wikipedia is that a "derivative work" is a work that
contains substantial new creative content that it can be considers a new
work, but which is nevertheless based substantially on preexisting works.
What I'm trying to make clear here is that although the simulator and
synthesizable GPU will mirror each other's architectures, they are not
derived from each other in any way that should require that one's licensing
terms would apply to the other.
I think you need to be explicit on what's covered, and this needs legal
review. There's also regression tests, which should be able to test both
the simulator, and the GPU, without being derivative works.
Post by Timothy Normand Miller
Meanwhile, I'm thinking it'll be safe for me to just say that I own the
copyright and that anyone wishing to contribute will have to explicitly
make arrangements with me first. Same for getting a GPL version -- we can
apply the GPL explicitly to snapshots, including a comment that explains
that the GPL version is not the original. Something like that.
I like the GPL snapshot approach. I'd also like to maintain an AGPLv3
re-licensed forkmirror that includes the full revision history, which will
put some nice tight bounds around if anything gpl-only ever actually
gets into downstream forks.
Timothy Normand Miller
2013-01-04 19:59:44 UTC
Permalink
I cut some of your post, because I don't have any comments on that stuff.
(Some tacit agreement, etc.)
Post by Troy Benjegerdes
I expect I may be in this position. I plan on combining the openshader
* Milkmist SOC
* Gaisler LEON-sparc (LGPL)
* YASEP (AGPLv3)
* Infiniband-fpga GPLv2, probably moving to AGPLv3
* q3ube AGPLv3 software & patent hybrid
That would rock! As long as I have copyright ownership, I'll bend whatever
licensing terms necessary to make this happen. Since your chips will
comply with the SPIRIT of free designs, any such bending will come with the
_recommendation_ that you donate some small portion of your revenue to this
project.
Post by Troy Benjegerdes
Post by Timothy Normand Miller
I want it to be free to you and to people at other universities. I want
the likes of Apple and Samsung to have to pay for use of it.
How about if I ship 30 million game consoles but include the silicon masks
and layout tools in the default Debian install that ships on the console?
This is a purely "free" design? In that case, all the power to you. Mind
you, I won't be the only one suggesting that you share the love. :)
Post by Troy Benjegerdes
Post by Timothy Normand Miller
Post by Eitan Adler
Post by Timothy Normand Miller
If someone contributes to a
GPL version, then it's not called OpenShader, and it's off limits to
me.
Post by Timothy Normand Miller
Post by Eitan Adler
If
Post by Timothy Normand Miller
someone contributes to the Original version, they know that the GPL
does
Post by Timothy Normand Miller
Post by Eitan Adler
not
Post by Timothy Normand Miller
apply (but can if someone forks according to clause (2)).
There are practical differences: it mainly makes the license more
complex without much reason.
That's true. I just want to avoid what happened before.
Some of what happened before is unavoidable. if^h^hWhen we are successful,
some will be irritable about something. What happened before will happen
again in a different way. Focus on the things you want to see happen,
rather than on what you'd rather avoid.
Fair enough. Dual-licensing IS a lot simpler.
Post by Troy Benjegerdes
Post by Timothy Normand Miller
Post by Eitan Adler
Post by Timothy Normand Miller
A: The license will NOT be applied to Works that are purely
software.
Post by Timothy Normand Miller
Post by Eitan Adler
Post by Timothy Normand Miller
This includes software drivers and the OpenShader GPU simulator. For
those,
Post by Timothy Normand Miller
we will always use FOSS licenses. The simulator will be licensed
under
Post by Timothy Normand Miller
Post by Eitan Adler
Post by Timothy Normand Miller
pure GPL, and drivers will use the X11/MIT license.
Yay! Free drivers!
This isn't clear from the license, but it shouldn't be. This is
policy, not license. :)
Post by Timothy Normand Miller
*** Will the hardware design ever be considered to be a derivative
work
Post by Timothy Normand Miller
Post by Eitan Adler
of
Post by Timothy Normand Miller
the simulator?
Derivative work is a legal term of art. The answer doesn't cover it.
So, what I gather from Wikipedia is that a "derivative work" is a work
that
Post by Timothy Normand Miller
contains substantial new creative content that it can be considers a new
work, but which is nevertheless based substantially on preexisting works.
What I'm trying to make clear here is that although the simulator and
synthesizable GPU will mirror each other's architectures, they are not
derived from each other in any way that should require that one's
licensing
Post by Timothy Normand Miller
terms would apply to the other.
I think you need to be explicit on what's covered, and this needs legal
review. There's also regression tests, which should be able to test both
the simulator, and the GPU, without being derivative works.
No reason the regression tests should have the commercial license applied.
The simulator, compiler tools, regression tests (including Verilog test
harnesses).... all GPL. If someone is paying a royalty to license the core
GPU, what is the point in complicating things by making the test code part
of the contract?
Post by Troy Benjegerdes
Post by Timothy Normand Miller
Meanwhile, I'm thinking it'll be safe for me to just say that I own the
copyright and that anyone wishing to contribute will have to explicitly
make arrangements with me first. Same for getting a GPL version -- we
can
Post by Timothy Normand Miller
apply the GPL explicitly to snapshots, including a comment that explains
that the GPL version is not the original. Something like that.
I like the GPL snapshot approach. I'd also like to maintain an AGPLv3
re-licensed forkmirror that includes the full revision history, which will
put some nice tight bounds around if anything gpl-only ever actually
gets into downstream forks.
That sounds good to me. What does AGPL add to/remove from the GPL?
--
Timothy Normand Miller, PhD
Assistant Professor of Computer Science, Binghamton University
http://www.cs.binghamton.edu/~millerti/<http://www.cse.ohio-state.edu/~millerti>
Open Graphics Project
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.duskglow.com/pipermail/open-graphics/attachments/20130104/497d451b/attachment.html>
whygee
2013-01-04 20:20:46 UTC
Permalink
Hello list,
Post by Troy Benjegerdes
I like the GPL snapshot approach. I'd also like to maintain an AGPLv3
re-licensed forkmirror that includes the full revision history, which will
put some nice tight bounds around if anything gpl-only ever
actually gets into downstream forks.
That sounds good to me. ?What does AGPL add to/remove from the GPL??
This "AGPL" for hardware looks like a joke but it's a harmless and
protective move
that I took for the YASEP project.

The situation being that just as "hardware" turns into "software"
(gates are written in HDL), software is increasingly "networked",
turned into web apps, where they can potentially be held hostage
(in pure GPL world) by the service provider, who can tweak the
"software"
and not have to redistribute his changes.

the Affero clause is simple : if you use the code on a network,
you have to provide a way to access and redistribute the code that
you use, for example by providing a direct link to the source code.

Simple. It adds a new distribution method to the existing requirements
and requests that the running software remains "transparent" (not
a closed black box). It's unrelated to hardware but doesn't harm
and actually can make things easier in the long run.

Imagine that a company takes the OpenShader design and provides
online services for remote, online simulations. This would force
them to release their own tuned version. Contrast this to the
http://mbed.org/ approach where you buy the cheap board and
have to use their "online compiler" which is crippled and obscure,
forcing you to buy a "full featured" commercial version.

AGPLv3 is GPLv3 with a network clause, both more handy
and more demanding on a couple of key points. It doesn't harm
hardware projects and closes a hole in the classic GPL.

I hope it answered your questions.

YG
gary sheppard
2013-01-04 20:28:30 UTC
Permalink
Regarding the GPL for mixed GPL and Commercial usage, this is from the
GNU.org site FAQ:

/snip
"I'd like to license my code under the GPL, but I'd also like to make it
clear that it can't be used for military and/or commercial uses. Can I do
this? (#NoMilitary <http://www.gnu.org/licenses/gpl-faq.html#NoMilitary>)

No, because those two goals contradict each other. The GNU GPL is designed
specifically to prevent the addition of further restrictions. GPLv3 allows
a very limited set of them, in section 7, but any other added restriction
can be removed by the user."
/end

Just trying to wrap my head around these things.... CERN seems to have
hashed some of this stuff out is why I have mentioned it.
Post by whygee
Hello list,
I like the GPL snapshot approach. I'd also like to maintain an AGPLv3
Post by Timothy Normand Miller
Post by Troy Benjegerdes
re-licensed forkmirror that includes the full revision history, which will
put some nice tight bounds around if anything gpl-only ever
actually gets into downstream forks.
That sounds good to me. What does AGPL add to/remove from the GPL?
This "AGPL" for hardware looks like a joke but it's a harmless and
protective move
that I took for the YASEP project.
The situation being that just as "hardware" turns into "software"
(gates are written in HDL), software is increasingly "networked",
turned into web apps, where they can potentially be held hostage
(in pure GPL world) by the service provider, who can tweak the "software"
and not have to redistribute his changes.
the Affero clause is simple : if you use the code on a network,
you have to provide a way to access and redistribute the code that
you use, for example by providing a direct link to the source code.
Simple. It adds a new distribution method to the existing requirements
and requests that the running software remains "transparent" (not
a closed black box). It's unrelated to hardware but doesn't harm
and actually can make things easier in the long run.
Imagine that a company takes the OpenShader design and provides
online services for remote, online simulations. This would force
them to release their own tuned version. Contrast this to the
http://mbed.org/ approach where you buy the cheap board and
have to use their "online compiler" which is crippled and obscure,
forcing you to buy a "full featured" commercial version.
AGPLv3 is GPLv3 with a network clause, both more handy
and more demanding on a couple of key points. It doesn't harm
hardware projects and closes a hole in the classic GPL.
I hope it answered your questions.
YG
______________________________**_________________
Open-graphics mailing list
Open-graphics at duskglow.com
http://lists.duskglow.com/**mailman/listinfo/open-graphics<http://lists.duskglow.com/mailman/listinfo/open-graphics>
List service provided by Duskglow Consulting, LLC (www.duskglow.com)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.duskglow.com/pipermail/open-graphics/attachments/20130104/bd89307a/attachment.html>
Timothy Normand Miller
2013-01-04 20:29:06 UTC
Permalink
Well, I see no harm in applying the AGPL to the simulator and other stuff.
The value to applying it to the hardware is, as has been said, possibly
more of a source of irony. :)
Post by whygee
Hello list,
I like the GPL snapshot approach. I'd also like to maintain an AGPLv3
Post by Timothy Normand Miller
Post by Troy Benjegerdes
re-licensed forkmirror that includes the full revision history, which will
put some nice tight bounds around if anything gpl-only ever
actually gets into downstream forks.
That sounds good to me. What does AGPL add to/remove from the GPL?
This "AGPL" for hardware looks like a joke but it's a harmless and
protective move
that I took for the YASEP project.
The situation being that just as "hardware" turns into "software"
(gates are written in HDL), software is increasingly "networked",
turned into web apps, where they can potentially be held hostage
(in pure GPL world) by the service provider, who can tweak the "software"
and not have to redistribute his changes.
the Affero clause is simple : if you use the code on a network,
you have to provide a way to access and redistribute the code that
you use, for example by providing a direct link to the source code.
Simple. It adds a new distribution method to the existing requirements
and requests that the running software remains "transparent" (not
a closed black box). It's unrelated to hardware but doesn't harm
and actually can make things easier in the long run.
Imagine that a company takes the OpenShader design and provides
online services for remote, online simulations. This would force
them to release their own tuned version. Contrast this to the
http://mbed.org/ approach where you buy the cheap board and
have to use their "online compiler" which is crippled and obscure,
forcing you to buy a "full featured" commercial version.
AGPLv3 is GPLv3 with a network clause, both more handy
and more demanding on a couple of key points. It doesn't harm
hardware projects and closes a hole in the classic GPL.
I hope it answered your questions.
YG
--
Timothy Normand Miller, PhD
Assistant Professor of Computer Science, Binghamton University
http://www.cs.binghamton.edu/~millerti/<http://www.cse.ohio-state.edu/~millerti>
Open Graphics Project
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.duskglow.com/pipermail/open-graphics/attachments/20130104/d90f7c8e/attachment.html>
whygee
2013-01-04 20:48:01 UTC
Permalink
Post by Timothy Normand Miller
Well, I see no harm in applying the AGPL to the simulator and other
stuff. ?The value to applying it to the hardware is, as has been
said, possibly more of a source of irony. ?:)
and, irony of irony, it works for the YASEP :
the CPU HDL accounts for less than 1% of the total source code.
The rest is interfaces, translations,
documentation, generators, tests etc.
which ARE software and can be totally "cloudified".

Using a single licence for everything also keeps
the whole project simpler.

Now, i know your situation is different, it's just my $/50

yg
gary sheppard
2013-01-04 21:39:44 UTC
Permalink
Very cool videos.
Post by Timothy Normand Miller
Well, I see no harm in applying the AGPL to the simulator and other
stuff. The value to applying it to the hardware is, as has been
said, possibly more of a source of irony. :)
the CPU HDL accounts for less than 1% of the total source code.
The rest is interfaces, translations,
documentation, generators, tests etc.
which ARE software and can be totally "cloudified".
Using a single licence for everything also keeps
the whole project simpler.
Now, i know your situation is different, it's just my $/50
yg
______________________________**_________________
Open-graphics mailing list
Open-graphics at duskglow.com
http://lists.duskglow.com/**mailman/listinfo/open-graphics<http://lists.duskglow.com/mailman/listinfo/open-graphics>
List service provided by Duskglow Consulting, LLC (www.duskglow.com)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.duskglow.com/pipermail/open-graphics/attachments/20130104/fcd1168f/attachment.html>
Christophe Devine
2013-01-05 08:30:43 UTC
Permalink
Post by whygee
the CPU HDL accounts for less than 1% of the total source code.
The rest is interfaces, translations,
documentation, generators, tests etc.
which ARE software and can be totally "cloudified".
Using a single licence for everything also keeps
the whole project simpler.
Now, i know your situation is different, it's just my $/50
To add my 50c as well, I like how things are done in the Milkymist
project: everything (except the LM32 core) licensed under the GPLv3,
so the design or parts of it can be easily reused with other GPLv3
projects (YASEP for example comes to mind). Dual-licensing and
copyright assignment make things unnecessarily complicated.
John Culp
2013-01-04 04:42:03 UTC
Permalink
Timothy,

Can you even assign copyright for something you are doing _related_ to
your probable research work at Binghamton? Even if you are working on
this 100% in what you consider as your spare time, your employer may
have claim to the work.

I only ask this as I remember the contracts I signed for my work here.

You may have it in writing with your employer that you personally own
the copyright and patentable ideas in all the future works that you
create related to Open Graphics, and therefore can license it as you see
fit, but perhaps you don't.

Universities can be pretty funny when it comes to IP of any sort. IP
created that is in any way related to any research that you are being
paid to do would probably be in a dark grey area. I am assuming that
you are a professional, not an hourly employee, and you may not actually
have any official spare time when it comes to related work.

Why don't you spend ~$1k and run your employment contracts by a lawyer
specializing in such things (work for hire). I have been told that New
York law is in general pretty funny compared to the other states; I
don't know how that might effect you.

It may be that you need to run any license though whatever legal office
exists at your university. For example: Wasn't the copyright of the X
source originally held by MIT, but then licensed very permissively
through the 'MIT X License'?

IANAL (obviously)


-John
--
John R. Culp
john.culp at me.gatech.edu
Troy Benjegerdes
2013-01-04 06:46:20 UTC
Permalink
This may end up being the reason it would make sense to either
find a foundation to accept copyright assignment, or to create
an 'OpenGraphics Foundation' to hold the copyrights and trademarks.

The foundation can then fund Timothy's research, at which point
the university will happly do whatever it's funding agents want.
Post by John Culp
Timothy,
Can you even assign copyright for something you are doing _related_
to your probable research work at Binghamton? Even if you are
working on this 100% in what you consider as your spare time, your
employer may have claim to the work.
I only ask this as I remember the contracts I signed for my work here.
You may have it in writing with your employer that you personally
own the copyright and patentable ideas in all the future works that
you create related to Open Graphics, and therefore can license it as
you see fit, but perhaps you don't.
Universities can be pretty funny when it comes to IP of any sort.
IP created that is in any way related to any research that you are
being paid to do would probably be in a dark grey area. I am
assuming that you are a professional, not an hourly employee, and
you may not actually have any official spare time when it comes to
related work.
Why don't you spend ~$1k and run your employment contracts by a
lawyer specializing in such things (work for hire). I have been
told that New York law is in general pretty funny compared to the
other states; I don't know how that might effect you.
It may be that you need to run any license though whatever legal
office exists at your university. For example: Wasn't the copyright
of the X source originally held by MIT, but then licensed very
permissively through the 'MIT X License'?
IANAL (obviously)
-John
--
John R. Culp
john.culp at me.gatech.edu
_______________________________________________
Open-graphics mailing list
Open-graphics at duskglow.com
http://lists.duskglow.com/mailman/listinfo/open-graphics
List service provided by Duskglow Consulting, LLC (www.duskglow.com)
--
--------------------------------------------------------------------------
Troy Benjegerdes 'da hozer' hozer at hozed.org

Somone asked my why I work on this free (http://www.fsf.org/philosophy/)
software & hardware (http://q3u.be) stuff and not get a real job.
Charles Shultz had the best answer:

"Why do musicians compose symphonies and poets write poems? They do it
because life wouldn't have any meaning for them if they didn't. That's why
I draw cartoons. It's my life." -- Charles Shultz
Timothy Normand Miller
2013-01-04 20:11:44 UTC
Permalink
Post by Troy Benjegerdes
This may end up being the reason it would make sense to either
find a foundation to accept copyright assignment, or to create
an 'OpenGraphics Foundation' to hold the copyrights and trademarks.
Sadly, the Open Hardware Foundation didn't survive.
Post by Troy Benjegerdes
The foundation can then fund Timothy's research, at which point
the university will happly do whatever it's funding agents want.
This is another interesting issue. Personally, I think that the best place
for me to invest this project's revenue is in research at BU, followed by
other universities. But if I were to do that, I'd get smacked silly by
people who declare that I'm allowing my personal biases to interfere with
what's best for the project. I freely admit that I do have this bias: If
I didn't REALLY LIKE BU, I'd have gone to work at one of the other places
that made me an offer rather than end up living in a somewhat isolated
small-ish town in upstate New York. Also, people won't like having NYS
take a big chunk of the money.

(Note: I actually really like the Binghamton area. It's a beautiful
place, not overrun with too much urban sprawl, but urban enough that we
don't feel like we're completely isolated from civilization. But not
everyone feels that way. It's nice that NYC is a 4-hour bus ride away, but
I'd never want to live there.)
--
Timothy Normand Miller, PhD
Assistant Professor of Computer Science, Binghamton University
http://www.cs.binghamton.edu/~millerti/<http://www.cse.ohio-state.edu/~millerti>
Open Graphics Project
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.duskglow.com/pipermail/open-graphics/attachments/20130104/122a1fb8/attachment.html>
Timothy Normand Miller
2013-01-04 19:50:19 UTC
Permalink
Post by John Culp
Timothy,
Can you even assign copyright for something you are doing _related_ to
your probable research work at Binghamton? Even if you are working on this
100% in what you consider as your spare time, your employer may have claim
to the work.
I specifically grilled them about this and had the director of Technology
Transfer explain to me the boundaries carefully. If I'm not using any of
BU's resources, they don't lay any claim to it. And actually, it's not
really BU; it's the state of New York, since this is a state institution.

Basically, if I'm doing this from home, using my own equipment, it's the
same as if I did outside consulting under the same terms. I DO need to
disclose potential conflicts of interest, and I have to keep some kind of
paper trail that shows that my contributions were published not using BU
resources. That's one of the reasons I want to post code to the list using
my gmail account.
Post by John Culp
I only ask this as I remember the contracts I signed for my work here.
You may have it in writing with your employer that you personally own the
copyright and patentable ideas in all the future works that you create
related to Open Graphics, and therefore can license it as you see fit, but
perhaps you don't.
There is also the issue of pre-existing IP we developed before I started at
BU and the fact that many people consider this to be public property. I
may be its legal owner, but morally, I'm just its guardian. I can't pocket
the money myself. My colleagues at BU understand this.
Post by John Culp
Universities can be pretty funny when it comes to IP of any sort. IP
created that is in any way related to any research that you are being paid
to do would probably be in a dark grey area. I am assuming that you are a
professional, not an hourly employee, and you may not actually have any
official spare time when it comes to related work.
One of the things I can do is rent office space there for $200/month, which
explicitly removes any conflicts of interest, state claims on IP, and
allows me access to BU resources, faculty, and staff. The instant that
this project has revenue potential, I'm going to enter into this
arrangement. Meanwhile, I really can't justify that expense. I'm just
going to keep clear separation.

Worst case, if I screw something up badly enough, NYS will take 60% of our
revenue.
Post by John Culp
Why don't you spend ~$1k and run your employment contracts by a lawyer
specializing in such things (work for hire). I have been told that New
York law is in general pretty funny compared to the other states; I don't
know how that might effect you.
Do you know how much I make? Let's just say that I took a big pay cut when
coming to BU, so this isn't an expense I can make right now. My wife's
opinion (who is a lawyer, BTW, licensed in Florida and Ohio, but not
specializing in IP law) is that I should bring this whole thing into BU and
let NYS own it (making it necessary for me to reject many outside
contributions) because it's better for my tenure application and doesn't
interfere with my ACADEMIC goals. This doesn't prevent me from releasing
it under GPL, but it does mean that NYS would take 60% of any revenue.
This would also make my life a lot easier for me, except for all the flak
I'd get from letting "the evil government" take a big chunk of money that
belongs to the project.

SHOULD I let NYS own this?
Post by John Culp
It may be that you need to run any license though whatever legal office
exists at your university. For example: Wasn't the copyright of the X
source originally held by MIT, but then licensed very permissively through
the 'MIT X License'?
I could probably license this under BSD or MIT, and no one in NYS would
raise an eyebrow. It it would prevent _us_ from getting any revenue;
meanwhile, Apple could plop it into the iPhone 12 and make billions. I
don't like that. I'm doing this for research purposes so that academics
can have an easier time developing new GPU-related techologies, not so that
some money-grubbing corporation can just lift our IP. This is why I want
to make use of copyright and even patent protection. If a commercial
entity wants to use that, that's great; we'll take a cut and use that to
further our FOSS and academic goals.

Anyhow, basically, this whole mess comes about because I think it's
important that we control the revenue stream and make sure it's invested
properly and primarily in FOSS-related projects.



Maybe I'm wrong to think that.
Post by John Culp
IANAL (obviously)
-John
--
John R. Culp
john.culp at me.gatech.edu
______________________________**_________________
Open-graphics mailing list
Open-graphics at duskglow.com
http://lists.duskglow.com/**mailman/listinfo/open-graphics<http://lists.duskglow.com/mailman/listinfo/open-graphics>
List service provided by Duskglow Consulting, LLC (www.duskglow.com)
--
Timothy Normand Miller, PhD
Assistant Professor of Computer Science, Binghamton University
http://www.cs.binghamton.edu/~millerti/<http://www.cse.ohio-state.edu/~millerti>
Open Graphics Project
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.duskglow.com/pipermail/open-graphics/attachments/20130104/d021f84a/attachment.html>
gary sheppard
2013-01-04 20:01:24 UTC
Permalink
Drop the nice folks at CERN a line and ask them for a bit of advice. They
have a CERN open source license that is for hardware and has been worked
on. Combining the Apache 2.0 with a hardware version of the GPL - A.K.A. -
CERN will likely allow you to monitize as you desire while keeping open
source goals.


On Fri, Jan 4, 2013 at 11:50 AM, Timothy Normand Miller
Post by Timothy Normand Miller
Post by John Culp
Timothy,
Can you even assign copyright for something you are doing _related_ to
your probable research work at Binghamton? Even if you are working on this
100% in what you consider as your spare time, your employer may have claim
to the work.
I specifically grilled them about this and had the director of Technology
Transfer explain to me the boundaries carefully. If I'm not using any of
BU's resources, they don't lay any claim to it. And actually, it's not
really BU; it's the state of New York, since this is a state institution.
Basically, if I'm doing this from home, using my own equipment, it's the
same as if I did outside consulting under the same terms. I DO need to
disclose potential conflicts of interest, and I have to keep some kind of
paper trail that shows that my contributions were published not using BU
resources. That's one of the reasons I want to post code to the list using
my gmail account.
Post by John Culp
I only ask this as I remember the contracts I signed for my work here.
You may have it in writing with your employer that you personally own the
copyright and patentable ideas in all the future works that you create
related to Open Graphics, and therefore can license it as you see fit, but
perhaps you don't.
There is also the issue of pre-existing IP we developed before I started
at BU and the fact that many people consider this to be public property. I
may be its legal owner, but morally, I'm just its guardian. I can't pocket
the money myself. My colleagues at BU understand this.
Post by John Culp
Universities can be pretty funny when it comes to IP of any sort. IP
created that is in any way related to any research that you are being paid
to do would probably be in a dark grey area. I am assuming that you are a
professional, not an hourly employee, and you may not actually have any
official spare time when it comes to related work.
One of the things I can do is rent office space there for $200/month,
which explicitly removes any conflicts of interest, state claims on IP, and
allows me access to BU resources, faculty, and staff. The instant that
this project has revenue potential, I'm going to enter into this
arrangement. Meanwhile, I really can't justify that expense. I'm just
going to keep clear separation.
Worst case, if I screw something up badly enough, NYS will take 60% of our
revenue.
Post by John Culp
Why don't you spend ~$1k and run your employment contracts by a lawyer
specializing in such things (work for hire). I have been told that New
York law is in general pretty funny compared to the other states; I don't
know how that might effect you.
Do you know how much I make? Let's just say that I took a big pay cut
when coming to BU, so this isn't an expense I can make right now. My
wife's opinion (who is a lawyer, BTW, licensed in Florida and Ohio, but not
specializing in IP law) is that I should bring this whole thing into BU and
let NYS own it (making it necessary for me to reject many outside
contributions) because it's better for my tenure application and doesn't
interfere with my ACADEMIC goals. This doesn't prevent me from releasing
it under GPL, but it does mean that NYS would take 60% of any revenue.
This would also make my life a lot easier for me, except for all the flak
I'd get from letting "the evil government" take a big chunk of money that
belongs to the project.
SHOULD I let NYS own this?
Post by John Culp
It may be that you need to run any license though whatever legal office
exists at your university. For example: Wasn't the copyright of the X
source originally held by MIT, but then licensed very permissively through
the 'MIT X License'?
I could probably license this under BSD or MIT, and no one in NYS would
raise an eyebrow. It it would prevent _us_ from getting any revenue;
meanwhile, Apple could plop it into the iPhone 12 and make billions. I
don't like that. I'm doing this for research purposes so that academics
can have an easier time developing new GPU-related techologies, not so that
some money-grubbing corporation can just lift our IP. This is why I want
to make use of copyright and even patent protection. If a commercial
entity wants to use that, that's great; we'll take a cut and use that to
further our FOSS and academic goals.
Anyhow, basically, this whole mess comes about because I think it's
important that we control the revenue stream and make sure it's invested
properly and primarily in FOSS-related projects.
Maybe I'm wrong to think that.
Post by John Culp
IANAL (obviously)
-John
--
John R. Culp
john.culp at me.gatech.edu
______________________________**_________________
Open-graphics mailing list
Open-graphics at duskglow.com
http://lists.duskglow.com/**mailman/listinfo/open-graphics<http://lists.duskglow.com/mailman/listinfo/open-graphics>
List service provided by Duskglow Consulting, LLC (www.duskglow.com)
--
Timothy Normand Miller, PhD
Assistant Professor of Computer Science, Binghamton University
http://www.cs.binghamton.edu/~millerti/<http://www.cse.ohio-state.edu/~millerti>
Open Graphics Project
_______________________________________________
Open-graphics mailing list
Open-graphics at duskglow.com
http://lists.duskglow.com/mailman/listinfo/open-graphics
List service provided by Duskglow Consulting, LLC (www.duskglow.com)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.duskglow.com/pipermail/open-graphics/attachments/20130104/7937c926/attachment-0001.html>
whygee
2013-01-04 20:31:19 UTC
Permalink
Post by gary sheppard
Drop the nice folks at CERN a line and ask them for a bit of advice.
They have a CERN open source license that is for hardware and has
been
worked on. Combining the Apache 2.0 with a hardware version of the
GPL
- A.K.A. - CERN will likely allow you to monitize as you desire while
keeping open source goals.
I recently attended the talks of a CERN speaker
about their OpenHardware initiative



I contacted the speaker afterwards who told me
that we should just contact their website and
subscribe to their mailing list where "competent
people" would answer.

YG
Andre Pouliot
2013-01-04 20:39:09 UTC
Permalink
Here my summary of what a licence I think Timothy want :

1 Copyright @ Timothy Normand Miller.
2 Free for academic and public
3 Company your expected to pay to use that stuff
4 For everything else send me an email and ask.

Money gained from company will be use for open hardware project or
open source project depending on what more useful.
John Culp
2013-01-05 06:18:00 UTC
Permalink
Post by Timothy Normand Miller
I specifically grilled them about this and had the director of Technology
Transfer explain to me the boundaries carefully. If I'm not using any of
BU's resources, they don't lay any claim to it. And actually, it's not
really BU; it's the state of New York, since this is a state institution.
Basically, if I'm doing this from home, using my own equipment, it's the
same as if I did outside consulting under the same terms. I DO need to
disclose potential conflicts of interest, and I have to keep some kind of
paper trail that shows that my contributions were published not using BU
resources. That's one of the reasons I want to post code to the list using
my gmail account.
You have a pretty generous IP agreement (good for you).
Post by Timothy Normand Miller
Post by John Culp
Why don't you spend ~$1k and run your employment contracts by a lawyer
specializing in such things (work for hire). I have been told that New
York law is in general pretty funny compared to the other states; I don't
know how that might effect you.
Do you know how much I make? Let's just say that I took a big pay cut when
coming to BU, so this isn't an expense I can make right now.
Guess ~100k. Even if I were 40% off (not happening) I'm pretty sure you
could do that without having to eat beans for 6 months.
Post by Timothy Normand Miller
SHOULD I let NYS own this?
Short answer: yes

I think you should do what is best for your career. Neglecting what has
already been created, what you create going forward (apparently) is
_your_ ip and nobody has any title over that unless you choose to
utilize the university resources. Looking over Binghamton's website
leads me to believe that they are trying to build up research programs.
I don't know what opportunities exist or CAN exist if you develop that
IP under the umbrella of the university. Ga Tech has enormous resources
for commercializing ideas in a variety of ways; you should have some of
the same there. If you can pick up the phone and talk to a patent lawyer
paid by the university _that really means something_. Yeah you say the
state takes 60%, but look at the risks they take, and look at the risks
that you no longer personally take.

What kind of asset do you want to be to your new university home? Do
you want to help them build a program as part of a long lasting
institution, or are you just passing through? I'd bet that the choices
you make now will be remembered when you come up for tenure.
Post by Timothy Normand Miller
I could probably license this under BSD or MIT, and no one in NYS would
raise an eyebrow. It it would prevent _us_ from getting any revenue;
meanwhile, Apple could plop it into the iPhone 12 and make billions. I
don't like that. I'm doing this for research purposes so that academics
can have an easier time developing new GPU-related techologies, not so that
some money-grubbing corporation can just lift our IP.
#1 What you create going forward is going to be basically all yours;
certainly given your copyright assignment. Perhaps you want the
publicity of a/the 'project' which good for the school and you. I
certainly don't have any problem with that. I cannot fathom any random
mailing list dude having any serious form of title or say in the usage
of any funding that you get from what you will develop. You can maintain
your stated academic goals by releasing in GPL with the copyright owned
by the university.

#2 Just how many people on the mailing list are going to labor to
develop then assign copyright of contributed code to you personally?
Certainly not I, though I wish you no ill will. I don't care anything
about revenue. I read and post to the list as I suspect most others do
for general interest. As an aside, I am going to finish my tvc sort of
as I described it some months ago (under the public domain) purely for
that same general interest.

#3 Just what sort of revenue stream are you expecting (don't answer)? I
punch 3d graphics core into google and I get dozens of hits. The
Intels, googles and apples of the world have zero trouble getting
anything they need. Is selling a single license to somebody as an
individual worth not building a stronger relationship where you are?

#4 Are you sure that the GPU as classically imagined and discussed on
this list is interesting to CS research folks; in other words have
people moved on? Are you so sure that grossly brute force (but easy to
use) solutions like the Xeon phi are not going to 'win'? I'll allow
that in the deep embedded world probably not.

Basically I'm arguing that _if_ you keep it totally internal with an
external GPL license, you loose little to no proficient collaborators,
you gain the ability to build your relationship with your university,
you gain access to the assets that the university can provide, you take
fewer personal risks, and you maintain your stated academic goals. If
you then license the design to some random outfit the hardware is
already conveniently documented to open software standards and there may
be a bit of community developed (L)GPL software floating around that can
talk to it. Certainly keep the mailing list going as a discussion place
and for community access. Heck if other people on the mailing list want
to scratch an itch and develop hardware that integrates with something
you have designed, they can, under the GPL.

Kinda mini rant:

This is _way_ outside of my field, but as I stare into my crystal ball,
all of this foss graphics driver bs is going to go away over the next
5-10 years regardless of what you choose to do. I think that amd,
intel, and nvidia are all moving to have their parallel processing
elements able to work in the same address space as your program.
Basically you will make a function call in your own address space,
protected by the mmu and you access all the power of the 'gpu' elements
for general computing (that use their own local fast memory, but mapped
into your address space). I believe this means that programming of the
elements is going to be completely documented. For intel, that job is
'easy' for the Xeon phi. After that point, composing a display is just
blending memory buffers together, exactly what the wayland people are
talking about. Mesa would turn back into what it was originally, a
software rendering library -> I think that mesa + LLVM are effectively
the first steps in that direction.

Yeah, I realize that some custom or optimized bit of hardware may be
able to to it x% faster with y% less power, but hey vhs beat betamax and
odds are we are mostly looking at x86 machines.

-John
--
John R. Culp
john.culp at me.gatech.edu
Timothy Normand Miller
2013-01-06 18:52:29 UTC
Permalink
Post by John Culp
Post by Timothy Normand Miller
SHOULD I let NYS own this?
Short answer: yes
I think you should do what is best for your career. Neglecting what has
already been created, what you create going forward (apparently) is _your_
ip and nobody has any title over that unless you choose to utilize the
university resources. Looking over Binghamton's website leads me to
believe that they are trying to build up research programs. I don't know
what opportunities exist or CAN exist if you develop that IP under the
umbrella of the university. Ga Tech has enormous resources for
commercializing ideas in a variety of ways; you should have some of the
same there. If you can pick up the phone and talk to a patent lawyer paid
by the university _that really means something_. Yeah you say the state
takes 60%, but look at the risks they take, and look at the risks that you
no longer personally take.
What kind of asset do you want to be to your new university home? Do you
want to help them build a program as part of a long lasting institution, or
are you just passing through? I'd bet that the choices you make now will
be remembered when you come up for tenure.
I'm really starting to lean in this direction. Using BU resources and
students will put more work into this directly under my leadership (as
opposed to herding cats).

My original concern was that past contributors would complain and future
contributors would dry up if they knew that 60% of the money would get
sucked away. But 60% of what? This is all speculation.

And the fact is, this is all entirely new IP. Maybe bits and pieces of
older stuff will get pulled in, but I do own the rights to do that, and BU
and NYS will know what the boundaries are (they'll get a copy of all the
old stuff), in case they even matter. If NYS does take 60%, people will
really have very little room to complain, given that I'm going to declare
right now that handing it over to BU is an option I will always consider to
be open to me.
Post by John Culp
I could probably license this under BSD or MIT, and no one in NYS would
Post by Timothy Normand Miller
raise an eyebrow. It it would prevent _us_ from getting any revenue;
meanwhile, Apple could plop it into the iPhone 12 and make billions. I
don't like that. I'm doing this for research purposes so that academics
can have an easier time developing new GPU-related techologies, not so that
some money-grubbing corporation can just lift our IP.
#1 What you create going forward is going to be basically all yours;
certainly given your copyright assignment. Perhaps you want the publicity
of a/the 'project' which good for the school and you. I certainly don't
have any problem with that. I cannot fathom any random mailing list dude
having any serious form of title or say in the usage of any funding that
you get from what you will develop. You can maintain your stated academic
goals by releasing in GPL with the copyright owned by the university.
#2 Just how many people on the mailing list are going to labor to develop
then assign copyright of contributed code to you personally? Certainly not
I, though I wish you no ill will. I don't care anything about revenue. I
read and post to the list as I suspect most others do for general interest.
As an aside, I am going to finish my tvc sort of as I described it some
months ago (under the public domain) purely for that same general interest.
#3 Just what sort of revenue stream are you expecting (don't answer)? I
punch 3d graphics core into google and I get dozens of hits. The Intels,
googles and apples of the world have zero trouble getting anything they
need. Is selling a single license to somebody as an individual worth not
building a stronger relationship where you are?
Yeah. I have to consider just how much FOSS contribution I'm going to get.
The simulator is WAY more accessible, and this IP issue doesn't even apply
there. Most people will look at the Verilog code out of vague but distant
interest but have no ability to contribute. I'll get way more help from my
students, and if THEY contribute, I have no choice but to let SUNY own it.
Post by John Culp
#4 Are you sure that the GPU as classically imagined and discussed on this
list is interesting to CS research folks; in other words have people moved
on? Are you so sure that grossly brute force (but easy to use) solutions
like the Xeon phi are not going to 'win'? I'll allow that in the deep
embedded world probably not.
Good point.
Post by John Culp
Basically I'm arguing that _if_ you keep it totally internal with an
external GPL license, you loose little to no proficient collaborators, you
gain the ability to build your relationship with your university, you gain
access to the assets that the university can provide, you take fewer
personal risks, and you maintain your stated academic goals. If you then
license the design to some random outfit the hardware is already
conveniently documented to open software standards and there may be a bit
of community developed (L)GPL software floating around that can talk to it.
Certainly keep the mailing list going as a discussion place and for
community access. Heck if other people on the mailing list want to scratch
an itch and develop hardware that integrates with something you have
designed, they can, under the GPL.
The first goal is the simulator anyway, and that's pure GPL. And
basically, I agree with everything you said. I'll let others comment on
this before I leap to a decision that I can't undo. Just in case we
haven't thought of something important.

BTW, you're mirroring what my wife already suggested. (And she is a
lawyer.)
Post by John Culp
This is _way_ outside of my field, but as I stare into my crystal ball,
all of this foss graphics driver bs is going to go away over the next 5-10
years regardless of what you choose to do. I think that amd, intel, and
nvidia are all moving to have their parallel processing elements able to
work in the same address space as your program. Basically you will make a
function call in your own address space, protected by the mmu and you
access all the power of the 'gpu' elements for general computing (that use
their own local fast memory, but mapped into your address space). I
believe this means that programming of the elements is going to be
completely documented. For intel, that job is 'easy' for the Xeon phi.
After that point, composing a display is just blending memory buffers
together, exactly what the wayland people are talking about. Mesa would
turn back into what it was originally, a software rendering library -> I
think that mesa + LLVM are effectively the first steps in that direction.
Yeah, I realize that some custom or optimized bit of hardware may be able
to to it x% faster with y% less power, but hey vhs beat betamax and odds
are we are mostly looking at x86 machines.
So basically, the GPU is a moving target anyway. We should focus on
meeting current scientific needs, publish lots of results, and then use our
clout from this to get more funding to chase whatever the GPU evolves into
next. Eh?
Post by John Culp
-John
--
John R. Culp
john.culp at me.gatech.edu
______________________________**_________________
Open-graphics mailing list
Open-graphics at duskglow.com
http://lists.duskglow.com/**mailman/listinfo/open-graphics<http://lists.duskglow.com/mailman/listinfo/open-graphics>
List service provided by Duskglow Consulting, LLC (www.duskglow.com)
--
Timothy Normand Miller, PhD
Assistant Professor of Computer Science, Binghamton University
http://www.cs.binghamton.edu/~millerti/<http://www.cse.ohio-state.edu/~millerti>
Open Graphics Project
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.duskglow.com/pipermail/open-graphics/attachments/20130106/2b24f98b/attachment.html>
John Culp
2013-01-07 13:36:44 UTC
Permalink
Post by Timothy Normand Miller
So basically, the GPU is a moving target anyway. We should focus on
meeting current scientific needs, publish lots of results, and then use our
clout from this to get more funding to chase whatever the GPU evolves into
next. Eh?
I read that briefly wondering wth did 'we' mean (ain't English great).
But yes. I don't know if it would help to emphasize "heterogeneous
computing" over "GPU" for your next developments if the GPU is truly
going to be subsumed by the CPU. Who knows what funding and budgets
will be over the next several years, and it would be horrid to be
thought of as a one trick pony. But like I've said, it is not my field.

-John
--
John R. Culp
john.culp at me.gatech.edu
Timothy Normand Miller
2013-01-07 21:32:07 UTC
Permalink
Post by Timothy Normand Miller
So basically, the GPU is a moving target anyway. We should focus on
meeting current scientific needs, publish lots of results, and then use our
clout from this to get more funding to chase whatever the GPU evolves into
next. Eh?
I read that briefly wondering wth did 'we' mean (ain't English great). But
yes. I don't know if it would help to emphasize "heterogeneous computing"
over "GPU" for your next developments if the GPU is truly going to be
subsumed by the CPU. Who knows what funding and budgets will be over the
next several years, and it would be horrid to be thought of as a one trick
pony. But like I've said, it is not my field.
"We" could mean lots of different groups.

The CPU evolved for single-thread performance, while the GPU evolved from
an embarrassingly parallel problem. Over time, they've been taking on each
other's features, like more general purpose instructions in the GPU, vector
instructions in the CPU, and multi-core CPUs that compromise a bit on
single-thread performance to squeeze more cores onto a chip. Larrabee /
Knights Bridge / Xeon Phi is an interesting example or something trying to
land in the middle. It's still an OoO processor, but it has 512-bit vector
instructions and has 62 cores running at 1GHz.

The pressures that drove CPUs and GPUs where they are are not going away.
We haven't completely nicked the multithreaded programming problem, so
we're not going to see the GPU take over the role of the main CPU any time
soon. Niagara is even more GPU-like, but it still has to get pretty good
single-thread performance. Despite GPGPU, I'm not sure it's sensible to
try too hard to converge these two technologies too much, because it would
just make it mediocre at both. And as I say, those two different problem
spaces aren't going away. There's not a lot of point in making the two run
the same ISA (why not start fresh with GPUs?), but standardizing the native
GPU ISA, like has been done with x86 and ARM, may be sensible. For a long
time, GPUs have been a peripheral, allowing vendors to hide ISA changes
behind a driver, but that may be forced to change eventually. nVidia has
managed to hold that off for a while using PTX, however, and LLVM manages
to be a great portable intermediate representation for both CPUs and GPUs.

"Heterogeneous computing" is a hot buzzword right now, so I'd be smart to
leverage it. :)

I also think that people are getting more FPGA-savvy, which is a whole
other way to solve computational problems.
--
Timothy Normand Miller, PhD
Assistant Professor of Computer Science, Binghamton University
http://www.cs.binghamton.edu/~millerti/<http://www.cse.ohio-state.edu/~millerti>
Open Graphics Project
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.duskglow.com/pipermail/open-graphics/attachments/20130107/abb3076d/attachment.html>
Loading...