How to Integrate My (Proprietary) Code in Zephyr
summary
Shows exactly how to link a proprietary static library into Zephyr: build the external lib with its own system, package headers alongside a binary blob, and declare it in modules.yml used by West blob. Demonstrates choosing back end via CMake variable versus environment variable, using Cadence HiFi 4 Nature DSP as the case study, and building freestanding apps by set ZEPHYR_BASE & run CMake then Ninja. Includes a proof‑of‑concept out‑of‑tree interrupt driver and the Sound Open Firmware port that successfully runs under Zephyr.
AI-written summary · about
chapters (15)
- 0:00Proprietary code in Zephyr
- 4:44Zephyr license rules
- 6:12Prerequisites for application development
- 9:03External code integration
- 11:14Zephyr application types
- 13:01Demo: proprietary library
- 16:16External module mechanism
- 18:03Binary blobs in Zephyr
- 21:16Freestanding applications
- 22:43Custom West manifest
- 24:11Out-of-tree driver example
- 25:14Toolchain setup
- 26:18SOF integration with Zephyr
- 28:12Summary
- 28:55Q&A
related talks
36mUsing Zephyr with Non-C Languages
39mZephyr Extensions: How to Dynamically Load an Application
31mUsing Zephyr for Embedded Controllers
27mZephyr and Trusted Execution Environments
32mFuzzing Zephyr Apps - Struggles of Dynamic Analysis on Embedded Applications
27mZephyr and Trusted Execution Environments
23mKeynote: Zephyr & IoT Security
32mNext Steps for Software Bill of Materials (SBOM) Generation in Zephyr
