GPIO across Linux and Zephyr kernels
summary
Oniro’s door‑lock C code runs on Cortex‑M Zephyr and aims to run unchanged on Cortex‑A Linux by providing a compatibility layer that maps Zephyr GPIO calls to Linux GPIOs and libgpiod variants; the talk shows a working prototype approach that handles the four different Linux GPIO APIs by doing a dt_alias-as-string lookup to resolve device and pin, and notes missing POSIX mappings for timers/sleep. Prototype lives locally now, promised to be pushed soon to the Dollop blueprint repo so the Zephyr-to-Linux GPIO wrapper can be tested.
AI-written summary · about
chapters (11)
- 0:00Start
- 0:54What is Oniro and the Door Lock blueprint?
- 1:43Initial setup
- 2:02Setting a pin
- 2:36Driving the lock
- 2:54Changing the pin
- 3:53The Problem...
- 4:52Maximizing code reuse
- 7:13Zephyr style GPIO on Linux-first thought
- 7:46Zephyr style GPIO on Linux - another idea
- 9:33Where to find it
related talks
44mLinux and Zephyr “Talking” to Each Other in the Same SoC
39mLinux+Zephyr: IoT Made Easy
34mZephyr and OpenAMP
51mGPIO for Engineers and Makers
47mLinux and Zephyr, sitting in a tree (literally!)
19mPinctrl and GPIO - Interactions and Footguns
37mImplement Safety with a RTOS Running as a Linux Companion Within...
48mPin Control and GPIO Update
