4133 files changed
+297870
No files matched your search
+106
@@ -0,0 +1,106 @@
|
||||
#!/system/bin/sh
|
||||
#
|
||||
# Copyright 2023 Google LLC. All Rights Reserved.
|
||||
#
|
||||
# Caiman/Komodo/Tokay Calibration Sub-Script.
|
||||
#
|
||||
# Contains CM4/KM4/TK4-specific sensor information for sensor_cal.
|
||||
|
||||
# Sensors supported for calibration.
|
||||
SUPPORTED_SENSORS="accel als baro gyro prox rls spectral"
|
||||
NON_CAL_PHYSICAL_SENSORS="baro_temp flicker imu_temp mag"
|
||||
|
||||
product_name=$(getprop ro.hardware)
|
||||
if [[ "${product_name}" == "caiman" || "${product_name}" == "komodo" ]]; then
|
||||
NON_CAL_PHYSICAL_SENSORS+=" fir_temp"
|
||||
fi
|
||||
|
||||
#######################################
|
||||
# Converts a sensor name to its path.
|
||||
# Globals:
|
||||
# CAL_PARAMS
|
||||
# SENSOR
|
||||
# SENSOR_NAME
|
||||
# SENSOR_PATH
|
||||
# Arguments:
|
||||
# None
|
||||
# Outputs:
|
||||
# Saves the sensor path in SENSOR_PATH.
|
||||
# Logging based on set VERBOSITY level.
|
||||
#######################################
|
||||
sensor_cal::sensor_to_path() {
|
||||
if [[ "${SENSOR}" == "accel" ]]; then
|
||||
SENSOR_PATH="/fac_cal/dev/icm45631/0/accel"
|
||||
SENSOR_NAME="icm45631"
|
||||
LIST_NAME="ICM45631 Accelerometer"
|
||||
# Add parameters in addition to the original ones.
|
||||
CAL_PARAMS+=" avg_odr_25"
|
||||
elif [[ "${SENSOR}" == "als" ]]; then
|
||||
SENSOR_PATH="/fac_cal/dev/tmd3733/0/als"
|
||||
SENSOR_NAME="tmd3733"
|
||||
LIST_NAME="TMD3733 Ambient Light"
|
||||
SENSOR_TYPE="als"
|
||||
CAL_PARAMS=" \
|
||||
start_delay_ns start_delay_2_ns\
|
||||
clear_gain6_ratio clear_gain7_ratio clear_gain8_ratio clear_gain9_ratio \
|
||||
clear_gain10_ratio clear_gain11_ratio clear_gain12_ratio \
|
||||
red_gain6_ratio red_gain7_ratio red_gain8_ratio red_gain9_ratio \
|
||||
red_gain10_ratio red_gain11_ratio red_gain12_ratio red_clear_ratio \
|
||||
green_gain6_ratio green_gain7_ratio green_gain8_ratio green_gain9_ratio \
|
||||
green_gain10_ratio green_gain11_ratio green_gain12_ratio \
|
||||
green_clear_ratio \
|
||||
blue_gain6_ratio blue_gain7_ratio blue_gain8_ratio blue_gain9_ratio \
|
||||
blue_gain10_ratio blue_gain11_ratio blue_gain12_ratio blue_clear_ratio \
|
||||
disp_leak lux_scale panel_serial panel_type \
|
||||
vsync_delay_ns vsync_delay_2_ns leakage_at_dbv leakage_at_dbv_2 \
|
||||
rc_trim osc_tune"
|
||||
elif [[ "${SENSOR}" == "baro" ]]; then
|
||||
SENSOR_PATH="/fac_cal/dev/icp20100/0/baro"
|
||||
SENSOR_NAME="icp20100"
|
||||
LIST_NAME="ICP20100 Pressure Sensor"
|
||||
elif [[ "${SENSOR}" == "gyro" ]]; then
|
||||
SENSOR_PATH="/fac_cal/dev/icm45631/0/gyro"
|
||||
SENSOR_NAME="icm45631"
|
||||
LIST_NAME="ICM45631 Gyroscope"
|
||||
# Add parameters in addition to the original ones.
|
||||
CAL_PARAMS+=" avg_odr_25"
|
||||
elif [[ "${SENSOR}" == "prox" ]]; then
|
||||
SENSOR_PATH="/fac_cal/dev/tmd3733/0/prox"
|
||||
SENSOR_NAME="tmd3733"
|
||||
LIST_NAME="TMD3733 Proximity"
|
||||
CAL_PARAMS=" \
|
||||
bxtalk pdata_scale vcsel_ma temp_coeff"
|
||||
elif [[ "${SENSOR}" == "rls" ]]; then
|
||||
SENSOR_PATH="/fac_cal/dev/vd6282/0/rls"
|
||||
SENSOR_NAME="vd6282"
|
||||
LIST_NAME="VD6282 Rear Light Sensor"
|
||||
CAL_PARAMS="fac_cal_transform g_to_lux"
|
||||
elif [[ "${SENSOR}" == "spectral" ]]; then
|
||||
SENSOR_PATH="/fac_cal/dev/vd6282/0/spectral"
|
||||
SENSOR_NAME="vd6282"
|
||||
LIST_NAME="VD6282 Spectral Sensor"
|
||||
CAL_PARAMS=" \
|
||||
dark_r dark_g dark_b dark_ir dark_clr1 dark_clr2 \
|
||||
rals_r rals_g rals_b rals_ir rals_clr1 rals_clr2 rals_flk"
|
||||
|
||||
###############################
|
||||
## Non cal physical sensors. ##
|
||||
###############################
|
||||
elif [[ "${SENSOR}" == "baro_temp" ]]; then
|
||||
LIST_NAME="ICP20100 Temperature"
|
||||
elif [[ "${SENSOR}" == "fir_temp" ]]; then
|
||||
LIST_NAME="MLX90632 FIR Temperature"
|
||||
elif [[ "${SENSOR}" == "flicker" ]]; then
|
||||
LIST_NAME="VD6282 Flicker Sensor"
|
||||
elif [[ "${SENSOR}" == "imu_temp" ]]; then
|
||||
LIST_NAME="ICM45631 Temperature"
|
||||
elif [[ "${SENSOR}" == "mag" ]]; then
|
||||
LIST_NAME="MMC5616 Magnetometer"
|
||||
|
||||
else
|
||||
sensor_cal::ERROR "Unknown or unimplemented sensor: ${SENSOR}"
|
||||
sensor_cal::exit_badparam
|
||||
fi
|
||||
|
||||
sensor_cal::DEBUG "Registry path: ${SENSOR_PATH}"
|
||||
}
|
||||
+2
@@ -0,0 +1,2 @@
|
||||
sensors.dynamic_sensor_hal.so
|
||||
sensors.usf.so
|
||||
@@ -0,0 +1,3 @@
|
||||
# MOTIONSTATE
|
||||
+/dev/motionstate/0
|
||||
name=Motion State
|
||||
@@ -0,0 +1,9 @@
|
||||
#
|
||||
# Common power configuration registry script.
|
||||
#
|
||||
+/power
|
||||
mips_vote_per_sampling_rate=0.4
|
||||
mips_max_vote=350
|
||||
|
||||
+/power/mips_voter
|
||||
enable=1
|
||||
@@ -0,0 +1,416 @@
|
||||
#
|
||||
# Tokay sensor device configuration registry script for all stages.
|
||||
#
|
||||
# Source of truth: go/pixel-sensor-list
|
||||
#
|
||||
|
||||
#
|
||||
# CDT Filter <CDT>:<mask>
|
||||
# CDT format: <0xPPPPSJIV> (P:Product, S:Stage, J:Major, I:Minor, V:Variant)
|
||||
# go/pixel-cdt-zuma
|
||||
# go/pixel-cdt-zuma-pro
|
||||
#
|
||||
|
||||
?+0xA0000:0xFFFF0000
|
||||
|
||||
#
|
||||
# Buses
|
||||
#
|
||||
|
||||
# I2C
|
||||
+/dev/i2c/0
|
||||
bus_name=i2c0
|
||||
bus_index=0
|
||||
|
||||
# I3C
|
||||
+/dev/i3c/1
|
||||
bus_name=i3c1
|
||||
bus_index=1
|
||||
|
||||
# SPI
|
||||
+/dev/spi/2
|
||||
bus_name=spi2
|
||||
bus_index=2
|
||||
|
||||
# PDM
|
||||
+/dev/pdm
|
||||
base_clk_hz=24576000
|
||||
|
||||
#
|
||||
# Sensors
|
||||
#
|
||||
|
||||
# IMU (ICM45631)
|
||||
+/dev/icm45631/0
|
||||
bus_name=i3c1
|
||||
bus_freq_hz=400000
|
||||
i3c_freq_hz=12300000
|
||||
bus_addr=0x68
|
||||
i3c_addr=0xa
|
||||
intr_id=43
|
||||
trigger_type=2
|
||||
priority=0
|
||||
spi_slew_rate_regval=5
|
||||
md_threshold=60
|
||||
md_duration_samples=1
|
||||
sd_threshold=60
|
||||
sd_timeout_ms=5000
|
||||
sd_batching_latency_ms=1000
|
||||
lowG_peak_threshold=848
|
||||
lowG_detect_timeout_ms=20
|
||||
lowG_debounce_timeout_ms=1000
|
||||
+/dev/icm45631/0/accel
|
||||
name=ICM45631 Accelerometer
|
||||
orientation_transform=-2 1 3
|
||||
fac_cal_transform=0.99726 0.00106 -0.00218 0.00011 0.99749 0.00258 0.00205 -0.00091 0.99791 0.01837 -0.00949 0.00297
|
||||
temp=33.26
|
||||
temp_sensitivity=0.00012 0.00043 0.0017
|
||||
+/dev/icm45631/0/gyro
|
||||
name=ICM45631 Gyroscope
|
||||
orientation_transform=-2 1 3
|
||||
fac_cal_transform=1.00252 0.00022 -0.00123 -0.00035 1.00091 0.0007 0.00103 -0.00177 0.99756 -0.00011 0.0012 -0.00062
|
||||
temp=33.26
|
||||
temp_sensitivity=0.00002 0.00002 0
|
||||
+/dev/icm45631/0/temp
|
||||
name=ICM45631 Temperature
|
||||
+/dev/icm45631/0/motion_detect
|
||||
name=ICM45631 Motion Detect
|
||||
+/dev/icm45631/0/stationary_detect
|
||||
name=ICM45631 Stationary Detect
|
||||
+/dev/icm45631/0/freefall_detect
|
||||
name=ICM45631 FreeFall Detect
|
||||
|
||||
# MAG (MMC5616WA)
|
||||
+/dev/mmc5616/0
|
||||
bus_name=i2c0
|
||||
bus_freq_hz=400000
|
||||
bus_addr=0x30
|
||||
+/dev/mmc5616/0/mag
|
||||
orientation_transform=1 2 3
|
||||
|
||||
# BARO (ICP20100)
|
||||
+/dev/icp20100/0
|
||||
bus_name=i2c0
|
||||
bus_freq_hz=400000
|
||||
bus_addr=0x63
|
||||
intr_id=47
|
||||
min_period_us=25000
|
||||
+/dev/icp20100/0/baro
|
||||
fac_cal_transform=1.0 0.0174
|
||||
temp=28.87
|
||||
temp_sensitivity=-0.00175
|
||||
+/dev/icp20100/0/temp
|
||||
|
||||
# ALSP (TMD3733)
|
||||
+/dev/tmd3733/0
|
||||
bus_name=i2c0
|
||||
bus_freq_hz=400000
|
||||
bus_addr=0x39
|
||||
intr_id=45
|
||||
anti_aliasing=1
|
||||
start_als_on_ap_power_on=1
|
||||
|
||||
+/dev/tmd3733/0/als
|
||||
max_gain_table=11 10 10 10 10 10
|
||||
# int{<hard_stop> <C_boost> <R_boost> <G_boost> <B_boost>}
|
||||
# max_gain[color] = MIN(hard_stop, max_gain_table[brightness] +
|
||||
# max_gain_chan_boost[color])
|
||||
max_gain_chan_boost=11 0 1 1 1
|
||||
# Number of EM cycles in a 60Hz frame.
|
||||
EM_cycle_count_60Hz=4
|
||||
# OCS TUNE golden cal value.
|
||||
osc_tune=-1
|
||||
# Display leakage golden cal value.
|
||||
leakage_at_dbv=15.938 3427.0 0 575.0
|
||||
|
||||
# Lux Filter parameters
|
||||
fast_filter_size=10
|
||||
slow_filter_size=100
|
||||
aod_fast_filter_size=3
|
||||
aod_slow_filter_size=3
|
||||
|
||||
# Prox delay itime table in microsecond.
|
||||
# Display HS mode.
|
||||
prox_delay_120hz=3300 4000 4823 5100 5260 5260
|
||||
prox_delay_60hz_hs=11690 12120 13075 12985 12930 12930
|
||||
|
||||
# Maximum lux value to report when hitting saturation at minimum gains.
|
||||
max_lux=200000
|
||||
|
||||
# Histogram Configuration.
|
||||
# Disable until ready.
|
||||
histo_enable=1
|
||||
# Display coordinates go from top left to bottom right.
|
||||
histo_roi_left=350
|
||||
histo_roi_top=130
|
||||
histo_roi_right=460
|
||||
histo_roi_bottom=250
|
||||
# Weights applied to the RBG color samples to calculate luma.
|
||||
# luma values:
|
||||
# luma = W_R * R + W_G * G + WB * B
|
||||
# with W_R + W_G + W_B = 1024
|
||||
histo_weight_r=146
|
||||
histo_weight_g=806
|
||||
histo_weight_b=72
|
||||
#
|
||||
# Leakage calculator configuration. The general format is:
|
||||
# leakage = luma_term(luma, dbv) * dbv_term(dbv)
|
||||
# The luma_term maps luma into a value and different equations may be used
|
||||
# depending on the current DBV value.
|
||||
# Similar, the dbv_term maps DBV into a value and may also use different
|
||||
# equations.
|
||||
# Each line represents one equation, and is of the format:
|
||||
# start-dbv end-dbv equation-type {coefficients}
|
||||
# This means the equation applies to the DBV range [start-dbv .. end-dbv].
|
||||
# There are two equation types currently:
|
||||
# 0: Polynominal: c0 + c1*L + c2*L^2 + .. + ci*L^i
|
||||
# 1: Natural Log: c0 + c1*ln(L + c2)
|
||||
histo_luma_eq0=0 183 0 0e0
|
||||
histo_luma_eq1=184 4096 0 0e0 0.00303
|
||||
histo_dbv_eq0=0 183 0 0e0
|
||||
histo_dbv_eq1=184 909 0 4.32155144e-03 9.35580848e-04 1.50114380e-07
|
||||
histo_dbv_eq2=910 3427 0 -3.01699825e+00 3.80906096e-03 -2.09298943e-07
|
||||
histo_dbv_eq3=3428 4096 0 16
|
||||
|
||||
# The maximum brightness (DBV) value up to which histogram is active.
|
||||
# This value should match one of the itime_table_brightness values.
|
||||
histo_max_brightness=4096
|
||||
# Minimum change needed for a leakage value to be reported, i.e.,
|
||||
# min_change = MAX(min_change_value, current_leakage_val * min_change_rate)
|
||||
histo_min_change_value=0.01
|
||||
histo_min_change_rate=0.01
|
||||
# Histogram polling interval in ms.
|
||||
histo_polling_interval=50
|
||||
# Fallback luma value to use when histogram returns error (e.g., due to DRM).
|
||||
histo_fallback_luma=128.0
|
||||
|
||||
+/dev/tmd3733/0/prox
|
||||
min_fps=30
|
||||
# Auto-baseline control:
|
||||
# 0: Special factory mode that determines one baseline using special settings.
|
||||
# 1: Manual baseline calculation using Prox samples from the chip.
|
||||
# 2: On-chip baseline calculation ("AXTALK").
|
||||
#
|
||||
# In the cases 1 and 2 the baseline is regularly recalibrated triggered by a
|
||||
# timer.
|
||||
#
|
||||
# Remove this property to completely disable any kind of baseline calibration.
|
||||
auto_baseline=2
|
||||
# BXTALK golden cal value.
|
||||
bxtalk=101
|
||||
# temp_coeff golden cal value.
|
||||
temp_coeff=6
|
||||
|
||||
+/dev/tmd3733/0/panel-b/als
|
||||
# Display leakage golden cal value.
|
||||
leakage_per_device_cal_enable=1
|
||||
leakage_at_dbv=49.4932 3628 8.39703 637.0
|
||||
# Prox delay itime table in microsecond.
|
||||
# Display HS mode.
|
||||
prox_delay_120hz=3400 4200 4200 4600 4600 4634
|
||||
prox_delay_60hz_hs=11800 12500 12675 12930 12930 12930
|
||||
|
||||
# Histogram Configuration.
|
||||
# Disable until ready.
|
||||
histo_enable=1
|
||||
# Display coordinates go from top left to bottom right.
|
||||
histo_roi_left=350
|
||||
histo_roi_top=130
|
||||
histo_roi_right=460
|
||||
histo_roi_bottom=250
|
||||
# Weights applied to the RBG color samples to calculate luma.
|
||||
# luma values:
|
||||
# luma = W_R * R + W_G * G + WB * B
|
||||
# with W_R + W_G + W_B = 1024
|
||||
histo_weight_r=146
|
||||
histo_weight_g=806
|
||||
histo_weight_b=72
|
||||
#
|
||||
# Leakage calculator configuration. The general format is:
|
||||
# leakage = luma_term(luma, dbv) * dbv_term(dbv)
|
||||
# The luma_term maps luma into a value and different equations may be used
|
||||
# depending on the current DBV value.
|
||||
# Similar, the dbv_term maps DBV into a value and may also use different
|
||||
# equations.
|
||||
# Each line represents one equation, and is of the format:
|
||||
# start-dbv end-dbv equation-type {coefficients}
|
||||
# This means the equation applies to the DBV range [start-dbv .. end-dbv].
|
||||
# There are two equation types currently:
|
||||
# 0: Polynominal: c0 + c1*L + c2*L^2 + .. + ci*L^i
|
||||
# 1: Natural Log: c0 + c1*ln(L + c2)
|
||||
histo_luma_eq0=0 0 0 0e0
|
||||
histo_luma_eq1=1 4096 0 6.06737066e-02 1.17612775e-02 -4.95300514e-05 6.87088684e-08
|
||||
histo_dbv_eq0=0 1 0 0e0
|
||||
histo_dbv_eq1=1 1180 0 4.20436044e-01 1.47385460e-03 -1.22492412e-06 5.32952455e-10
|
||||
histo_dbv_eq2=1181 3628 0 -9.36742416e+00 3.32296767e-02 -4.69024589e-05 3.38368101e-08 -1.31005707e-11 2.58611209e-15 -2.03691766e-19
|
||||
histo_dbv_eq3=3629 4096 0 51
|
||||
|
||||
# The maximum brightness (DBV) value up to which histogram is active.
|
||||
# This value should match one of the itime_table_brightness values.
|
||||
histo_max_brightness=4096
|
||||
# Minimum change needed for a leakage value to be reported, i.e.,
|
||||
# min_change = MAX(min_change_value, current_leakage_val * min_change_rate)
|
||||
histo_min_change_value=0.01
|
||||
histo_min_change_rate=0.01
|
||||
# Histogram polling interval in ms.
|
||||
histo_polling_interval=50
|
||||
# Fallback luma value to use when histogram returns error (e.g., due to DRM).
|
||||
histo_fallback_luma=128.0
|
||||
|
||||
+/dev/tmd3733/0/panel-b/prox
|
||||
# BXTALK golden cal value.
|
||||
bxtalk=235
|
||||
|
||||
# Display Info
|
||||
+/dev/display_info/0
|
||||
# Link to ALS attached to this display.
|
||||
attached_alsp=/dev/tmd3733/0
|
||||
|
||||
# RAINBOW (VD6282)
|
||||
+/dev/vd6282/0
|
||||
bus_name=i2c0
|
||||
bus_freq_hz=400000
|
||||
bus_addr=0x20
|
||||
pdm_id=4
|
||||
pcm_rate_hz=16000
|
||||
+/dev/vd6282/0/spectral
|
||||
auto_gain=1
|
||||
# On-change thresholds for each color channel c: min_delta[c] ratio[c].
|
||||
# A value of -1 disables a threshold.
|
||||
# Change events are determined as follows:
|
||||
# last_count[c]: the last sample count for each channel c
|
||||
# count[c]: the current sample count for each channel c
|
||||
# => delta[c] = abs(last_count[c] - count[c])
|
||||
# thresh[c] = max(min_delta[c], last_count[c] * ratio[c])
|
||||
# if delta[c] > thresh[c] for any channel c:
|
||||
# Send a new sample with all current channel counts
|
||||
r_change_thresh=-1 -1
|
||||
g_change_thresh=100 0.1
|
||||
b_change_thresh=-1 -1
|
||||
c1_change_thresh=100 0.1
|
||||
c2_change_thresh=-1 -1
|
||||
ir_change_thresh=-1 -1
|
||||
+/dev/vd6282/0/rls
|
||||
fix_fac_cal=1
|
||||
+/dev/vd6282/0/flicker
|
||||
auto_gain=1
|
||||
# Flicker capture modes:
|
||||
# 0: Normal (on-chip flicker processing, PDM converting to PCM).
|
||||
# 1: Direct1 (on-chip direct passthrough, PDM bypass, driver PCM converting).
|
||||
# 2: Direct2 (on-chip direct passthrough, PDM converting to PCM)
|
||||
flicker_mode=2
|
||||
|
||||
# Camera VSYNC
|
||||
+/dev/camera_vsync/0 # rear
|
||||
intr_id=57
|
||||
intr_trigger_type=2
|
||||
+/dev/camera_vsync/1 # front
|
||||
intr_id=58
|
||||
intr_trigger_type=2
|
||||
+/dev/camera_vsync/2 # rear ultra-wide-angle
|
||||
intr_id=59
|
||||
intr_trigger_type=2
|
||||
|
||||
# S3908
|
||||
+/dev/s3908/0
|
||||
bus_name=spi2
|
||||
bus_freq_hz=10000000
|
||||
spi_mode=0
|
||||
spi_word_size=8
|
||||
cs_gpio=67
|
||||
cs_clock_delay_us=1
|
||||
gesture_type=3
|
||||
intr_id=14
|
||||
intr_type=1
|
||||
panel_height_pixel=24240
|
||||
panel_height_mm=146
|
||||
single_tap_min_x=910
|
||||
single_tap_max_x=9890
|
||||
single_tap_min_y=1790
|
||||
single_tap_max_y=22450
|
||||
single_tap_min_frame_count=3
|
||||
single_tap_max_frame_count=31
|
||||
single_press_motion_tolerance=2550
|
||||
single_press_max_touch_size=40
|
||||
long_press_min_x=4400
|
||||
long_press_max_x=6400
|
||||
long_press_min_y=16700
|
||||
long_press_max_y=18700
|
||||
long_press_min_frame_count=1
|
||||
long_press_motion_tolerance_inner=2550
|
||||
long_press_max_touch_size=40
|
||||
long_press_marginal_min_x=4400
|
||||
long_press_marginal_max_x=6400
|
||||
long_press_marginal_min_y=16700
|
||||
long_press_marginal_max_y=18700
|
||||
long_press_monitor_channel_min_tx=6
|
||||
long_press_monitor_channel_max_tx=9
|
||||
long_press_monitor_channel_min_rx=24
|
||||
long_press_monitor_channel_max_rx=27
|
||||
long_press_min_node_count=8
|
||||
long_press_motion_tolerance_outer=5280
|
||||
send_lptw_to_kernel=1
|
||||
|
||||
# TBN
|
||||
+/tbn
|
||||
tbn_mode=2
|
||||
|
||||
# VSC.
|
||||
+/vsc
|
||||
quick_pick_up_enable=1
|
||||
single_tap_enable=1
|
||||
long_press_enable=1
|
||||
|
||||
+/vsc/auto_brightness
|
||||
# float[3]={LuxToEnter, LuxToExit, RemappedLux}
|
||||
lux_remap=-1.0 -1.0 -1.0
|
||||
# float[3]={MinDelta, MaxDelta, LuxRatio}
|
||||
lux_debounce_up=1 5000 0.15
|
||||
lux_debounce_down=0.1 5000 0.1
|
||||
# ALS[2], RLS[2], Fusion[2], each containing <maxSampleAgeMsec> and <maxNumOfSamples>
|
||||
filter_configs=500 60 500 30 500 90
|
||||
# float[3]={MaxNumOfSamplesToFilter, minLuxThresh, luxRatio}, set to 0 to disable
|
||||
als_startup_filter=0 0 0
|
||||
# float[3]={zeroPoint, onePoint, endPoint}, set to 0 to disable
|
||||
rear_lux_downscaling=0 0 0
|
||||
# Select fusion algorithm.
|
||||
# 0: Classic (old, using lower-lux scaling).
|
||||
# 1: Simple (new, avoids issues of classic)
|
||||
fusion_algo_select=1
|
||||
# Configuration of simple fusion algorithm.
|
||||
# float[3]={N, D, B}
|
||||
# [N]exit-night: sets the lux threshold below which is considered night.
|
||||
# [D]enter-day: sets the lux threshold above which is considered day.
|
||||
# i.e., lux <= N is night, N < lux < D is transition, lux >= D is day.
|
||||
# [B]very-low-light-boost: Additional boost factor, needs to be > 1.
|
||||
simple_fusion_algo_config=20 40 1.25
|
||||
|
||||
+/vsc/fusion_prox_voice_call
|
||||
# 0: Normal (fusion of Optical Prox with other sensors)
|
||||
# 1: Optical Prox Passthrough (skips all other fusion logic)
|
||||
# 2: Optical Prox Overwrite (runs fusion logic but outputs Optical Prox state)
|
||||
mode=0
|
||||
|
||||
# Timeout when in Interactive and FalseFar state before switching to Near.
|
||||
# Default: 1000ms
|
||||
interactive_false_far_timeout_ms=1000
|
||||
|
||||
# Horizontal angle between device and earth to enter and exit Interactive
|
||||
# state. Angles need to be less than 90 degrees, and exit >= enter.
|
||||
# Defaults: 45 (enter) and 50 (exit)
|
||||
interactive_thresh_angles=45 50
|
||||
|
||||
# Minimum horizontal angle between device and earth to qualify a valid
|
||||
# To-Ear gesture. Should be larger than the interactive exit angle.
|
||||
# Default: 60
|
||||
to_ear_thresh_angle=60
|
||||
|
||||
# Change in horizontal angle between device and earth to trigger a From-Ear
|
||||
# event. The initial angle to compare against is taken on a To-Ear event.
|
||||
# Default: 30
|
||||
from_ear_delta_thresh_angle=30
|
||||
|
||||
+/vsc/aad_prox
|
||||
# 0: Normal (fusion of Optical Prox with ultrasound presence detector)
|
||||
# 1: Optical Prox Passthrough (skips all other fusion logic)
|
||||
mode=1
|
||||
@@ -0,0 +1,152 @@
|
||||
#
|
||||
# Tokay sensor device configuration registry script.
|
||||
#
|
||||
# Source of truth: go/pixel-sensor-list
|
||||
#
|
||||
|
||||
#
|
||||
# CDT Filter <CDT>:<mask>
|
||||
# CDT format: <0xPPPPSJIV> (P:Product, S:Stage, J:Major, I:Minor, V:Variant)
|
||||
# go/pixel-cdt-zuma
|
||||
# go/pixel-cdt-zuma-pro
|
||||
#
|
||||
|
||||
?+0xA0000:0xFFFF0000
|
||||
# Exclude
|
||||
?-0xA2000:0xFFFFF000 # Proto
|
||||
?-0xA3000:0xFFFFF000 # EVT
|
||||
|
||||
#
|
||||
# Record reg_script.
|
||||
#
|
||||
|
||||
+/
|
||||
reg_script=tokay_dvt.reg
|
||||
|
||||
#
|
||||
# Sensors
|
||||
#
|
||||
|
||||
# MAG (MMC5616WA)
|
||||
+/dev/mmc5616/0/mag
|
||||
fac_cal_transform=0.9982 0.0531 0.0003 0.0034 0.9092 0.0218 0.0267 -0.043 1.0285 0.0 0.0 0.0
|
||||
|
||||
# ALSP (TMD3733)
|
||||
+/dev/tmd3733/0
|
||||
vsync_delay_ns=133334
|
||||
|
||||
+/dev/tmd3733/0/als
|
||||
lux_scale=5.16396
|
||||
c_coef=1
|
||||
r_coef=-0.82279221
|
||||
g_coef=0.49261751
|
||||
b_coef=-0.6698253
|
||||
itime_table_brightness=575 908 1115 2565 3427 4096
|
||||
itime_table=1600000 1000000 300000 300000 300000 1600000
|
||||
|
||||
clear_gain12_ratio=0.0625
|
||||
red_gain12_ratio=0.0625
|
||||
green_gain12_ratio=0.0625
|
||||
blue_gain12_ratio=0.0625
|
||||
|
||||
clear_gain11_ratio=0.12243
|
||||
red_gain11_ratio=0.12506
|
||||
green_gain11_ratio=0.12351
|
||||
blue_gain11_ratio=0.12553
|
||||
|
||||
clear_gain10_ratio=0.24835
|
||||
red_gain10_ratio=0.25041
|
||||
green_gain10_ratio=0.2491
|
||||
blue_gain10_ratio=0.25071
|
||||
|
||||
clear_gain9_ratio=0.49889
|
||||
red_gain9_ratio=0.5004
|
||||
green_gain9_ratio=0.49956
|
||||
blue_gain9_ratio=0.50073
|
||||
|
||||
clear_gain8_ratio=1.0
|
||||
red_gain8_ratio=1.0
|
||||
green_gain8_ratio=1.0
|
||||
blue_gain8_ratio=1.0
|
||||
|
||||
clear_gain7_ratio=1.99541
|
||||
red_gain7_ratio=1.99673
|
||||
green_gain7_ratio=1.99763
|
||||
blue_gain7_ratio=1.99551
|
||||
|
||||
clear_gain6_ratio=3.98396
|
||||
red_gain6_ratio=3.98855
|
||||
green_gain6_ratio=3.98703
|
||||
blue_gain6_ratio=3.98272
|
||||
|
||||
+/dev/tmd3733/0/prox
|
||||
pulse_count=4
|
||||
vcsel_ma=10
|
||||
far_threshold=40
|
||||
near_threshold=90
|
||||
pulse_len_us=64
|
||||
filter_len=4
|
||||
skip_count=0
|
||||
pdata_scale=3.99025
|
||||
gain1=8
|
||||
gain2=2.5
|
||||
|
||||
+/dev/tmd3733/0/panel-b
|
||||
vsync_delay_ns=183334
|
||||
|
||||
+/dev/tmd3733/0/panel-b/als
|
||||
lux_scale=4.57118
|
||||
itime_table_brightness=637 1180 1181 2565 3628 4096
|
||||
itime_table=1600000 1600000 300000 300000 300000 1600000
|
||||
|
||||
clear_gain12_ratio=0.0625
|
||||
red_gain12_ratio=0.0625
|
||||
green_gain12_ratio=0.0625
|
||||
blue_gain12_ratio=0.0625
|
||||
|
||||
clear_gain11_ratio=0.12535
|
||||
red_gain11_ratio=0.12388
|
||||
green_gain11_ratio=0.12543
|
||||
blue_gain11_ratio=0.12465
|
||||
|
||||
clear_gain10_ratio=0.25067
|
||||
red_gain10_ratio=0.24947
|
||||
green_gain10_ratio=0.25079
|
||||
blue_gain10_ratio=0.25001
|
||||
|
||||
clear_gain9_ratio=0.50057
|
||||
red_gain9_ratio=0.49972
|
||||
green_gain9_ratio=0.50045
|
||||
blue_gain9_ratio=0.50009
|
||||
|
||||
clear_gain8_ratio=1.0
|
||||
red_gain8_ratio=1.0
|
||||
green_gain8_ratio=1.0
|
||||
blue_gain8_ratio=1.0
|
||||
|
||||
clear_gain7_ratio=1.99525
|
||||
red_gain7_ratio=1.99635
|
||||
green_gain7_ratio=1.99594
|
||||
blue_gain7_ratio=1.99719
|
||||
|
||||
clear_gain6_ratio=3.98519
|
||||
red_gain6_ratio=3.98913
|
||||
green_gain6_ratio=3.98682
|
||||
blue_gain6_ratio=3.98895
|
||||
|
||||
+/dev/tmd3733/0/panel-b/prox
|
||||
pulse_len_us=128
|
||||
pdata_scale=1.60028
|
||||
|
||||
# RAINBOW (VD6282)
|
||||
+/dev/vd6282/0/spectral
|
||||
# Golden values for calibration.
|
||||
golden_rals_r=1104.222899
|
||||
golden_rals_g=1152.386319
|
||||
golden_rals_b=286.124664
|
||||
golden_rals_clr1=5145.036779
|
||||
golden_rals_ir=3023.216255
|
||||
golden_rals_clr2=5106.924719
|
||||
|
||||
+/dev/vd6282/0/rls
|
||||
lux_scale=106.239928
|
||||
@@ -0,0 +1,124 @@
|
||||
#
|
||||
# Tokay sensor device configuration registry script for the EVT 1.0 stage.
|
||||
#
|
||||
# Source of truth: go/pixel-sensor-list
|
||||
#
|
||||
|
||||
#
|
||||
# CDT Filter <CDT>:<mask>
|
||||
# CDT format: <0xPPPPSJIV> (P:Product, S:Stage, J:Major, I:Minor, V:Variant)
|
||||
# go/pixel-cdt-zuma
|
||||
# go/pixel-cdt-zuma-pro
|
||||
#
|
||||
|
||||
?+0xA3100:0xFFFFFFF0
|
||||
|
||||
#
|
||||
# Record reg_script.
|
||||
#
|
||||
|
||||
+/
|
||||
reg_script=tokay_evt_1_0.reg
|
||||
|
||||
#
|
||||
# Sensors
|
||||
#
|
||||
|
||||
# MAG 1 (MMC5616WA)
|
||||
+/dev/mmc5616/0
|
||||
priority=0
|
||||
+/dev/mmc5616/0/mag
|
||||
fac_cal_transform=0.9979 0.0507 -0.0031 0.0076 0.912 0.005 0.0279 -0.0232 1.0282 0.0 0.0 0.0
|
||||
name=MMC5616 Magnetometer 0
|
||||
|
||||
# MAG 2 (MMC5616WA)
|
||||
+/dev/mmc5616/1
|
||||
bus_name=i3c1
|
||||
bus_freq_hz=400000
|
||||
i3c_freq_hz=6250000
|
||||
bus_addr=0x30
|
||||
i3c_addr=0x14
|
||||
priority=1
|
||||
+/dev/mmc5616/1/mag
|
||||
orientation_transform=-1 2 -3
|
||||
name=MMC5616 Magnetometer 1
|
||||
fac_cal_transform=0.9855 0.0755 0.0024 0.0425 0.9122 -0.0443 0.0026 0.0957 0.9924 0.0 0.0 0.0
|
||||
|
||||
# ALSP (TMD3733)
|
||||
+/dev/tmd3733/0
|
||||
vsync_delay_ns=574770
|
||||
|
||||
+/dev/tmd3733/0/als
|
||||
lux_scale=4.31935
|
||||
c_coef=1
|
||||
r_coef=-0.82279221
|
||||
g_coef=0.49261751
|
||||
b_coef=-0.6698253
|
||||
itime_table_brightness=575 908 1115 2565 3427 4096
|
||||
itime_table=1600000 1000000 300000 300000 300000 1600000
|
||||
# Step-size (in EM slots) for each rotation.
|
||||
rotation_step_size=1
|
||||
|
||||
clear_gain12_ratio=0.0625
|
||||
red_gain12_ratio=0.0625
|
||||
green_gain12_ratio=0.0625
|
||||
blue_gain12_ratio=0.0625
|
||||
|
||||
clear_gain11_ratio=0.125
|
||||
red_gain11_ratio=0.125
|
||||
green_gain11_ratio=0.125
|
||||
blue_gain11_ratio=0.125
|
||||
|
||||
clear_gain10_ratio=0.25
|
||||
red_gain10_ratio=0.25
|
||||
green_gain10_ratio=0.25
|
||||
blue_gain10_ratio=0.25
|
||||
|
||||
clear_gain9_ratio=0.5
|
||||
red_gain9_ratio=0.5
|
||||
green_gain9_ratio=0.5
|
||||
blue_gain9_ratio=0.5
|
||||
|
||||
clear_gain8_ratio=1.0
|
||||
red_gain8_ratio=1.0
|
||||
green_gain8_ratio=1.0
|
||||
blue_gain8_ratio=1.0
|
||||
|
||||
clear_gain7_ratio=2.0
|
||||
red_gain7_ratio=2.0
|
||||
green_gain7_ratio=2.0
|
||||
blue_gain7_ratio=2.0
|
||||
|
||||
clear_gain6_ratio=4.0
|
||||
red_gain6_ratio=4.0
|
||||
green_gain6_ratio=4.0
|
||||
blue_gain6_ratio=4.0
|
||||
|
||||
+/dev/tmd3733/0/prox
|
||||
pulse_count=4
|
||||
vcsel_ma=10
|
||||
far_threshold=25
|
||||
near_threshold=70
|
||||
pulse_len_us=128
|
||||
filter_len=4
|
||||
skip_count=0
|
||||
pdata_scale=1.0
|
||||
gain1=8
|
||||
gain2=2.5
|
||||
|
||||
+/dev/tmd3733/0/panel-b/als
|
||||
itime_table_brightness=637 1180 1181 2565 3628 4096
|
||||
itime_table=1600000 1600000 300000 300000 300000 1600000
|
||||
|
||||
# RAINBOW (VD6282)
|
||||
+/dev/vd6282/0/spectral
|
||||
# Golden values for calibration.
|
||||
golden_rals_r=928.3487964598437
|
||||
golden_rals_g=1057.5985008780458
|
||||
golden_rals_b=259.53475618532417
|
||||
golden_rals_clr1=4590.0985144592
|
||||
golden_rals_ir=2740.933592629013
|
||||
golden_rals_clr2=4647.8956006038825
|
||||
|
||||
+/dev/vd6282/0/rls
|
||||
lux_scale=115.839196
|
||||
@@ -0,0 +1,124 @@
|
||||
#
|
||||
# Tokay sensor device configuration registry script for the EVT 1.1 stage.
|
||||
#
|
||||
# Source of truth: go/pixel-sensor-list
|
||||
#
|
||||
|
||||
#
|
||||
# CDT Filter <CDT>:<mask>
|
||||
# CDT format: <0xPPPPSJIV> (P:Product, S:Stage, J:Major, I:Minor, V:Variant)
|
||||
# go/pixel-cdt-zuma
|
||||
# go/pixel-cdt-zuma-pro
|
||||
#
|
||||
|
||||
?+0xA3110:0xFFFFFFF0
|
||||
|
||||
#
|
||||
# Record reg_script.
|
||||
#
|
||||
|
||||
+/
|
||||
reg_script=tokay_evt_1_1.reg
|
||||
|
||||
#
|
||||
# Sensors
|
||||
#
|
||||
|
||||
# MAG 1 (MMC5616WA)
|
||||
+/dev/mmc5616/0
|
||||
priority=0
|
||||
+/dev/mmc5616/0/mag
|
||||
fac_cal_transform=0.9977 0.0439 -0.0011 0.0122 0.91 0.0121 0.0235 -0.0355 1.0308 0.0 0.0 0.0
|
||||
name=MMC5616 Magnetometer 0
|
||||
|
||||
# MAG 2 (MMC5616WA)
|
||||
+/dev/mmc5616/1
|
||||
bus_name=i3c1
|
||||
bus_freq_hz=400000
|
||||
i3c_freq_hz=6250000
|
||||
bus_addr=0x30
|
||||
i3c_addr=0x14
|
||||
priority=1
|
||||
+/dev/mmc5616/1/mag
|
||||
orientation_transform=-1 2 -3
|
||||
name=MMC5616 Magnetometer 1
|
||||
fac_cal_transform=0.9764 0.0809 -0.0025 0.0318 0.9206 -0.0321 0.0099 0.0835 0.9944 0.0 0.0 0.0
|
||||
|
||||
# ALSP (TMD3733)
|
||||
+/dev/tmd3733/0
|
||||
vsync_delay_ns=574770
|
||||
|
||||
+/dev/tmd3733/0/als
|
||||
lux_scale=4.31935
|
||||
c_coef=1
|
||||
r_coef=-0.82279221
|
||||
g_coef=0.49261751
|
||||
b_coef=-0.6698253
|
||||
itime_table_brightness=575 908 1115 2565 3427 4096
|
||||
itime_table=1600000 1000000 300000 300000 300000 1600000
|
||||
# Step-size (in EM slots) for each rotation.
|
||||
rotation_step_size=1
|
||||
|
||||
clear_gain12_ratio=0.0625
|
||||
red_gain12_ratio=0.0625
|
||||
green_gain12_ratio=0.0625
|
||||
blue_gain12_ratio=0.0625
|
||||
|
||||
clear_gain11_ratio=0.125
|
||||
red_gain11_ratio=0.125
|
||||
green_gain11_ratio=0.125
|
||||
blue_gain11_ratio=0.125
|
||||
|
||||
clear_gain10_ratio=0.25
|
||||
red_gain10_ratio=0.25
|
||||
green_gain10_ratio=0.25
|
||||
blue_gain10_ratio=0.25
|
||||
|
||||
clear_gain9_ratio=0.5
|
||||
red_gain9_ratio=0.5
|
||||
green_gain9_ratio=0.5
|
||||
blue_gain9_ratio=0.5
|
||||
|
||||
clear_gain8_ratio=1.0
|
||||
red_gain8_ratio=1.0
|
||||
green_gain8_ratio=1.0
|
||||
blue_gain8_ratio=1.0
|
||||
|
||||
clear_gain7_ratio=2.0
|
||||
red_gain7_ratio=2.0
|
||||
green_gain7_ratio=2.0
|
||||
blue_gain7_ratio=2.0
|
||||
|
||||
clear_gain6_ratio=4.0
|
||||
red_gain6_ratio=4.0
|
||||
green_gain6_ratio=4.0
|
||||
blue_gain6_ratio=4.0
|
||||
|
||||
+/dev/tmd3733/0/prox
|
||||
pulse_count=4
|
||||
vcsel_ma=10
|
||||
far_threshold=40
|
||||
near_threshold=90
|
||||
pulse_len_us=128
|
||||
filter_len=4
|
||||
skip_count=0
|
||||
pdata_scale=1.0
|
||||
gain1=8
|
||||
gain2=2.5
|
||||
|
||||
+/dev/tmd3733/0/panel-b/als
|
||||
itime_table_brightness=637 1180 1181 2565 3628 4096
|
||||
itime_table=1600000 1600000 300000 300000 300000 1600000
|
||||
|
||||
# RAINBOW (VD6282)
|
||||
+/dev/vd6282/0/spectral
|
||||
# Golden values for calibration.
|
||||
golden_rals_r=928.3487964598437
|
||||
golden_rals_g=1057.5985008780458
|
||||
golden_rals_b=259.53475618532417
|
||||
golden_rals_clr1=4590.0985144592
|
||||
golden_rals_ir=2740.933592629013
|
||||
golden_rals_clr2=4647.8956006038825
|
||||
|
||||
+/dev/vd6282/0/rls
|
||||
lux_scale=115.839196
|
||||
@@ -0,0 +1,119 @@
|
||||
#
|
||||
# Tokay sensor device configuration registry script for the Proto stage.
|
||||
#
|
||||
# Source of truth: go/pixel-sensor-list
|
||||
#
|
||||
|
||||
#
|
||||
# CDT Filter <CDT>:<mask>
|
||||
# CDT format: <0xPPPPSJIV> (P:Product, S:Stage, J:Major, I:Minor, V:Variant)
|
||||
# go/pixel-cdt-zuma
|
||||
# go/pixel-cdt-zuma-pro
|
||||
#
|
||||
|
||||
?+0xA2000:0xFFFFF000
|
||||
|
||||
#
|
||||
# Record reg_script.
|
||||
#
|
||||
|
||||
+/
|
||||
reg_script=tokay_proto.reg
|
||||
|
||||
#
|
||||
# Sensors
|
||||
#
|
||||
|
||||
# MAG 1 (MMC5616WA)
|
||||
+/dev/mmc5616/0
|
||||
priority=0
|
||||
+/dev/mmc5616/0/mag
|
||||
fac_cal_transform=1.0182 0.0758 -0.008 0.0417 0.8992 0.0069 0.0095 -0.0437 1.0124 0.0 0.0 0.0
|
||||
name=MMC5616 Magnetometer 0
|
||||
|
||||
# MAG 2 (MMC5616WA)
|
||||
+/dev/mmc5616/1
|
||||
bus_name=i3c1
|
||||
bus_freq_hz=400000
|
||||
i3c_freq_hz=6250000
|
||||
bus_addr=0x30
|
||||
i3c_addr=0x14
|
||||
priority=1
|
||||
+/dev/mmc5616/1/mag
|
||||
orientation_transform=-1 2 -3
|
||||
name=MMC5616 Magnetometer 1
|
||||
fac_cal_transform=0.9734 0.0819 -0.0028 0.0427 0.9077 -0.0381 0.0121 0.0926 0.9926 0.0 0.0 0.0
|
||||
|
||||
# ALSP (TMD3733)
|
||||
+/dev/tmd3733/0
|
||||
vsync_delay_ns=574770
|
||||
+/dev/tmd3733/0/als
|
||||
lux_scale=4.31935
|
||||
c_coef=1
|
||||
r_coef=-0.765091
|
||||
g_coef=0.986515
|
||||
b_coef=-0.610712
|
||||
itime_table_brightness=637 901 1115 2565 3628 4096
|
||||
itime_table=1600000 1400000 300000 300000 300000 300000
|
||||
# Step-size (in EM slots) for each rotation.
|
||||
rotation_step_size=1
|
||||
|
||||
clear_gain12_ratio=0.0625
|
||||
red_gain12_ratio=0.0625
|
||||
green_gain12_ratio=0.0625
|
||||
blue_gain12_ratio=0.0625
|
||||
|
||||
clear_gain11_ratio=0.125
|
||||
red_gain11_ratio=0.125
|
||||
green_gain11_ratio=0.125
|
||||
blue_gain11_ratio=0.125
|
||||
|
||||
clear_gain10_ratio=0.25
|
||||
red_gain10_ratio=0.25
|
||||
green_gain10_ratio=0.25
|
||||
blue_gain10_ratio=0.25
|
||||
|
||||
clear_gain9_ratio=0.5
|
||||
red_gain9_ratio=0.5
|
||||
green_gain9_ratio=0.5
|
||||
blue_gain9_ratio=0.5
|
||||
|
||||
clear_gain8_ratio=1.0
|
||||
red_gain8_ratio=1.0
|
||||
green_gain8_ratio=1.0
|
||||
blue_gain8_ratio=1.0
|
||||
|
||||
clear_gain7_ratio=2.0
|
||||
red_gain7_ratio=2.0
|
||||
green_gain7_ratio=2.0
|
||||
blue_gain7_ratio=2.0
|
||||
|
||||
clear_gain6_ratio=4.0
|
||||
red_gain6_ratio=4.0
|
||||
green_gain6_ratio=4.0
|
||||
blue_gain6_ratio=4.0
|
||||
|
||||
+/dev/tmd3733/0/prox
|
||||
pulse_count=1
|
||||
vcsel_ma=10
|
||||
far_threshold=40
|
||||
near_threshold=90
|
||||
pulse_len_us=512
|
||||
filter_len=4
|
||||
skip_count=0
|
||||
pdata_scale=1.0
|
||||
gain1=8
|
||||
gain2=2.5
|
||||
|
||||
# RAINBOW (VD6282)
|
||||
+/dev/vd6282/0/spectral
|
||||
# Golden values for calibration.
|
||||
golden_rals_r=928.3487964598437
|
||||
golden_rals_g=1057.5985008780458
|
||||
golden_rals_b=259.53475618532417
|
||||
golden_rals_clr1=4590.0985144592
|
||||
golden_rals_ir=2740.933592629013
|
||||
golden_rals_clr2=4647.8956006038825
|
||||
|
||||
+/dev/vd6282/0/rls
|
||||
lux_scale=115.839196
|
||||
Reference in new issue
Block a user