audio: hdmi: add dynamic multichannel support

This patch parses the HDMI EDID to find the capabilites of the sink
device.  It communicates this information to Android so that it can
make the proper decisions about routing multichannel streams.

When parsing the EDID we look for:

  * Audio Bit (whether or not sink supports audio)

  * Speaker Allocation Data Block (if any), which
    declares which speakers are attached to the sink.

  * Audio Data Allocation Block (if any), which
    declares extended capabilities not implied by the
    Audio Bit.

The speaker allocation block is parsed to see which channel profiles
it supports (stereo, quad, surround, 5.1, and 7.1).

Change-Id: Ic2ff57acd8f1d4b92ca4034e2a5800d0b69a3e05
Signed-off-by: Gabriel M. Beddingfield <gabrbedd@ti.com>