add gps support back
authorStricted <info@stricted.net>
Wed, 23 May 2018 09:25:55 +0000 (11:25 +0200)
committerStricted <info@stricted.net>
Wed, 23 May 2018 09:25:55 +0000 (11:25 +0200)
Change-Id: Ic499097d9d2ed86c7b4dd75ed922385556e3903c

configs/agps_profiles_conf2.xml
device.mk
proprietary-files.txt
ramdisk/init.mt8127.rc
sepolicy/mnld.te

index 58beea286df83cc65e22358730abda85f338cef5..bc1e480f298ba69e5916d009229c38a3c789aad0 100644 (file)
@@ -18,7 +18,7 @@
 
     ===== load SLP profile automatically based on PLMN =====
     mcc (optional):
-               auto configure the supl_profile if the current MCC on DUT are the same as mcc parameter you specified and auto_profile_enable is enabled
+        auto configure the supl_profile if the current MCC on DUT are the same as mcc parameter you specified and auto_profile_enable is enabled
 
     mcc_mnc (optional):
         auto configure the supl_profile if the current MCC and MNC on DUT are the same as mcc_mnc paramter you specified and auto_profile_enable is enabled
         available value: 1 -> SHA1 for SUPL1.0 and SUPL2.0
         available value: 2 -> SHA256 for SUPL1.0 and SUPL2.0
 
+    supl_ver_minor (optional):
+        auto configure the minor of supl_version if above mcc_mnc condition is met
+        available value: 0~255, default value is 0
+
+    supl_ver_ser_ind (optional):
+        auto configure the service indicator of supl_version if above mcc_mnc condition is met
+        available value: 0~255, default value is 0
+
     ===== other parameters are used for DM =====
     app_id (optional):
         "ap0004"
       port="7275"
       tls="true"
   />
-  
+
   <!-- Ericsson  Lab FQDN 2 -->
   <supl_profile name="Ericsson FQDN 2"
       addr="mvtv-broadcom.naladmz.ericsson.ca"
       supl_version="1"
       tls_version="0"
       sha_version="2"
+      supl_ver_minor="4"
+      supl_ver_ser_ind="2"
   />
 
   <!-- Test 2 -->
 
   <!-- CDMA profile template -->
   <cdma_profile name="CDMA1"
-       mcp_enable="false"
-       mcp_addr="10.199.2.165"
-       mcp_port="6066"
-       pde_addr_valid="false"
-       pde_ip_type="0"
-       pde_addr="11.11.11.11"
-       pde_port="1111"
-       pde_url_valid="false"
-       pde_url_addr="www.mediatek.com"
+    mcp_enable="true"
+    mcp_addr="10.199.22.165"
+    mcp_port="6066"
+    pde_addr_valid="false"
+    pde_ip_type="0"
+    pde_addr="11.11.11.11"
+    pde_port="1111"
+    pde_url_valid="false"
+    pde_url_addr="www.mediatek.com"
   />
 
 
     gpevt:
         enable/disable GPEVT report
         available value: true, false (default)
+
+    e911_gps_icon_enable:
+        enable/disable showing GPS icon during E911 location
+        available value: true (default), false
+
+    e911_open_gps:
+        enable/disable opening GPS earlier when E911 call is dialed
   -->
   <agps_setting
     agps_enable="true"
     agps_protocol="0"
     gpevt="false"
+    e911_gps_icon_enable="false"
+    e911_open_gps="false"
   />
 
 
+  <!-- gnss_setting
+
+    sib8_16_enable:
+        enable/disable SIB8/SIB16
+        available value: true (default), false
+
+    glonass_satellite_enable:
+        enable/disable Glonass Satellite if hardware can support Glonass
+        available value: true (default), false
+
+    beidou_satellite_enable:
+        enable/disable Beidou Satellite if hardware can support Beidou
+        available value: true (default), false
+
+    galileo__satellite_enable:
+        enable/disable Galileo Satellite if hardware can support Galileo
+        available value: true (default), false
+
+    a_glonass_satellite_enable:
+        enable/disable Glonass aiding if hardware can support A-Glonass
+        available value: true (default), false
+
+  -->
+  <gnss_setting
+    sib8_16_enable="true"
+    glonass_satellite_enable="true"
+    beidou_satellite_enable="true"
+    galileo_satellite_enable="true"
+    a_glonass_satellite_enable="true"
+  />
+
   <!-- cp_setting
 
     molr_pos_method:
         available value: true, false (default)
 
     epc_molr_lpp_payload_enable:
-       enable/disable to send LPP payload in the EPC-MOLR message
+        enable/disable to send LPP payload in the EPC-MOLR message
         available value: true, false (default)
 
     epc_molr_lpp_payload:
         specify the LPP payload in the EPC-MOLR message in hexString format (ex: "010203ff" = { 0x01, 0x02, 0x03, 0xff }
         the purpose of this parameter is used for LAB testing only, please do not change it.
 
+    reject_non911_nilr_enable:
+        enable/disable to reject non911 NILR request
+        available value: true, false (default)
+
   -->
   <cp_setting
     molr_pos_method="0"
     cp_auto_reset="false"
     epc_molr_lpp_payload_enable="false"
     epc_molr_lpp_payload="D2000010237B2026404FB8007202BFFFFFFFF80000000020C0000100940FB9001202B7FFFFF8000000000061800002018A00"
+    reject_non911_nilr_enable="false"
   />
 
   <!-- up_setting
         available value: 2 -> no Preference
 
     supl_version:
-        SUPL version for ULP
+        Major of SUPL version for ULP
         available value: 1 -> SUPL1.0 (default)
         available value: 2 -> SUPL2.0
 
         enable/disable the OTDOA capability
         available value: true, false (default)
 
+    autonomous_enable:
+        enable/disable the Autonomous capability
+        available value: true (default), false
+
+    aflt_enable:
+        enable/disable the AFLT capability
+        available value: true, false (default)
+
     udp_port_enable:
         enable/disable the UDP 7275 port by default, if you enable it, you may cause Android/CTS failure for checking netstat
         available value: true, false (default)
         customize the SUPL UT2 timer
         available value: 1~60, default value is 11 (OMA spec)
 
-       ut3:
+    ut3:
         customize the SUPL UT3 timer
         available value: 1~60, default value is 10 (OMA spec)
+
+    sync_to_slp:
+        sync the AGPS setting (ex: SUPL profile, SUPL version, TLS version) from AGPSD to SLPD in runtime
+        available value: true, false (default)
+
+    imsi_enable:
+        enable/disable the valid IMSI in SUPL messages
+        available value: true (default), false
+    no_sensitive_log:
+        remove/allow agps daemon's log with sensitive info (e.g., the current location)
+        available value: true, false (default)
+    supl_ver_minor:
+        Minor of SUPL version for ULP
+        available value: 0~255, default value is 0
+        choosable value in LocationEM: 0~5
+    supl_ver_ser_ind:
+        Service Indicator of SUPL version for ULP
+        available value: 0~255, default value is 0
+        choosable value in LocationEM: 0~5
+    tls_reuse_enable:
+        enable/disable tls session reuse mode
+        available value: true, false (default)
   -->
   <up_setting
     ca_enable="false"
     roaming="true"
     cdma_preferred="0"
     pref_method="1"
-    supl_version="1"
-    tls_version="0"
+    supl_version="2"
+    tls_version="1"
     sha_version="0"
     supl_log="false"
     msa_enable="true"
     msb_enable="true"
     ecid_enable="true"
     otdoa_enable="false"
+    autonomous_enable="true"
+    aflt_enable="false"
     qop_hacc="22"
     qop_vacc="0"
     qop_loc_age="0"
     auto_profile_enable="true"
     ut2="11"
     ut3="10"
+    sync_to_slp="false"
+    imsi_enable="true"
+    no_sensitive_log="false"
+    supl_ver_minor="0"
+    supl_ver_ser_ind="0"
+    tls_reuse_enable="false"
   />
 
 </mtk_agps_profiles>
index a5515965f93eba83ba154d2fc61fdde127cb3f09..4894f367e7a8fe9a8c9f928a8491a8ad8ecb1ca2 100644 (file)
--- a/device.mk
+++ b/device.mk
@@ -56,7 +56,8 @@ PRODUCT_COPY_FILES += \
     frameworks/native/data/etc/android.hardware.touchscreen.multitouch.distinct.xml:system/etc/permissions/android.hardware.touchscreen.multitouch.distinct.xml \
     frameworks/native/data/etc/android.software.webview.xml:system/etc/permissions/android.software.webview.xml \
     frameworks/native/data/etc/android.hardware.bluetooth.xml:system/etc/permissions/android.hardware.bluetooth.xml \
-    frameworks/native/data/etc/android.hardware.location.xml:system/etc/permissions/android.hardware.location.xml
+    frameworks/native/data/etc/android.hardware.location.xml:system/etc/permissions/android.hardware.location.xml \
+    frameworks/native/data/etc/android.hardware.location.gps.xml:system/etc/permissions/android.hardware.location.gps.xml
 
 # media codecs files that are not copied from stock rom
 PRODUCT_COPY_FILES += \
index 56ac18048991fc417c3fc14d2d0916ea32e079fe..ea39352c66d19c29ac1d60f78b8292416db735f5 100644 (file)
@@ -50,6 +50,7 @@ lib/egl/libGLESv1_CM_mali.so
 lib/egl/libGLESv2_mali.so
 lib/hw/audio.primary.mt8127.so
 lib/hw/camera.mt8127.so
+lib/hw/gps.default.so
 lib/hw/gralloc.mt8127.so
 lib/hw/hwcomposer.mt8127.so
 lib/hw/power.default.so
@@ -132,6 +133,7 @@ lib/libmatv_cust.so
 lib/libmemtrack.so
 lib/libmhalImageCodec.so
 lib/libmmprofile.so
+lib/libmnl.so
 lib/libmp2dec_sa.ca7.so
 lib/libmp4enc_sa.ca7.so
 lib/libmpo.so
@@ -167,6 +169,7 @@ lib/libvp8dec_sa.ca7.so
 lib/libvp9dec_sa.ca7.so
 vendor/media/LMspeed_508.emd
 vendor/media/PFFprec_600.emd
+xbin/mnld
 
 # Widevine - from crackling
 vendor/lib/libwvdrm_L3.so|7e77482481197997294a834bfbc817a01b6075cd
index e0cf3900d083f9228231b75b408d7623cc3baade..1e514569321939634c59de6f6da8d02a2ba22452 100644 (file)
@@ -509,6 +509,13 @@ service MtkCodecService /system/bin/MtkCodecService
     user system
     group audio media sdcard_r
 
+#MNLD daemon
+service mnld /system/xbin/mnld
+    class main
+    user gps
+    group gps inet misc sdcard_rw sdcard_r media_rw system
+    socket mnld stream 660 gps system
+
 on boot
 # AGPS
     mkdir /data/agps_supl 0771 gps system
index 8e86efca86e253a05163eed8ae52b6f6c7ad4795..cc9c70301de5161f0cbe95e6eb757b6058e92035 100644 (file)
@@ -44,3 +44,10 @@ allow mnld block_device:dir search;
 
 file_type_auto_trans(mnld,system_data_file,mnld_data_file);
 file_type_auto_trans(mnld,apk_data_file,mnld_data_file);
+
+
+allow mnld nvram_device:chr_file { read write open ioctl };
+allow mnld mmc_device:blk_file { read write open };
+allow mnld sysfs_boot_mode:file { read open };
+allow mnld system_data_file:dir { remove_name };
+allow mnld system_data_file:file { open };