Handle CL opening state in bta_jv_free_rfc_cb

When the local device is openning an rfc channel and is being closed
before it's opened, we should close the channel instead of ignoring.
bug 11299049

Change-Id: I702500d489c8b3d3764e36340106433232a127c0
Conditional compilation for 48KHz sample rate

PS2:
https://github.com/CyanogenMod/android_external_bluetooth_bluedroid/commit/2cbe5233895e03255d655044897b9a27fcfc4e51
All QC devices using the CodeAurora drivers should be using a 48KHz
samplerate for A2DP.

Change-Id: I0a439973605369509efd06486181007978627414
Add I2S-PCM slave mode for SCO

 * M7 needs us to configure I2SPCM for SCO and set the voice mode.

Change-Id: Ia46e74a42c869bd08c257d6463d2ddc515609a19
libbt-hci: include bdroid_buildcfg.h from device repo

This lets device repos override some constants with their bdroid_buildcfg.h if
necessary.

This fixes Bluetooth issues (namely tethering) on endeavoru where
BTHC_USERIAL_READ_MEM_SIZE needs to be set to a higher value.

Change-Id: I8955963cdb2b34f1ba63f8160861699f7284814f
a2dp hw: adding a2dp tuning through bdroid_buildcfg.h

This adds possibility to configure a2dp tuning on an
arbitrary sysfs path and arbitrary ON/OFF values.
It's activated when a2dp is being used, and
deactivates when a2dp is stopped.
This way a device can either use an a2dp_tuning sysfs file
or cpu scaling min freq sysfs path with a target
min_freq value for elevation.

Here are two example of the two strategies of usage for
this:
bdroid_buildcfg.h - sysfs tuning file
 #define A2DP_HW_SYSFS_TUNER "/sys/devices/platform/tegra_uart.2/a2dp_tuning"
 #define A2DP_HW_SYSFS_TUNER_OFF "0"
 #define A2DP_HW_SYSFS_TUNER_ON "1"

bdroid_buildcfg.h - scaling min freq file
 #define A2DP_HW_SYSFS_TUNER "/sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq"
 #define A2DP_HW_SYSFS_TUNER_OFF "0"
 #define A2DP_HW_SYSFS_TUNER_ON "204000"

Change-Id: I2cd94e626eb2a6d04a6e52ddac94fa5773eb09d8
Merge tag 'android-4.4_r1.2' into HEAD

Android 4.4 Release 1.2