Enhancing OpenAMP: Making Linux and Zephyr Work Better Together
summary
Real problem: shared memory appears at different physical addresses on application and DSP cores on NXP i.MX platforms, breaking OpenAMP. Implemented address translation in Zephyr via libmetal callbacks and an optional vendor table, added vendor-specific resource tables to declare firmware-ready signaling behavior, and added vendor handling in the IMX remoteproc callback in Linux. Changes land upstream, solve the ATM/ATLP integration issues, and restore reliable RPMsg/remoteproc startup and shared-memory comms without firmware hacks.
AI-written summary · about
chapters (6)
- 0:00Introduction and goals
- 0:53Agenda and context
- 1:29Limitations and case study
- 6:24Enhancements and integration
- 15:00Conclusion and summary
- 16:34Questions and answers
related talks
22mEnhancing OpenAMP: Making Linux and Zephyr Work Better Together
29mIntroduction to OpenAMP
31mOpenAMP Libmetal Shared Memory Cross OS Interface
27mIntroduction to OpenAMP
39mAsymmetric/Heterogeneous MultiProcessing (AMP/HMP): Mainline Linux and Zephyr in Unison
34mZephyr and OpenAMP
20mEnabling the Full Power of a Multiprocessor SoC
44mLinux and Zephyr “Talking” to Each Other in the Same SoC
