X Windows Acceleration
i.MX51 EVK Linux Reference Manual
Freescale Semiconductor
16-3
window and pixmap surfaces. The EGL-X library uses Xlib function calls in its implementation along with
the i.MX driver module’s X extension for querying the GPU address of X pixmaps stored in frame buffer
memory.
16.2.2
i.MX X Driver Details
The i.MX X Driver, referred to as imx-drv, implements the EXA interface of the X server in providing
acceleration. The following list mentions details particular to this implementation:
•
The EXA solid fill operation is accelerated, except for rectangles containing less than 150 pixels
in which case fallback is to software rendering.
•
The EXA copy operation is accelerated, except for rectangles containing less than 150 pixels in
which case fallback is to software rendering.
•
For EXA solid fill and copy operations, only solid plane masks and only
GXcopy
raseter-op
operations are accelerated.
•
EXA composite allows for many options and combinations of source/mask/target for rendering.
Most of the (commonly used) EXA composite operations are accelerated.
The following types of EXA composite operations are accelerated;
— Simple source composite with target
— Simple source-in-mask composite with target
— Constant source composite with target
— Constant source and buffer mask composite with target
— Operations for rectangles containing at least 150 pixels
— Only these blending functions: SOURCE, OVER, IN, IN-REVERSE, OUT-REVERSE, and
ADD (some of these are needed to support component-alpha blending which is accelerate)
In general, the following types of (less commonly used) EXA composite operations are
not
accelerated:
— Transformed sources/maskes
— Sources intended to be repeating patterns
— Masks with repeating patterns
•
All of the memory allocated for
/dev/fb0
is made available to EXA's linear offscreen memory
manager. The portion of this memory beyond the screen memory is available for allocation of X
pixmaps. Once an X pixmap is allocated in the frame buffer memory, it is never migrated back to
system memory. The amount of memory allocated to
/dev/fb0
needs to be larger than the amount
needed for the screen; otherwise, no operations can be accelerated because X pixmaps must be in
frame buffer memory (as a source and target) in order to be accelerated. This amount of memory
needs to be several MB, but that depends on the number of X windows and pixmaps used, possible
usage of X pixmaps as texture, and whether X windows are using the XComposite extension.
•
An X extension is provided so that X clients can query the physical GPU address associated with
an X pixmap, if that X pixmap was allocated in the frame buffer memory.
•
The buffer pitch alignment for the Z430 is 32 bytes while the buffer pitch alignment for the Z160
is 4 bytes. Because X pixmaps can be allocated from the frame buffer memory and these X pixmaps
Summary of Contents for i.MX51 EVK
Page 1: ...Part Number 924 76374 Rev 10 11 01 11 2010 i MX51 EVK Linux Reference Manual...
Page 14: ...i MX51 EVK Linux Reference Manual xiv Freescale Semiconductor...
Page 18: ...i MX51 EVK Linux Reference Manual xviii Freescale Semiconductor...
Page 24: ...i MX51 EVK Linux Reference Manual xxiv Freescale Semiconductor...
Page 38: ...Machine Specific Layer MSL i MX51 EVK Linux Reference Manual 2 8 Freescale Semiconductor...
Page 52: ...MC13892 Digitizer Driver i MX51 EVK Linux Reference Manual 5 4 Freescale Semiconductor...
Page 64: ...TV Encoder TVE Driver i MX51 EVK Linux Reference Manual 10 4 Freescale Semiconductor...
Page 82: ...Video for Linux Two V4L2 Driver i MX51 EVK Linux Reference Manual 12 8 Freescale Semiconductor...
Page 86: ...i MX5 Dual Display i MX51 EVK Linux Reference Manual 13 4 Freescale Semiconductor...
Page 100: ...X Windows Acceleration i MX51 EVK Linux Reference Manual 16 6 Freescale Semiconductor...
Page 118: ...Low Level Keypad Driver i MX51 EVK Linux Reference Manual 20 6 Freescale Semiconductor...
Page 134: ...Security Drivers i MX51 EVK Linux Reference Manual 22 10 Freescale Semiconductor...
Page 148: ...Inter IC I2C Driver i MX51 EVK Linux Reference Manual 24 4 Freescale Semiconductor...
Page 178: ...ARC USB Driver i MX51 EVK Linux Reference Manual 29 10 Freescale Semiconductor...
Page 194: ...OProfile i MX51 EVK Linux Reference Manual 33 6 Freescale Semiconductor...