Android Accelerated Graphics Enablement

Registered by Zach Pfeffer

Each platform we have contains a core to offload graphics. We need to extend the existing support, bring up support for chips that haven't had accelerated graphics and plan for the future.

Blueprint information

Status:
Complete
Approver:
Zach Pfeffer
Priority:
Essential
Drafter:
Zach Pfeffer
Direction:
Approved
Assignee:
Zach Pfeffer
Definition:
Approved
Series goal:
Accepted for 2012q1
Implementation:
Implemented
Milestone target:
milestone icon connect-q1.12
Started by
Zach Pfeffer
Completed by
Zach Pfeffer

Related branches

Sprints

Whiteboard

Meta:
Roadmap id: ANDROID2012-HW-ACCELERATION

Goal:
Create a plan to transition support for Android hardware graphics enablement to the graphics team.

Agenda:
Talk about existing work
Builds:
~linaro-android/vexpress-ics-gcc46-armlt-stable-open
Possible Mali card

~linaro-android/panda-master-gcc44-aosp-stable-blob
SGX binaries from Google

~linaro-android/panda-ics-gcc46-tilt-tracking-blob
SGX binaries from Google

~linaro-android/imx53-ics-gcc46-freescalelt-stable-open
Adreno (AMD/ATI Z160 and Z180)

~linaro-android/panda-ics-gcc44-aosp-stable-blob
SGX binaries from Google

~linaro-android/snowball-ics-gcc46-igloo-stable-blob
Mali 400

~linaro-android/panda-ics-gcc46-omapzoom-stable-blob
SGX binaries from Google

~linaro-android/panda-ics-gcc46-tilt-stable-blob
SGX binaries from Google (broken)

~linaro-android/panda-ics-gcc46-kwg-upstream-open
None

~linaro-android/origen-ics-gcc46-samsunglt-stable-blob
Mali 400-MP

Talk about binary blob integration
Standard binary interfaces
Create a plan for the graphics team to have a bigger role in this work

--------------------------------------------------------------------------------------------------------------------------------------

Meeting Minutes:

Zach >> History of Graphics enablement on Linaro supported platforms. Streamlining binary blobs.
Jesse >> All boards enabled but iMX53. Drivers available in past but current support of iMX53 is broken.
FSL >> Drivers for ubuntu and android are same.

Zach >> Why we need EGL?
Jesse >> EGL is Platform independent.
EGL takes care of:
Renderer Context and Configuration
Targeted Surface

Zach >> Why we need different stacks
Jesse >> Different graphics stacks per ARCH
EGL is abstraction layer
Native stack is common
Platform specific EGLs

Jesse >> Learning from Mesa/DRI experience
Direct Rendering
History: no common solution. targeted for particular ARCHs
DRI: Lock down enough resources for applications to interact with GPU without much hassles.
Mesa: Public s/w implementation of OpenGL
In quick time included h/w support
Android: Things no different here

Zach >> Lets make life easier
Jesse >> LTs don't have access to OpenGL libraries.

Zach >> open sourcing MALi drivers?
Jesse >> Ideally Yes but No for obvious reasons.

Action Items:
Jesse >> Standardise Android HALs (gralloc?) across all the boards.
Zach >> Document history
Roadmap for Graphics enablement
What is broken and why?

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.