usbaudio: Add QCOM ifdefs

Change-Id: Ifd7cc6e1b7615718ae6eb04b3b9dd850148009a3
usbaudio: Make the USB audio HAL actually work.

 * Set a default device if none is set.
 * Shush some logging.
 * Only use the mmap interface on QCOM devices.

Change-Id: I790a6733e85b169e645e020fa92608a0d4fea3c2

usbaudio: Provide a way to hardcode the card id

 * Some devices will have secondary sound cards for things like SPDIF.
 * Let's provide a way to hardcode the correct value for now until we
   have framework support for doing this correctly.

Change-Id: I6f3396692f1acc1602491e3a3befea8e04b6c9cf

usbaudio: Fix output device routing

Fix issue with commit a35e783 causing the output device to reset back
to the hard coded value of CARD_ID after a new output device is
specified.

This happens because out_set_parameters() receives a single "routing"
key/value pair just after setting a new output device. The if/else
statement would then cause a reset of the output device back to CARD_ID
because the "routing" message does not contain a card or device id.

Change-Id: Ib7c7eb7ef675ae371033a7ae7ce73782cac2c898
usbaudio: Fixing return value from out_write

-pcm_mmap_write() returns 0 for successful write and a negative
error number for errors
-out_write always returns a positive value
-fixed return value as per pcm_mmap_write() returned result

Change-Id: I6bbca5df9a1eb9ceae492a8cf5f478189cedbb12
CRs-Fixed: 564094
audio: add set_parameters for listen hal

Add listen hal specific set parameters function so that Listen
service can call Listen hal directly, by passing audio hal. This
is needed since set_parameters call in audio hal does not guarantee the
correct return value is returned for any parameters set.

Change-Id: I647b9e7f841c8157e4eb597655166ea863a00925