Closed StefanBruens closed 2 years ago
I do not read the licence in that way, but then I am no lawyer...
Both 4. and 5. are violated/in conflict:
- This software or any part thereof, including modifications and/or derivative works of this software, must be used and execute solely and exclusively on or in combination with a microcontroller or microprocessor device manufactured by or for STMicroelectronics.
- No use, reproduction or redistribution of this software partially or totally may be done in any manner that would subject this software to any Open Source Terms. “Open Source Terms” shall mean any open source license which requires as part of distribution of software that the source code of such software is distributed therewith or otherwise made available, or open source license that substantially complies with the Open Source definition specified at www.opensource.org and any other comparable open source license such as for example GNU General Public License (GPL), Eclipse Public License (EPL), Apache Software License, BSD license or MIT license.
I'll add the license info from the USB files to the COPYING file. IMO that should be enough.
is in compliance as the code cannot be used on other processers unless it is a clone or the code is copied to another project for a different processor.
I have not changed the license terms so I cannot see how this comes into play.
There are plenty of STM32 clones. Unless you can guarantee it does not run on any clone (you can't), you are violating the terms.
As soon as the FW is compiled and linked, the complete FW falls under GPL 3.0. Anyone receiving a compiled FW is entitled to receive the complete source code, including the proprietary STM parts. This requirement puts these parts under GPL license conditions.
I think (5.) is absolutely clear STM does not want this, they have made sure there is not a single case left where it can be used in open source software.
The only correct way is to use a USB stack like CherryUSB or TinyUSB.
There are plenty of STM32 clones. Unless you can guarantee it does not run on any clone (you can't), you are violating the terms.
I am not putting the code on a non ST device, the end user may do so. So I am not violating the license by making it available.
I think (5.) is absolutely clear STM does not want this, they have made sure there is not a single case left where it can be used in open source software.
I do not read it like that. I read it as ST does not want the code ported to non ST devices.
The ST USB code has a really crappy license, which makes it incompatible with GPLed software.