+86
@@ -0,0 +1,86 @@
|
||||
#!/system/bin/sh
|
||||
#
|
||||
# Copyright 2021 Google LLC. All Rights Reserved.
|
||||
#
|
||||
# Lynx Calibration Sub-Script.
|
||||
#
|
||||
# Contains L10-specific sensor information for sensor_cal.
|
||||
|
||||
# Sensors supported for calibration.
|
||||
SUPPORTED_SENSORS="accel als baro gyro imu_temp prox"
|
||||
NON_CAL_PHYSICAL_SENSORS="mag"
|
||||
|
||||
#######################################
|
||||
# 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/lsm6dsv/0/accel"
|
||||
SENSOR_NAME="lsm6dsv"
|
||||
LIST_NAME="LSM6DSV Accelerometer"
|
||||
# Add "avg_odr_30" in addition to the original parameters.
|
||||
CAL_PARAMS+=" avg_odr_30"
|
||||
elif [[ "${SENSOR}" == "als" ]]; then
|
||||
SENSOR_PATH="/fac_cal/dev/tmd3719/0/als"
|
||||
SENSOR_NAME="tmd3719"
|
||||
LIST_NAME="TMD3719 Ambient Light"
|
||||
CAL_PARAMS=" \
|
||||
clear_gain6_ratio clear_gain7_ratio clear_gain8_ratio clear_gain9_ratio \
|
||||
clear_gain10_ratio clear_gain11_ratio \
|
||||
red_gain6_ratio red_gain7_ratio red_gain8_ratio red_gain9_ratio \
|
||||
red_gain10_ratio red_gain11_ratio red_clear_ratio \
|
||||
green_gain6_ratio green_gain7_ratio green_gain8_ratio green_gain9_ratio \
|
||||
green_gain10_ratio green_gain11_ratio green_clear_ratio \
|
||||
blue_gain6_ratio blue_gain7_ratio blue_gain8_ratio blue_gain9_ratio \
|
||||
blue_gain10_ratio blue_gain11_ratio blue_clear_ratio \
|
||||
disp_leak lux_scale panel_serial \
|
||||
sync_delay_ns sync_delay_2_ns"
|
||||
elif [[ "${SENSOR}" == "baro" ]]; then
|
||||
SENSOR_PATH="/fac_cal/dev/icp20100/0/baro"
|
||||
SENSOR_NAME="icp20100"
|
||||
LIST_NAME="ICP20100 Pressure Sensor"
|
||||
# Add "temp_intercept" in addition to the original parameters.
|
||||
CAL_PARAMS+=" temp_intercept"
|
||||
elif [[ "${SENSOR}" == "gyro" ]]; then
|
||||
SENSOR_PATH="/fac_cal/dev/lsm6dsv/0/gyro"
|
||||
SENSOR_NAME="lsm6dsv"
|
||||
LIST_NAME="LSM6DSV Gyroscope"
|
||||
# Add "avg_odr_30" in addition to the original parameters.
|
||||
CAL_PARAMS+=" avg_odr_30"
|
||||
elif [[ "${SENSOR}" == "imu_temp" ]]; then
|
||||
SENSOR_PATH="/fac_cal/dev/lsm6dsv/0/temp"
|
||||
SENSOR_NAME="lsm6dsv"
|
||||
LIST_NAME="LSM6DSV Temperature"
|
||||
elif [[ "${SENSOR}" == "prox" ]]; then
|
||||
SENSOR_PATH="/fac_cal/dev/tmd3719/0/prox"
|
||||
SENSOR_NAME="tmd3719"
|
||||
LIST_NAME="TMD3719 Proximity"
|
||||
CAL_PARAMS=" \
|
||||
hp_pdata0_baseline hp_pdata1_baseline hp_pdata0_offset hp_pdata1_offset \
|
||||
hp_pdata0_scale hp_pdata1_scale \
|
||||
pdata0_baseline pdata1_baseline pdata0_scale pdata1_scale vcsel_ma"
|
||||
|
||||
###############################
|
||||
## Non cal physical sensors. ##
|
||||
###############################
|
||||
elif [[ "${SENSOR}" == "mag" ]]; then
|
||||
LIST_NAME="MMC56X3X 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,286 @@
|
||||
#
|
||||
# Lynx sensor device configuration registry script for the dev 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-whi-pro
|
||||
#
|
||||
|
||||
?+0x51000:0xFFFFF000
|
||||
|
||||
#
|
||||
# Record reg_script.
|
||||
#
|
||||
|
||||
+/
|
||||
reg_script=lynx_dev.reg
|
||||
|
||||
#
|
||||
# Buses
|
||||
#
|
||||
|
||||
# I2C
|
||||
+/dev/i2c/0
|
||||
bus_name=i2c0
|
||||
bus_index=0
|
||||
|
||||
# I3C
|
||||
+/dev/i3c/2
|
||||
bus_name=i3c2
|
||||
bus_index=2
|
||||
|
||||
# SPI
|
||||
+/dev/spi/0
|
||||
bus_name=spi0
|
||||
bus_index=0
|
||||
|
||||
# PDM
|
||||
+/dev/pdm
|
||||
base_clk_hz=24576000
|
||||
|
||||
#
|
||||
# Sensors
|
||||
#
|
||||
|
||||
# IMU (LSM6DSV)
|
||||
+/dev/lsm6dsv/0
|
||||
bus_name=i3c2
|
||||
bus_freq_hz=400000
|
||||
i3c_freq_hz=1230000
|
||||
bus_addr=0x6a
|
||||
i3c_addr=0xa
|
||||
intr_id=47
|
||||
trigger_type=2
|
||||
fifo_enabled=1
|
||||
md_threshold_m_per_s_sq=1.2264
|
||||
md_window_ms=20
|
||||
sd_window_ms=5000
|
||||
fifo_max_odr=4000
|
||||
fifo_max_wm=245
|
||||
fifo_min_wm=1
|
||||
+/dev/lsm6dsv/0/accel
|
||||
orientation_transform=-2 1 3
|
||||
+/dev/lsm6dsv/0/gyro
|
||||
orientation_transform=-2 1 3
|
||||
+/dev/lsm6dsv/0/temp
|
||||
+/dev/lsm6dsv/0/motion_detect
|
||||
+/dev/lsm6dsv/0/stationary_detect
|
||||
+/dev/lsm6dsv/0/free_fall_detect
|
||||
name=LSM6DSV FreeFall Detect
|
||||
|
||||
# MAG 0 (MMC5633NJ)
|
||||
+/dev/mmc56x3x/0
|
||||
bus_name=i3c2
|
||||
bus_freq_hz=400000
|
||||
i3c_freq_hz=1230000
|
||||
bus_addr=0x30
|
||||
i3c_addr=0x14
|
||||
priority=0
|
||||
+/dev/mmc56x3x/0/mag
|
||||
orientation_transform=-1 -2 3
|
||||
name=MMC56X3X Magnetometer 0
|
||||
|
||||
# MAG 1 (MMC5633NJ)
|
||||
+/dev/mmc56x3x/1
|
||||
bus_name=i2c0
|
||||
bus_freq_hz=400000
|
||||
bus_addr=0x30
|
||||
priority=1
|
||||
+/dev/mmc56x3x/1/mag
|
||||
orientation_transform=2 -1 3
|
||||
name=MMC56X3X Magnetometer 1
|
||||
|
||||
# BARO (ICP20100)
|
||||
+/dev/icp20100/0
|
||||
bus_name=i2c0
|
||||
bus_freq_hz=400000
|
||||
bus_addr=0x63
|
||||
intr_id=37
|
||||
min_period_us=25000
|
||||
+/dev/icp20100/0/baro
|
||||
+/dev/icp20100/0/temp
|
||||
|
||||
# ALSP1 (TMD37193)
|
||||
+/dev/tmd3719/0
|
||||
bus_name=i2c0
|
||||
bus_freq_hz=400000
|
||||
bus_addr=0x39
|
||||
intr_id=15
|
||||
sync_delay_ns=0
|
||||
# falling edge = 0, rising edge = 1
|
||||
te2_alignment=0
|
||||
anti_aliasing=1
|
||||
+/dev/tmd3719/0/als
|
||||
lux_scale=1.0
|
||||
c_coef=1
|
||||
r_coef=-0.674221
|
||||
g_coef=1.615560
|
||||
b_coef=-1.941339
|
||||
itime_table_brightness=96 206 316 401 2048
|
||||
itime_table=1999240 1497400 998270 610360 181750
|
||||
max_gain_table=11 10 10 10 9
|
||||
fast_filter_size=10
|
||||
slow_filter_size=100
|
||||
aod_fast_filter_size=2
|
||||
aod_slow_filter_size=2
|
||||
max_lux=160000
|
||||
# Number of EM cycles in a 60Hz frame.
|
||||
EM_cycle_count_60Hz=6
|
||||
# Step-size (in EM slots) for each rotation.
|
||||
rotation_step_size=1
|
||||
new_gain_ratio=1
|
||||
|
||||
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
|
||||
red_gain7_ratio=2
|
||||
green_gain7_ratio=2
|
||||
blue_gain7_ratio=2
|
||||
|
||||
clear_gain6_ratio=4
|
||||
red_gain6_ratio=4
|
||||
green_gain6_ratio=4
|
||||
blue_gain6_ratio=4
|
||||
|
||||
# Histogram Configuration.
|
||||
# Flag that controls whether the histogram is enabled.
|
||||
histo_enable=1
|
||||
# Display coordinates go from top left to bottom right.
|
||||
histo_roi_left=420
|
||||
histo_roi_top=300
|
||||
histo_roi_right=560
|
||||
histo_roi_bottom=430
|
||||
# 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=428
|
||||
histo_weight_g=408
|
||||
histo_weight_b=188
|
||||
#
|
||||
# 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 2047 0 0 3.9E-3
|
||||
histo_dbv_eq0=0 2047 0 4.5000009E-1 1.03805E-3
|
||||
|
||||
# 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=2047
|
||||
# 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
|
||||
|
||||
# TMD3719 proximity sensor.
|
||||
+/dev/tmd3719/0/prox
|
||||
auto_baseline=1
|
||||
burst_delay_60hz=160
|
||||
burst_delay_90hz=160
|
||||
burst_delay_aod=0
|
||||
hxtalk=1
|
||||
pulse_count=1
|
||||
vcsel_ma=10
|
||||
pd0_far_threshold=100
|
||||
pd0_near_threshold=100
|
||||
pd1_far_threshold=80
|
||||
pd1_near_threshold=120
|
||||
# "Low power" operating parameters.
|
||||
pulse_len_us=32
|
||||
filter_len=4
|
||||
skip_count=0
|
||||
pdata0_scale=1.90
|
||||
pdata1_scale=2.11
|
||||
gain0=4
|
||||
gain1=8
|
||||
# "High power" operating parameters.
|
||||
hp_pulse_len_us=128
|
||||
hp_filter_len=1
|
||||
hp_skip_count=0
|
||||
hp_pdata0_scale=1.96
|
||||
hp_pdata1_scale=2.32
|
||||
hp_pdata0_offset=0
|
||||
hp_pdata1_offset=0
|
||||
hp_gain0=1
|
||||
hp_gain1=2
|
||||
high_power_mode_only=1
|
||||
|
||||
# Display Info
|
||||
+/dev/display_info/0
|
||||
# Maximum panel refresh rate.
|
||||
panel_max_rr=90
|
||||
# Link to ALS attached to this display.
|
||||
attached_alsp=/dev/tmd3719/0
|
||||
|
||||
# Camera VSYNC
|
||||
+/dev/camera_vsync/0 # rear telephoto
|
||||
intr_id=56
|
||||
intr_trigger_type=2
|
||||
+/dev/camera_vsync/1 # rear ultra-wide-angle
|
||||
intr_id=57
|
||||
intr_trigger_type=2
|
||||
+/dev/camera_vsync/2 # front
|
||||
intr_id=58
|
||||
intr_trigger_type=2
|
||||
+/dev/camera_vsync/3 # rear
|
||||
intr_id=59
|
||||
intr_trigger_type=2
|
||||
|
||||
# TOUCH (NOT SUPPORTED)
|
||||
|
||||
|
||||
# TBN
|
||||
+/tbn
|
||||
tbn_mode=1
|
||||
ap2aoc_intr_id=44
|
||||
ap2aoc_intr_type=4
|
||||
ap2aoc_gpio_id=gpio87
|
||||
aoc2ap_gpio_id=gpio74
|
||||
|
||||
# VSC.
|
||||
+/vsc
|
||||
quick_pick_up_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
|
||||
@@ -0,0 +1,314 @@
|
||||
#
|
||||
# Lynx sensor device configuration registry script for the dvt stage or later.
|
||||
#
|
||||
# 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-whi-pro
|
||||
#
|
||||
|
||||
?+0x54100 0x54101 0x54110
|
||||
|
||||
#
|
||||
# Record reg_script.
|
||||
#
|
||||
|
||||
+/
|
||||
reg_script=lynx_dvt.reg
|
||||
|
||||
#
|
||||
# Buses
|
||||
#
|
||||
|
||||
# I2C
|
||||
+/dev/i2c/0
|
||||
bus_name=i2c0
|
||||
bus_index=0
|
||||
|
||||
# I3C
|
||||
+/dev/i3c/2
|
||||
bus_name=i3c2
|
||||
bus_index=2
|
||||
|
||||
# SPI
|
||||
+/dev/spi/0
|
||||
bus_name=spi0
|
||||
bus_index=0
|
||||
|
||||
# PDM
|
||||
+/dev/pdm
|
||||
base_clk_hz=24576000
|
||||
|
||||
#
|
||||
# Sensors
|
||||
#
|
||||
|
||||
# IMU (LSM6DSV)
|
||||
+/dev/lsm6dsv/0
|
||||
bus_name=i3c2
|
||||
bus_freq_hz=400000
|
||||
i3c_freq_hz=1230000
|
||||
bus_addr=0x6a
|
||||
i3c_addr=0xa
|
||||
intr_id=47
|
||||
trigger_type=2
|
||||
fifo_enabled=1
|
||||
md_threshold_m_per_s_sq=1.2264
|
||||
md_window_ms=20
|
||||
sd_window_ms=5000
|
||||
fifo_max_odr=4000
|
||||
fifo_max_wm=245
|
||||
fifo_min_wm=1
|
||||
+/dev/lsm6dsv/0/accel
|
||||
orientation_transform=-2 1 3
|
||||
+/dev/lsm6dsv/0/gyro
|
||||
orientation_transform=-2 1 3
|
||||
+/dev/lsm6dsv/0/temp
|
||||
+/dev/lsm6dsv/0/motion_detect
|
||||
+/dev/lsm6dsv/0/stationary_detect
|
||||
+/dev/lsm6dsv/0/free_fall_detect
|
||||
name=LSM6DSV FreeFall Detect
|
||||
|
||||
# MAG (MMC5633NJ)
|
||||
+/dev/mmc56x3x/0
|
||||
bus_name=i3c2
|
||||
bus_freq_hz=400000
|
||||
i3c_freq_hz=1230000
|
||||
bus_addr=0x30
|
||||
i3c_addr=0x14
|
||||
priority=0
|
||||
+/dev/mmc56x3x/0/mag
|
||||
orientation_transform=-1 -2 3
|
||||
fac_cal_transform=1.0460 0.0253 0.0225 0.0259 0.8451 0.0114 -0.0223 0.0688 1.1816 0 0 0
|
||||
|
||||
# BARO (ICP20100)
|
||||
+/dev/icp20100/0
|
||||
bus_name=i2c0
|
||||
bus_freq_hz=400000
|
||||
bus_addr=0x63
|
||||
intr_id=37
|
||||
min_period_us=25000
|
||||
+/dev/icp20100/0/baro
|
||||
+/dev/icp20100/0/temp
|
||||
|
||||
# ALSP1 (TMD37193)
|
||||
+/dev/tmd3719/0
|
||||
bus_name=i2c0
|
||||
bus_freq_hz=400000
|
||||
bus_addr=0x39
|
||||
intr_id=15
|
||||
sync_delay_ns=1766535
|
||||
# falling edge = 0, rising edge = 1
|
||||
te2_alignment=0
|
||||
anti_aliasing=1
|
||||
+/dev/tmd3719/0/als
|
||||
lux_scale=1.934868
|
||||
c_coef=1
|
||||
r_coef=-0.674221
|
||||
g_coef=1.615560
|
||||
b_coef=-1.941339
|
||||
itime_table_brightness=70 160 256 368 2048
|
||||
itime_table=1923290 1494680 1036240 504560 181750
|
||||
max_gain_table=11 10 10 9 8
|
||||
fast_filter_size=10
|
||||
slow_filter_size=100
|
||||
aod_fast_filter_size=2
|
||||
aod_slow_filter_size=2
|
||||
max_lux=160000
|
||||
# Number of EM cycles in a 60Hz frame.
|
||||
EM_cycle_count_60Hz=6
|
||||
# Step-size (in EM slots) for each rotation.
|
||||
rotation_step_size=1
|
||||
new_gain_ratio=1
|
||||
|
||||
clear_gain11_ratio=0.114538
|
||||
red_gain11_ratio=0.113578
|
||||
green_gain11_ratio=0.112715
|
||||
blue_gain11_ratio=0.112578
|
||||
|
||||
clear_gain10_ratio=0.241402
|
||||
red_gain10_ratio=0.240592
|
||||
green_gain10_ratio=0.239849
|
||||
blue_gain10_ratio=0.239748
|
||||
|
||||
clear_gain9_ratio=0.494349
|
||||
red_gain9_ratio=0.493746
|
||||
green_gain9_ratio=0.493260
|
||||
blue_gain9_ratio=0.493168
|
||||
|
||||
clear_gain8_ratio=1.0
|
||||
red_gain8_ratio=1.0
|
||||
green_gain8_ratio=1.0
|
||||
blue_gain8_ratio=1.0
|
||||
|
||||
clear_gain7_ratio=2.009510
|
||||
red_gain7_ratio=2.011340
|
||||
green_gain7_ratio=2.012440
|
||||
blue_gain7_ratio=2.012773
|
||||
|
||||
clear_gain6_ratio=4.020600
|
||||
red_gain6_ratio=4.028348
|
||||
green_gain6_ratio=4.028735
|
||||
blue_gain6_ratio=4.029882
|
||||
|
||||
# Histogram Configuration.
|
||||
# Flag that controls whether the histogram is enabled.
|
||||
histo_enable=1
|
||||
# Display coordinates go from top left to bottom right.
|
||||
histo_roi_left=420
|
||||
histo_roi_top=300
|
||||
histo_roi_right=560
|
||||
histo_roi_bottom=430
|
||||
# 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=428
|
||||
histo_weight_g=408
|
||||
histo_weight_b=188
|
||||
#
|
||||
# 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 2047 0 0 3.9E-3
|
||||
histo_dbv_eq0=0 2047 0 9.000003E-1 1.03805E-3
|
||||
|
||||
# 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=2047
|
||||
# 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
|
||||
|
||||
# TMD3719 proximity sensor.
|
||||
+/dev/tmd3719/0/prox
|
||||
auto_baseline=1
|
||||
burst_delay_60hz=160
|
||||
burst_delay_90hz=160
|
||||
burst_delay_aod=0
|
||||
hxtalk=1
|
||||
pulse_count=1
|
||||
vcsel_ma=10
|
||||
pd0_far_threshold=50
|
||||
pd0_near_threshold=50
|
||||
pd1_far_threshold=40
|
||||
pd1_near_threshold=60
|
||||
# "Low power" operating parameters.
|
||||
pulse_len_us=64
|
||||
filter_len=4
|
||||
skip_count=0
|
||||
pdata0_scale=1.195138
|
||||
pdata1_scale=1.204765
|
||||
gain0=2
|
||||
gain1=4
|
||||
# "High power" operating parameters.
|
||||
hp_pulse_len_us=128
|
||||
hp_filter_len=1
|
||||
hp_skip_count=0
|
||||
hp_pdata0_scale=1.318246
|
||||
hp_pdata1_scale=1.320505
|
||||
hp_pdata0_offset=2.245979
|
||||
hp_pdata1_offset=7.747921
|
||||
hp_gain0=1
|
||||
hp_gain1=2
|
||||
high_power_mode_only=1
|
||||
|
||||
# Display Info
|
||||
+/dev/display_info/0
|
||||
# Maximum panel refresh rate.
|
||||
panel_max_rr=90
|
||||
# Link to ALS attached to this display.
|
||||
attached_alsp=/dev/tmd3719/0
|
||||
|
||||
# Camera VSYNC
|
||||
+/dev/camera_vsync/0 # rear telephoto
|
||||
intr_id=56
|
||||
intr_trigger_type=2
|
||||
+/dev/camera_vsync/1 # rear ultra-wide-angle
|
||||
intr_id=57
|
||||
intr_trigger_type=2
|
||||
+/dev/camera_vsync/2 # front
|
||||
intr_id=58
|
||||
intr_trigger_type=2
|
||||
+/dev/camera_vsync/3 # rear
|
||||
intr_id=59
|
||||
intr_trigger_type=2
|
||||
|
||||
# TOUCH (GT9895)
|
||||
+/dev/gt9895/0
|
||||
bus_name=spi0
|
||||
bus_freq_hz=10000000
|
||||
spi_mode=0
|
||||
spi_word_size=8
|
||||
cs_gpio=52
|
||||
cs_clock_delay_us=1
|
||||
gesture_type=4
|
||||
intr_id=17
|
||||
intr_type=3
|
||||
panel_height_pixel=2400
|
||||
panel_height_mm=142
|
||||
single_tap_min_x=92
|
||||
single_tap_max_x=987
|
||||
single_tap_min_y=184
|
||||
single_tap_max_y=2215
|
||||
single_tap_min_frame_count=3
|
||||
single_tap_max_frame_count=31
|
||||
single_press_motion_tolerance=255
|
||||
single_press_max_touch_size=50
|
||||
long_press_min_x=438
|
||||
long_press_max_x=642
|
||||
long_press_min_y=1615
|
||||
long_press_max_y=1819
|
||||
long_press_min_frame_count=1
|
||||
long_press_max_touch_size=50
|
||||
long_press_marginal_min_x=396
|
||||
long_press_marginal_max_x=684
|
||||
long_press_marginal_min_y=1573
|
||||
long_press_marginal_max_y=1861
|
||||
long_press_monitor_channel_min_tx=6
|
||||
long_press_monitor_channel_max_tx=9
|
||||
long_press_monitor_channel_min_rx=22
|
||||
long_press_monitor_channel_max_rx=25
|
||||
long_press_min_node_count=8
|
||||
long_press_motion_tolerance_inner=255
|
||||
long_press_motion_tolerance_outer=539
|
||||
|
||||
# TBN
|
||||
+/tbn
|
||||
tbn_mode=1
|
||||
ap2aoc_intr_id=44
|
||||
ap2aoc_intr_type=4
|
||||
ap2aoc_gpio_id=gpio87
|
||||
aoc2ap_gpio_id=gpio74
|
||||
|
||||
# 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
|
||||
@@ -0,0 +1,314 @@
|
||||
#
|
||||
# Lynx sensor device configuration registry script for the evt stage or later.
|
||||
#
|
||||
# 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-whi-pro
|
||||
#
|
||||
|
||||
?+0x53100:0xFFFFFFF0 # EVT1.0
|
||||
|
||||
#
|
||||
# Record reg_script.
|
||||
#
|
||||
|
||||
+/
|
||||
reg_script=lynx_evt_1_0.reg
|
||||
|
||||
#
|
||||
# Buses
|
||||
#
|
||||
|
||||
# I2C
|
||||
+/dev/i2c/0
|
||||
bus_name=i2c0
|
||||
bus_index=0
|
||||
|
||||
# I3C
|
||||
+/dev/i3c/2
|
||||
bus_name=i3c2
|
||||
bus_index=2
|
||||
|
||||
# SPI
|
||||
+/dev/spi/0
|
||||
bus_name=spi0
|
||||
bus_index=0
|
||||
|
||||
# PDM
|
||||
+/dev/pdm
|
||||
base_clk_hz=24576000
|
||||
|
||||
#
|
||||
# Sensors
|
||||
#
|
||||
|
||||
# IMU (LSM6DSV)
|
||||
+/dev/lsm6dsv/0
|
||||
bus_name=i3c2
|
||||
bus_freq_hz=400000
|
||||
i3c_freq_hz=1230000
|
||||
bus_addr=0x6a
|
||||
i3c_addr=0xa
|
||||
intr_id=47
|
||||
trigger_type=2
|
||||
fifo_enabled=1
|
||||
md_threshold_m_per_s_sq=1.2264
|
||||
md_window_ms=20
|
||||
sd_window_ms=5000
|
||||
fifo_max_odr=4000
|
||||
fifo_max_wm=245
|
||||
fifo_min_wm=1
|
||||
+/dev/lsm6dsv/0/accel
|
||||
orientation_transform=-2 1 3
|
||||
+/dev/lsm6dsv/0/gyro
|
||||
orientation_transform=-2 1 3
|
||||
+/dev/lsm6dsv/0/temp
|
||||
+/dev/lsm6dsv/0/motion_detect
|
||||
+/dev/lsm6dsv/0/stationary_detect
|
||||
+/dev/lsm6dsv/0/free_fall_detect
|
||||
name=LSM6DSV FreeFall Detect
|
||||
|
||||
# MAG (MMC5633NJ)
|
||||
+/dev/mmc56x3x/0
|
||||
bus_name=i3c2
|
||||
bus_freq_hz=400000
|
||||
i3c_freq_hz=1230000
|
||||
bus_addr=0x30
|
||||
i3c_addr=0x14
|
||||
priority=0
|
||||
+/dev/mmc56x3x/0/mag
|
||||
orientation_transform=-1 -2 3
|
||||
fac_cal_transform=1.0460 0.0253 0.0225 0.0259 0.8451 0.0114 -0.0223 0.0688 1.1816 0 0 0
|
||||
|
||||
# BARO (ICP20100)
|
||||
+/dev/icp20100/0
|
||||
bus_name=i2c0
|
||||
bus_freq_hz=400000
|
||||
bus_addr=0x63
|
||||
intr_id=37
|
||||
min_period_us=25000
|
||||
+/dev/icp20100/0/baro
|
||||
+/dev/icp20100/0/temp
|
||||
|
||||
# ALSP1 (TMD37193)
|
||||
+/dev/tmd3719/0
|
||||
bus_name=i2c0
|
||||
bus_freq_hz=400000
|
||||
bus_addr=0x39
|
||||
intr_id=15
|
||||
sync_delay_ns=1766377
|
||||
# falling edge = 0, rising edge = 1
|
||||
te2_alignment=0
|
||||
anti_aliasing=1
|
||||
+/dev/tmd3719/0/als
|
||||
lux_scale=1.97685
|
||||
c_coef=1
|
||||
r_coef=-0.674221
|
||||
g_coef=1.615560
|
||||
b_coef=-1.941339
|
||||
itime_table_brightness=96 206 316 401 2048
|
||||
itime_table=1999240 1497400 998270 610360 181750
|
||||
max_gain_table=11 10 10 10 9
|
||||
fast_filter_size=10
|
||||
slow_filter_size=100
|
||||
aod_fast_filter_size=2
|
||||
aod_slow_filter_size=2
|
||||
max_lux=160000
|
||||
# Number of EM cycles in a 60Hz frame.
|
||||
EM_cycle_count_60Hz=6
|
||||
# Step-size (in EM slots) for each rotation.
|
||||
rotation_step_size=1
|
||||
new_gain_ratio=1
|
||||
|
||||
clear_gain11_ratio=0.11412
|
||||
red_gain11_ratio=0.11280
|
||||
green_gain11_ratio=0.11222
|
||||
blue_gain11_ratio=0.11232
|
||||
|
||||
clear_gain10_ratio=0.24103
|
||||
red_gain10_ratio=0.23990
|
||||
green_gain10_ratio=0.23941
|
||||
blue_gain10_ratio=0.23952
|
||||
|
||||
clear_gain9_ratio=0.49411
|
||||
red_gain9_ratio=0.49329
|
||||
green_gain9_ratio=0.49297
|
||||
blue_gain9_ratio=0.49302
|
||||
|
||||
clear_gain8_ratio=1.0
|
||||
red_gain8_ratio=1.0
|
||||
green_gain8_ratio=1.0
|
||||
blue_gain8_ratio=1.0
|
||||
|
||||
clear_gain7_ratio=2.01004
|
||||
red_gain7_ratio=2.01221
|
||||
green_gain7_ratio=2.01296
|
||||
blue_gain7_ratio=2.01285
|
||||
|
||||
clear_gain6_ratio=4.02689
|
||||
red_gain6_ratio=4.03596
|
||||
green_gain6_ratio=4.03553
|
||||
blue_gain6_ratio=4.03527
|
||||
|
||||
# Histogram Configuration.
|
||||
# Flag that controls whether the histogram is enabled.
|
||||
histo_enable=1
|
||||
# Display coordinates go from top left to bottom right.
|
||||
histo_roi_left=420
|
||||
histo_roi_top=300
|
||||
histo_roi_right=560
|
||||
histo_roi_bottom=430
|
||||
# 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=428
|
||||
histo_weight_g=408
|
||||
histo_weight_b=188
|
||||
#
|
||||
# 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 2047 0 0 3.9E-3
|
||||
histo_dbv_eq0=0 2047 0 4.5000009E-1 1.03805E-3
|
||||
|
||||
# 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=2047
|
||||
# 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
|
||||
|
||||
# TMD3719 proximity sensor.
|
||||
+/dev/tmd3719/0/prox
|
||||
auto_baseline=1
|
||||
burst_delay_60hz=160
|
||||
burst_delay_90hz=160
|
||||
burst_delay_aod=0
|
||||
hxtalk=1
|
||||
pulse_count=1
|
||||
vcsel_ma=10
|
||||
pd0_far_threshold=50
|
||||
pd0_near_threshold=50
|
||||
pd1_far_threshold=40
|
||||
pd1_near_threshold=60
|
||||
# "Low power" operating parameters.
|
||||
pulse_len_us=64
|
||||
filter_len=4
|
||||
skip_count=0
|
||||
pdata0_scale=1.22204
|
||||
pdata1_scale=1.23226
|
||||
gain0=2
|
||||
gain1=4
|
||||
# "High power" operating parameters.
|
||||
hp_pulse_len_us=128
|
||||
hp_filter_len=1
|
||||
hp_skip_count=0
|
||||
hp_pdata0_scale=1.38955
|
||||
hp_pdata1_scale=1.39344
|
||||
hp_pdata0_offset=2.19583
|
||||
hp_pdata1_offset=7.71369
|
||||
hp_gain0=1
|
||||
hp_gain1=2
|
||||
high_power_mode_only=1
|
||||
|
||||
# Display Info
|
||||
+/dev/display_info/0
|
||||
# Maximum panel refresh rate.
|
||||
panel_max_rr=90
|
||||
# Link to ALS attached to this display.
|
||||
attached_alsp=/dev/tmd3719/0
|
||||
|
||||
# Camera VSYNC
|
||||
+/dev/camera_vsync/0 # rear telephoto
|
||||
intr_id=56
|
||||
intr_trigger_type=2
|
||||
+/dev/camera_vsync/1 # rear ultra-wide-angle
|
||||
intr_id=57
|
||||
intr_trigger_type=2
|
||||
+/dev/camera_vsync/2 # front
|
||||
intr_id=58
|
||||
intr_trigger_type=2
|
||||
+/dev/camera_vsync/3 # rear
|
||||
intr_id=59
|
||||
intr_trigger_type=2
|
||||
|
||||
# TOUCH (GT9895)
|
||||
+/dev/gt9895/0
|
||||
bus_name=spi0
|
||||
bus_freq_hz=10000000
|
||||
spi_mode=0
|
||||
spi_word_size=8
|
||||
cs_gpio=52
|
||||
cs_clock_delay_us=1
|
||||
gesture_type=4
|
||||
intr_id=17
|
||||
intr_type=3
|
||||
panel_height_pixel=2400
|
||||
panel_height_mm=142
|
||||
single_tap_min_x=92
|
||||
single_tap_max_x=987
|
||||
single_tap_min_y=184
|
||||
single_tap_max_y=2215
|
||||
single_tap_min_frame_count=3
|
||||
single_tap_max_frame_count=31
|
||||
single_press_motion_tolerance=255
|
||||
single_press_max_touch_size=50
|
||||
long_press_min_x=438
|
||||
long_press_max_x=642
|
||||
long_press_min_y=1615
|
||||
long_press_max_y=1819
|
||||
long_press_min_frame_count=1
|
||||
long_press_max_touch_size=50
|
||||
long_press_marginal_min_x=396
|
||||
long_press_marginal_max_x=684
|
||||
long_press_marginal_min_y=1573
|
||||
long_press_marginal_max_y=1861
|
||||
long_press_monitor_channel_min_tx=6
|
||||
long_press_monitor_channel_max_tx=9
|
||||
long_press_monitor_channel_min_rx=22
|
||||
long_press_monitor_channel_max_rx=25
|
||||
long_press_min_node_count=8
|
||||
long_press_motion_tolerance_inner=255
|
||||
long_press_motion_tolerance_outer=539
|
||||
|
||||
# TBN
|
||||
+/tbn
|
||||
tbn_mode=1
|
||||
ap2aoc_intr_id=44
|
||||
ap2aoc_intr_type=4
|
||||
ap2aoc_gpio_id=gpio87
|
||||
aoc2ap_gpio_id=gpio74
|
||||
|
||||
# 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
|
||||
@@ -0,0 +1,314 @@
|
||||
#
|
||||
# Lynx sensor device configuration registry script for the evt1.1 to dvt 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-whi-pro
|
||||
#
|
||||
|
||||
?+0x53110 0x53120
|
||||
|
||||
#
|
||||
# Record reg_script.
|
||||
#
|
||||
|
||||
+/
|
||||
reg_script=lynx_evt_1_1.reg
|
||||
|
||||
#
|
||||
# Buses
|
||||
#
|
||||
|
||||
# I2C
|
||||
+/dev/i2c/0
|
||||
bus_name=i2c0
|
||||
bus_index=0
|
||||
|
||||
# I3C
|
||||
+/dev/i3c/2
|
||||
bus_name=i3c2
|
||||
bus_index=2
|
||||
|
||||
# SPI
|
||||
+/dev/spi/0
|
||||
bus_name=spi0
|
||||
bus_index=0
|
||||
|
||||
# PDM
|
||||
+/dev/pdm
|
||||
base_clk_hz=24576000
|
||||
|
||||
#
|
||||
# Sensors
|
||||
#
|
||||
|
||||
# IMU (LSM6DSV)
|
||||
+/dev/lsm6dsv/0
|
||||
bus_name=i3c2
|
||||
bus_freq_hz=400000
|
||||
i3c_freq_hz=1230000
|
||||
bus_addr=0x6a
|
||||
i3c_addr=0xa
|
||||
intr_id=47
|
||||
trigger_type=2
|
||||
fifo_enabled=1
|
||||
md_threshold_m_per_s_sq=1.2264
|
||||
md_window_ms=20
|
||||
sd_window_ms=5000
|
||||
fifo_max_odr=4000
|
||||
fifo_max_wm=245
|
||||
fifo_min_wm=1
|
||||
+/dev/lsm6dsv/0/accel
|
||||
orientation_transform=-2 1 3
|
||||
+/dev/lsm6dsv/0/gyro
|
||||
orientation_transform=-2 1 3
|
||||
+/dev/lsm6dsv/0/temp
|
||||
+/dev/lsm6dsv/0/motion_detect
|
||||
+/dev/lsm6dsv/0/stationary_detect
|
||||
+/dev/lsm6dsv/0/free_fall_detect
|
||||
name=LSM6DSV FreeFall Detect
|
||||
|
||||
# MAG (MMC5633NJ)
|
||||
+/dev/mmc56x3x/0
|
||||
bus_name=i3c2
|
||||
bus_freq_hz=400000
|
||||
i3c_freq_hz=1230000
|
||||
bus_addr=0x30
|
||||
i3c_addr=0x14
|
||||
priority=0
|
||||
+/dev/mmc56x3x/0/mag
|
||||
orientation_transform=-1 -2 3
|
||||
fac_cal_transform=1.0460 0.0253 0.0225 0.0259 0.8451 0.0114 -0.0223 0.0688 1.1816 0 0 0
|
||||
|
||||
# BARO (ICP20100)
|
||||
+/dev/icp20100/0
|
||||
bus_name=i2c0
|
||||
bus_freq_hz=400000
|
||||
bus_addr=0x63
|
||||
intr_id=37
|
||||
min_period_us=25000
|
||||
+/dev/icp20100/0/baro
|
||||
+/dev/icp20100/0/temp
|
||||
|
||||
# ALSP1 (TMD37193)
|
||||
+/dev/tmd3719/0
|
||||
bus_name=i2c0
|
||||
bus_freq_hz=400000
|
||||
bus_addr=0x39
|
||||
intr_id=15
|
||||
sync_delay_ns=1766377
|
||||
# falling edge = 0, rising edge = 1
|
||||
te2_alignment=0
|
||||
anti_aliasing=1
|
||||
+/dev/tmd3719/0/als
|
||||
lux_scale=1.97685
|
||||
c_coef=1
|
||||
r_coef=-0.674221
|
||||
g_coef=1.615560
|
||||
b_coef=-1.941339
|
||||
itime_table_brightness=70 160 256 368 2048
|
||||
itime_table=1923290 1494680 1036240 504560 181750
|
||||
max_gain_table=11 10 10 9 8
|
||||
fast_filter_size=10
|
||||
slow_filter_size=100
|
||||
aod_fast_filter_size=2
|
||||
aod_slow_filter_size=2
|
||||
max_lux=160000
|
||||
# Number of EM cycles in a 60Hz frame.
|
||||
EM_cycle_count_60Hz=6
|
||||
# Step-size (in EM slots) for each rotation.
|
||||
rotation_step_size=1
|
||||
new_gain_ratio=1
|
||||
|
||||
clear_gain11_ratio=0.11412
|
||||
red_gain11_ratio=0.11280
|
||||
green_gain11_ratio=0.11222
|
||||
blue_gain11_ratio=0.11232
|
||||
|
||||
clear_gain10_ratio=0.24103
|
||||
red_gain10_ratio=0.23990
|
||||
green_gain10_ratio=0.23941
|
||||
blue_gain10_ratio=0.23952
|
||||
|
||||
clear_gain9_ratio=0.49411
|
||||
red_gain9_ratio=0.49329
|
||||
green_gain9_ratio=0.49297
|
||||
blue_gain9_ratio=0.49302
|
||||
|
||||
clear_gain8_ratio=1.0
|
||||
red_gain8_ratio=1.0
|
||||
green_gain8_ratio=1.0
|
||||
blue_gain8_ratio=1.0
|
||||
|
||||
clear_gain7_ratio=2.01004
|
||||
red_gain7_ratio=2.01221
|
||||
green_gain7_ratio=2.01296
|
||||
blue_gain7_ratio=2.01285
|
||||
|
||||
clear_gain6_ratio=4.02689
|
||||
red_gain6_ratio=4.03596
|
||||
green_gain6_ratio=4.03553
|
||||
blue_gain6_ratio=4.03527
|
||||
|
||||
# Histogram Configuration.
|
||||
# Flag that controls whether the histogram is enabled.
|
||||
histo_enable=1
|
||||
# Display coordinates go from top left to bottom right.
|
||||
histo_roi_left=420
|
||||
histo_roi_top=300
|
||||
histo_roi_right=560
|
||||
histo_roi_bottom=430
|
||||
# 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=428
|
||||
histo_weight_g=408
|
||||
histo_weight_b=188
|
||||
#
|
||||
# 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 2047 0 0 3.9E-3
|
||||
histo_dbv_eq0=0 2047 0 9.000003E-1 1.03805E-3
|
||||
|
||||
# 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=2047
|
||||
# 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
|
||||
|
||||
# TMD3719 proximity sensor.
|
||||
+/dev/tmd3719/0/prox
|
||||
auto_baseline=1
|
||||
burst_delay_60hz=160
|
||||
burst_delay_90hz=160
|
||||
burst_delay_aod=0
|
||||
hxtalk=1
|
||||
pulse_count=1
|
||||
vcsel_ma=10
|
||||
pd0_far_threshold=50
|
||||
pd0_near_threshold=50
|
||||
pd1_far_threshold=40
|
||||
pd1_near_threshold=60
|
||||
# "Low power" operating parameters.
|
||||
pulse_len_us=64
|
||||
filter_len=4
|
||||
skip_count=0
|
||||
pdata0_scale=1.22204
|
||||
pdata1_scale=1.23226
|
||||
gain0=2
|
||||
gain1=4
|
||||
# "High power" operating parameters.
|
||||
hp_pulse_len_us=128
|
||||
hp_filter_len=1
|
||||
hp_skip_count=0
|
||||
hp_pdata0_scale=1.38955
|
||||
hp_pdata1_scale=1.39344
|
||||
hp_pdata0_offset=2.19583
|
||||
hp_pdata1_offset=7.71369
|
||||
hp_gain0=1
|
||||
hp_gain1=2
|
||||
high_power_mode_only=1
|
||||
|
||||
# Display Info
|
||||
+/dev/display_info/0
|
||||
# Maximum panel refresh rate.
|
||||
panel_max_rr=90
|
||||
# Link to ALS attached to this display.
|
||||
attached_alsp=/dev/tmd3719/0
|
||||
|
||||
# Camera VSYNC
|
||||
+/dev/camera_vsync/0 # rear telephoto
|
||||
intr_id=56
|
||||
intr_trigger_type=2
|
||||
+/dev/camera_vsync/1 # rear ultra-wide-angle
|
||||
intr_id=57
|
||||
intr_trigger_type=2
|
||||
+/dev/camera_vsync/2 # front
|
||||
intr_id=58
|
||||
intr_trigger_type=2
|
||||
+/dev/camera_vsync/3 # rear
|
||||
intr_id=59
|
||||
intr_trigger_type=2
|
||||
|
||||
# TOUCH (GT9895)
|
||||
+/dev/gt9895/0
|
||||
bus_name=spi0
|
||||
bus_freq_hz=10000000
|
||||
spi_mode=0
|
||||
spi_word_size=8
|
||||
cs_gpio=52
|
||||
cs_clock_delay_us=1
|
||||
gesture_type=4
|
||||
intr_id=17
|
||||
intr_type=3
|
||||
panel_height_pixel=2400
|
||||
panel_height_mm=142
|
||||
single_tap_min_x=92
|
||||
single_tap_max_x=987
|
||||
single_tap_min_y=184
|
||||
single_tap_max_y=2215
|
||||
single_tap_min_frame_count=3
|
||||
single_tap_max_frame_count=31
|
||||
single_press_motion_tolerance=255
|
||||
single_press_max_touch_size=50
|
||||
long_press_min_x=438
|
||||
long_press_max_x=642
|
||||
long_press_min_y=1615
|
||||
long_press_max_y=1819
|
||||
long_press_min_frame_count=1
|
||||
long_press_max_touch_size=50
|
||||
long_press_marginal_min_x=396
|
||||
long_press_marginal_max_x=684
|
||||
long_press_marginal_min_y=1573
|
||||
long_press_marginal_max_y=1861
|
||||
long_press_monitor_channel_min_tx=6
|
||||
long_press_monitor_channel_max_tx=9
|
||||
long_press_monitor_channel_min_rx=22
|
||||
long_press_monitor_channel_max_rx=25
|
||||
long_press_min_node_count=8
|
||||
long_press_motion_tolerance_inner=255
|
||||
long_press_motion_tolerance_outer=539
|
||||
|
||||
# TBN
|
||||
+/tbn
|
||||
tbn_mode=1
|
||||
ap2aoc_intr_id=44
|
||||
ap2aoc_intr_type=4
|
||||
ap2aoc_gpio_id=gpio87
|
||||
aoc2ap_gpio_id=gpio74
|
||||
|
||||
# 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
|
||||
@@ -0,0 +1,324 @@
|
||||
#
|
||||
# Lynx 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-whi-pro
|
||||
#
|
||||
|
||||
?+0x52000:0xFFFFF000
|
||||
|
||||
#
|
||||
# Record reg_script.
|
||||
#
|
||||
|
||||
+/
|
||||
reg_script=lynx_proto.reg
|
||||
|
||||
#
|
||||
# Buses
|
||||
#
|
||||
|
||||
# I2C
|
||||
+/dev/i2c/0
|
||||
bus_name=i2c0
|
||||
bus_index=0
|
||||
|
||||
# I3C
|
||||
+/dev/i3c/2
|
||||
bus_name=i3c2
|
||||
bus_index=2
|
||||
|
||||
# SPI
|
||||
+/dev/spi/0
|
||||
bus_name=spi0
|
||||
bus_index=0
|
||||
|
||||
# PDM
|
||||
+/dev/pdm
|
||||
base_clk_hz=24576000
|
||||
|
||||
#
|
||||
# Sensors
|
||||
#
|
||||
|
||||
# IMU (LSM6DSV)
|
||||
+/dev/lsm6dsv/0
|
||||
bus_name=i3c2
|
||||
bus_freq_hz=400000
|
||||
i3c_freq_hz=1230000
|
||||
bus_addr=0x6a
|
||||
i3c_addr=0xa
|
||||
intr_id=47
|
||||
trigger_type=2
|
||||
fifo_enabled=1
|
||||
md_threshold_m_per_s_sq=1.2264
|
||||
md_window_ms=20
|
||||
sd_window_ms=5000
|
||||
fifo_max_odr=4000
|
||||
fifo_max_wm=245
|
||||
fifo_min_wm=1
|
||||
+/dev/lsm6dsv/0/accel
|
||||
orientation_transform=-2 1 3
|
||||
+/dev/lsm6dsv/0/gyro
|
||||
orientation_transform=-2 1 3
|
||||
+/dev/lsm6dsv/0/temp
|
||||
+/dev/lsm6dsv/0/motion_detect
|
||||
+/dev/lsm6dsv/0/stationary_detect
|
||||
+/dev/lsm6dsv/0/free_fall_detect
|
||||
name=LSM6DSV FreeFall Detect
|
||||
|
||||
# MAG 0 (MMC5633NJ)
|
||||
+/dev/mmc56x3x/0
|
||||
bus_name=i3c2
|
||||
bus_freq_hz=400000
|
||||
i3c_freq_hz=1230000
|
||||
bus_addr=0x30
|
||||
i3c_addr=0x14
|
||||
priority=0
|
||||
+/dev/mmc56x3x/0/mag
|
||||
orientation_transform=-1 -2 3
|
||||
name=MMC56X3X Magnetometer 0
|
||||
|
||||
# MAG 1 (MMC5633NJ)
|
||||
+/dev/mmc56x3x/1
|
||||
bus_name=i2c0
|
||||
bus_freq_hz=400000
|
||||
bus_addr=0x30
|
||||
priority=1
|
||||
+/dev/mmc56x3x/1/mag
|
||||
orientation_transform=2 -1 3
|
||||
name=MMC56X3X Magnetometer 1
|
||||
|
||||
# BARO (ICP20100)
|
||||
+/dev/icp20100/0
|
||||
bus_name=i2c0
|
||||
bus_freq_hz=400000
|
||||
bus_addr=0x63
|
||||
intr_id=37
|
||||
min_period_us=25000
|
||||
+/dev/icp20100/0/baro
|
||||
+/dev/icp20100/0/temp
|
||||
|
||||
# ALSP1 (TMD37193)
|
||||
+/dev/tmd3719/0
|
||||
bus_name=i2c0
|
||||
bus_freq_hz=400000
|
||||
bus_addr=0x39
|
||||
intr_id=15
|
||||
sync_delay_ns=0
|
||||
# falling edge = 0, rising edge = 1
|
||||
te2_alignment=0
|
||||
anti_aliasing=1
|
||||
+/dev/tmd3719/0/als
|
||||
lux_scale=1.0
|
||||
c_coef=1
|
||||
r_coef=-0.674221
|
||||
g_coef=1.615560
|
||||
b_coef=-1.941339
|
||||
itime_table_brightness=96 206 316 401 2048
|
||||
itime_table=1999240 1497400 998270 610360 181750
|
||||
max_gain_table=11 10 10 10 9
|
||||
fast_filter_size=10
|
||||
slow_filter_size=100
|
||||
aod_fast_filter_size=2
|
||||
aod_slow_filter_size=2
|
||||
max_lux=160000
|
||||
# Number of EM cycles in a 60Hz frame.
|
||||
EM_cycle_count_60Hz=6
|
||||
# Step-size (in EM slots) for each rotation.
|
||||
rotation_step_size=1
|
||||
new_gain_ratio=1
|
||||
|
||||
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
|
||||
red_gain7_ratio=2
|
||||
green_gain7_ratio=2
|
||||
blue_gain7_ratio=2
|
||||
|
||||
clear_gain6_ratio=4
|
||||
red_gain6_ratio=4
|
||||
green_gain6_ratio=4
|
||||
blue_gain6_ratio=4
|
||||
|
||||
# Histogram Configuration.
|
||||
# Flag that controls whether the histogram is enabled.
|
||||
histo_enable=1
|
||||
# Display coordinates go from top left to bottom right.
|
||||
histo_roi_left=420
|
||||
histo_roi_top=300
|
||||
histo_roi_right=560
|
||||
histo_roi_bottom=430
|
||||
# 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=428
|
||||
histo_weight_g=408
|
||||
histo_weight_b=188
|
||||
#
|
||||
# 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 2047 0 0 3.9E-3
|
||||
histo_dbv_eq0=0 2047 0 4.5000009E-1 1.03805E-3
|
||||
|
||||
# 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=2047
|
||||
# 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
|
||||
|
||||
# TMD3719 proximity sensor.
|
||||
+/dev/tmd3719/0/prox
|
||||
auto_baseline=1
|
||||
burst_delay_60hz=160
|
||||
burst_delay_90hz=160
|
||||
burst_delay_aod=0
|
||||
hxtalk=1
|
||||
pulse_count=1
|
||||
vcsel_ma=10
|
||||
pd0_far_threshold=100
|
||||
pd0_near_threshold=100
|
||||
pd1_far_threshold=80
|
||||
pd1_near_threshold=120
|
||||
# "Low power" operating parameters.
|
||||
pulse_len_us=32
|
||||
filter_len=4
|
||||
skip_count=0
|
||||
pdata0_scale=1.90
|
||||
pdata1_scale=2.11
|
||||
gain0=4
|
||||
gain1=8
|
||||
# "High power" operating parameters.
|
||||
hp_pulse_len_us=128
|
||||
hp_filter_len=1
|
||||
hp_skip_count=0
|
||||
hp_pdata0_scale=1.96
|
||||
hp_pdata1_scale=2.32
|
||||
hp_pdata0_offset=0
|
||||
hp_pdata1_offset=0
|
||||
hp_gain0=1
|
||||
hp_gain1=2
|
||||
high_power_mode_only=1
|
||||
|
||||
# Display Info
|
||||
+/dev/display_info/0
|
||||
# Maximum panel refresh rate.
|
||||
panel_max_rr=90
|
||||
# Link to ALS attached to this display.
|
||||
attached_alsp=/dev/tmd3719/0
|
||||
|
||||
# Camera VSYNC
|
||||
+/dev/camera_vsync/0 # rear telephoto
|
||||
intr_id=56
|
||||
intr_trigger_type=2
|
||||
+/dev/camera_vsync/1 # rear ultra-wide-angle
|
||||
intr_id=57
|
||||
intr_trigger_type=2
|
||||
+/dev/camera_vsync/2 # front
|
||||
intr_id=58
|
||||
intr_trigger_type=2
|
||||
+/dev/camera_vsync/3 # rear
|
||||
intr_id=59
|
||||
intr_trigger_type=2
|
||||
|
||||
# TOUCH (GT9895)
|
||||
+/dev/gt9895/0
|
||||
bus_name=spi0
|
||||
bus_freq_hz=10000000
|
||||
spi_mode=0
|
||||
spi_word_size=8
|
||||
cs_gpio=52
|
||||
cs_clock_delay_us=1
|
||||
gesture_type=4
|
||||
intr_id=17
|
||||
intr_type=3
|
||||
panel_height_pixel=2400
|
||||
panel_height_mm=142
|
||||
single_tap_min_x=92
|
||||
single_tap_max_x=987
|
||||
single_tap_min_y=184
|
||||
single_tap_max_y=2215
|
||||
single_tap_min_frame_count=3
|
||||
single_tap_max_frame_count=31
|
||||
single_press_motion_tolerance=255
|
||||
single_press_max_touch_size=50
|
||||
long_press_min_x=438
|
||||
long_press_max_x=642
|
||||
long_press_min_y=1615
|
||||
long_press_max_y=1819
|
||||
long_press_min_frame_count=1
|
||||
long_press_max_touch_size=50
|
||||
long_press_marginal_min_x=396
|
||||
long_press_marginal_max_x=684
|
||||
long_press_marginal_min_y=1573
|
||||
long_press_marginal_max_y=1861
|
||||
long_press_monitor_channel_min_tx=6
|
||||
long_press_monitor_channel_max_tx=9
|
||||
long_press_monitor_channel_min_rx=22
|
||||
long_press_monitor_channel_max_rx=25
|
||||
long_press_min_node_count=8
|
||||
long_press_motion_tolerance_inner=255
|
||||
long_press_motion_tolerance_outer=539
|
||||
|
||||
# TBN
|
||||
+/tbn
|
||||
tbn_mode=1
|
||||
ap2aoc_intr_id=44
|
||||
ap2aoc_intr_type=4
|
||||
ap2aoc_gpio_id=gpio87
|
||||
aoc2ap_gpio_id=gpio74
|
||||
|
||||
# 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
|
||||
@@ -0,0 +1,320 @@
|
||||
#
|
||||
# Lynx sensor device configuration registry script for the pvt stage or later.
|
||||
#
|
||||
# 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-whi-pro
|
||||
#
|
||||
|
||||
?+0x50000:0xFFFF0000
|
||||
# Exclude
|
||||
?-0x51000:0xFFFFF000 # Dev
|
||||
?-0x52000:0xFFFFF000 # Proto
|
||||
?-0x53000:0xFFFFF000 # EVT
|
||||
?-0x54000:0xFFFFF000 # DVT
|
||||
|
||||
#
|
||||
# Record reg_script.
|
||||
#
|
||||
|
||||
+/
|
||||
reg_script=lynx_pvt.reg
|
||||
|
||||
#
|
||||
# Buses
|
||||
#
|
||||
|
||||
# I2C
|
||||
+/dev/i2c/0
|
||||
bus_name=i2c0
|
||||
bus_index=0
|
||||
|
||||
# I3C
|
||||
+/dev/i3c/2
|
||||
bus_name=i3c2
|
||||
bus_index=2
|
||||
|
||||
# SPI
|
||||
+/dev/spi/0
|
||||
bus_name=spi0
|
||||
bus_index=0
|
||||
|
||||
# PDM
|
||||
+/dev/pdm
|
||||
base_clk_hz=24576000
|
||||
|
||||
#
|
||||
# Sensors
|
||||
#
|
||||
|
||||
# IMU (LSM6DSV)
|
||||
+/dev/lsm6dsv/0
|
||||
bus_name=i3c2
|
||||
bus_freq_hz=400000
|
||||
i3c_freq_hz=1230000
|
||||
bus_addr=0x6a
|
||||
i3c_addr=0xa
|
||||
intr_id=47
|
||||
trigger_type=2
|
||||
fifo_enabled=1
|
||||
md_threshold_m_per_s_sq=1.2264
|
||||
md_window_ms=20
|
||||
sd_window_ms=5000
|
||||
fifo_max_odr=4000
|
||||
fifo_max_wm=245
|
||||
fifo_min_wm=1
|
||||
+/dev/lsm6dsv/0/accel
|
||||
orientation_transform=-2 1 3
|
||||
+/dev/lsm6dsv/0/gyro
|
||||
orientation_transform=-2 1 3
|
||||
+/dev/lsm6dsv/0/temp
|
||||
+/dev/lsm6dsv/0/motion_detect
|
||||
+/dev/lsm6dsv/0/stationary_detect
|
||||
+/dev/lsm6dsv/0/free_fall_detect
|
||||
name=LSM6DSV FreeFall Detect
|
||||
|
||||
# MAG (MMC5633NJ)
|
||||
+/dev/mmc56x3x/0
|
||||
bus_name=i3c2
|
||||
bus_freq_hz=400000
|
||||
i3c_freq_hz=1230000
|
||||
bus_addr=0x30
|
||||
i3c_addr=0x14
|
||||
priority=0
|
||||
+/dev/mmc56x3x/0/mag
|
||||
orientation_transform=-1 -2 3
|
||||
fac_cal_transform=1.0288 0.0292 0.0028 0.0154 0.8620 0.0382 -0.0005 0.0781 1.1740 0 0 0
|
||||
|
||||
# BARO (ICP20100)
|
||||
+/dev/icp20100/0
|
||||
bus_name=i2c0
|
||||
bus_freq_hz=400000
|
||||
bus_addr=0x63
|
||||
intr_id=37
|
||||
min_period_us=25000
|
||||
+/dev/icp20100/0/baro
|
||||
+/dev/icp20100/0/temp
|
||||
|
||||
# ALSP1 (TMD37193)
|
||||
+/dev/tmd3719/0
|
||||
bus_name=i2c0
|
||||
bus_freq_hz=400000
|
||||
bus_addr=0x39
|
||||
intr_id=15
|
||||
sync_delay_ns=1766535
|
||||
# falling edge = 0, rising edge = 1
|
||||
te2_alignment=0
|
||||
anti_aliasing=1
|
||||
+/dev/tmd3719/0/als
|
||||
lux_scale=1.934868
|
||||
c_coef=1
|
||||
r_coef=-0.674221
|
||||
g_coef=1.615560
|
||||
b_coef=-1.941339
|
||||
itime_table_brightness=70 160 256 368 2048
|
||||
itime_table=1923290 1494680 1036240 504560 181750
|
||||
max_gain_table=11 10 10 9 8
|
||||
fast_filter_size=10
|
||||
slow_filter_size=100
|
||||
aod_fast_filter_size=2
|
||||
aod_slow_filter_size=2
|
||||
max_lux=160000
|
||||
# Number of EM cycles in a 60Hz frame.
|
||||
EM_cycle_count_60Hz=6
|
||||
# Step-size (in EM slots) for each rotation.
|
||||
rotation_step_size=1
|
||||
new_gain_ratio=1
|
||||
|
||||
clear_gain11_ratio=0.114538
|
||||
red_gain11_ratio=0.113578
|
||||
green_gain11_ratio=0.112715
|
||||
blue_gain11_ratio=0.112578
|
||||
|
||||
clear_gain10_ratio=0.241402
|
||||
red_gain10_ratio=0.240592
|
||||
green_gain10_ratio=0.239849
|
||||
blue_gain10_ratio=0.239748
|
||||
|
||||
clear_gain9_ratio=0.494349
|
||||
red_gain9_ratio=0.493746
|
||||
green_gain9_ratio=0.493260
|
||||
blue_gain9_ratio=0.493168
|
||||
|
||||
clear_gain8_ratio=1.0
|
||||
red_gain8_ratio=1.0
|
||||
green_gain8_ratio=1.0
|
||||
blue_gain8_ratio=1.0
|
||||
|
||||
clear_gain7_ratio=2.009510
|
||||
red_gain7_ratio=2.011340
|
||||
green_gain7_ratio=2.012440
|
||||
blue_gain7_ratio=2.012773
|
||||
|
||||
clear_gain6_ratio=4.020600
|
||||
red_gain6_ratio=4.028348
|
||||
green_gain6_ratio=4.028735
|
||||
blue_gain6_ratio=4.029882
|
||||
|
||||
# Histogram Configuration.
|
||||
# Flag that controls whether the histogram is enabled.
|
||||
histo_enable=1
|
||||
# Display coordinates go from top left to bottom right.
|
||||
histo_roi_left=420
|
||||
histo_roi_top=300
|
||||
histo_roi_right=560
|
||||
histo_roi_bottom=430
|
||||
# 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=428
|
||||
histo_weight_g=408
|
||||
histo_weight_b=188
|
||||
#
|
||||
# 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 2047 0 0 3.9E-3
|
||||
histo_dbv_eq0=0 2047 0 9.000003E-1 1.03805E-3
|
||||
|
||||
# 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=2047
|
||||
# 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
|
||||
|
||||
# TMD3719 proximity sensor.
|
||||
+/dev/tmd3719/0/prox
|
||||
auto_baseline=1
|
||||
burst_delay_normal=160
|
||||
burst_delay_60hz=160
|
||||
burst_delay_90hz=160
|
||||
burst_delay_aod=0
|
||||
hxtalk=1
|
||||
pulse_count=1
|
||||
vcsel_ma=10
|
||||
pd0_far_threshold=50
|
||||
pd0_near_threshold=50
|
||||
pd1_far_threshold=40
|
||||
pd1_near_threshold=60
|
||||
# "Low power" operating parameters.
|
||||
pulse_len_us=64
|
||||
filter_len=4
|
||||
skip_count=0
|
||||
pdata0_scale=1.195138
|
||||
pdata1_scale=1.204765
|
||||
gain0=2
|
||||
gain1=4
|
||||
# "High power" operating parameters.
|
||||
hp_pulse_len_us=128
|
||||
hp_filter_len=1
|
||||
hp_skip_count=0
|
||||
hp_pdata0_scale=1.318246
|
||||
hp_pdata1_scale=1.320505
|
||||
hp_pdata0_offset=2.245979
|
||||
hp_pdata1_offset=7.747921
|
||||
hp_gain0=1
|
||||
hp_gain1=2
|
||||
high_power_mode_only=1
|
||||
|
||||
# Display Info
|
||||
+/dev/display_info/0
|
||||
# Maximum panel refresh rate.
|
||||
panel_max_rr=90
|
||||
# Link to ALS attached to this display.
|
||||
attached_alsp=/dev/tmd3719/0
|
||||
|
||||
# Camera VSYNC
|
||||
+/dev/camera_vsync/0 # rear telephoto
|
||||
intr_id=56
|
||||
intr_trigger_type=2
|
||||
+/dev/camera_vsync/1 # rear ultra-wide-angle
|
||||
intr_id=57
|
||||
intr_trigger_type=2
|
||||
+/dev/camera_vsync/2 # front
|
||||
intr_id=58
|
||||
intr_trigger_type=2
|
||||
+/dev/camera_vsync/3 # rear
|
||||
intr_id=59
|
||||
intr_trigger_type=2
|
||||
|
||||
# TOUCH (GT9895)
|
||||
+/dev/gt9895/0
|
||||
bus_name=spi0
|
||||
bus_freq_hz=10000000
|
||||
spi_mode=0
|
||||
spi_word_size=8
|
||||
cs_gpio=52
|
||||
cs_clock_delay_us=1
|
||||
gesture_type=4
|
||||
intr_id=17
|
||||
intr_type=3
|
||||
panel_height_pixel=2400
|
||||
panel_height_mm=142
|
||||
single_tap_min_x=92
|
||||
single_tap_max_x=987
|
||||
single_tap_min_y=184
|
||||
single_tap_max_y=2215
|
||||
single_tap_min_frame_count=3
|
||||
single_tap_max_frame_count=31
|
||||
single_press_motion_tolerance=255
|
||||
single_press_max_touch_size=50
|
||||
long_press_min_x=438
|
||||
long_press_max_x=642
|
||||
long_press_min_y=1615
|
||||
long_press_max_y=1819
|
||||
long_press_min_frame_count=1
|
||||
long_press_max_touch_size=50
|
||||
long_press_marginal_min_x=396
|
||||
long_press_marginal_max_x=684
|
||||
long_press_marginal_min_y=1573
|
||||
long_press_marginal_max_y=1861
|
||||
long_press_monitor_channel_min_tx=6
|
||||
long_press_monitor_channel_max_tx=9
|
||||
long_press_monitor_channel_min_rx=22
|
||||
long_press_monitor_channel_max_rx=25
|
||||
long_press_min_node_count=8
|
||||
long_press_motion_tolerance_inner=255
|
||||
long_press_motion_tolerance_outer=539
|
||||
|
||||
# TBN
|
||||
+/tbn
|
||||
tbn_mode=1
|
||||
ap2aoc_intr_id=44
|
||||
ap2aoc_intr_type=4
|
||||
ap2aoc_gpio_id=gpio87
|
||||
aoc2ap_gpio_id=gpio74
|
||||
|
||||
# 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
|
||||
Reference in New Issue
Block a user