Merge "init: Add qcmediaplayer.jar to classpath for DASH"
diff --git a/BoardConfig.mk b/BoardConfig.mk
index 2dfb366..b040b2a 100644
--- a/BoardConfig.mk
+++ b/BoardConfig.mk
@@ -72,6 +72,9 @@
 BOARD_TOMBSTONESIMAGE_PARTITION_SIZE := 73400320
 BOARD_FLASH_BLOCK_SIZE := 131072 # (BOARD_KERNEL_PAGESIZE * 64)
 
+# Enable suspend during charger mode
+BOARD_CHARGER_ENABLE_SUSPEND := true
+
 # Add NON-HLOS files for ota upgrade
 ADD_RADIO_FILES ?= true
 
@@ -82,3 +85,4 @@
 TARGET_USE_QCOM_BIONIC_OPTIMIZATION := true
 
 TARGET_ADDITIONAL_BOOTCLASSPATH := qcmediaplayer:WfdCommon:oem-services:qcom.fmradio
+TARGET_RECOVERY_UPDATER_LIBS := librecovery_updater_msm
diff --git a/WCNSS_cfg.dat b/WCNSS_cfg.dat
index b6af038..1c1b267 100644
--- a/WCNSS_cfg.dat
+++ b/WCNSS_cfg.dat
Binary files differ
diff --git a/WCNSS_qcom_cfg.ini b/WCNSS_qcom_cfg.ini
index 741ed9a..01fdb30 100644
--- a/WCNSS_qcom_cfg.ini
+++ b/WCNSS_qcom_cfg.ini
@@ -333,6 +333,17 @@
 #gTxLdpcEnable = 1 for HT mode, 2 for VHT mode,3 for both HT and VHT
 gTxLdpcEnable=3
 
+# Oxygen network (prop IE for IBSS)
+gEnableOxygenNwk=0
+
+#FlexConnect Power Factor
+#Default is set to 0 (disable)
+gFlexConnectPowerFactor=0
+
+# Valid values are 2048,4096,8192 and so on
+# Please don't use values other than the ones mentioned above
+gMaxMediumTime=4096
+
 END
 
 # Note: Configuration parser would not read anything past the END marker
diff --git a/audio_policy.conf b/audio_policy.conf
index 3844a68..f1c763e 100644
--- a/audio_policy.conf
+++ b/audio_policy.conf
@@ -46,7 +46,7 @@
       voip_rx {
         sampling_rates 8000|16000
         channel_masks AUDIO_CHANNEL_OUT_MONO
-        formats AUDIO_FORMAT_PCM_16_BIT|AUDIO_FORMAT_AMR_NB|AUDIO_FORMAT_AMR_WB|AUDIO_FORMAT_QCELP|AUDIO_FORMAT_EVRC|AUDIO_FORMAT_EVRCB|AUDIO_FORMAT_EVRCWB
+        formats AUDIO_FORMAT_PCM_16_BIT|AUDIO_FORMAT_AMR_NB|AUDIO_FORMAT_AMR_WB|AUDIO_FORMAT_QCELP|AUDIO_FORMAT_EVRC|AUDIO_FORMAT_EVRCB|AUDIO_FORMAT_EVRCWB|AUDIO_FORMAT_EVRCNW
         devices AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_ANLG_DOCK_HEADSET|AUDIO_DEVICE_OUT_ALL_USB
         flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_VOIP_RX
       }
@@ -82,7 +82,7 @@
       voip_tx {
         sampling_rates 8000|16000
         channel_masks AUDIO_CHANNEL_IN_MONO
-        formats AUDIO_FORMAT_PCM_16_BIT|AUDIO_FORMAT_AMR_NB|AUDIO_FORMAT_AMR_WB|AUDIO_FORMAT_QCELP|AUDIO_FORMAT_EVRC|AUDIO_FORMAT_EVRCB|AUDIO_FORMAT_EVRCWB
+        formats AUDIO_FORMAT_PCM_16_BIT|AUDIO_FORMAT_AMR_NB|AUDIO_FORMAT_AMR_WB|AUDIO_FORMAT_QCELP|AUDIO_FORMAT_EVRC|AUDIO_FORMAT_EVRCB|AUDIO_FORMAT_EVRCWB|AUDIO_FORMAT_EVRCNW
         devices AUDIO_DEVICE_IN_COMMUNICATION
       }
     }
diff --git a/init.qcom.thermal_conf.sh b/init.qcom.thermal_conf.sh
index 5300b34..784ebe5 100755
--- a/init.qcom.thermal_conf.sh
+++ b/init.qcom.thermal_conf.sh
@@ -32,7 +32,11 @@
 PATH=/sbin:/system/sbin:/system/bin:/system/xbin
 export PATH
 
-platformid=`cat /sys/devices/system/soc/soc0/id`
+if [ -f /sys/devices/soc0/soc_id ]; then
+    platformid=`cat /sys/devices/soc0/soc_id`
+else
+    platformid=`cat /sys/devices/system/soc/soc0/id`
+fi
 
 THERMAL_ENGINE_CONF_SYMLINK=/etc/thermal-engine.conf
 # symlink already exists, exit
diff --git a/init.target.rc b/init.target.rc
index 17aee5e..2909a81 100644
--- a/init.target.rc
+++ b/init.target.rc
@@ -62,6 +62,7 @@
     insmod /system/lib/modules/adsprpc.ko
     # Enable writing to led blink node from userspace
     chown system system /sys/class/leds/red/blink
+    chown system system /sys/class/leds/green/blink
 
 #Start the qcom-system-daemon service
 service qcomsysd /system/bin/qcom-system-daemon
@@ -145,3 +146,13 @@
 on property:sys.ims.DATA_DAEMON_STATUS=1
     start ims_rtp_daemon
 
+service wcnss-service /system/bin/wcnss_service
+   class late_start
+   user system
+   group system wifi
+   disabled
+   oneshot
+
+on property:wlan.driver.ath=0
+    start wcnss-service
+
diff --git a/msm8226.mk b/msm8226.mk
index 29761b9..b94b28d 100644
--- a/msm8226.mk
+++ b/msm8226.mk
@@ -34,6 +34,8 @@
     device/qcom/msm8226/WCNSS_qcom_cfg.ini:system/etc/wifi/WCNSS_qcom_cfg.ini \
     device/qcom/msm8226/WCNSS_qcom_wlan_nv.bin:persist/WCNSS_qcom_wlan_nv.bin
 
+PRODUCT_PACKAGES += wcnss_service
+
 #ANT stack
 PRODUCT_PACKAGES += \
     AntHalService \
@@ -41,7 +43,6 @@
     antradio_app
 
 # NFC packages
-ifeq ($(BOARD_HAVE_QCOM_NFC), true)
 PRODUCT_PACKAGES += \
     libnfc-nci \
     libnfc_nci_jni \
@@ -68,4 +69,3 @@
         frameworks/native/data/etc/android.hardware.nfc.xml:system/etc/permissions/android.hardware.nfc.xml \
         device/qcom/msm8226/nfc/libnfc-nci.conf:system/etc/libnfc-nci.conf
 
-endif
diff --git a/nfc/libnfc-nci.conf b/nfc/libnfc-nci.conf
index 2e06e28..0d25624 100644
--- a/nfc/libnfc-nci.conf
+++ b/nfc/libnfc-nci.conf
@@ -3,7 +3,7 @@
 ###############################################################################
 #chip hardware version<v.2.0.S> <JNI.NCI_MW.NCI_HAL.KERNEL><SUPPORTED features><unique id>
 #supported features <SE:swp1,numer of ses><P2P,A F><others><LISTEN ABF B Prime><POLL ABF kovio>
-NFC_BUILD_ID = V2.0.S.01.01.01.01.1105000707.1906131510
+NFC_BUILD_ID = V2.0.S.01.01.01.01.1105000707.2008132034
 # Application logging mask
 APPL_TRACE_LEVEL=0x00
 PROTOCOL_TRACE_LEVEL=0x00000000
@@ -15,7 +15,7 @@
 NFC_WAKE_DELAY=20
 
 #default
-NFA_DM_START_UP_CFG={09:80:01:01:08:01:01:11:01:01:01}
+NFA_DM_START_UP_CFG={09:80:01:01:08:01:01:11:01:01}
 ###############################################################################
 # listen to the following technology(s).
 # The bits are defined as tNFA_TECHNOLOGY_MASK in nfa_api.h.
@@ -51,7 +51,7 @@
 FW_PATCH="/system/etc/firmware/Signedrompatch.bin"
 ###############################################################################
 # Firmware patch file
-FW_PRE_PATCH="/system/etc/firmware/Signedromprepatch.bin"
+#FW_PRE_PATCH="/system/etc/firmware/Signedromprepatch.bin"
 NVM_FILE_PATH="/system/etc/firmware/nfc_test.bin"
 ###############################################################################
 
@@ -73,6 +73,11 @@
 ###############################################################################
 PATCH_UPDATE_ENABLE_FLAG=0x01
 NVM_UPDATE_ENABLE_FLAG=0x00
+PM_ENABLE_FLAG=0x01
+###############################################################################
+# Time out value for closing the connection opened for patch download
+###############################################################################
+PATCH_DNLD_NFC_HAL_CMD_TOUT=4000
 ###############################################################################
 #Default listen mode routing table
 # This is the default listen mode routing configuration for NFCC.
diff --git a/radio/filesmap b/radio/filesmap
index 16fb9b3..6859e0c 100644
--- a/radio/filesmap
+++ b/radio/filesmap
@@ -25,11 +25,32 @@
 # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
 # IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
-#filename				device
+# filename              partition
 
-NON-HLOS.bin			/dev/block/platform/msm_sdcc.1/by-name/modem
-sbl1.mbn				/dev/block/platform/msm_sdcc.1/by-name/sbl1
-tz.mbn					/dev/block/platform/msm_sdcc.1/by-name/tz
-rpm.mbn					/dev/block/platform/msm_sdcc.1/by-name/rpm
-emmc_appsboot.mbn		/dev/block/platform/msm_sdcc.1/by-name/aboot
+NON-HLOS.bin            /dev/block/platform/msm_sdcc.1/by-name/modem
 
+sbl1.mbn                /dev/block/platform/msm_sdcc.1/by-name/sbl1
+tz.mbn                  /dev/block/platform/msm_sdcc.1/by-name/tz
+rpm.mbn                 /dev/block/platform/msm_sdcc.1/by-name/rpm
+emmc_appsboot.mbn       /dev/block/platform/msm_sdcc.1/by-name/aboot
+
+# filename + .bak       backup partition
+
+sbl1.mbn.bak            /dev/block/platform/msm_sdcc.1/by-name/sbl1bak
+tz.mbn.bak              /dev/block/platform/msm_sdcc.1/by-name/tzbak
+rpm.mbn.bak             /dev/block/platform/msm_sdcc.1/by-name/rpmbak
+emmc_appsboot.mbn.bak   /dev/block/platform/msm_sdcc.1/by-name/abootbak
+
+# For multiple file firmware images that differ from *.mbn and *.bin
+# you can specify filename.* to direct all files to the same location.
+# For example for modem.mdt, modem.b00, modem.b01,... modem.bxx files
+# writting 'modem.*   location' will direct all files to 'location'.
+# If still some files need to go to different location give the full
+# file name also, for example 'modem.b01   other_location'
+
+# filename              location
+
+modem.*                 /dev/block/platform/msm_sdcc.1/by-name/modem
+wcnss.*                 /dev/block/platform/msm_sdcc.1/by-name/modem
+widevine.*              /dev/block/platform/msm_sdcc.1/by-name/modem
+adsp.*                  /dev/block/platform/msm_sdcc.1/by-name/modem