[Intel-gfx] [PATCH v4 0/3] Haswell HDMI/DP audio enable
Takashi Iwai
tiwai at suse.de
Mon Aug 6 16:26:47 CEST 2012
At Mon, 6 Aug 2012 18:43:57 +0800,
Wang Xingchao wrote:
>
> This patch series enable HDMI audio on Haswell platform, not DP audio.
> The DP enablement will come after the DP patches are upstream.
>
> I tested this patch on Sharkbay machine and i could hear clear sound from
> HDMI port.
>
> V2 patches fixed one warning and some type errors.
>
> V3 patches changes:
> - change some registers definitions
> - use macro for IBX/CPT/HSW to get registers
> - remove some unused variable intended to use in TODO list.
>
> v4 patches changes:
> - remove alsa related hack patch
>
> Here're some notes useful for you to test the patches on Sharkbay machine:
> I> please make sure your branch include below three patches in Takashi's
> sound tree, othersiwe there's no proper Haswell ID and HDMI ID.
> http://git.alsa-project.org/?p=alsa-kmirror.git;a=commitdiff;h=79fc901301d6115b11457e8240ed6abc4b3f5c65
> http://git.alsa-project.org/?p=alsa-kmirror.git;a=commitdiff;h=e269cee227a2b2297b79bfc71094c709b9387061
> http://git.alsa-project.org/?p=alsa-kmirror.git;a=commitdiff;h=cb192625233496ac3d96cce667ebf4e322dab678
Well, alsa-kmirror is not my tree. Please avoid using it.
It's no kernel tree, thus the commit ids are different from the
upstream (they have been cherry-picked).
For the upstream tree, please refer to sound git tree
git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git
You can just pull for-linus branch.
The all commits above are found in 3.6-rc1.
e926f2c850c472f813f9bab486c68a3fe0b03ae4
1c76684d2752b3a24bb7da183cc18e5d126dbcc9
bdbe34dece4942f4d8df9865dba7785bb813366a
thanks,
Takashi
>
> II> No sound from HDMI/DP.
> we found it's not stable in current stage, sometimes you may not heard sound
> from HDMI or DP port, but most of the time you can heard clear sound. After
> some investigation, we suspect the HDA verb didnot really make codec
> change,and we regard the GPU register as the right one. (see III explanation)
> the easy way is to use intel_audio_dump to compare related registers, and make
> sure the port is enabled and unmute, otherwise there's no sound.
> intel_audio_tools has no support on Haswell yet, i wrote patches to make that
> happen, if you need the patches, please feel free to let me know. Here's part
> of the snapshot about port enable and mute status from intel_audio_dump:
>
> AUD_PORT_EN_HD_CFG Port_B_Out_Enable 1
> AUD_PORT_EN_HD_CFG Port_C_Out_Enable 1
> AUD_PORT_EN_HD_CFG Port_D_Out_Enable 1
> AUD_PORT_EN_HD_CFG Port_B_Amp_Mute_Status 1
> AUD_PORT_EN_HD_CFG Port_C_Amp_Mute_Status 0
> AUD_PORT_EN_HD_CFG Port_D_Amp_Mute_Status 1
>
> you can see from above message, the Port C is enabled and unmute, that's what
> we expect.
>
> III> HDA Codec dependency. When you found there's no sound from HDMI, please
> use intel_audio_dump to check Port enable/mute status in II and also check
> related Pipe/Transcoder/DDI port status. Sometimes the pipe and transcoder was
> disabled in dpms and will not work anymore, that results in the HDMI port no
> sound. HDA codec's three converters are somehow hardwired to audio Pipes and
> if you choose the pipe, that means the regarding Codec converter should be
> enabled too, and only one digital Pin's HDA verbs could work, that depends on
> whehter your Pin select the converter as input. Here's one example about the
> Pipe/Transcoder/DDI port(Pipe B, DDI Port C):
>
> DDI_BUF_CTL_A 0x00000080 DDI Buffer Controler A
> DDI_BUF_CTL_B 0x00000000 DDI Buffer Controler B
> DDI_BUF_CTL_C 0x80000000 DDI Buffer Controler C
> DDI_BUF_CTL_D 0x00000000 DDI Buffer Controler D
> DDI_BUF_CTL_E 0x80000002 DDI Buffer Controler E
> PIPE_CONF_A 0xc0000000 PIPE Configuration A
> PIPE_CONF_B 0xc0000000 PIPE Configuration B
> PIPE_CONF_C 0x00000000 PIPE Configuration C
> PIPE_CONF_EDP 0x00000000 PIPE Configuration EDP
> PIPE_DDI_FUNC_CTL_A 0xc4034002 PIPE DDI Function Control A
> PIPE_DDI_FUNC_CTL_B 0xa0035000 PIPE DDI Function Control B
> PIPE_DDI_FUNC_CTL_C 0x00030000 PIPE DDI Function Control C
> PIPE_DDI_FUNC_CTL_EDP 0x00030000 PIPE DDI Function Control EDP
>
> Wang Xingchao (3):
> drm/i915: HSW audio registers definition
> drm/i915: write eld info for HDMI audio
> drm/i915: Haswell HDMI audio enable
>
> drivers/gpu/drm/i915/i915_reg.h | 76 ++++++++++++++++++++++++++++++++++
> drivers/gpu/drm/i915/intel_ddi.c | 6 ++-
> drivers/gpu/drm/i915/intel_display.c | 52 ++++++++++++++++++-----
> 3 files changed, 123 insertions(+), 11 deletions(-)
>
> --
> 1.7.9.5
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
>
More information about the Intel-gfx
mailing list