From 6509f42e3add2b3d7271c4c2be874651a5a83262 Mon Sep 17 00:00:00 2001 From: duqiu2 Date: Wed, 4 Sep 2019 18:27:05 +0800 Subject: [PATCH] wisl: rav: enable stmvl53l3 for rav Rav use stmvl53l3 rather than stmvl53l1, so we need enable it from code Change-Id: Iba5d4bb11bb1a35303d62d397c6a0bc8d90caba1 Signed-off-by: duqiu2 Reviewed-on: https://gerrit.mot.com/1415340 SLTApproved: Slta Waiver SME-Granted: SME Approvals Granted Tested-by: Jira Key Reviewed-by: Jiacheng Ou Reviewed-by: Tao Sun Submit-Approved: Jira Key --- drivers/input/misc/vl53L1/Android.mk | 4 + drivers/input/misc/vl53L1/Kbuild | 4 + .../vl53L1/inc/vl53l1_tuning_parm_defaults.h | 80 +++++++++++++++++++ 3 files changed, 88 insertions(+) diff --git a/drivers/input/misc/vl53L1/Android.mk b/drivers/input/misc/vl53L1/Android.mk index 970b45287012..5b8b9df10e2e 100644 --- a/drivers/input/misc/vl53L1/Android.mk +++ b/drivers/input/misc/vl53L1/Android.mk @@ -1,6 +1,10 @@ DLKM_DIR := motorola/kernel/modules LOCAL_PATH := $(call my-dir) +ifeq ($(PRODUCT_USE_TOF_vl53l3),true) + KERNEL_CFLAGS += CONFIG_INPUT_MISC_TOF_USE_VL53L3=y +endif + include $(CLEAR_VARS) LOCAL_MODULE := stmvl53l1.ko LOCAL_MODULE_TAGS := optional diff --git a/drivers/input/misc/vl53L1/Kbuild b/drivers/input/misc/vl53L1/Kbuild index 8fec508362ad..c08a9bd3a832 100644 --- a/drivers/input/misc/vl53L1/Kbuild +++ b/drivers/input/misc/vl53L1/Kbuild @@ -29,3 +29,7 @@ stmvl53l1-objs += src/vl53l1_zone_presets.o src/vl53l1_nvm.o stmvl53l1-objs += src/vl53l1_api_debug.o src/vl53l1_core_support.o stmvl53l1-objs += src/vl53l1_wait.o ipp/ipp_linux.o stmvl53l1-objs += src/vl53l1_nvm_debug.o + +ifneq ($(filter m y,$(CONFIG_INPUT_MISC_TOF_USE_VL53L3)),) + EXTRA_CFLAGS += -DTOF_USE_VL53L3_EN +endif diff --git a/drivers/input/misc/vl53L1/inc/vl53l1_tuning_parm_defaults.h b/drivers/input/misc/vl53L1/inc/vl53l1_tuning_parm_defaults.h index 119d67e0b17e..dc989c39f20e 100644 --- a/drivers/input/misc/vl53L1/inc/vl53l1_tuning_parm_defaults.h +++ b/drivers/input/misc/vl53L1/inc/vl53l1_tuning_parm_defaults.h @@ -135,26 +135,46 @@ extern "C" { ((uint8_t) 1) #define VL53L1_TUNINGPARM_HIST_AMB_THRESH_SIGMA_0_DEFAULT \ ((uint8_t) 80) +#ifdef TOF_USE_VL53L3_EN +#define VL53L1_TUNINGPARM_HIST_AMB_THRESH_SIGMA_1_DEFAULT \ +((uint8_t) 80) +#else #define VL53L1_TUNINGPARM_HIST_AMB_THRESH_SIGMA_1_DEFAULT \ ((uint8_t) 112) +#endif #define VL53L1_TUNINGPARM_HIST_MIN_AMB_THRESH_EVENTS_DEFAULT \ ((int32_t) 16) #define VL53L1_TUNINGPARM_HIST_AMB_EVENTS_SCALER_DEFAULT \ ((uint16_t) 4157) #define VL53L1_TUNINGPARM_HIST_NOISE_THRESHOLD_DEFAULT \ ((uint16_t) 50) +#ifdef TOF_USE_VL53L3_EN +#define VL53L1_TUNINGPARM_HIST_SIGNAL_TOTAL_EVENTS_LIMIT_DEFAULT \ +((int32_t) 50) +#else #define VL53L1_TUNINGPARM_HIST_SIGNAL_TOTAL_EVENTS_LIMIT_DEFAULT \ ((int32_t) 100) +#endif #define VL53L1_TUNINGPARM_HIST_SIGMA_EST_REF_MM_DEFAULT \ ((uint8_t) 1) +#ifdef TOF_USE_VL53L3_EN +#define VL53L1_TUNINGPARM_HIST_SIGMA_THRESH_MM_DEFAULT \ +((uint16_t) 180) +#else #define VL53L1_TUNINGPARM_HIST_SIGMA_THRESH_MM_DEFAULT \ ((uint16_t) 160) +#endif #define VL53L1_TUNINGPARM_HIST_GAIN_FACTOR_DEFAULT \ ((uint16_t) 1987) #define VL53L1_TUNINGPARM_CONSISTENCY_HIST_PHASE_TOLERANCE_DEFAULT \ ((uint8_t) 8) +#ifdef TOF_USE_VL53L3_EN +#define VL53L1_TUNINGPARM_CONSISTENCY_HIST_MIN_MAX_TOLERANCE_MM_DEFAULT \ +((uint16_t) 0) +#else #define VL53L1_TUNINGPARM_CONSISTENCY_HIST_MIN_MAX_TOLERANCE_MM_DEFAULT \ ((uint16_t) 250) +#endif #define VL53L1_TUNINGPARM_CONSISTENCY_HIST_EVENT_SIGMA_DEFAULT \ ((uint8_t) 0) #define VL53L1_TUNINGPARM_CONSISTENCY_HIST_EVENT_SIGMA_MIN_SPAD_LIMIT_DEFAULT \ @@ -179,12 +199,22 @@ extern "C" { ((uint16_t) 140) #define VL53L1_TUNINGPARM_XTALK_DETECT_MIN_MAX_TOLERANCE_DEFAULT \ ((uint16_t) 50) +#ifdef TOF_USE_VL53L3_EN +#define VL53L1_TUNINGPARM_XTALK_DETECT_MAX_VALID_RATE_KCPS_DEFAULT \ +((uint16_t) 400) +#else #define VL53L1_TUNINGPARM_XTALK_DETECT_MAX_VALID_RATE_KCPS_DEFAULT \ ((uint16_t) 64000) +#endif #define VL53L1_TUNINGPARM_XTALK_DETECT_EVENT_SIGMA_DEFAULT \ ((uint8_t) 80) +#ifdef TOF_USE_VL53L3_EN +#define VL53L1_TUNINGPARM_HIST_XTALK_MARGIN_KCPS_DEFAULT \ +((int16_t) 0) +#else #define VL53L1_TUNINGPARM_HIST_XTALK_MARGIN_KCPS_DEFAULT \ ((int16_t) 512) +#endif #define VL53L1_TUNINGPARM_CONSISTENCY_LITE_PHASE_TOLERANCE_DEFAULT \ ((uint8_t) 2) #define VL53L1_TUNINGPARM_PHASECAL_TARGET_DEFAULT \ @@ -263,8 +293,13 @@ extern "C" { ((uint16_t) 1280) #define VL53L1_TUNINGPARM_REFSPADCHAR_MAX_COUNTRATE_LIMIT_MCPS_DEFAULT \ ((uint16_t) 5120) +#ifdef TOF_USE_VL53L3_EN +#define VL53L1_TUNINGPARM_XTALK_EXTRACT_NUM_OF_SAMPLES_DEFAULT \ +((uint8_t) 13) +#else #define VL53L1_TUNINGPARM_XTALK_EXTRACT_NUM_OF_SAMPLES_DEFAULT \ ((uint8_t) 7) +#endif #define VL53L1_TUNINGPARM_XTALK_EXTRACT_MIN_FILTER_THRESH_MM_DEFAULT \ ((int16_t) -70) #define VL53L1_TUNINGPARM_XTALK_EXTRACT_MAX_FILTER_THRESH_MM_DEFAULT \ @@ -273,8 +308,13 @@ extern "C" { ((uint16_t) 5120) #define VL53L1_TUNINGPARM_XTALK_EXTRACT_PHASECAL_TIMEOUT_US_DEFAULT \ ((uint32_t) 15000) +#ifdef TOF_USE_VL53L3_EN +#define VL53L1_TUNINGPARM_XTALK_EXTRACT_MAX_VALID_RATE_KCPS_DEFAULT \ +((uint16_t) 640) +#else #define VL53L1_TUNINGPARM_XTALK_EXTRACT_MAX_VALID_RATE_KCPS_DEFAULT \ ((uint16_t) 64000) +#endif #define VL53L1_TUNINGPARM_XTALK_EXTRACT_SIGMA_THRESHOLD_MM_DEFAULT \ ((uint16_t) 140) #define VL53L1_TUNINGPARM_XTALK_EXTRACT_DSS_TIMEOUT_US_DEFAULT \ @@ -353,22 +393,47 @@ extern "C" { ((uint32_t) 2500) #define VL53L1_TUNINGPARM_TIMED_RANGE_CONFIG_TIMEOUT_US_DEFAULT \ ((uint32_t) 13000) +#ifdef TOF_USE_VL53L3_EN +#define VL53L1_TUNINGPARM_DYNXTALK_SMUDGE_MARGIN_DEFAULT \ +((uint16_t) 0) +#else #define VL53L1_TUNINGPARM_DYNXTALK_SMUDGE_MARGIN_DEFAULT \ ((uint16_t) 512) +#endif +#ifdef TOF_USE_VL53L3_EN +#define VL53L1_TUNINGPARM_DYNXTALK_NOISE_MARGIN_DEFAULT \ +((uint32_t) 100) +#else #define VL53L1_TUNINGPARM_DYNXTALK_NOISE_MARGIN_DEFAULT \ ((uint32_t) 500) +#endif #define VL53L1_TUNINGPARM_DYNXTALK_XTALK_OFFSET_LIMIT_DEFAULT \ ((uint32_t) 0) #define VL53L1_TUNINGPARM_DYNXTALK_XTALK_OFFSET_LIMIT_HI_DEFAULT \ ((uint8_t) 0) #define VL53L1_TUNINGPARM_DYNXTALK_SAMPLE_LIMIT_DEFAULT \ ((uint32_t) 200) +#ifdef TOF_USE_VL53L3_EN +#define VL53L1_TUNINGPARM_DYNXTALK_SINGLE_XTALK_DELTA_DEFAULT \ +((uint32_t) 2048) +#else #define VL53L1_TUNINGPARM_DYNXTALK_SINGLE_XTALK_DELTA_DEFAULT \ ((uint32_t) 10240) +#endif +#ifdef TOF_USE_VL53L3_EN +#define VL53L1_TUNINGPARM_DYNXTALK_AVERAGED_XTALK_DELTA_DEFAULT \ +((uint32_t) 308) +#else #define VL53L1_TUNINGPARM_DYNXTALK_AVERAGED_XTALK_DELTA_DEFAULT \ ((uint32_t) 4096) +#endif +#ifdef TOF_USE_VL53L3_EN +#define VL53L1_TUNINGPARM_DYNXTALK_CLIP_LIMIT_DEFAULT \ +((uint32_t) 10240) +#else #define VL53L1_TUNINGPARM_DYNXTALK_CLIP_LIMIT_DEFAULT \ ((uint32_t) 1046528) +#endif #define VL53L1_TUNINGPARM_DYNXTALK_SCALER_CALC_METHOD_DEFAULT \ ((uint8_t) 0) #define VL53L1_TUNINGPARM_DYNXTALK_XGRADIENT_SCALER_DEFAULT \ @@ -379,14 +444,29 @@ extern "C" { ((uint8_t) 0) #define VL53L1_TUNINGPARM_DYNXTALK_SMUDGE_COR_SINGLE_APPLY_DEFAULT \ ((uint8_t) 0) +#ifdef TOF_USE_VL53L3_EN +#define VL53L1_TUNINGPARM_DYNXTALK_XTALK_AMB_THRESHOLD_DEFAULT \ +((uint32_t) 128) +#else #define VL53L1_TUNINGPARM_DYNXTALK_XTALK_AMB_THRESHOLD_DEFAULT \ ((uint32_t) 1280) +#endif #define VL53L1_TUNINGPARM_DYNXTALK_NODETECT_AMB_THRESHOLD_KCPS_DEFAULT \ ((uint32_t) 57671680) +#ifdef TOF_USE_VL53L3_EN +#define VL53L1_TUNINGPARM_DYNXTALK_NODETECT_SAMPLE_LIMIT_DEFAULT \ +((uint32_t) 40) +#else #define VL53L1_TUNINGPARM_DYNXTALK_NODETECT_SAMPLE_LIMIT_DEFAULT \ ((uint32_t) 10) +#endif +#ifdef TOF_USE_VL53L3_EN +#define VL53L1_TUNINGPARM_DYNXTALK_NODETECT_XTALK_OFFSET_KCPS_DEFAULT \ +((uint32_t) 410) +#else #define VL53L1_TUNINGPARM_DYNXTALK_NODETECT_XTALK_OFFSET_KCPS_DEFAULT \ ((uint32_t) 2048) +#endif #define VL53L1_TUNINGPARM_DYNXTALK_NODETECT_MIN_RANGE_MM_DEFAULT \ ((uint16_t) 900) #define VL53L1_TUNINGPARM_LOWPOWERAUTO_VHV_LOOP_BOUND_DEFAULT \