¿Alternativas de código abierto de estilo BSD a CMSIS?

8

Dado que las licencias en CMSIS no está claro Cuando se trata de código abierto, Probablemente sea una violación incluir el CMSIS en un proyecto de código abierto, independientemente de si utiliza una licencia de estilo GPL o BSD.

¿Hay alguna alternativa CMSIS disponible para las MCU basadas en Cortex M que sean compatibles con una licencia BSD o Apache2.0?

¿O alguien sabe si está bien incluir el CMSIS en un proyecto de código abierto?

Gracias

    
pregunta Johan

3 respuestas

4

Muchos de los componentes del software CMSIS ahora se lanzan bajo una licencia BSD.

En el paquete oficial de CMSIS, este es el contenido relevante del "CONTRATO DE LICENCIA DEL USUARIO FINAL DE CMSIS.pdf":

The package also includes the components contained in the following directories:
(a) ./CMSIS/DSP_Lib - DSP Library sources and examples;
(B) ./CMSIS/Include - Header files;
(c) ./CMSIS/Lib - DSP Library build for various toolchains;
(d) ./CMSIS/RTOS - Header file template for CMSIS-RTOS implementation; and
(e) ./Device - Template files and implementations for Cortex-M class processors.

All of the above components are licensed to you under the terms of the BSD licence,
which is incorporated within or alongside the above components.

Estamos utilizando muchos de estos componentes de software CMSIS en código abierto, con licencia Apache, mbed SDK: enlace

    
respondido por el emilmont
6

De la lectura de la actual licencia de CMSIS 2.0 , parece la intención no es impedir que desarrolles tu software como código abierto o de otro tipo, sino más sobre cómo cubrir el problema de ARM. Es decir. quieren asegurarse de no reclamar la propiedad del código en sí o de cualquier IP que pueda haber en él, y también de que se use para desarrollar código que cumpla con CMSIS y no para algún otro propósito.

  
  1. Sujeto a las disposiciones de las Cláusulas 2, 3, 4 y 5, ARM por la presente   Te otorga bajo cualquier intelectual   propiedad que es (a) de propiedad o libre   licenciable por ARM sin pago a   terceros no afiliados y (b)   ya sea encarnado en uno o ambos   Código fuente y especificación, como   aplicable, o necesario (definido en   Cláusula 4 abajo) para copiar o implementar   una interfaz binaria de aplicaciones   conforme a la Especificación, un   perpetua, no exclusiva,   intransferible, libre de regalías,   licencia mundial para:
      (i) uso y copia   la Especificación para los fines de   desarrollando, habiendo desarrollado,   Fabricación, habiendo fabricado,   Ofreciendo vender, vendiendo, suministrando.   o de otra manera distribuyendo productos   que cumplan con la Especificación;   (ii) utilizar, copiar, modificar y   Sublicencia el código fuente (en fuente   o código de objeto) únicamente para el   propósito de desarrollar, tener   desarrollado, fabricando, teniendo   fabricado, ofreciendo vender,   venta, suministro o de otra manera   Distribuyendo productos que cumplan.   con la Especificación, siempre que   Usted conserva todos los avisos de derechos de autor   incluido en el código fuente.

  2.   
  3. El Código fuente y la Especificación son propiedad de ARM o sus licenciantes y   están protegidos por las leyes de derechos de autor y   tratados internacionales de derechos de autor como   así como otra propiedad intelectual   Leyes y tratados. El código fuente y   Las especificaciones se licencian no se venden.   Excepto como específicamente licenciado en   De acuerdo con la Cláusula 1, usted adquiere   sin derecho, titulo o interes en el   Código fuente y especificación o cualquier   propiedad intelectual encarnada   en esto. En ningún caso el   licencias otorgadas de acuerdo con   La cláusula 1 se interpretará como otorgante,   expresamente o por implicacion, estoppel   o de lo contrario, una licencia para usar cualquier ARM.   tecnología, excepto el código fuente y   Especificación. Salvo lo dispuesto en   Cláusula 1, no se le otorga ningún derecho.   para sublicenciar los derechos concedidos a   usted bajo esta Licencia.

  4.   

Dicho esto, si aún no te sientes cómodo con esos términos, puedes tomar la hoja de datos y crear los encabezados. Chicos de microbuilder.eu han hecho exactamente eso y lanzaron su LPC1114 y LPC1343 código base bajo BSD.

    
respondido por el Igor Skochinsky
4

No creo que haya un problema. Los archivos individuales tienen esta declaración:

"* ARM Limited (ARM) suministra este software para usar con Cortex-M  * Procesadores basados en microcontroladores. Este archivo puede ser distribuido libremente.  * dentro de las herramientas de desarrollo que admiten estos procesadores basados en ARM ".

y tampoco veo nada en la licencia que lo excluya.

Hay un directorio gcc en la distribución de CMSIS, lo que implica que se puede suministrar con herramientas de código abierto.

Esta declaración:

(i) usar y copiar la Especificación CMSIS con el fin de desarrollar, desarrollar, fabricar, haber fabricado, ofrecido para vender, vender, suministrar o distribuir productos que cumplan con los requisitos de Especificación CMSIS, siempre que conserve los avisos de derechos de autor que se incluyen con, o en, el CMSIS Especifique y siempre que no utilice el nombre, el logotipo o las marcas comerciales de ARM para comercializar dichos productos;

implica que puedes incorporar CMSIS en tu proyecto de código abierto.

    
respondido por el Leon Heller

Lea otras preguntas en las etiquetas