BT200 / tic55x support: working with keyboard, lcd, and several test programs
[firmerware] / src / driver / tic55x / LICENSE-WARNING.TXT
1 LICENCE COMPATIBILITY WARNING FOR TIC55x
2 ========================================
3
4 Contents:
5
6 * Introduction to the license conflict
7 * Diverting the problem
8 * Why we release under GPL
9 * A request to Texas Instruments
10
11
12 Introduction to the license conflict
13 ------------------------------------
14
15 Before starting a project in which you use the 0cpm firmerware
16 on TI's C55x architecture, please understand that there is a
17 licensing conflict between TI's compiler licenses and the GPLv3
18 under which this software resides.
19
20 The GPL enforces distribution of source code as well as a complete
21 toolchain with which to build binaries; the TI license on the other
22 hand, forbids distribution of their tool chain alongside source code.
23 Solutions exist, but need extra attention in an early phase of
24 your project.
25
26
27 Diverting the problem
28 ---------------------
29
30 It is difficult, but not impossible to avoid getting into trouble
31 with either or both licenses.  We first summerise them, and than
32 detail the options further down.
33
34 1. Do not release your modified code to anyone
35 2. Use unaltered binaries from the 0cpm project
36 3. Get your changes accepted in the 0cpm project
37 4. Get the 0cpm crew to port to your device
38 5. Use another chip family
39
40 We are not really happy about placing ourselves as central as the
41 following options do; but the fact is that we are the only party
42 who is not strictly held to the GPL (being the original authors)
43 so we can sometimes provide a pragmatic way around the GPL -- which
44 we are willing to do, inasfar as the openness of the firmware does
45 not suffer from it.
46
47
48 >>> ad 1. Do not release
49
50         As an end user, you have total freedom to modify the
51         code that runs on your phone.  We apologise for the
52         inconvenience of having to download the toolchain from
53         TI's website instead of finding it alongside the
54         0cpm firmerware.
55         As soon as you start start passing around (for instance,
56         selling) your modified code the GPL applies; you are
57         then in violation of either the GPL or the TI license
58         unless you follow any of the following strategies.
59         We are really sorry for the inconvenience, and will
60         work with TI in an attempt to resolve it.
61
62 >>> ad 2. Unaltered binaries
63
64         You could make the choice to use unaltered binaries
65         that you can download from our website.  This could
66         imply that you would have to clone a hardware
67         platform.  Please inform yourself of the possible
68         copyright infringements that you are risking before
69         you do this.  We reverse engineered phones, which is
70         not an offense as we are not copying them, but you
71         might run into problems if you did.  Read (ad 2) for
72         a way out.
73
74 >>> ad 3. Submit changes
75
76         We will be happy to take contributions to the 0cpm
77         firmwerware, as longs as they always lead to building
78         code, without ever crossing the separation between top
79         and bottom.  To enforce this, patches to top and bottom
80         must be submitted separately, and each should build
81         independently.  As soon as your patches have been
82         processed, you would be able to acquire unaltered
83         binaries and proceed as under (ad 1) but probably
84         without the copyright infringement risk.  If you
85         submit a good patch right away, you should not
86         expect us to charge you for it, but we may need a
87         few weeks before we can deliver your binary.
88
89 >>> ad 4. 0cpm ports to your hardware
90
91         We will be happy to consider your request to port to
92         any device that you designed.  Please understand that
93         this is not a free service; we are trying to be as
94         flexible as possible but we will need to reserve the
95         time to dedicate to your product.
96
97 >>> ad 5. Other chips
98
99         Your last bet could be to select another target platform
100         than the TIC55x; specifically, one with a milder license
101         for the toolchain.  The easiest would be a target platform
102         that is already supported by an open source toolchain such
103         as gcc or llvm.
104
105 (And yes, there is a fifth option that would be quite unpractical...
106 you could produce an open source toolchain for the TIC55x platform
107 yourself and use that for your product.)
108
109
110 Why we release under GPL
111 ------------------------
112
113 We have made a deliberate choice to release our code under GPLv3 and
114 not under a BSD-style license.  When we started this project, the
115 market was full of VoIP phones that ran mediocre firmware.  Given
116 the effort to write such firmware, it is not a surprise that not
117 every whim of any user could be taken into account, but in practice
118 there has been no progress at all in the SIP market, because all
119 parties are waiting for (most) others to take the first step.
120
121 This situation is a direct result of developers in different
122 companies, working independently to build the same kind of software.
123 This uneconomical duplication of work can be resolved by sharing the
124 firmware, but that will only work if the rules for sharing are the
125 same for everyone.  This is why we set forth to create a firmware
126 that could serve as a basis for developers in any company, anywhere.
127
128 We also wanted to avoid the return of the same situation in the
129 future; by choosing the GPLv3, we ensured that future versions of
130 the shared 0cpm firmerware would stay open and free.  Furthermore,
131 the same license ensures absolute freedom for end users to replace,
132 update and modify the firmware.  Effectively, this will mean that
133 not only the manufacturers, but knowledgeable users can join the
134 collaborative effort to finally make SIP do what it has always been
135 supposed to do -- instead of sticking to a bare minimum of simulated
136 analog telephony.
137
138 Please understand that open source licenses are at least as serious as
139 commercial licenses.  Active users who believe in the aforementioned
140 views are known to exercise their rights to obtain source code and
141 access to their devices, as specified in the GPL.  If no settlement is
142 possible out of court, cases are being trialed, at a staggering success
143 rate.  Please do not understand this as a threat to undermine you or
144 your product, but merely to cooperate under clear and fair guidelines
145 of sharing.  The same rules apply to your competitors!  Manufacturers,
146 distributors and resellers who ship products with the 0cpm firmerware
147 or derivatives are all required to act in accordance with GPLv3.
148
149
150 A request to Texas Instruments
151 ------------------------------
152
153 We really enjoyed developing for the TIC55x platform based on the
154 TI toolchain.  We are impressed by the excellent documentation that
155 accompanies both the tools and the target platform, and have great
156 respect for the accomplishments of these DSP chips.
157
158 What we don't quite understand, is that the license accompanying the
159 toolchain forbids the redistribution of the tools alongside source code
160 or code that could be compiled to other platforms than those marketed
161 by TI.  It does not seem very practical to distribute a compiler or
162 assembler without source code to pass through it  ;-)
163
164 We expect that the inability for manufacturers to live up to the GPL
165 without us as an intermediary might put them off, and drive some of
166 them to VoIP solutions by other chip manufacturers.  We do not believe
167 that the mere legality of the toolchain should have such a powerful
168 impact.
169
170 For that reason, we ask TI to consider making an exemption for the
171 0cpm firmerware and its derivatives, by granting permission to
172 redistribute the complete toolchain alongside the source code of
173 the 0cpm firmerware and its derivatives.  We suspect that TI will
174 want to include a clause that no user has the freedom to use the
175 toolchain to target non-TI targets.  Since this is not a limitation
176 to the user's ability to exercise the freedom brought to the
177 0cpm firmerware by the GPL, we do not expect this to be challenged.
178
179
180 As soon as TI permits this redistribution of their TIC55x toolkit,
181 we will update or remove this file from the software distribution,
182 and the cautioning note in src/target/Kconfig.platform
183