ASoC: msm: Add 24 bit support to Primary MI2S TX

Add 24 bit support to Primary MI2S Tx. Add
capability to specify bits per sample to DSP.

Change-Id: I928f37c7b76ffea735365b164d52ceabd88e77e6
Signed-off-by: Damir Didjusto <damird@codeaurora.org>
Signed-off-by: Francisco Franco <franciscofranco.1990@gmail.com>
sound_control: initial code push for Headphones gain userspace interface.

Signed-off-by: Francisco Franco <franciscofranco.1990@gmail.com>
Change-Id: I839b825a210d73fdc62f2730fbe0fceeab032253
sound_control: add headset, speaker and mic gain interfaces. Also add the sysfs control file.

Signed-off-by: Francisco Franco <franciscofranco.1990@gmail.com>
Change-Id: I4b4fc10d4f9c519457370f617d7755404b0ecb33
sound_control: add workaround to prevent audio resets after using custom values.

Based on https://github.com/faux123/Nexus_5/commit/33407fd2d63290540eb0054bc7c6611f2080ea8b

Signed-off-by: Francisco Franco <franciscofranco.1990@gmail.com>
Change-Id: I6c816140433d6796fd2ba94e764b7f29c37ab693
Merge changes I6c816140,I4b4fc10d,I839b825a,I928f37c7 into du44

* changes:
  sound_control: add workaround to prevent audio resets after using custom values.
  sound_control: add headset, speaker and mic gain interfaces. Also add the sysfs control file.
  sound_control: initial code push for Headphones gain userspace interface.
  ASoC: msm: Add 24 bit support to Primary MI2S TX