From baa3641d5f8e64288f45432d6e4989701dbbcc0f Mon Sep 17 00:00:00 2001 From: Raghuram Subramani Date: Thu, 17 Oct 2024 09:31:12 +0530 Subject: msm8996-common: Import newer GPS stack from xiaomi_msm8996-common Change-Id: I5afe78048c4af3648b2d267d71a58b63b9decbc9 --- gps/pla/Android.mk | 15 ++++++++++++++- gps/pla/android/loc_pla.h | 9 ++++++++- gps/pla/oe/loc_pla.h | 36 ++++++++++++++++++++++++++++++++++-- 3 files changed, 56 insertions(+), 4 deletions(-) (limited to 'gps/pla') diff --git a/gps/pla/Android.mk b/gps/pla/Android.mk index 5d6bb97..a57861d 100644 --- a/gps/pla/Android.mk +++ b/gps/pla/Android.mk @@ -1,6 +1,19 @@ GNSS_CFLAGS := \ -Werror \ - -Wno-undefined-bool-conversion + -Wno-error=unused-parameter \ + -Wno-error=macro-redefined \ + -Wno-error=reorder \ + -Wno-error=missing-braces \ + -Wno-error=self-assign \ + -Wno-error=enum-conversion \ + -Wno-error=logical-op-parentheses \ + -Wno-error=null-arithmetic \ + -Wno-error=null-conversion \ + -Wno-error=parentheses-equality \ + -Wno-error=undefined-bool-conversion \ + -Wno-error=tautological-compare \ + -Wno-error=switch \ + -Wno-error=date-time ifneq ($(BOARD_VENDOR_QCOM_GPS_LOC_API_HARDWARE),) ifneq ($(BUILD_TINY_ANDROID),true) diff --git a/gps/pla/android/loc_pla.h b/gps/pla/android/loc_pla.h index 9caae73..ab8c75e 100644 --- a/gps/pla/android/loc_pla.h +++ b/gps/pla/android/loc_pla.h @@ -39,8 +39,15 @@ extern "C" { #endif #include -#include #include +#include +#include +#include + +#define UID_GPS (AID_GPS) +#define GID_GPS (AID_GPS) +#define UID_LOCCLIENT (4021) +#define GID_LOCCLIENT (4021) #define LOC_PATH_GPS_CONF_STR "/vendor/etc/gps.conf" #define LOC_PATH_IZAT_CONF_STR "/vendor/etc/izat.conf" diff --git a/gps/pla/oe/loc_pla.h b/gps/pla/oe/loc_pla.h index 3ca1964..1e3d6c5 100644 --- a/gps/pla/oe/loc_pla.h +++ b/gps/pla/oe/loc_pla.h @@ -30,16 +30,33 @@ #define __LOC_PLA__ #ifdef __cplusplus +#ifndef FEATURE_EXTERNAL_AP #include -#define uptimeMillis android::uptimeMillis +#endif /* FEATURE_EXTERNAL_AP */ +#include +#include +#include + +inline int64_t uptimeMillis() +{ + struct timespec ts; + int64_t time_ms = 0; + clock_gettime(CLOCK_BOOTTIME, &ts); + time_ms += (ts.tv_sec * 1000000000LL); + time_ms += ts.tv_nsec + 500000LL; + return time_ms / 1000000LL; +} extern "C" { #endif +#ifndef FEATURE_EXTERNAL_AP #include -#include #include +#endif /* FEATURE_EXTERNAL_AP */ +#include #include +#include #include #include #ifndef OFF_TARGET @@ -51,6 +68,11 @@ extern "C" { #define strlcpy strncpy #endif +#define UID_GPS (1021) +#define GID_GPS (1021) +#define UID_LOCCLIENT (4021) +#define GID_LOCCLIENT (4021) + #define LOC_PATH_GPS_CONF_STR "/etc/gps.conf" #define LOC_PATH_IZAT_CONF_STR "/etc/izat.conf" #define LOC_PATH_FLP_CONF_STR "/etc/flp.conf" @@ -60,6 +82,16 @@ extern "C" { #define LOC_PATH_XTWIFI_CONF_STR "/etc/xtwifi.conf" #define LOC_PATH_QUIPC_CONF_STR "/etc/quipc.conf" +#ifdef FEATURE_EXTERNAL_AP +#define PROPERTY_VALUE_MAX 92 + +inline int property_get(const char* key, char* value, const char* default_value) +{ + strlcpy(value, default_value, PROPERTY_VALUE_MAX - 1); + return strlen(value); +} +#endif /* FEATURE_EXTERNAL_AP */ + #ifdef __cplusplus } #endif /*__cplusplus */ -- cgit v1.2.3