183 lines
6.9 KiB
Markdown
183 lines
6.9 KiB
Markdown
# Lizenzübersicht – ci-meta-tq
|
||
|
||
**Repository:** [tq-systems/ci-meta-tq](https://github.com/tq-systems/ci-meta-tq)
|
||
**Tag:** `scarthgap.TQ.ARM.BSP.0006`
|
||
**Commit:** `067e145`
|
||
**Datum:** 2026-03-27
|
||
**Zweck:** Softwarefreigabeantrag – Lizenzanalyse des BSP-Build-Systems
|
||
|
||
---
|
||
|
||
## 1. Übersicht
|
||
|
||
Das Repository `ci-meta-tq` ist ein Yocto/OpenEmbedded Build-System-Integrator von TQ-Systems.
|
||
Es enthält:
|
||
|
||
- **CI-Skripte** (Shell, Python) unter MIT/GPL-2.0
|
||
- **Build-Konfigurationen** (JSON, Shell) unter MIT
|
||
- **Dokumentation** unter CC-BY-4.0
|
||
- **8 Submodule** (Yocto-Layer) mit jeweils eigener Lizenzierung
|
||
|
||
Das Repository selbst enthält **keinen** Quellcode für Endprodukt-Pakete – es orchestriert
|
||
lediglich den Build-Prozess und verweist via Submodule auf die eigentlichen Layer.
|
||
|
||
---
|
||
|
||
## 2. Lizenzen des ci-meta-tq Repositorys (Top-Level)
|
||
|
||
| Komponente | Lizenz | Anmerkung |
|
||
|------------|--------|-----------|
|
||
| Metadaten, Rezepte, Konfiguration | MIT | Standard für OE/Yocto-Metadaten |
|
||
| CI-Skripte (`ci/`) | MIT | Sofern nicht anders angegeben |
|
||
| Dokumentation | CC-BY-4.0 | Creative Commons Attribution 4.0 |
|
||
| Sonstige Dateien (Default) | GPL-2.0-only | Fallback laut LICENSE.md |
|
||
|
||
**Lizenzdateien im Repo:**
|
||
- `COPYING.MIT`
|
||
- `COPYING.GPL-2`
|
||
- `COPYING.CC-BY-4.0`
|
||
- `LICENSE.md`
|
||
|
||
---
|
||
|
||
## 3. Submodule – Lizenzübersicht
|
||
|
||
Alle Submodule sind auf dem Tag `scarthgap.TQ.ARM.BSP.0006` gepinnt.
|
||
|
||
| # | Submodul | Commit | Metadaten-Lizenz | Quellcode/Rezepte | Upstream |
|
||
|---|----------|--------|------------------|--------------------|----------|
|
||
| 1 | `poky` | `6f7e929` | MIT | MIT + GPL-2.0-only | git.yoctoproject.org |
|
||
| 2 | `meta-tq` | `a0766ee` | MIT | MIT (Default: GPL-2.0) | github.com/tq-systems |
|
||
| 3 | `meta-openembedded` | `e8fd97d` | MIT | MIT | github.com/openembedded |
|
||
| 4 | `meta-freescale` | `4ea1005` | MIT | Gemischt (siehe §4) | git.yoctoproject.org |
|
||
| 5 | `meta-arm` | `8e0f8af` | MIT | MIT | git.yoctoproject.org |
|
||
| 6 | `meta-ti` | `8c258e7` | MIT | MIT | git.yoctoproject.org |
|
||
| 7 | `meta-qt6` | `c58fdf7` | MIT | MIT (Qt: Dual-Lizenz) | code.qt.io |
|
||
| 8 | `meta-rauc` | `a0f4a8b` | MIT | MIT | github.com/rauc |
|
||
|
||
### Erläuterung
|
||
|
||
Alle Yocto/OE-Layer verwenden **MIT** für ihre Metadaten (Rezepte, bbappend, bbclass, Konfiguration).
|
||
Die eigentlichen Software-Pakete, die durch die Rezepte gebaut werden, haben jeweils eigene Lizenzen –
|
||
diese sind in der bestehenden Lizenztabelle (`UT-license-table.csv`) für 264 Pakete erfasst.
|
||
|
||
---
|
||
|
||
## 4. meta-freescale – Detaillierte Lizenzaufstellung
|
||
|
||
Der NXP/Freescale-Layer ist der einzige mit signifikantem Anteil proprietärer Komponenten:
|
||
|
||
### 4.1 Lizenzverteilung der Rezepte
|
||
|
||
| Lizenz | Anzahl Rezepte | Kategorie |
|
||
|--------|---------------|-----------|
|
||
| MIT | 12 | Permissiv ✅ |
|
||
| BSD-3-Clause | 15 | Permissiv ✅ |
|
||
| BSD-2-Clause | 2 | Permissiv ✅ |
|
||
| Apache-2.0 | 5 | Permissiv ✅ |
|
||
| GPL-2.0-only | 18 | Copyleft ⚠️ |
|
||
| GPL-2.0-or-later | 6 | Copyleft ⚠️ |
|
||
| LGPL-2.0-or-later | 1 | Schwach Copyleft |
|
||
| LGPL-2.1-only | 5 | Schwach Copyleft |
|
||
| LGPL-2.1-or-later | 5 | Schwach Copyleft |
|
||
| **Proprietary** | **18** | **Prüfung erforderlich** ❌ |
|
||
| NXP-Binary-EULA | 7 | **Prüfung erforderlich** ❌ |
|
||
|
||
### 4.2 Proprietäre Komponenten (NXP)
|
||
|
||
| Paket | Lizenz | Beschreibung |
|
||
|-------|--------|-------------|
|
||
| firmware-imx | Proprietary | NXP i.MX Firmware-Blobs |
|
||
| firmware-nxp-wifi | Proprietary | NXP WiFi-Firmware |
|
||
| firmware-ele-imx | Proprietary | EdgeLock Enclave Firmware |
|
||
| firmware-upower | Proprietary | uPower Firmware |
|
||
| imx-sc-firmware | Proprietary | System Controller Firmware |
|
||
| imx-seco / imx-seco-libs | Proprietary | Secure Enclave |
|
||
| imx-gpu-viv | Proprietary | Vivante GPU-Treiber |
|
||
| imx-gpu-g2d | Proprietary | 2D-GPU-Beschleuniger |
|
||
| imx-dpu-g2d | Proprietary | DPU 2D-Beschleuniger |
|
||
| imx-pxp-g2d | Proprietary | PXP 2D-Beschleuniger |
|
||
| imx-vpu-hantro | Proprietary | Hantro VPU-Decoder |
|
||
| imx-vpu-hantro-vc | Proprietary | Hantro VC8000E Encoder |
|
||
| imx-vpu | Proprietary | VPU-Bibliothek |
|
||
| imx-codec | Proprietary | Audio/Video-Codecs |
|
||
| imx-parser | Proprietary | Media-Parser |
|
||
| imx-dsp / imx-dsp-codec-ext | Proprietary | DSP-Firmware |
|
||
| imx-opencl-converter | Proprietary | OpenCL-Konverter |
|
||
| mali-imx | Proprietary | ARM Mali GPU-Treiber |
|
||
| basler-camera / isp-imx | Proprietary | ISP/Kamera |
|
||
| dp-firmware-cadence | Proprietary | DisplayPort-Firmware |
|
||
| imx-mcore-demos | Proprietary | M-Core Demos |
|
||
|
||
### 4.3 NXP Binary EULA Komponenten
|
||
|
||
| Paket | Beschreibung |
|
||
|-------|-------------|
|
||
| ddr-phy | DDR PHY Training Firmware |
|
||
| inphi | Inphi PHY Firmware |
|
||
| ls2-phy | LayerScape PHY Firmware |
|
||
| ppfe-firmware | Packet Processing Firmware |
|
||
| qe-ucode | QUICC Engine Microcode |
|
||
| fm-ucode | Frame Manager Microcode |
|
||
| management-complex | DPAA2 Management Complex |
|
||
| uefi | UEFI Firmware |
|
||
|
||
> **Hinweis für UT-Projekt:** Die meisten proprietären NXP-Pakete (GPU, VPU, Multimedia, etc.)
|
||
> sind **NICHT** im spaetzle/musl-Build enthalten! Nur `firmware-imx` und `firmware-nxp-wifi`
|
||
> sind relevant (bereits in der UT-Lizenztabelle erfasst).
|
||
|
||
---
|
||
|
||
## 5. meta-qt6 – Besonderheit Dual-Lizenz
|
||
|
||
| Aspekt | Details |
|
||
|--------|---------|
|
||
| Layer-Metadaten | MIT |
|
||
| Qt6-Framework | Dual-Lizenz: LGPL-3.0 / GPL-2.0 / GPL-3.0 (Open Source) ODER Kommerziell |
|
||
| Steuerung | Variable `QT_EDITION` in Yocto |
|
||
| Kommerzielle Module | Einige Qt-Module nur unter kommerzieller Lizenz |
|
||
|
||
> **Hinweis für UT-Projekt:** Qt6 ist im spaetzle/musl-Build **nicht enthalten**.
|
||
> Nur relevant bei Wechsel auf dumpling-wayland (glibc).
|
||
|
||
---
|
||
|
||
## 6. Zusammenfassung für den Softwarefreigabeantrag
|
||
|
||
### 6.1 ci-meta-tq als Ganzes
|
||
|
||
| Eigenschaft | Wert |
|
||
|-------------|------|
|
||
| Hauptlizenz | MIT |
|
||
| Dokumentation | CC-BY-4.0 |
|
||
| Proprietäre Bestandteile im Repo selbst | Keine |
|
||
| Enthält ausführbaren Code | Nein (nur Build-Metadaten) |
|
||
| Submodule mit proprietären Rezepten | meta-freescale (NXP) |
|
||
| Redistribution erlaubt | Ja (MIT) |
|
||
| Source-Code-Pflicht | Nein (MIT hat keine Copyleft-Pflicht) |
|
||
|
||
### 6.2 Lizenzklassen im Gesamtsystem
|
||
|
||
| Kategorie | Lizenzen | Auswirkung |
|
||
|-----------|----------|------------|
|
||
| **Permissiv** | MIT, BSD-2/3-Clause, Apache-2.0 | Keine Einschränkung |
|
||
| **Schwach Copyleft** | LGPL-2.0/2.1 | Bibliotheksquellcode bereitstellen |
|
||
| **Copyleft** | GPL-2.0 | Quellcode bereitstellen |
|
||
| **Starkes Copyleft** | GPL-3.0 | Anti-Tivoization-Klausel prüfen! |
|
||
| **Proprietär** | NXP Proprietary, NXP-Binary-EULA | NXP-Lizenzvereinbarung erforderlich |
|
||
| **Dokumentation** | CC-BY-4.0 | Attribution erforderlich |
|
||
|
||
### 6.3 Handlungsbedarf
|
||
|
||
- [x] ci-meta-tq Top-Level-Lizenzen dokumentiert
|
||
- [x] Alle 8 Submodule mit Lizenz erfasst
|
||
- [x] Proprietäre NXP-Komponenten identifiziert
|
||
- [ ] NXP SLA (Software License Agreement) für Deployment prüfen
|
||
- [ ] GPL-3.0 Anti-Tivoization für Embedded-Deployment bewerten lassen
|
||
- [ ] Qt6-Lizenzierung klären (falls dumpling-wayland geplant)
|
||
|
||
---
|
||
|
||
**Autor:** Siggi ⚙️
|
||
**Dokument-ID:** LIC-CI-META-TQ-001
|