Use Dmabuf to Streamline Sensor Data Handling
summary
Shows a working zero‑copy sensor pipeline built with Linux kernel primitives: buffers allocated from preferred memory via dma_heap and reserved memory, shared across ISP and accelerators with dmabuf attachments, and synchronized with kernel-created dma_fence objects exposed as sync_file descriptors. Devices attach/detach buffers, create fences on DMA completion or error, and interrupt-driven drivers signal fences so userspace only polls sync files — no per-frame copies and no userspace intervention in the fast path.
AI-written summary · about
chapters (19)
- 0:00Introduction
- 0:34Agenda
- 0:57Sensor Data Pipeline Example
- 2:05Dmabuf Overview
- 3:14DNA Buff
- 3:41Dmabuf
- 4:22Dmabuf Example
- 7:25Buffer Exporter
- 9:34Buffer Exporter List
- 14:01Driver API
- 14:32DmaHip
- 14:56CMAHip
- 17:01CMABuff
- 20:58Arrays
- 21:59Pipeline
- 24:12Buffer Allocation
- 25:38Reserved Memory
- 28:49User Notifications
- 31:59Data Pipeline
related talks
33mA Block Stream API for Zephyr
46mSensor Data Acquisition With Linux's IIO Subsystem and Libiio
27mIntroducing a New Zephyr Sensing Subsystem
37mBuilding a Zero-Copy DSP Offload Framework in Linux Using RPM...
38mUh-oh, It's I/O Ordering!
27mStandardizing Linux DRM drivers implementations by interfacing DRM Bridge as a single...
43mLessons Learnt from Reusing QDMA NIC to Base Band PMD
37mIndustrial IO and You- Nonsense Hacks!
