ALSA: hdmi - support infoframe for DisplayPort
authorWu Fengguang <fengguang.wu@intel.com>
Tue, 21 Sep 2010 06:25:49 +0000 (14:25 +0800)
committerTakashi Iwai <tiwai@suse.de>
Tue, 21 Sep 2010 07:49:57 +0000 (09:49 +0200)
commit53d7d69d8ffdfa60c5b66cc2e9ee0774aaaef5c0
treecfb3d48fe7e4a11cdae0a3adae67cdcc38461e59
parent0ec33d1f952934ea3251cefc6d108b47818eedd0
ALSA: hdmi - support infoframe for DisplayPort

DisplayPort works mostly in the same way as HDMI, except that it expects
a slightly different audio infoframe format.

Citations from "HDA036-A: Display Port Support and HDMI Miscellaneous
Corrections":

The HDMI specification defines a data island packet with a header of 4
bytes (3 bytes content + 1 byte ECC) and packet body of 32 bytes (28
bytes content and 4 bytes ECC). Display Port specification on the other
hand defines a data island packet (secondary data packet) with header of
4 bytes protected by 4 bytes of parity, and data of theoretically up to
1024 bytes with each 16 bytes chunk of data protected by 4 bytes of
parity. Note that the ECC or parity bytes are not present in the DIP
content populated by software and are hardware generated.

It tests DP connection based on the ELD conn_type field, which will be
set by the graphics driver and can be overriden manually by users
through the /proc/asound/card0/eld* interface.

The DP infoframe is tested OK on Intel SandyBridge/CougarPoint platform.

Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/patch_hdmi.c