loc_pla.h 3.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. /* Copyright (c) 2014, 2020-2021 The Linux Foundation. All rights reserved.
  2. *
  3. * Redistribution and use in source and binary forms, with or without
  4. * modification, are permitted provided that the following conditions are
  5. * met:
  6. * * Redistributions of source code must retain the above copyright
  7. * notice, this list of conditions and the following disclaimer.
  8. * * Redistributions in binary form must reproduce the above
  9. * copyright notice, this list of conditions and the following
  10. * disclaimer in the documentation and/or other materials provided
  11. * with the distribution.
  12. * * Neither the name of The Linux Foundation nor the names of its
  13. * contributors may be used to endorse or promote products derived
  14. * from this software without specific prior written permission.
  15. *
  16. * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
  17. * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
  18. * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
  19. * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
  20. * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  21. * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  22. * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
  23. * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
  24. * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
  25. * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
  26. * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  27. */
  28. #ifndef __LOC_PLA__
  29. #define __LOC_PLA__
  30. #ifdef __cplusplus
  31. #include <utils/SystemClock.h>
  32. #define uptimeMillis() android::uptimeMillis()
  33. #define elapsedRealtime() android::elapsedRealtime()
  34. #endif
  35. #ifdef __cplusplus
  36. extern "C" {
  37. #endif
  38. #include <cutils/properties.h>
  39. #include <cutils/sched_policy.h>
  40. #include <cutils/android_filesystem_config.h>
  41. #include <string.h>
  42. #include <stdlib.h>
  43. #define UID_GPS (AID_GPS)
  44. #define GID_GPS (AID_GPS)
  45. #define UID_LOCCLIENT (4021)
  46. #define GID_LOCCLIENT (4021)
  47. #define LOC_PATH_GPS_CONF_STR "/vendor/etc/gps.conf"
  48. #define LOC_PATH_IZAT_CONF_STR "/vendor/etc/izat.conf"
  49. #define LOC_PATH_BATCHING_CONF_STR "/vendor/etc/batching.conf"
  50. #define LOC_PATH_LOWI_CONF_STR "/vendor/etc/lowi.conf"
  51. #define LOC_PATH_SAP_CONF_STR "/vendor/etc/sap.conf"
  52. #define LOC_PATH_APDR_CONF_STR "/vendor/etc/apdr.conf"
  53. #define LOC_PATH_XTWIFI_CONF_STR "/vendor/etc/xtwifi.conf"
  54. #define LOC_PATH_QUIPC_CONF_STR "/vendor/etc/quipc.conf"
  55. #define LOC_PATH_ANT_CORR_STR "/vendor/etc/gnss_antenna_info.conf"
  56. #define LOC_PATH_SLIM_CONF_STR "/vendor/etc/slim.conf"
  57. #define LOC_PATH_VPE_CONF_STR "/vendor/etc/vpeglue.conf"
  58. #define LOC_PATH_QPPE_CONF_STR "/vendor/etc/qppe.conf"
  59. /*!
  60. * @brief Function for memory block copy
  61. *
  62. * @param[out] p_Dest Destination buffer.
  63. * @param[in] q_DestSize Destination buffer size.
  64. * @param[in] p_Src Source buffer.
  65. * @param[in] q_SrcSize Source buffer size.
  66. *
  67. * @return Number of bytes copied.
  68. */
  69. static inline size_t memscpy (void *p_Dest, size_t q_DestSize, const void *p_Src, size_t q_SrcSize)
  70. {
  71. size_t res = (q_DestSize < q_SrcSize) ? q_DestSize : q_SrcSize;
  72. if (p_Dest && p_Src && q_DestSize > 0 && q_SrcSize > 0) {
  73. memcpy(p_Dest, p_Src, res);
  74. } else {
  75. res = 0;
  76. }
  77. return res;
  78. }
  79. /*API for boot kpi marker prints */
  80. inline int loc_boot_kpi_marker(const char * pFmt __unused, ...)
  81. {
  82. return -1;
  83. }
  84. #ifdef __cplusplus
  85. }
  86. #endif /*__cplusplus */
  87. #endif /* __LOC_PLA__ */