Home | History | Annotate | Download | only in graphics

Lines Matching full:hardware

37 Driver (optional) <li> EGL Driver <li> Gralloc HAL implementation <li> Hardware
58 <code>EGL_ANDROID_framebuffer_target</code> extension is required for Hardware
70 <p>Many hardware overlays do not support rotation, and even if they do it costs
88 <code>hardware/libhardware/modules/gralloc.h</code></p>
93 graphics buffer to be displayed only through a hardware-protected path. These
99 running on unprotected hardware cannot read or write the buffer.
100 Hardware-protected paths must appear on the Hardware Composer overlay. For
101 instance, protected videos will disappear from the display if Hardware Composer
107 <h3 id=hardware_composer_hal>Hardware Composer HAL</h3>
109 <p>The Hardware Composer HAL is used by SurfaceFlinger to composite surfaces to
110 the screen. The Hardware Composer abstracts objects like overlays and 2D
114 <p>We recommend you start using version 1.3 of the Hardware Composer HAL as it
116 external displays, and more). Because the physical display hardware behind the
117 Hardware Composer abstraction layer can vary from device to device, it is
120 <ul> <li> The Hardware Composer should support at least four overlays (status
122 bigger than the screen, so the Hardware Composer should be able to handle
125 supported at the same time. <li> The Hardware Composer should be able to
129 properties </ul> <li> A hardware path for protected video playback must be
132 <p>The general recommendation when implementing your Hardware Composer is to
133 implement a non-operational Hardware Composer first. Once you have the
135 Hardware Composer. For example, just delegate the first three or four surfaces
136 to the overlay hardware of the Hardware Composer.</p>
139 to the overlay hardware that maximizes the load taken off of the GPU. Another
141 composition to OpenGL instead of the Hardware Composer to save power. When the
142 screen updates again, continue to offload composition to the Hardware
147 the mode selected for it by the manufacturer to Hardware Composer. See
170 href="{@docRoot}devices/graphics/architecture.html#hwcomposer">Hardware
174 <p>You can find the HAL for the Hardware Composer and additional documentation
175 in: <code>hardware/libhardware/include/hardware/hwcomposer.h
176 hardware/libhardware/include/hardware/hwcomposer_defs.h</code></p>
179 <code>hardware/libhardware/modules/hwcomposer</code> directory.</p>
186 visual performance of graphics. The Hardware Composer has a function
226 for a particular piece of hardware. It provides guarantees about the order of
227 operations and allows hardware-specific implementations.</p>
232 If you?re not employing a hardware resource, sw_sync should be sufficient.</p>
300 a particular piece of hardware. Drivers that need to be fence-aware are
301 generally anything that accesses or communicates with the Hardware Composer.
309 communicate with the kernel-space. </ul> <li> A Hardware Composer HAL module
424 <h5 id=hardware_composer_integration>Hardware Composer integration</h5>
426 <p>Hardware Composer handles three types of sync fences:</p>
429 HWC::set. It signals when Hardware Composer may read the buffer. <li>
431 HWC::set. It signals when Hardware Composer is done reading the buffer so the
446 hardware VSYNC. On a VSYNC event, the display begins showing frame N while
456 latency by making application and composition signal relative to hardware
476 <p>DispSync maintains a model of the periodic hardware-based VSYNC events of a
478 offsets from the hardware VSYNC events.</p>
482 not offset from hardware VSYNC.</p>
491 VSYNC <li> <em>Feedback</em> - Retire fence signal timestamps from Hardware
527 <p>Android added support for virtual displays to Hardware Composer in version
533 layers and GPU framebuffer are provided to Hardware Composer in set().</p>
536 Hardware Composer writes output to a buffer and provides the completion fence.
546 the output buffer while Hardware Composer does nothing. This is equivalent to
547 virtual display composition with Hardware Composer <1.3. <li> <em>MIXED</em> -
548 GPU composites some layers to framebuffer, and Hardware Composer composites
550 Hardware Composer reads scratch buffer and writes to the output buffer. Buffers
552 layers composited by Hardware Composer. Hardware Composer writes directly to
560 if the consumer is video encoder, and Hardware Composer can write the format
569 <p>Hardware Composer 1.3 virtual displays require that eglSwapBuffers() does
572 buffer. SurfaceFlinger can?t get the output buffer for Hardware Composer in
575 <p>If Hardware Composer always sends all virtual display layers to GPU, all
577 method if you need to support Hardware Composer 1.3 for some other reason but
587 what the hardware is capable of doing. <li> <em>Development</em> - In the