Android HW composer on KMS for ST-Ericsson platform
Implementation of the HW Composer 1.1 API for Android JB MR1.
It should be based on standard kernel interfaces like DRM/KMS/GEM/dmabuf.
Blueprint information
- Status:
- Started
- Approver:
- Jesse Barker
- Priority:
- High
- Drafter:
- Marcus Lorentzon
- Direction:
- Approved
- Assignee:
- Marcus Lorentzon
- Definition:
- New
- Series goal:
- Accepted for trunk
- Implementation:
- Good progress
- Milestone target:
- wip
- Started by
- Marcus Lorentzon
- Completed by
Related branches
Related bugs
Sprints
Whiteboard
[marcus-lorentzon, 2012-12-04] Added vsync callback support using event worker thread and KMS vblank events. Now Android is up and running on HWC 1.1 over KMS with full fps.
[marcus-lorentzon, 2012-12-03] Added libdrm/libkms to the mix and started pushing buffers to KMS on HWC_set. First output seen on screen with Mali acceleration.
[marcus-lorentzon, 2012-11-28] Integrated with gralloc to retrieve buffer information
[marcus-lorentzon, 2012-11-27] Implemented HWC 1.1 API with as many noops as possible but still enough so that Android would boot using it.
[marcus-lorentzon, 2012-11-26] Created initial HWC sceleton
Work Items
Work items:
Have Android boot with KMS HWC module (all composition with GPU): DONE
Convert from gralloc-
Hook HWC up to KMS and start posting framebuffers: DONE
Use KMS vblank support for HWC vsync: DONE
Use plane: BLOCKED
Use crtc rotation: BLOCKED
Add composition bypass (fullscreen): TODO
Add composition bypass (planes): TODO
Use atomic mode set: BLOCKED
Cache KMS fb in gralloc handle: TODO
Add direct gralloc dmabuf: BLOCKED
Add 2D blitter precomposition: TODO
Dependency tree
* Blueprints in grey have been implemented.