diff --git a/board/qcom-cne.mk b/board/qcom-cne.mk
new file mode 100644
index 0000000..d8cf0f9
--- /dev/null
+++ b/board/qcom-cne.mk
@@ -0,0 +1,3 @@
+# CNE
+BOARD_USES_QCNE := true
+TARGET_LDPRELOAD := libNimsWrap.so
diff --git a/configs/data/NsrmConfiguration.xml b/configs/data/NsrmConfiguration.xml
deleted file mode 100644
index af22fc7..0000000
--- a/configs/data/NsrmConfiguration.xml
+++ /dev/null
@@ -1,57 +0,0 @@
-
-
-
-
-
- 2.0
-
- 10
-
- 1200
-
- 600
-
- 60
-
- Conservative
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/configs/data/dpm.conf b/configs/data/dpm.conf
deleted file mode 100644
index d038d1b..0000000
--- a/configs/data/dpm.conf
+++ /dev/null
@@ -1,46 +0,0 @@
-#configuration parameters for DPM Fast Dormancy and TCM module.
-
-#Configuration params for FD
-#Idle timer value when SCREEN state is ON
-dpm_fd_screen_on_idle_timer_value:15
-#Idle timer value when SCREEN state is OFF
-dpm_fd_screen_off_idle_timer_value:3
-#Idle timer value when TETHERING is ON
-#This takes precedence over SCREEN state
-dpm_fd_tethering_on_idle_timer_value:15
-#FastDormancy can be configured for a network type
-#Default configuration 101000011100001000
-dpm_fd_enable_networks_mask:0x28708
-
-#Configuration params for TCM
-#Idle timer value when SCREEN state is ON
-#min : 1s and max :256s
-dpm_tcm_screen_on_idle_timer_value:5
-#Idle timer value when SCREEN state is OFF
-#min : 1s and max :256s
-dpm_tcm_screen_off_idle_timer_value:1
-#TCM can be configured for a network type
-#Default configuration 111111111111111110
-dpm_tcm_enable_networks_mask:0x7FFFE
-
-
-#FastDormancy and TCM can be configured for a network type
-#NETWORK_TYPE_UNKNOWN = 0
-#NETWORK_TYPE_GPRS = 1
-#NETWORK_TYPE_EDGE = 2
-#NETWORK_TYPE_UMTS = 3
-#NETWORK_TYPE_CDMA = 4
-#NETWORK_TYPE_EVDO_0 = 5
-#NETWORK_TYPE_EVDO_A = 6
-#NETWORK_TYPE_1xRTT = 7
-#NETWORK_TYPE_HSDPA = 8
-#NETWORK_TYPE_HSUPA = 9
-#NETWORK_TYPE_HSPA = 10
-#NETWORK_TYPE_IDEN = 11
-#NETWORK_TYPE_EVDO_B = 12
-#NETWORK_TYPE_LTE = 13
-#NETWORK_TYPE_EHRPD = 14
-#NETWORK_TYPE_HSPAP = 15
-#NETWORK_TYPE_GSM = 16
-#NETWORK_TYPE_TD_SCDMA = 17
-#NETWORK_TYPE_IWLAN = 18
diff --git a/gps/izat.conf b/gps/izat.conf
index 983231c..f788395 100644
--- a/gps/izat.conf
+++ b/gps/izat.conf
@@ -137,7 +137,7 @@ WIFI_SUPPLICANT_INFO=BASIC
#DISABLED -> if this process is to be disabled on lean and mean targets
PROCESS_NAME=/system/bin/garden_app
PROCESS_ARGUMENT=-u 0 -q 0 -j 0 -g 0 -l 0 -Z 0 -T 1
-PROCESS_STATE=ENABLED
+PROCESS_STATE=DISABLED
PROCESS_GROUPS=gps net_raw
PREMIUM_FEATURE=0
IZAT_FEATURE_MASK=0
@@ -147,7 +147,7 @@ LEAN_TARGETS=DISABLED
PROCESS_NAME=/system/bin/gpsone_daemon
PROCESS_ARGUMENT=
-PROCESS_STATE=ENABLED
+PROCESS_STATE=DISABLED
PROCESS_GROUPS=inet net_raw
PREMIUM_FEATURE=0
IZAT_FEATURE_MASK=0
@@ -157,7 +157,7 @@ LEAN_TARGETS=DISABLED
PROCESS_NAME=/system/bin/lowi-server
PROCESS_ARGUMENT=
-PROCESS_STATE=ENABLED
+PROCESS_STATE=DISABLED
PROCESS_GROUPS=gps net_admin wifi inet qcom_diag net_raw
PREMIUM_FEATURE=0
IZAT_FEATURE_MASK=0xf303
@@ -167,7 +167,7 @@ LEAN_TARGETS=DISABLED
PROCESS_NAME=/system/bin/xtwifi-inet-agent
PROCESS_ARGUMENT=
-PROCESS_STATE=ENABLED
+PROCESS_STATE=DISABLED
PROCESS_GROUPS=inet gps
PREMIUM_FEATURE=1
IZAT_FEATURE_MASK=0xc0f
@@ -177,7 +177,7 @@ LEAN_TARGETS=DISABLED
PROCESS_NAME=/system/bin/xtwifi-client
PROCESS_ARGUMENT=
-PROCESS_STATE=ENABLED
+PROCESS_STATE=DISABLED
PROCESS_GROUPS=net_admin wifi inet gps net_raw rfs_shared
PREMIUM_FEATURE=1
IZAT_FEATURE_MASK=0xf0f
diff --git a/overlay/frameworks/base/core/res/res/values/config.xml b/overlay/frameworks/base/core/res/res/values/config.xml
index 85ef62c..df3b340 100644
--- a/overlay/frameworks/base/core/res/res/values/config.xml
+++ b/overlay/frameworks/base/core/res/res/values/config.xml
@@ -101,4 +101,13 @@
- 18
+
+ false
+ com.qualcomm.location
+ false
+ com.qualcomm.location
+
+
+ com.qualcomm.location
+
diff --git a/product/qcom-cne.mk b/product/qcom-cne.mk
new file mode 100644
index 0000000..1e95895
--- /dev/null
+++ b/product/qcom-cne.mk
@@ -0,0 +1,4 @@
+# CNE
+PRODUCT_PROPERTY_OVERRIDES += \
+ persist.cne.feature=1 \
+ persist.dpm.feature=7
diff --git a/product/qcom-gps.mk b/product/qcom-gps.mk
index fe8847f..1b9b020 100644
--- a/product/qcom-gps.mk
+++ b/product/qcom-gps.mk
@@ -12,3 +12,9 @@ PRODUCT_COPY_FILES += \
# Permissions
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.location.gps.xml:system/etc/permissions/android.hardware.location.gps.xml
+
+# Properties
+PRODUCT_PROPERTY_OVERRIDES += \
+ persist.gps.qc_nlp_in_use=1 \
+ persist.loc.nlp_name=com.qualcomm.location \
+ ro.gps.agps_provider=1
diff --git a/product/qcom-radio.mk b/product/qcom-radio.mk
index e8c22de..2ea4750 100644
--- a/product/qcom-radio.mk
+++ b/product/qcom-radio.mk
@@ -12,7 +12,5 @@ ifeq ($(QCPATH),)
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/configs/data/netmgr_config.xml:system/etc/data/netmgr_config.xml \
$(LOCAL_PATH)/configs/data/qmi_config.xml:system/etc/data/qmi_config.xml \
- $(LOCAL_PATH)/configs/data/dsi_config.xml:system/etc/data/dsi_config.xml \
- $(LOCAL_PATH)/configs/data/NsrmConfiguration.xml:system/etc/dpm/nsrm/NsrmConfiguration.xml \
- $(LOCAL_PATH)/configs/data/dpm.conf:system/etc/dpm/dpm.conf
+ $(LOCAL_PATH)/configs/data/dsi_config.xml:system/etc/data/dsi_config.xml
endif
diff --git a/proprietary-files-qc.txt b/proprietary-files-qc.txt
index baac1d5..7dd9d83 100644
--- a/proprietary-files-qc.txt
+++ b/proprietary-files-qc.txt
@@ -105,6 +105,42 @@ etc/firmware/cpp_firmware_v1_1_6.fw
etc/firmware/cpp_firmware_v1_2_0.fw
etc/firmware/cpp_firmware_v1_4_0.fw
+# CNE/DPM
+bin/cnd
+bin/dpmd
+etc/cne/andsfCne.xml
+etc/cne/SwimConfig.xml
+etc/dpm/dpm.conf
+etc/dpm/nsrm/NsrmConfiguration.xml
+etc/permissions/cneapiclient.xml
+etc/permissions/com.qti.dpmframework.xml
+etc/permissions/com.quicinc.cne.xml
+etc/permissions/ConnectivityExt.xml
+etc/permissions/dpmapi.xml
+framework/cneapiclient.jar
+framework/com.qti.dpmframework.jar
+framework/com.quicinc.cne.jar
+framework/ConnectivityExt.jar
+framework/dpmapi.jar
+-priv-app/CNEService/CNEService.apk
+-priv-app/dpmserviceapp/dpmserviceapp.apk
+vendor/lib64/libcne.so
+vendor/lib64/libcneapiclient.so
+vendor/lib64/libcneconn.so
+vendor/lib64/libcneqmiutils.so
+vendor/lib64/libdpmframework.so
+vendor/lib64/libdpmnsrm.so
+vendor/lib64/libNimsWrap.so
+vendor/lib64/libvendorconn.so
+vendor/lib/libcne.so
+vendor/lib/libcneapiclient.so
+vendor/lib/libcneconn.so
+vendor/lib/libcneqmiutils.so
+vendor/lib/libdpmframework.so
+vendor/lib/libdpmnsrm.so
+vendor/lib/libNimsWrap.so
+vendor/lib/libvendorconn.so
+
# DRM
bin/qseecomd
lib/libdrmdecrypt.so
@@ -120,20 +156,42 @@ vendor/lib/drm/libdrmwvmplugin.so
vendor/lib/mediadrm/libwvdrmengine.so
# GPS
+bin/loc_launcher
+etc/permissions/com.qti.location.sdk.xml
+etc/permissions/com.qualcomm.location.xml
+framework/com.qti.location.sdk.jar
-lib64/libloc_api_v02.so
-lib64/libloc_ds_api.so
-lib/libloc_api_v02.so
-lib/libloc_ds_api.so
+-priv-app/com.qualcomm.location/com.qualcomm.location.apk
+vendor/bin/slim_daemon
vendor/lib64/hw/flp.default.so
+vendor/lib64/libdataitems.so
vendor/lib64/libflp.so
vendor/lib64/libgeofence.so
vendor/lib64/libizat_core.so
vendor/lib64/liblbs_core.so
+vendor/lib64/liblocationservice_glue.so
+vendor/lib64/liblocationservice.so
+vendor/lib64/liblowi_client.so
+vendor/lib64/libquipc_os_api.so
+vendor/lib64/libulp2.so
+vendor/lib64/libxtadapter.so
+vendor/lib64/libxtwifi_ulp_adaptor.so
vendor/lib/hw/flp.default.so
+vendor/lib/libdataitems.so
vendor/lib/libflp.so
vendor/lib/libgeofence.so
vendor/lib/libizat_core.so
vendor/lib/liblbs_core.so
+vendor/lib/liblocationservice_glue.so
+vendor/lib/liblocationservice.so
+vendor/lib/liblowi_client.so
+vendor/lib/libquipc_os_api.so
+vendor/lib/libulp2.so
+vendor/lib/libxtadapter.so
+vendor/lib/libxtwifi_ulp_adaptor.so
# Graphics
vendor/lib64/egl/eglsubAndroid.so
diff --git a/setup-makefiles.sh b/setup-makefiles.sh
index 8e62431..18d6e73 100755
--- a/setup-makefiles.sh
+++ b/setup-makefiles.sh
@@ -94,6 +94,13 @@ EOF
# This file is generated by device/$VENDOR/$DEVICE/setup-makefiles.sh
# Pick up overlay for features that depend on non-open-source files
+PRODUCT_PACKAGES += \\
+ CNEService \\
+ dpmserviceapp
+
+PRODUCT_PACKAGES += \\
+ com.qualcomm.location
+
PRODUCT_PACKAGES += \\
qcrilmsgtunnel \\
shutdownlistener \\
@@ -169,6 +176,39 @@ LOCAL_PATH := \$(call my-dir)
ifeq (\$(TARGET_DEVICE),crackling)
ifeq (\$(QCPATH),)
+include \$(CLEAR_VARS)
+LOCAL_MODULE := CNEService
+LOCAL_MODULE_OWNER := $VENDOR
+LOCAL_SRC_FILES := proprietary/priv-app/CNEService/CNEService.apk
+LOCAL_MODULE_TAGS := optional
+LOCAL_MODULE_SUFFIX := \$(COMMON_ANDROID_PACKAGE_SUFFIX)
+LOCAL_MODULE_CLASS := APPS
+LOCAL_CERTIFICATE := platform
+LOCAL_PRIVILEGED_MODULE := true
+include \$(BUILD_PREBUILT)
+
+include \$(CLEAR_VARS)
+LOCAL_MODULE := dpmserviceapp
+LOCAL_MODULE_OWNER := $VENDOR
+LOCAL_SRC_FILES := proprietary/priv-app/dpmserviceapp/dpmserviceapp.apk
+LOCAL_MODULE_TAGS := optional
+LOCAL_MODULE_SUFFIX := \$(COMMON_ANDROID_PACKAGE_SUFFIX)
+LOCAL_MODULE_CLASS := APPS
+LOCAL_CERTIFICATE := platform
+LOCAL_PRIVILEGED_MODULE := true
+include \$(BUILD_PREBUILT)
+
+include \$(CLEAR_VARS)
+LOCAL_MODULE := com.qualcomm.location
+LOCAL_MODULE_OWNER := $VENDOR
+LOCAL_SRC_FILES := proprietary/priv-app/com.qualcomm.location/com.qualcomm.location.apk
+LOCAL_MODULE_TAGS := optional
+LOCAL_MODULE_SUFFIX := \$(COMMON_ANDROID_PACKAGE_SUFFIX)
+LOCAL_MODULE_CLASS := APPS
+LOCAL_PRIVILEGED_MODULE := true
+LOCAL_CERTIFICATE := platform
+include \$(BUILD_PREBUILT)
+
include \$(CLEAR_VARS)
LOCAL_MODULE := qcrilmsgtunnel
LOCAL_MODULE_OWNER := $VENDOR