gps: refine iGNSS build system

Bug: 315915958
Test: build pass and GPS function works
Change-Id: I130dde1a1ad1d0715adc93503f71c7ea83e724a3
This commit is contained in:
Wayne Lin 2024-01-19 22:18:25 +08:00
parent 624db250b0
commit f78ffa2d5e
5 changed files with 438 additions and 7 deletions

View file

@ -44,7 +44,6 @@ include device/google/gs-common/bcmbt/bluetooth.mk
include device/google/gs-common/touch/gti/gti_dual.mk
include device/google/gs-common/touch/syna/syna19.mk
include device/google/gs-common/display/dump_second_display.mk
-include vendor/samsung_slsi/gps/s5400/location/gnssd/device-gnss.mk
# go/lyric-soong-variables
$(call soong_config_set,lyric,camera_hardware,comet)
@ -239,10 +238,16 @@ PRODUCT_SOONG_NAMESPACES += \
device/google/comet/uwb
# Location
# iGNSS
-include vendor/samsung_slsi/gps/s5400/device-gnss.mk
# gps.cfg
PRODUCT_SOONG_NAMESPACES += device/google/comet/location
$(call soong_config_set, gpssdk, buildtype, $(TARGET_BUILD_VARIANT))
PRODUCT_PACKAGES += gps.cfg
# eGNSS
# SDK build system
$(call soong_config_set, include_libsitril-gps-wifi, board_without_radio, $(BOARD_WITHOUT_RADIO))
include device/google/gs-common/gps/brcm/device.mk
PRODUCT_SOONG_NAMESPACES += device/google/comet/location
SOONG_CONFIG_NAMESPACES += gpssdk
SOONG_CONFIG_gpssdk += gpsconf

View file

@ -30,7 +30,20 @@ PRODUCT_MANUFACTURER := Google
PRODUCT_PROPERTY_OVERRIDES += \
ro.vendor.bluetooth.evb_bdaddr="22:22:22:33:44:55"
# Override to factory SDK
# Location
# iGNSS
PRODUCT_PACKAGES += \
sctd \
spad \
swcnd \
libmptool_json \
libmptool_log \
libmptool_utils \
sctd.json \
spad.json \
swcnd.json \
android.hardware.gnss@2.1-impl
# eGNSS
SOONG_CONFIG_NAMESPACES += gpssdk
SOONG_CONFIG_gpssdk += sdkv1
SOONG_CONFIG_gpssdk_sdkv1 := true

View file

@ -5,7 +5,50 @@ package {
}
soong_config_module_type {
name: "gps_prebuilt_etc",
name: "ignss_prebuilt_etc",
module_type: "prebuilt_etc",
config_namespace: "gpssdk",
variables: [
"buildtype",
],
properties: [
"src",
],
}
soong_config_string_variable {
name: "buildtype",
values: [
"user",
"userdebug",
"eng",
],
}
ignss_prebuilt_etc {
name: "gps.cfg",
soong_config_variables: {
buildtype: {
user: {
src: "user/gps.cfg",
},
userdebug: {
src: "userdebug/gps.cfg",
},
eng: {
src: "userdebug/gps.cfg",
},
conditions_default: {
src: "user/gps.cfg",
},
},
},
relative_install_path: "gnss",
vendor: true,
}
soong_config_module_type {
name: "egnss_prebuilt_etc",
module_type: "prebuilt_etc",
config_namespace: "gpssdk",
variables: [
@ -33,7 +76,7 @@ prebuilt_etc {
vendor: true,
}
gps_prebuilt_etc {
egnss_prebuilt_etc {
name: "gps.xml",
soong_config_variables: {
gpsconf: {
@ -58,7 +101,7 @@ gps_prebuilt_etc {
vendor: true,
}
gps_prebuilt_etc {
egnss_prebuilt_etc {
name: "lhd.conf",
soong_config_variables: {
gpsconf: {
@ -83,7 +126,7 @@ gps_prebuilt_etc {
vendor: true,
}
gps_prebuilt_etc {
egnss_prebuilt_etc {
name: "scd.conf",
soong_config_variables: {
gpsconf: {

123
location/user/gps.cfg Normal file
View file

@ -0,0 +1,123 @@
GlueLayer_ToolConfigSelection=3
debug_console=0
debug_enable=0
mem_dump_to_node=0
GlueLayer_IsGedKeyExist=1
GlueLayer_EnableGnssCfgInterface=1
gnss_device_type=K042
gnss_device_patch_address=0
gnss_device_patch_file=/vendor/firmware/kepler.bin
chpp_betp_client=1
gnss_device_data_port_chpp_spi_device=/dev/gnss_ipc
gnss_device_data_port_chpp_present=1
GlueLayer_YearOfHW=2023
scheduling_enabled=1
Chip_Configuration_AidingConfiguration=0x00020046
Chip_Configuration_RefClkControl=0x24
Chip_Configuration_DCXO_CrystalType=0x11
Chip_Configuration_GNSSConstConstraintDef = 0x60BF
LocTech_Constraints = 0x60BF
Chip_Configuration_RfMiscCtrl = 0x80008001
bdsUsedInUSPolicy=2
Chip_Configuration_FeatureCfg_DVS = 0
Chip_Configuration_FeatureCfg_DFS = 0
mailboxDisabled=0x8
gnss_rfic_chip_id=55400000
UseRtcForAiding=1
additional_rtc_uncertainty_ms=10
Sif_UseFwXtraInterface=0
Agnss_IsGloAidingEnable=0
SETCaps_IsOtdoa=1
SETCaps_IsLpp=1
PosReq_Supl2Params_SuplNiUdpPort=7275
GlueLayer_LPPCpBitmask=0x17
GlueLayer_IsCpLteNeighborCellEnable=1
GlueLayer_isReqDBHFromFwRefLoc=1
GlueLayer_isReqUBPFromPressureSensor=1
GlueLayer_IsMemsEnable=1
GlueLayer_MeasCorrCap=7
Chip_Configuration_mems_data_Configuration=13
Chip_Configuration_FeatureCfg_ANDRD_MEAS_CORR_ENABLE=1
CP_LocTech_PrimaryConst=0
CP_LocTech_Constraints=1
CP_LocTech_Requirements=0
UP_LocTech_PrimaryConst=0
UP_LocTech_Constraints=1
UP_LocTech_Requirements=0
SpotLogger_Allowed=0
soft_dog=0
isUseUncalAccel=0
GNSS_CARRIER_CONFIG_BEGIN
GNSS_CARRIER_ID=0
ENABLE_2G_CP_CAPS_MSA=1
ENABLE_2G_CP_CAPS_MSB=1
ENABLE_3G_CP_CAPS_MSA=1
ENABLE_3G_CP_CAPS_MSB=1
ENABLE_4G_CP_CAPS_MSA=1
ENABLE_4G_CP_CAPS_MSB=1
ENABLE_5G_CP_CAPS_MSA=1
ENABLE_5G_CP_CAPS_MSB=1
ENABLE_2G_UP_CAPS_MSA=1
ENABLE_2G_UP_CAPS_MSB=1
ENABLE_3G_UP_CAPS_MSA=1
ENABLE_3G_UP_CAPS_MSB=1
ENABLE_4G_UP_CAPS_MSA=1
ENABLE_4G_UP_CAPS_MSB=1
ENABLE_5G_UP_CAPS_MSA=0
ENABLE_5G_UP_CAPS_MSB=0
SUPL_SSL_METHOD=TLSv1_1
SUPL_HMAC_HASH=SHA256
SUPL_UT2_SEC=20
SUPL_UT3_SEC=20
ENABLE_LPP_CP=1
ENABLE_LPP_UP=0
ENABLE_LPPE_CP=3
ENABLE_LPPE_UP=0
ENABLE_NLP_IN_LPPE=1
ENABLE_NLP_IN_AGNSS=0
ENABLE_LPP_HA_GAD_SHAPE=0
USE_EMER_PDN_FOR_EMER_SUPL=1
GNSS_CARRIER_ID=1
GNSS_CARRIER_ID=2
ENABLE_3G_CP_CAPS_MSA=0
ENABLE_4G_CP_CAPS_MSA=0
ENABLE_NLP_IN_LPPE=0
ENABLE_NLP_IN_AGNSS=1
ENABLE_LPP_HA_GAD_SHAPE=1
GNSS_CARRIER_ID=3
ENABLE_LPP_UP=1
ENABLE_LPPE_UP=3
SUPL_SSL_METHOD=TLSv1_2
SUPL_UT2_SEC=10
SUPL_UT3_SEC=30
GNSS_CARRIER_ID=4
GNSS_CARRIER_ID=5
ENABLE_LPP_UP=1
ENABLE_LPPE_UP=3
GNSS_CARRIER_ID=6
ENABLE_LPP_CP=0
ENABLE_LPP_UP=1
ENABLE_LPPE_CP=0
ENABLE_LPPE_UP=3
GNSS_CARRIER_ID=7
ENABLE_LPP_CP=0
ENABLE_LPPE_CP=0
ENABLE_5G_CP_CAPS_MSA=0
ENABLE_5G_CP_CAPS_MSB=0
SUPL_SSL_METHOD=TLSv1
USE_EMER_PDN_FOR_EMER_SUPL=0
GNSS_CARRIER_ID=8
GNSS_CARRIER_ID=9
ENABLE_LPP_UP=1
ENABLE_LPPE_UP=3
GNSS_CARRIER_CONFIG_END

247
location/userdebug/gps.cfg Normal file
View file

@ -0,0 +1,247 @@
############################################
GlueLayer_ToolConfigSelection=3
user_ports_tcp_name=Autotest
user_ports_tcp_port=7555
debug_console=1
debug_dir=/data/vendor/gps/logs
############################################
GlueLayer_IsGedKeyExist=1
GlueLayer_EnableGnssCfgInterface=1
uni_log_max_file_count=5
uni_log_max_size_mb=20
uni_log_total_max_size_mb=100
debug_enable=1
mem_dump_to_node=1
gnss_device_type=K042
gnss_device_patch_address=0
gnss_device_patch_file=/vendor/firmware/kepler.bin
# CHIP_CONFIG_IO_OPT_HOSTIO_VIA_SECONDARY + CHIP_CONFIG_IO_OPT_CPMB_MASK
#Chip_Configuration_Io_Options=0x9
# enable DEBUG sync msg
#Chip_Configuration_Io_Options=0xD
# force CP crash on GAL bad ISM (1 is first instance, 2 is when we assert)
#Chip_Configuration_cpdbgsync=1
# Chip_Configuration_TrackerDebugMode = 0x10
# enables CHPP for SPI port
# uncomment the *chpp* lines below (and comment gnss_device-data_port_kepslim_present above) to use SPI+CHPP
# when using CHPP, make sure to enable the CHPP defines in build_settings.mak
chpp_betp_client=1
chpp_log_level=2
gnss_device_data_port_chpp_spi_device=/dev/gnss_ipc
gnss_device_data_port_chpp_present=1
### Update for VTS ###
GlueLayer_YearOfHW=2023
scheduling_enabled=1
### temporarily disable precise time aiding ###
Chip_Configuration_AidingConfiguration=0x00020046
# set shared reference clock for freq aiding (0x20)
# enable dcxo (0x04)
Chip_Configuration_RefClkControl=0x24
#Chip_Configuration_RefClkControl=0x20
#Chip_Configuration_RefClkUncertainty=20000
### Override for DCXO Cnom/TuneValue
#Chip_Configuration_DCXOtuneValue=5143
### DCXO Optional Parameters. #####
# Can specify Crystal type, and/or over-ride T0-inflection point ####
#
# Optionally specify DXCO Crystal type, and operation mode
# 8 bits. Lower 4 bits Crystal ID# (0-15)
# Upper 4 bits Poly Configuration: (0/1)
# Poly Configuration: 0: Use CP's poly, 1: Force use of default manufactures polynomial
### Crystal Types:
## 0 - Unknown/Default
## 1 - Kyocera CT1612RB
## 2 - NDK NX1612SD CS12311
## 3 - NDK NX1612SD CS13950
## 4 - NDK NX1612SD CS15298
## 5 - KDS 7CG07680A10
## 6- TXC 0W76870003
## E.g. Use Kyocera, and ignore CP's polynomial: DCXO_CrystalType=0x11
## E.g. Use KDS, and Use CP's polynomial: DCXO_CrystalType=0x05
## LOOK! S5400 ERD's uses NDK(2), Phones use Kyocera(1). Default set to phone (1)
Chip_Configuration_DCXO_CrystalType=0x11
## Optionally specify DXCO Inflection point temperature, ####
# This will override any default value or value in Crystal type ####
# Value is degrees C x 100 E.g. 2855 = 28.55 deg C
# Range should be 2000 to 3100
#Chip_Configuration_DCXO_InflectionPoint=2855
# L1 + L5 MCW
Chip_Configuration_GNSSConstConstraintDef = 0x60BF
LocTech_Constraints = 0x60BF
Chip_Configuration_RfMiscCtrl = 0x80008001
### 2C48 L1 only MCW ###
#Chip_Configuration_GNSSConstConstraintDef=0x602F
#Chip_Configuration_RfMiscCtrl=0x80008001
# L1 HYSPDY - CP
#Chip_Configuration_GNSSConstConstraintDef=0x602F
#LocTech_Constraints = 0x602F
#Chip_Configuration_RfMiscCtrl=0x8001
#Chip_Configuration_IspTestConfig=0x22242822
# Disable BDS in the U.S.
bdsUsedInUSPolicy=2
# DVS: 0 = Disabled, 1 = Enabled (default)
# DFS: 0 = Disabled, 1 = Enabled (default)
Chip_Configuration_FeatureCfg_DVS = 0
Chip_Configuration_FeatureCfg_DFS = 0
# This is a bitfield that will disable incoming interrupts for mailboxes
# AP = 0x1
# APM = 0x2
# CP = 0x4
# CHUB = 0x8
# The CHUB on the neus continually triggers a bit so this is to prevent
# it from continually waking the gnss.
mailboxDisabled=0x8
### Specify RFIC ID for K42 ###
# 55400000 = S5540 EVT0
gnss_rfic_chip_id=55400000
# Uncomment to Disable SUPL
#Aiding_AidingType=0
# Uncomment to Disable SUPL (Ignore Android Framework Requests to Enable SUPL)
#GlueLayer_EnableFwConfiguration=0
#Uncomment to disable SGEE
#Sif_OperationMode=0
# Enables RTC time aiding from Host
# 1 - enable, 0 - disable (default)
UseRtcForAiding=1
# increase rtc uncertainty from Host to hedge against bad fixes
additional_rtc_uncertainty_ms=10
# set to 1 for FW SGEE download - Requires Android FW to be properly configured
Sif_UseFwXtraInterface=0
# ChipCfg_GetGpsWeekFloor variable allows testing of old GPS weeks.
# Used here to adjust the GPS week for carrier testing.
# Simulations in the past may be based on any week number.
# Guidelines:
# If simulation week absolute week number is:
# 1-1023: ChipCfg_SetGpsWeekFloor=1
# 1024-2047: ChipCfg_SetGpsWeekFloor=1024
# 2048-3071: ChipCfg_SetGpsWeekFloor=2048
# Example: ChipCfg_GetGpsWeekFloor=1024
# The above sets the correct operation when the true week is between 1024 and 2048
# ChipCfg_GetGpsWeekFloor=0
Agnss_IsGloAidingEnable=0
SETCaps_IsOtdoa=1
SETCaps_IsLpp=1
PosReq_Supl2Params_SuplNiUdpPort=7275
GlueLayer_LPPCpBitmask=0x17
GlueLayer_IsCpLteNeighborCellEnable=1
GlueLayer_isReqDBHFromFwRefLoc=1
GlueLayer_isReqUBPFromPressureSensor=1
GlueLayer_IsMemsEnable=1
GlueLayer_MeasCorrCap=7
Chip_Configuration_mems_data_Configuration=13
Chip_Configuration_FeatureCfg_ANDRD_MEAS_CORR_ENABLE=1
CP_LocTech_PrimaryConst=0
CP_LocTech_Constraints=1
CP_LocTech_Requirements=0
UP_LocTech_PrimaryConst=0
UP_LocTech_Constraints=1
UP_LocTech_Requirements=0
SpotLogger_Allowed=0
soft_dog=0
# 0: Use calibrated Accel data 1: Use uncalibrated Accel data
isUseUncalAccel=0
GNSS_CARRIER_CONFIG_BEGIN
# DEFAULT
GNSS_CARRIER_ID=0
ENABLE_2G_CP_CAPS_MSA=1
ENABLE_2G_CP_CAPS_MSB=1
ENABLE_3G_CP_CAPS_MSA=1
ENABLE_3G_CP_CAPS_MSB=1
ENABLE_4G_CP_CAPS_MSA=1
ENABLE_4G_CP_CAPS_MSB=1
ENABLE_5G_CP_CAPS_MSA=1
ENABLE_5G_CP_CAPS_MSB=1
ENABLE_2G_UP_CAPS_MSA=1
ENABLE_2G_UP_CAPS_MSB=1
ENABLE_3G_UP_CAPS_MSA=1
ENABLE_3G_UP_CAPS_MSB=1
ENABLE_4G_UP_CAPS_MSA=1
ENABLE_4G_UP_CAPS_MSB=1
ENABLE_5G_UP_CAPS_MSA=0
ENABLE_5G_UP_CAPS_MSB=0
SUPL_SSL_METHOD=TLSv1_1
SUPL_HMAC_HASH=SHA256
SUPL_UT2_SEC=20
SUPL_UT3_SEC=20
ENABLE_LPP_CP=1
ENABLE_LPP_UP=0
ENABLE_LPPE_CP=3
ENABLE_LPPE_UP=0
ENABLE_NLP_IN_LPPE=1
ENABLE_NLP_IN_AGNSS=0
ENABLE_LPP_HA_GAD_SHAPE=0
USE_EMER_PDN_FOR_EMER_SUPL=1
# ATT
GNSS_CARRIER_ID=1
# TMO
GNSS_CARRIER_ID=2
ENABLE_3G_CP_CAPS_MSA=0
ENABLE_4G_CP_CAPS_MSA=0
ENABLE_NLP_IN_LPPE=0
ENABLE_NLP_IN_AGNSS=1
ENABLE_LPP_HA_GAD_SHAPE=1
# VZW
GNSS_CARRIER_ID=3
ENABLE_LPP_UP=1
ENABLE_LPPE_UP=3
SUPL_SSL_METHOD=TLSv1_2
SUPL_UT2_SEC=10
SUPL_UT3_SEC=30
# AIRTEL
GNSS_CARRIER_ID=4
# RAKUTEN
GNSS_CARRIER_ID=5
ENABLE_LPP_UP=1
ENABLE_LPPE_UP=3
# KDDI
GNSS_CARRIER_ID=6
ENABLE_LPP_CP=0
ENABLE_LPP_UP=1
ENABLE_LPPE_CP=0
ENABLE_LPPE_UP=3
# SBM
GNSS_CARRIER_ID=7
ENABLE_LPP_CP=0
ENABLE_LPPE_CP=0
ENABLE_5G_CP_CAPS_MSA=0
ENABLE_5G_CP_CAPS_MSB=0
SUPL_SSL_METHOD=TLSv1
USE_EMER_PDN_FOR_EMER_SUPL=0
# DOCOMO
GNSS_CARRIER_ID=8
# LAB
GNSS_CARRIER_ID=9
ENABLE_LPP_UP=1
ENABLE_LPPE_UP=3
GNSS_CARRIER_CONFIG_END