aboutsummaryrefslogtreecommitdiffstats
path: root/sound/soc
diff options
context:
space:
mode:
authorAxel Castaneda Gonzalez <x0055901@ti.com>2012-02-02 19:42:56 -0600
committerZiyann <jaraidaniel@gmail.com>2014-10-01 12:56:39 +0200
commitff0509a31150b920bb01295827302050ab563b3f (patch)
tree48ad518d4a44ec09f96a6700be13302e3712000e /sound/soc
parent214e7ec429f4fe8d587fdafca1f1553fa8afa6e1 (diff)
downloadkernel_samsung_tuna-ff0509a31150b920bb01295827302050ab563b3f.zip
kernel_samsung_tuna-ff0509a31150b920bb01295827302050ab563b3f.tar.gz
kernel_samsung_tuna-ff0509a31150b920bb01295827302050ab563b3f.tar.bz2
OMAP4: HDMI: Update 6 channel configuration
For 6 channel, set info frame with channel count = 7 (8-1) and CA = 0x13 in order to ensure that sample_present bits configuration matches the number of channels (2 channels are padded with zeroes) that are sent to sink device, in order to fullfil multichannel compliance test. Change-Id: I5f149ec679e4a808ed0dbcf845de746e3a113c68 Signed-off-by: Axel Castaneda Gonzalez <x0055901@ti.com>
Diffstat (limited to 'sound/soc')
-rw-r--r--sound/soc/codecs/omap-hdmi-codec.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/sound/soc/codecs/omap-hdmi-codec.c b/sound/soc/codecs/omap-hdmi-codec.c
index c46a5f5..181676c 100644
--- a/sound/soc/codecs/omap-hdmi-codec.c
+++ b/sound/soc/codecs/omap-hdmi-codec.c
@@ -191,6 +191,7 @@ static int hdmi_audio_set_configuration(struct hdmi_codec_data *priv)
core_cfg->en_parallel_aud_input = true;
/* Number of channels */
+ aud_if_cfg->db1_channel_count = priv->params.channels_nr;
switch (priv->params.channels_nr) {
case 2:
@@ -203,13 +204,21 @@ static int hdmi_audio_set_configuration(struct hdmi_codec_data *priv)
break;
case 6:
core_cfg->layout = HDMI_AUDIO_LAYOUT_8CH;
- channel_alloc = 0xB;
+ channel_alloc = 0x13;
audio_format->stereo_channels = HDMI_AUDIO_STEREO_FOURCHANNELS;
audio_format->active_chnnls_msk = 0x3f;
/* Enable all of the four available serial data channels */
core_cfg->i2s_cfg.active_sds = HDMI_AUDIO_I2S_SD0_EN |
HDMI_AUDIO_I2S_SD1_EN | HDMI_AUDIO_I2S_SD2_EN |
HDMI_AUDIO_I2S_SD3_EN;
+ /*
+ * Overwrite info frame with channel count = 7 (8-1) and
+ * CA = 0x13 in order to ensure that sample_present bits
+ * configuration matches the number of channels (2 channels
+ * are padded with zeroes) that are sent to fullfil
+ * multichannel certification tests.
+ */
+ aud_if_cfg->db1_channel_count = 8;
break;
case 8:
core_cfg->layout = HDMI_AUDIO_LAYOUT_8CH;
@@ -234,7 +243,6 @@ static int hdmi_audio_set_configuration(struct hdmi_codec_data *priv)
* info frame audio see doc CEA861-D page 74
*/
aud_if_cfg->db1_coding_type = HDMI_INFOFRAME_AUDIO_DB1CT_FROM_STREAM;
- aud_if_cfg->db1_channel_count = priv->params.channels_nr;
aud_if_cfg->db2_sample_freq = HDMI_INFOFRAME_AUDIO_DB2SF_FROM_STREAM;
aud_if_cfg->db2_sample_size = HDMI_INFOFRAME_AUDIO_DB2SS_FROM_STREAM;
aud_if_cfg->db4_channel_alloc = channel_alloc;