Identifying and Supporting 'X-compatible' Hardware Blocks
summary
Claim: many undocumented SoC IP blocks are functionally identical to known vendor cores, so existing Linux drivers can be reused. Workflow: compare register layouts, reference manuals and vendor SDKs, grep firmware symbols, and test with live hw to confirm register-offset mapping and DMA/descriptor formats. Implementation techniques: prefer library-backed drivers with regfields and flags and platform callbacks, fall back to custom ops if registers are missing or scrambled. Example: Allwinner HDMI uses address scrambling disabled by a magic register so the standard driver works; reusing drivers avoids months of duplicate work.
AI-written summary · about
chapters (29)
- 0:00Introduction
- 0:41Disclaimer
- 0:54Motivation
- 1:47Agenda
- 2:13Duct Test
- 2:24Compatibility
- 4:20Standard Interfaces
- 5:47Private IP Vendors
- 6:37Lessons
- 7:10Clones
- 7:48Resources
- 8:25Reference Manuals
- 9:13Community
- 10:48Experience
- 12:00Porting
- 12:15Kernel
- 13:03Backside
- 14:57Register Offsets
- 16:22Instantiate Register Fields
- 16:40Missing Registers
- 17:04USB Driver
- 17:22Examples
- 17:32Integrity
- 17:54Dustox
- 23:24Team Makani
- 24:07Stock
- 24:44US Driver
- 27:23HDMI Driver
- 29:38Recap
related talks
27mStandardizing Linux DRM drivers implementations by interfacing DRM Bridge as a single...
10mUpstreaming a linux kernel driver.
42mDisplay Sharing in Heterogeneous Systems Using Linux as High...
50mHotplug of Non-discoverable Hardware: Status and Future Directions
39mStatus of SoC support in the kernel
55mThe Embedded Linux Problem
41mHow to Avoid Writing Device Drivers for Embedded Linux
39mSoftware Defined Hardware on Heterogeneous SoCs Using OpenAMP
