You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Criterion benchmarks for video pipeline operations (convert, resize,
letterbox) covering 6 resolutions (640x480 through 3840x2160), 3 source
formats (NV12, YUYV, RGBA), and 2 heap types (uncached, cached)
On-demand CI benchmark workflow (bench.yml) on NXP i.MX 8M Plus with
QuickChart.io summary charts and github-action-benchmark trend tracking
on GitHub Pages
Benchmark summary script (.github/scripts/benchmark_summary.py) parsing
Criterion JSON data with fallback to bencher text output
make bench target for running benchmarks
Library scope sections in README.md and crates/g2d-sys/README.md clarifying
user responsibility for cache management and buffer lifecycle
TESTING.md documenting test infrastructure, DMA buffer implementation,
on-target test execution, manual benchmark execution, and CI integration
for both tests and benchmarks
ARCHITECTURE.md documenting ABI compatibility handling
GitHub Actions workflows for CI/CD
SBOM generation and license compliance checking
Changed
Moved to standalone repository (previously part of EdgeFirst HAL)
Changed license from MIT to Apache-2.0 for consistency
Updated to use workspace version inheritance
Added comprehensive documentation
Benchmarks separated from tests into proper [[bench]] criterion targets
with criterion = { version = "0.5", default-features = false }
Reframed DMA-buf cache coherency documentation as standard Linux protocol
rather than platform-specific workaround
DRM PRIME import is now step 1 of the cache coherency protocol in
ARCHITECTURE.md, presented as a required part of correct DMA-buf usage
All tests now use DMA-buf exclusively (no more g2d_alloc test buffers)
Clear tests are now parameterized by heap type (_uncached / _cached)
Release workflow uses OIDC trusted publishing instead of stored token
Removed
Hand-rolled measure() timing helper and bench_* test functions
(superseded by criterion benchmarks)
fill() method — g2d_clear() works directly on DMA-buf buffers with
proper DRM PRIME attachment; the blit-based workaround is no longer needed
G2DAllocBuffer test infrastructure and create_g2d_alloc_surface() helper
"Known Limitations" section from TESTING.md (g2d_clear/DMA-buf limitation
was a cache coherency symptom, not a fundamental limitation)