Merge "CNE: Enable CNE(Connectivity Engine)"
diff --git a/BoardConfig.mk b/BoardConfig.mk
index 5a6e414..32dcece 100644
--- a/BoardConfig.mk
+++ b/BoardConfig.mk
@@ -65,7 +65,7 @@
 BOARD_BOOTIMAGE_PARTITION_SIZE := 0x00A00000
 BOARD_RECOVERYIMAGE_PARTITION_SIZE := 0x00A00000
 BOARD_SYSTEMIMAGE_PARTITION_SIZE := 536870912
-BOARD_USERDATAIMAGE_PARTITION_SIZE := 5368709120
+BOARD_USERDATAIMAGE_PARTITION_SIZE := 5368692736
 BOARD_CACHEIMAGE_PARTITION_SIZE := 33554432
 BOARD_PERSISTIMAGE_PARTITION_SIZE := 5242880
 BOARD_TOMBSTONESIMAGE_PARTITION_SIZE := 73400320
diff --git a/audio_policy.conf b/audio_policy.conf
index 4dba508..9238fa6 100644
--- a/audio_policy.conf
+++ b/audio_policy.conf
@@ -60,7 +60,7 @@
       tunnel {
         sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000
         channel_masks AUDIO_CHANNEL_OUT_STEREO|AUDIO_CHANNEL_OUT_MONO|AUDIO_CHANNEL_OUT_2POINT1|AUDIO_CHANNEL_OUT_QUAD|AUDIO_CHANNEL_OUT_PENTA|AUDIO_CHANNEL_OUT_5POINT1|AUDIO_CHANNEL_OUT_6POINT1|AUDIO_CHANNEL_OUT_7POINT1
-        formats AUDIO_FORMAT_MP3|AUDIO_FORMAT_AAC|AUDIO_FORMAT_AMR_WB|AUDIO_FORMAT_AMR_WB_PLUS
+        formats AUDIO_FORMAT_MP3|AUDIO_FORMAT_AAC|AUDIO_FORMAT_AMR_WB|AUDIO_FORMAT_AMR_WB_PLUS|AUDIO_FORMAT_AC3|AUDIO_FORMAT_EAC3
         devices AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_ALL_SCO|AUDIO_DEVICE_OUT_ALL_A2DP|AUDIO_DEVICE_OUT_AUX_DIGITAL|AUDIO_DEVICE_OUT_PROXY|AUDIO_DEVICE_OUT_ANLG_DOCK_HEADSET|AUDIO_DEVICE_OUT_ALL_USB|AUDIO_DEVICE_OUT_FM_TX
         flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_TUNNEL
       }
@@ -70,7 +70,7 @@
         sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000
         channel_masks AUDIO_CHANNEL_IN_MONO|AUDIO_CHANNEL_IN_STEREO|AUDIO_CHANNEL_IN_5POINT1|AUDIO_CHANNEL_IN_VOICE_CALL_MONO|AUDIO_CHANNEL_IN_VOICE_DNLINK_MONO|AUDIO_CHANNEL_IN_VOICE_UPLINK_MONO
         formats AUDIO_FORMAT_PCM_16_BIT|AUDIO_FORMAT_AMR_WB
-        devices AUDIO_DEVICE_IN_BUILTIN_MIC|AUDIO_DEVICE_IN_WIRED_HEADSET|AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET|AUDIO_DEVICE_IN_AUX_DIGITAL|AUDIO_DEVICE_IN_VOICE_CALL|AUDIO_DEVICE_IN_PROXY|AUDIO_DEVICE_IN_FM_RX|AUDIO_DEVICE_IN_FM_RX_A2DP|AUDIO_DEVICE_IN_ANLG_DOCK_HEADSET
+        devices AUDIO_DEVICE_IN_BUILTIN_MIC|AUDIO_DEVICE_IN_WIRED_HEADSET|AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET|AUDIO_DEVICE_IN_AUX_DIGITAL|AUDIO_DEVICE_IN_VOICE_CALL|AUDIO_DEVICE_IN_PROXY|AUDIO_DEVICE_IN_FM_RX|AUDIO_DEVICE_IN_FM_RX_A2DP|AUDIO_DEVICE_IN_ANLG_DOCK_HEADSET|AUDIO_DEVICE_IN_COMMUNICATION
       }
       voip_tx {
         sampling_rates 8000|16000
diff --git a/init.qcom.thermal_conf.sh b/init.qcom.thermal_conf.sh
index 9fce293..c2faa4e 100755
--- a/init.qcom.thermal_conf.sh
+++ b/init.qcom.thermal_conf.sh
@@ -32,18 +32,20 @@
 PATH=/sbin:/system/sbin:/system/bin:/system/xbin
 export PATH
 
-# Set a default value
-setprop qcom.thermal thermal-engine
-
-platformid=`cat /sys/devices/system/soc/soc0/id`
+hw_platform=`cat /sys/devices/system/soc/soc0/hw_platform`
 
 THERMAL_ENGINE_CONF_SYMLINK=/etc/thermal-engine.conf
 # symlink already exists, exit
 if [ ! -h $THERMAL_ENGINE_CONF_SYMLINK ]; then
- case "$platformid" in
+ case "$hw_platform" in
+     "QRD") #MSM8226 QRD
+     ln -s /etc/thermal-engine-8226-qrd.conf $THERMAL_ENGINE_CONF_SYMLINK 2>/dev/null
+     ;;
+
      *) #MSM8226, etc
      ln -s /etc/thermal-engine-8226.conf $THERMAL_ENGINE_CONF_SYMLINK 2>/dev/null
      ;;
  esac
 fi
 
+start thermal-engine
diff --git a/init.target.rc b/init.target.rc
index ebd3eea..e7655b0 100644
--- a/init.target.rc
+++ b/init.target.rc
@@ -81,10 +81,6 @@
    class main
    user root
    group root
-   disabled
-
-on property:qcom.thermal=thermal-engine
-    start thermal-engine
 
 service qrngd /system/bin/qrngd -f
    class main
diff --git a/snd_soc_msm/snd_soc_msm_Tapan b/snd_soc_msm/snd_soc_msm_Tapan
index c14cbda..b1c3c28 100644
--- a/snd_soc_msm/snd_soc_msm_Tapan
+++ b/snd_soc_msm/snd_soc_msm_Tapan
@@ -3005,7 +3005,7 @@
 		'IIR1 Enable Band3':1:1
 		'IIR1 Enable Band4':1:1
 		'IIR1 Enable Band5':1:1
-		'IIR1 INP1 Volume':1:50
+		'IIR1 INP1 Volume':1:43
 		'RX1 MIX2 INP1':0:IIR1
 		'CLASS_H_DSM MUX':0:RX_HPHL
 		'RX1 Digital Volume':1:67
@@ -3175,7 +3175,7 @@
 		'IIR1 Enable Band3':1:1
 		'IIR1 Enable Band4':1:1
 		'IIR1 Enable Band5':1:1
-		'IIR1 INP1 Volume':1:62
+		'IIR1 INP1 Volume':1:55
 		'RX1 MIX2 INP1':0:IIR1
 		'RX2 MIX2 INP1':0:IIR1
 		'CLASS_H_DSM MUX':0:RX_HPHL
@@ -3281,8 +3281,8 @@
 		'RX2 Digital Volume':1:65
 		'ANC Slot':1:0
 		'ANC1 FB MUX':0:EAR_HPH_L
-		'ANC1 MUX':0:ADC5
-		'ANC2 MUX':0:ADC4
+		'ANC1 MUX':0:ADC4
+		'ANC2 MUX':0:ADC5
 		'ADC5 Volume':1:85
 		'ADC4 Volume':1:85
 	EndSequence
@@ -3312,6 +3312,55 @@
 EndSection
 
 SectionDevice
+	Name "ANC FB Headset"
+	Comment "ANC FB Headset Rx device"
+
+	EnableSequence
+		'ANC Function':0:ON
+		'SLIM RX1 MUX':0:AIF1_PB
+		'SLIM RX2 MUX':0:AIF1_PB
+		'SLIM_0_RX Channels':0:Two
+		'RX1 MIX1 INP1':0:RX1
+		'RX2 MIX1 INP1':0:RX2
+		'CLASS_H_DSM MUX':0:RX_HPHL
+		'HPHL DAC Switch':1:1
+		'HPHL Volume':1:60
+		'HPHR Volume':1:60
+		'RX1 Digital Volume':1:65
+		'RX2 Digital Volume':1:65
+		'ANC Slot':1:1
+		'ANC1 FB MUX':0:EAR_HPH_L
+		'ANC1 MUX':0:ADC4
+		'ANC2 MUX':0:ADC5
+		'ADC5 Volume':1:40
+		'ADC4 Volume':1:40
+	EndSequence
+
+	DisableSequence
+		'SLIM RX1 MUX':0:ZERO
+		'SLIM RX2 MUX':0:ZERO
+		'RX1 MIX1 INP1':0:ZERO
+		'RX2 MIX1 INP1':0:ZERO
+		'CLASS_H_DSM MUX':0:ZERO
+		'HPHL DAC Switch':1:0
+		'HPHL Volume':1:0
+		'HPHR Volume':1:0
+		'RX1 Digital Volume':1:0
+		'RX2 Digital Volume':1:0
+		'ANC1 MUX':0:ZERO
+		'ANC2 MUX':0:ZERO
+		'ADC5 Volume':1:0
+		'ADC4 Volume':1:0
+		'ANC Function':0:OFF
+	EndSequence
+
+	ACDBID  27:1
+	EffectsMixerCTL "SRS TruMedia"
+	EC_REF_RXMixerCTL "SLIM_RX"
+
+EndSection
+
+SectionDevice
 	Name "Voice ANC Headset"
 	Comment "ANC Headset Rx device for voice call"
 
@@ -3332,7 +3381,7 @@
 		'IIR1 Enable Band3':1:1
 		'IIR1 Enable Band4':1:1
 		'IIR1 Enable Band5':1:1
-		'IIR1 INP1 Volume':1:62
+		'IIR1 INP1 Volume':1:55
 		'RX1 MIX2 INP1':0:IIR1
 		'RX2 MIX2 INP1':0:IIR1
 		'CLASS_H_DSM MUX':0:RX_HPHL
@@ -3342,8 +3391,8 @@
 		'RX1 Digital Volume':1:65
 		'RX2 Digital Volume':1:65
 		'ANC Slot':1:0
-		'ANC1 MUX':0:ADC5
-		'ANC2 MUX':0:ADC4
+		'ANC1 MUX':0:ADC4
+		'ANC2 MUX':0:ADC5
 		'ANC1 FB MUX':0:EAR_HPH_L
 		'ADC5 Volume':1:85
 		'ADC4 Volume':1:85
@@ -3386,6 +3435,80 @@
 EndSection
 
 SectionDevice
+	Name "Voice ANC FB Headset"
+	Comment "ANC FB Headset Rx device for voice call"
+
+	EnableSequence
+		'ANC Function':0:ON
+		'SLIM RX1 MUX':0:AIF1_PB
+		'SLIM RX2 MUX':0:AIF1_PB
+		'SLIM_0_RX Channels':0:Two
+		'RX1 MIX1 INP1':0:RX1
+		'RX2 MIX1 INP1':0:RX2
+		'IIR1 Band1':2:0x10000000 0x0 0x0 0x0 0x0
+		'IIR1 Band2':2:0x10000000 0x0 0x0 0x0 0x0
+		'IIR1 Band3':2:0x10000000 0x0 0x0 0x0 0x0
+		'IIR1 Band4':2:0x10000000 0x0 0x0 0x0 0x0
+		'IIR1 Band5':2:0x10000000 0x0 0x0 0x0 0x0
+		'IIR1 Enable Band1':1:1
+		'IIR1 Enable Band2':1:1
+		'IIR1 Enable Band3':1:1
+		'IIR1 Enable Band4':1:1
+		'IIR1 Enable Band5':1:1
+		'IIR1 INP1 Volume':1:55
+		'RX1 MIX2 INP1':0:IIR1
+		'RX2 MIX2 INP1':0:IIR1
+		'CLASS_H_DSM MUX':0:RX_HPHL
+		'HPHL DAC Switch':1:1
+		'HPHL Volume':1:60
+		'HPHR Volume':1:60
+		'RX1 Digital Volume':1:65
+		'RX2 Digital Volume':1:65
+		'ANC Slot':1:1
+		'ANC1 MUX':0:ADC4
+		'ANC2 MUX':0:ADC5
+		'ANC1 FB MUX':0:EAR_HPH_L
+		'ADC5 Volume':1:40
+		'ADC4 Volume':1:40
+	EndSequence
+
+	DisableSequence
+		'SLIM RX1 MUX':0:ZERO
+		'SLIM RX2 MUX':0:ZERO
+		'RX1 MIX1 INP1':0:ZERO
+		'RX2 MIX1 INP1':0:ZERO
+		'RX1 MIX2 INP1':0:ZERO
+		'RX2 MIX2 INP1':0:ZERO
+		'IIR1 Enable Band1':1:0
+		'IIR1 Enable Band2':1:0
+		'IIR1 Enable Band3':1:0
+		'IIR1 Enable Band4':1:0
+		'IIR1 Enable Band5':1:0
+		'IIR1 Band1':2:0x0 0x0 0x0 0x0 0x0
+		'IIR1 Band2':2:0x0 0x0 0x0 0x0 0x0
+		'IIR1 Band3':2:0x0 0x0 0x0 0x0 0x0
+		'IIR1 Band4':2:0x0 0x0 0x0 0x0 0x0
+		'IIR1 Band5':2:0x0 0x0 0x0 0x0 0x0
+		'IIR1 INP1 Volume':1:0
+		'CLASS_H_DSM MUX':0:ZERO
+		'HPHL DAC Switch':1:0
+		'HPHL Volume':1:0
+		'HPHR Volume':1:0
+		'RX1 Digital Volume':1:0
+		'RX2 Digital Volume':1:0
+		'ANC1 MUX':0:ZERO
+		'ANC2 MUX':0:ZERO
+		'ADC5 Volume':1:0
+		'ADC4 Volume':1:0
+		'ANC Function':0:OFF
+	EndSequence
+
+	ACDBID  27:1
+	EffectsMixerCTL "SRS TruMedia"
+
+EndSection
+
+SectionDevice
 	Name "Headset"
 	Comment "Headset Tx device"
 
@@ -3865,8 +3988,8 @@
 		'RX1 Digital Volume':1:65
 		'RX2 Digital Volume':1:65
 		'ANC Slot':1:0
-		'ANC1 MUX':0:ADC5
-		'ANC2 MUX':0:ADC4
+		'ANC1 MUX':0:ADC4
+		'ANC2 MUX':0:ADC5
 		'ANC1 FB MUX':0:EAR_HPH_L
 		'ADC5 Volume':1:85
 		'ADC4 Volume':1:85
@@ -3897,6 +4020,55 @@
 EndSection
 
 SectionDevice
+	Name "SPDIF ANC FB Headset"
+	Comment "SPDIF + ANC FB Headset Rx device"
+
+	EnableSequence
+		'ANC Function':0:ON
+		'SLIM RX1 MUX':0:AIF1_PB
+		'SLIM RX2 MUX':0:AIF1_PB
+		'SLIM_0_RX Channels':0:Two
+		'RX1 MIX1 INP1':0:RX1
+		'RX2 MIX1 INP1':0:RX2
+		'CLASS_H_DSM MUX':0:RX_HPHL
+		'HPHL DAC Switch':1:1
+		'HPHL Volume':1:60
+		'HPHR Volume':1:60
+		'RX1 Digital Volume':1:65
+		'RX2 Digital Volume':1:65
+		'ANC Slot':1:1
+		'ANC1 MUX':0:ADC4
+		'ANC2 MUX':0:ADC5
+		'ANC1 FB MUX':0:EAR_HPH_L
+		'ADC5 Volume':1:40
+		'ADC4 Volume':1:40
+	EndSequence
+
+	DisableSequence
+		'SLIM RX1 MUX':0:ZERO
+		'SLIM RX2 MUX':0:ZERO
+		'RX1 MIX1 INP1':0:ZERO
+		'RX2 MIX1 INP1':0:ZERO
+		'CLASS_H_DSM MUX':0:ZERO
+		'HPHL DAC Switch':1:0
+		'HPHR DAC Switch':1:0
+		'HPHL Volume':1:0
+		'HPHR Volume':1:0
+		'RX1 Digital Volume':1:0
+		'RX2 Digital Volume':1:0
+		'ANC1 MUX':0:ZERO
+		'ANC2 MUX':0:ZERO
+		'ADC5 Volume':1:0
+		'ADC4 Volume':1:0
+		'ANC Function':0:OFF
+	EndSequence
+
+	ACDBID  27:1
+	EffectsMixerCTL "SRS TruMedia"
+
+EndSection
+
+SectionDevice
 	Name "Dummy Tx"
 	Comment "Dummy Tx device, not a physical device just for routing"
 
@@ -4012,8 +4184,8 @@
 		'RX1 Digital Volume':1:65
 		'RX2 Digital Volume':1:65
 		'ANC Slot':1:0
-		'ANC1 MUX':0:ADC5
-		'ANC2 MUX':0:ADC4
+		'ANC1 MUX':0:ADC4
+		'ANC2 MUX':0:ADC5
 		'ANC1 FB MUX':0:EAR_HPH_L
 		'ADC5 Volume':1:85
 		'ADC4 Volume':1:85
@@ -4044,6 +4216,56 @@
 EndSection
 
 SectionDevice
+	Name "PROXY Rx ANC FB Headset"
+	Comment "PROXY Rx ANC FB Headset Rx device combo device"
+
+	EnableSequence
+		'ANC Function':0:ON
+		'SLIM RX1 MUX':0:AIF1_PB
+		'SLIM RX2 MUX':0:AIF1_PB
+		'SLIM_0_RX Channels':0:Two
+		'RX1 MIX1 INP1':0:RX1
+		'RX2 MIX1 INP1':0:RX2
+		'CLASS_H_DSM MUX':0:RX_HPHL
+		'HPHL DAC Switch':1:1
+		'HPHR DAC Switch':1:1
+		'HPHL Volume':1:60
+		'HPHR Volume':1:60
+		'RX1 Digital Volume':1:65
+		'RX2 Digital Volume':1:65
+		'ANC Slot':1:1
+		'ANC1 MUX':0:ADC4
+		'ANC2 MUX':0:ADC5
+		'ANC1 FB MUX':0:EAR_HPH_L
+		'ADC5 Volume':1:40
+		'ADC4 Volume':1:40
+	EndSequence
+
+	DisableSequence
+		'SLIM RX1 MUX':0:ZERO
+		'SLIM RX2 MUX':0:ZERO
+		'RX1 MIX1 INP1':0:ZERO
+		'RX2 MIX1 INP1':0:ZERO
+		'CLASS_H_DSM MUX':0:ZERO
+		'HPHL DAC Switch':1:0
+		'HPHR DAC Switch':1:0
+		'HPHL Volume':1:0
+		'HPHR Volume':1:0
+		'RX1 Digital Volume':1:0
+		'RX2 Digital Volume':1:0
+		'ANC1 MUX':0:ZERO
+		'ANC2 MUX':0:ZERO
+		'ADC5 Volume':1:0
+		'ADC4 Volume':1:0
+		'ANC Function':0:OFF
+	EndSequence
+
+	ACDBID  27:1
+	EffectsMixerCTL "SRS TruMedia"
+
+EndSection
+
+SectionDevice
 	Name "USB PROXY Rx Speaker"
 	Comment "USB PROXY Rx + Speaker Rx device combo device"