Commit Graph

6 Commits

Author SHA1 Message Date
Naseer Ahmed
6bbd0a14a5 display: Support for S3D video
1. Add support to set HDMI to 3D mode
2. Add binder API to force 3D mode
3. Switch to 3D mode based on metadata
4. Configure pipes appropriately
5. Only side-by-side and top-bottom formats are currently supported

Change-Id: Iae579ecfa45aae088ff543d4143e5025e8c682fa
2015-02-20 16:18:40 -05:00
Tatenda Chipeperekwa
16301190e7 hwc: hdmi: Use res_info sysfs node to get HDMI timing info
This change removes the use of static declarations in the HDMI library
that were used to configure the HDMI class with the best mode.

We now rely on the res_info sysfs node to provide timing information
on request for supported modes. Furthermore, we now dynamically compare
HDMI modes in order of height, width, refresh rate and aspect ratio, when
we want to determine the best configuration.

Note: SurfaceFlinger currently has a limit of 128 modes but HDMI can
potentially provide more that 128 modes. In use cases when HDMI provides
more than 128 modes, the HAL needs to sort and provide the best 128 modes.

Change-Id: If4ed8845fb77024771dde15fe23dfcee515d93d2
2015-01-22 11:28:56 -08:00
Tatenda Chipeperekwa
cbe1dfe7f0 hwc: Fixes for HDMI primary/external use cases
1. Do not process the display list when the display is not connected.

   This is applicable mainly in the HDMI as primary use case since we
   want to activate the display only when the cable is connected.

2. Do not write to HPD when HDMI is primary

   HPD is always enabled when HDMI is primary, and so we rely on the
   connected state (read from sysfs) to determine if the cable is
   connected or not.

3. Initialize the down scale feature switch

   Initialize down scale feature switch when HDMI is connected but
   before we make the call to modify display attributes.

Change-Id: If2a7c8d7af105a9bbd1b6aeef030ac22b51bd3ef
2015-01-15 11:59:12 -08:00
Tatenda Chipeperekwa
319eec11d9 hwc: Add support for frame rate change on HDMI devices
When an HDMI display is connected, we report all the available
configurations to the framework by translating the EDID data.

This information can be queried, and subsequently used to change
the frame rate of the HDMI display.

Note: this change does not provide support for changing the resolution
of the HDMI display.

Change-Id: I4b8b07e2886efe2a01480aed9d82d36075bb342c
2014-10-29 10:39:04 -07:00
Tatenda Chipeperekwa
85dcfe57a6 hwc: hdmi: Add support for new HDMI resolutions
We add support for the following modes

16:10
1920x1200_60Hz
1680x1050_60Hz
1440x900_60Hz
1280x800_60Hz

16:9
1366x768_60Hz
1360x768_60Hz
848x480_60Hz

4:3
1600x1200_60Hz
1400x1050_60Hz
1280x960_60Hz
800x600_60Hz

Change-Id: I43bd12e5e5099a03c834e1c883213b706ed01f89
2014-09-29 16:34:01 -07:00
Tatenda Chipeperekwa
af2c004c44 hwc: Rename libexternal to serve HDMI as primary or external
This change will make is easier to build new functionality
applicable to both HDMI scenarios.

Change-Id: I417184568cb65a49c2ccb4199aff313ae2ee9b24
2014-09-29 15:39:58 -07:00