diff options
-rw-r--r-- | drivers/video/omap2/dss/ti_hdmi_5xxx_ip.c | 7 | ||||
-rw-r--r-- | sound/soc/omap/omap-hdmi.c | 6 |
2 files changed, 8 insertions, 5 deletions
diff --git a/drivers/video/omap2/dss/ti_hdmi_5xxx_ip.c b/drivers/video/omap2/dss/ti_hdmi_5xxx_ip.c index 1e99149560f..c77d865b1f9 100644 --- a/drivers/video/omap2/dss/ti_hdmi_5xxx_ip.c +++ b/drivers/video/omap2/dss/ti_hdmi_5xxx_ip.c | |||
@@ -898,10 +898,15 @@ static void ti_hdmi_5xxx_core_audio_config(struct hdmi_ip_data *ip_data, | |||
898 | REG_FLD_MOD(core_sys_base, HDMI_CORE_AUD_CONF0, 0, 5, 5); | 898 | REG_FLD_MOD(core_sys_base, HDMI_CORE_AUD_CONF0, 0, 5, 5); |
899 | /* enable two channels in GPA */ | 899 | /* enable two channels in GPA */ |
900 | REG_FLD_MOD(core_sys_base, HDMI_CORE_AUD_GP_CONF1, 3, 7, 0); | 900 | REG_FLD_MOD(core_sys_base, HDMI_CORE_AUD_GP_CONF1, 3, 7, 0); |
901 | } else if (cfg->layout == HDMI_AUDIO_LAYOUT_6CH) { | ||
902 | /* select HBR/SPDIF interfaces */ | ||
903 | REG_FLD_MOD(core_sys_base, HDMI_CORE_AUD_CONF0, 0, 5, 5); | ||
904 | /* enable six channels in GPA */ | ||
905 | REG_FLD_MOD(core_sys_base, HDMI_CORE_AUD_GP_CONF1, 0x3F, 7, 0); | ||
901 | } else { | 906 | } else { |
902 | /* select HBR/SPDIF interfaces */ | 907 | /* select HBR/SPDIF interfaces */ |
903 | REG_FLD_MOD(core_sys_base, HDMI_CORE_AUD_CONF0, 0, 5, 5); | 908 | REG_FLD_MOD(core_sys_base, HDMI_CORE_AUD_CONF0, 0, 5, 5); |
904 | /* enable two channels in GPA */ | 909 | /* enable eight channels in GPA */ |
905 | REG_FLD_MOD(core_sys_base, HDMI_CORE_AUD_GP_CONF1, 0xFF, 7, 0); | 910 | REG_FLD_MOD(core_sys_base, HDMI_CORE_AUD_GP_CONF1, 0xFF, 7, 0); |
906 | } | 911 | } |
907 | 912 | ||
diff --git a/sound/soc/omap/omap-hdmi.c b/sound/soc/omap/omap-hdmi.c index b65a57484d0..b60a32faf9f 100644 --- a/sound/soc/omap/omap-hdmi.c +++ b/sound/soc/omap/omap-hdmi.c | |||
@@ -193,12 +193,10 @@ static int omap_hdmi_dai_hw_params(struct snd_pcm_substream *substream, | |||
193 | 193 | ||
194 | cea->db3 = 0; /* not used, all zeros */ | 194 | cea->db3 = 0; /* not used, all zeros */ |
195 | 195 | ||
196 | /* | ||
197 | * The OMAP HDMI IP requires to use the 8-channel channel code when | ||
198 | * transmitting more than two channels. | ||
199 | */ | ||
200 | if (params_channels(params) == 2) | 196 | if (params_channels(params) == 2) |
201 | cea->db4_ca = 0x0; | 197 | cea->db4_ca = 0x0; |
198 | else if (params_channels(params) == 6) | ||
199 | cea->db4_ca = 0xb; | ||
202 | else | 200 | else |
203 | cea->db4_ca = 0x13; | 201 | cea->db4_ca = 0x13; |
204 | 202 | ||