summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorScottPeterson <speterson@nvidia.com>2011-07-26 14:54:14 -0700
committerVarun Colbert <vcolbert@nvidia.com>2011-08-09 11:29:45 -0700
commit280675491fed3ac771360d7bf5fd889abceea108 (patch)
tree7a9a7f04f7323e82a2850079a799fe2c45f65291
parentcfb5bc1795d0a9bd246d8c86e138426eb74d8aeb (diff)
arm:video:dc Audio EDID improvements
Finer grain determination of audio capabilities for HDMI devices. TO enable audio we have to have basic audio supported in the EDID plus at least one Short Audio Descriptor block. Reviewed-on: http://git-master/r/43304 (cherry picked from commit aaadcb7a4f8501dc71c6185e111fab1427bb7286) Change-Id: I30c818cdc77ccb351f304bd3639f28a5d370f36b Reviewed-on: http://git-master/r/45568 Reviewed-by: Jonathan Mayo <jmayo@nvidia.com> Reviewed-by: Sumit Bhattacharya <sumitb@nvidia.com> Reviewed-by: Scott Peterson <speterson@nvidia.com> Tested-by: Scott Peterson <speterson@nvidia.com>
-rw-r--r--drivers/video/tegra/dc/edid.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/video/tegra/dc/edid.c b/drivers/video/tegra/dc/edid.c
index 215fccc0050f..c2d99917519c 100644
--- a/drivers/video/tegra/dc/edid.c
+++ b/drivers/video/tegra/dc/edid.c
@@ -172,6 +172,7 @@ int tegra_edid_parse_ext_block(u8 *raw, int idx, struct tegra_edid *edid)
u8 code;
int len;
int i;
+ bool basic_audio = false;
ptr = &raw[0];
@@ -186,7 +187,7 @@ int tegra_edid_parse_ext_block(u8 *raw, int idx, struct tegra_edid *edid)
/* For basic audio, set spk_alloc to Left+Right.
* If there is a Speaker Alloc block this will
* get over written with that value */
- edid->eld.spk_alloc = 1;
+ basic_audio = true;
}
}
ptr = &raw[4];
@@ -212,6 +213,9 @@ int tegra_edid_parse_ext_block(u8 *raw, int idx, struct tegra_edid *edid)
edid->eld.sad[i] = ptr[i + 1];
len++;
ptr += len; /* adding the header */
+ /* Got an audio data block so enable audio */
+ if(basic_audio == true)
+ edid->eld.spk_alloc = 1;
break;
}
/* case 2 is commented out for now */