ALSA: core: add support for compress_offload

This patch adds core.c, the file which implements the ioctls and
registers the devices

Signed-off-by: Vinod Koul <vinod.koul@linux.intel.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
ALSA: Fix memory leak on error in snd_compr_set_params()

If copy_from_user() does not return 0 we'll leak the memory we
allocated for 'params' when that variable goes out of scope.

Also a small CodingStyle cleanup: Use braces on both branches of
if/else when one branch needs it.

Signed-off-by: Jesper Juhl <jj@chaosbits.net>
Acked-by: Vinod Koul <vinod.koul@linux.intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
ASoc: Use the new sound/compress_params.h

Change-Id: I542db02e303969c0ad983fbe081e4f689a5f6bdb
ALSA: core: Add support to handle compressed audio IOCTLs for capture

This is needed to support the compressed audio capture so that the
IOCTL commands for capture can pass to the ALSA SOC audio driver

Change-Id: I78c796275946e6e02f61aeab6579f3e9362f208b
Signed-off-by: Subhash Chandra Bose Naripeddy <snariped@codeaurora.org>
ALSA: core: add API header and driver header files

This patch adds the header files for ioctl definitions and header file for
driver APIs for lower level device drivers to use

Signed-off-by: Vinod Koul <vinod.koul@linux.intel.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

Conflicts:
	include/sound/compress_driver.h
	include/sound/compress_offload.h

Change-Id: I9746c0fbab217850c02f703901ed22232b7a300c
compress: change header include path

Compatibility with userspace compilation is improved if
compress_params.h is included from the same directory,
rather than relying on search paths.

Change-Id: I0368ccc0b7d0b7727c62ed9aa389c7600cdad9ef
Signed-off-by: Steve Muckle <smuckle@codeaurora.org>
ASoC: msm: Modify min and max period bytes and num periods

Modify min and max period bytes and number of periods in
compressed driver so as to be consistent with lpa and to
meet ION memory requirements. This avoids using huge
buffer sizes for tunnel decode.

Change-Id: Ib71da4cebfc097e7aeaf0ca0e65ee847ba7cceb7
Signed-off-by: Phani Kumar Uppalapati <phanik@codeaurora.org>

Conflicts:
	sound/soc/msm/msm-compr-q6.c
ASoc: msm: Add lowlatency playback and recording routing controls

- Add BT, FM, PROXY routing controls for lowlatency playback and
recording

(cherry picked from commit 2d9e026fdff970d27e5ce0b3dd9cd1af22eaf31a)

Change-Id: Iae55b8c8bb61aa4b468750a9860a09d197e982c9
Signed-off-by: Mingming Yin <mingming@codeaurora.org>

Conflicts:
	include/sound/q6asm.h
	sound/soc/msm/msm-compr-q6.c
	sound/soc/msm/msm-dai-fe.c
	sound/soc/msm/msm-multi-ch-pcm-q6.c
	sound/soc/msm/msm-pcm-lpa.c
	sound/soc/msm/msm-pcm-q6.c
	sound/soc/msm/msm-pcm-routing.c
	sound/soc/msm/msm-pcm-routing.h
	sound/soc/msm/qdsp6/q6adm.c
	sound/soc/msm/qdsp6/q6asm.c
mmi: Add lowlatency playback and recording routing controls

Change-Id: I02042656cc6de8f7ce17e07ee30f4ce0dfeb3a6e