shiba: Regenerate vendor blobs

Signed-off-by: HeroBuxx <me@herobuxx.me>
This commit is contained in:
HeroBuxx
2026-07-11 13:39:02 +00:00
commit 49a18e22f0
2845 changed files with 217497 additions and 0 deletions
+121
View File
@@ -0,0 +1,121 @@
#!/system/bin/sh
#
# Copyright 2022 Google LLC. All Rights Reserved.
#
# Husky/Shiba Calibration Sub-Script.
#
# Contains HK3/SB3-specific sensor information for sensor_cal.
# Sensors supported for calibration.
SUPPORTED_SENSORS="accel als baro gyro prox rls spectral"
NON_CAL_PHYSICAL_SENSORS="als_raw alsp_temp baro_temp flicker imu_temp \
mag mag_0 mag_1"
product_name=$(getprop ro.hardware)
if [[ "${product_name}" == "husky" ]]; then
SUPPORTED_SENSORS+=" fusion_mag"
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 self_cal_gain"
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 panel_type \
sync_delay_ns sync_delay_2_ns leakage_at_dbv leakage_at_dbv_2"
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}" == "fusion_mag" ]]; then
SENSOR_PATH="/fac_cal/dev/fusion_mag/0/mag"
SENSOR_NAME="fusion_mag"
SENSOR_TYPE="mag"
CAL_PARAMS="p1 p2 p3 mix"
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 self_cal_gain"
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"
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}" == "als_raw" ]]; then
LIST_NAME="TMD3719 Ambient Light Raw"
elif [[ "${SENSOR}" == "alsp_temp" ]]; then
LIST_NAME="TMD3719 Temperature"
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 [[ $(echo "${SENSOR}" | grep -E "^mag(_[0-1])?$") ]]; then
if [[ "${product_name}" == "husky" && "${SENSOR:3:1}" == "_" ]]; then
LIST_NAME="MMC56X3X Magnetometer ${SENSOR:4:1}"
elif [[ "${product_name}" == "shiba" && "${SENSOR:3:2}" == "" ]]; then
LIST_NAME="MMC56X3X Magnetometer"
fi
else
sensor_cal::ERROR "Unknown or unimplemented sensor: ${SENSOR}"
sensor_cal::exit_badparam
fi
sensor_cal::DEBUG "Registry path: ${SENSOR_PATH}"
}
+2
View File
@@ -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
+260
View File
@@ -0,0 +1,260 @@
#
# Shiba 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
#
?+0x30000:0xFFFF0000
#
# Buses
#
# I2C
+/dev/i2c/0
bus_name=i2c0
bus_index=0
# I3C
+/dev/i3c/0
bus_name=i3c0
bus_index=0
# SPI
+/dev/spi/2
bus_name=spi2
bus_index=2
# PDM
+/dev/pdm
base_clk_hz=24576000
#
# Sensors
#
# ALSP (TMD37193)
+/dev/tmd3719/0
start_als_on_ap_power_on=1
# IMU (ICM45631)
+/dev/icm45631/0
bus_name=i3c0
bus_freq_hz=400000
i3c_freq_hz=12500000
bus_addr=0x68
i3c_addr=0xa
intr_id=43
trigger_type=2
priority=0
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
+/dev/icm45631/0/gyro
name=ICM45631 Gyroscope
orientation_transform=2 -1 3
+/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 (MMC5633NJ)
+/dev/mmc56x3x/0
bus_name=i3c0
bus_freq_hz=400000
i3c_freq_hz=6250000
bus_addr=0x30
i3c_addr=0x14
+/dev/mmc56x3x/0/mag
orientation_transform=2 -1 3
# Display Info
+/dev/display_info/0
# Link to ALS attached to this display.
attached_alsp=/dev/tmd3719/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/flicker
auto_gain=1
# Camera VSYNC
+/dev/camera_vsync/0 # rear ultra-wide-angle
intr_id=57
intr_trigger_type=2
+/dev/camera_vsync/1 # front
intr_id=58
intr_trigger_type=2
+/dev/camera_vsync/2 # rear
intr_id=59
intr_trigger_type=2
# TOUCH (GT9895)
+/dev/gt9895/0
bus_name=spi2
bus_freq_hz=10000000
spi_mode=0
spi_word_size=8
gesture_type=4
intr_id=14
intr_type=3
panel_height_pixel=2400
panel_height_mm=143
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=439
long_press_max_x=641
long_press_min_y=1662
long_press_max_y=1864
long_press_min_frame_count=1
long_press_max_touch_size=50
long_press_marginal_min_x=397
long_press_marginal_max_x=683
long_press_marginal_min_y=1620
long_press_marginal_max_y=1906
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_inner=255
long_press_motion_tolerance_outer=494
send_lptw_to_kernel=1
# TOUCH (GTX)
+/dev/gtx/0
bus_name=spi2
bus_freq_hz=10000000
spi_mode=0
spi_word_size=8
cs_gpio=67
gesture_type=3
intr_id=14
intr_type=3
panel_height_pixel=2400
panel_height_mm=143
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=439
long_press_max_x=641
long_press_min_y=1662
long_press_max_y=1864
long_press_min_frame_count=1
long_press_max_touch_size=50
long_press_marginal_min_x=397
long_press_marginal_max_x=683
long_press_marginal_min_y=1620
long_press_marginal_max_y=1906
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_inner=255
long_press_motion_tolerance_outer=494
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
+/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
+322
View File
@@ -0,0 +1,322 @@
#
# Shiba sensor device configuration registry script for the 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-zuma
#
?+0x30000:0xFFFF0000
# Exclude
?-0x32000:0xFFFFF000 # Proto
?-0x33000:0xFFFFF000 # EVT
#
# Record reg_script.
#
+/
reg_script=shiba_dvt.reg
#
# Sensors
#
# MAG (MMC5633NJ)
+/dev/mmc56x3x/0/mag
fac_cal_transform=1.074 0.0277 0.0548 0.0262 0.8924 0.0295 -0.0806 0.0065 1.1918 0.0 0.0 0.0
# BARO (ICP20100)
+/dev/icp20100/0
bus_name=i2c0
bus_freq_hz=400000
bus_addr=0x64
intr_id=47
min_period_us=25000
+/dev/icp20100/0/baro
+/dev/icp20100/0/temp
# ALSP (TMD37193)
+/dev/tmd3719/0
bus_name=i2c0
bus_freq_hz=400000
bus_addr=0x39
intr_id=45
sync_delay_ns=5001769
# falling edge = 0, rising edge = 1
te2_alignment=1
anti_aliasing=1
debug_enable=1
+/dev/tmd3719/0/als
lux_scale=3.765115
c_coef=1
r_coef=-0.765091
g_coef=0.986515
b_coef=-1.221424
itime_table_brightness=658 901 1115 2565 3514 4096
itime_table=1400000 1400000 800000 181750 181750 1400000
max_gain_table=11 10 10 9 8 8
# 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 2
fast_filter_size=10
slow_filter_size=100
aod_fast_filter_size=2
aod_slow_filter_size=2
max_lux=160000
high_IR_threshold=2.0
# Number of EM cycles in a 60Hz frame.
EM_cycle_count_60Hz=4
# Step-size (in EM slots) for each rotation.
rotation_step_size=1
new_gain_ratio=1
clear_gain11_ratio=0.111796088326804
red_gain11_ratio=0.110653426888861
green_gain11_ratio=0.110452179097028
blue_gain11_ratio=0.110487667861537
clear_gain10_ratio=0.239108611514271
red_gain10_ratio=0.238145698089525
green_gain10_ratio=0.237874588004909
blue_gain10_ratio=0.237974880429288
clear_gain9_ratio=0.49277522731457
red_gain9_ratio=0.492201266070612
green_gain9_ratio=0.491960507757404
blue_gain9_ratio=0.492072952676123
clear_gain7_ratio=2.01288508077702
red_gain7_ratio=2.01556645851917
green_gain7_ratio=2.01546790409899
blue_gain7_ratio=2.01555130656469
clear_gain6_ratio=4.03500721122328
red_gain6_ratio=4.04469565217391
green_gain6_ratio=4.04494677355763
blue_gain6_ratio=4.04491578290704
# Histogram Configuration.
# Disable until ready.
histo_enable=1
# Display coordinates go from top left to bottom right.
histo_roi_left=260
histo_roi_top=260
histo_roi_right=400
histo_roi_bottom=400
# 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 208 0 0e0
histo_luma_eq1=209 4096 0 0e0 7.87649495E-04 9.91676468E-06 9.30633047E-09
histo_dbv_eq0=0 208 0 0e0
histo_dbv_eq1=209 1115 0 1.15276982E+00 -7.71696917E-04 3.50379344E-06 -8.42689794E-10
histo_dbv_eq2=1116 3514 0 -1.03807638E+00 7.40530243E-03
histo_dbv_eq3=3515 4096 0 -1.2985E+03 6.1367E-01
# 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/tmd3719/0/prox
auto_baseline=1
# Configures burst-delay as a lookup table using luma as input.
# The input luma will be compared with the first array from left to right.
# When it is less than or equal to the value in the array, the value at the
# same position in the burst_delay array is used.
burst_delay_luma_60hz=112 255
burst_delay_60hz=136 123
burst_delay_luma_120hz=64 255
burst_delay_120hz=61 55
burst_delay_aod=230
hxtalk=1
pulse_count=1
vcsel_ma=10
pd0_far_threshold=40
pd0_near_threshold=70
pd1_far_threshold=60
pd1_near_threshold=110
# "Low power" operating parameters.
pulse_len_us=256
filter_len=4
skip_count=0
pdata0_scale=1.585
pdata1_scale=1.135
gain0=4
gain1=8
# "High power" operating parameters.
hp_pulse_len_us=256
hp_filter_len=1
hp_skip_count=0
hp_pdata0_scale=1.585
hp_pdata1_scale=1.135
hp_pdata0_offset=0
hp_pdata1_offset=0
hp_gain0=4
hp_gain1=8
# High power only if value > 0.
high_power_mode_only=1
max_lux_valid_for_baselining=0.0
max_ir_valid_for_baselining=1.0
+/dev/tmd3719/0/panel-b
sync_delay_ns=4955851
+/dev/tmd3719/0/panel-b/als
lux_scale=3.145368
itime_table_brightness=680 1073 1428 2193 2631 3041 3574 3828
itime_table=1400000 1400000 1400000 1400000 800000 181750 181750 1400000
max_gain_table=11 10 10 9 9 9 8 8
# 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 2
high_IR_threshold=2.5
clear_gain11_ratio=0.11239992679287
red_gain11_ratio=0.110431122877199
green_gain11_ratio=0.110502058582158
blue_gain11_ratio=0.110349968320226
clear_gain10_ratio=0.239641212688894
red_gain10_ratio=0.238052491082185
green_gain10_ratio=0.238076095772065
blue_gain10_ratio=0.237740576557724
clear_gain9_ratio=0.493111164433631
red_gain9_ratio=0.491978561211001
green_gain9_ratio=0.491972765002141
blue_gain9_ratio=0.491957358228726
clear_gain7_ratio=2.01251874687552
red_gain7_ratio=2.01549946676146
green_gain7_ratio=2.01534208707671
blue_gain7_ratio=2.01575238358435
clear_gain6_ratio=4.03429964307478
red_gain6_ratio=4.04432721293505
green_gain6_ratio=4.04516223326512
blue_gain6_ratio=4.0459718812765
# Histogram Configuration.
# Disable until ready.
histo_enable=1
# Display coordinates go from top left to bottom right.
histo_roi_left=260
histo_roi_top=260
histo_roi_right=400
histo_roi_bottom=400
# 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=216
histo_weight_g=736
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 3828 0 0e0 8.42741807E-05 1.49193871E-05 5.05201766E-10
histo_dbv_eq0=0 0 0 0e0
histo_dbv_eq1=1 2193 0 1.67793328E+00 -3.90648589E-04 9.01033905E-07 -1.16337601E-10
histo_dbv_eq2=2194 3574 0 2.25620936E+02 -2.45556510E-01 8.75465901E-05 -9.96545823E-09
histo_dbv_eq3=3575 3828 0 -1.9735E+03 7.3144E-01
# 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=3828
# 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/tmd3719/0/panel-b/prox
# Configures burst-delay as a lookup table using luma as input.
# The input luma will be compared with the first array from left to right.
# When it is less than or equal to the value in the array, the value at the
# same position in the burst_delay array is used.
burst_delay_luma_60hz=112 255
burst_delay_60hz=120 120
burst_delay_luma_120hz=64 255
burst_delay_120hz=157 157
pd0_far_threshold=30
pd0_near_threshold=60
pd1_far_threshold=60
pd1_near_threshold=80
# "Low power" operating parameters.
pulse_len_us=512
pdata0_scale=2.199
pdata1_scale=1.648
gain0=1
gain1=2
# "High power" operating parameters.
hp_pulse_len_us=512
hp_pdata0_scale=2.199
hp_pdata1_scale=1.648
hp_gain0=1
hp_gain1=2
max_lux_valid_for_baselining=0.0
max_ir_valid_for_baselining=1.0
+/dev/vd6282/0/spectral
# Golden values for calibration.
golden_rals_r=976
golden_rals_g=1099
golden_rals_b=283
golden_rals_clr1=4904
golden_rals_ir=3059
golden_rals_clr2=4932
+/dev/vd6282/0/rls
fix_fac_cal=1
lux_scale=112.93673
+294
View File
@@ -0,0 +1,294 @@
#
# Shiba sensor device configuration registry script for the EVT 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
#
?+0x33000:0xFFFFF000 # EVT
# Exclude
?-0x33114:0xFFFFFFFF # EVT Wingboard
#
# Record reg_script.
#
+/
reg_script=shiba_evt.reg
#
# Sensors
#
# MAG (MMC5633NJ)
+/dev/mmc56x3x/0/mag
fac_cal_transform=1.0814 0.0236 0.0239 0.0213 0.9023 0.0504 -0.0401 0.0116 1.3055 0.0 0.0 0.0
# BARO (ICP20100)
+/dev/icp20100/1
bus_name=i2c0
bus_freq_hz=400000
bus_addr=0x64
min_period_us=25000
+/dev/icp20100/1/baro
+/dev/icp20100/1/temp
# ALSP (TMD37193)
+/dev/tmd3719/0
bus_name=i2c0
bus_freq_hz=400000
bus_addr=0x39
intr_id=45
sync_delay_ns=4998766
# falling edge = 0, rising edge = 1
te2_alignment=1
anti_aliasing=1
debug_enable=1
+/dev/tmd3719/0/als
lux_scale=3.732433
c_coef=1
r_coef=-0.765091
g_coef=0.986515
b_coef=-1.221424
itime_table_brightness=658 901 1115 2565 3514 4096
itime_table=1400000 1400000 800000 181750 181750 1400000
max_gain_table=11 10 10 9 8 8
# 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 2
fast_filter_size=10
slow_filter_size=100
aod_fast_filter_size=2
aod_slow_filter_size=2
max_lux=160000
high_IR_threshold=2.0
# Number of EM cycles in a 60Hz frame.
EM_cycle_count_60Hz=4
# Step-size (in EM slots) for each rotation.
rotation_step_size=1
new_gain_ratio=1
clear_gain11_ratio=0.11625535387073455
red_gain11_ratio=0.11494924504976897
green_gain11_ratio=0.11410777377297202
blue_gain11_ratio=0.11436384033562808
clear_gain10_ratio=0.2429366201591872
red_gain10_ratio=0.2417615451458759
green_gain10_ratio=0.2411461883740554
blue_gain10_ratio=0.24135573586873238
clear_gain9_ratio=0.49537377596374205
red_gain9_ratio=0.4944763017620627
green_gain9_ratio=0.49411826809132353
blue_gain9_ratio=0.49421853876085087
clear_gain7_ratio=2.007158703756766
red_gain7_ratio=2.0094122647224655
green_gain7_ratio=2.0101826273507655
blue_gain7_ratio=2.0101143454281263
clear_gain6_ratio=4.018255323395394
red_gain6_ratio=4.026196393396218
green_gain6_ratio=4.0287260772874784
blue_gain6_ratio=4.028533405049345
# Histogram Configuration.
# Disable until ready.
histo_enable=1
# Display coordinates go from top left to bottom right.
histo_roi_left=260
histo_roi_top=260
histo_roi_right=400
histo_roi_bottom=400
# 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 208 0 0e0
histo_luma_eq1=209 4096 0 0e0 7.87649495E-04 9.91676468E-06 9.30633047E-09
histo_dbv_eq0=0 208 0 0e0
histo_dbv_eq1=209 1115 0 1.15276982E+00 -7.71696917E-04 3.50379344E-06 -8.42689794E-10
histo_dbv_eq2=1116 3514 0 -1.03807638E+00 7.40530243E-03
histo_dbv_eq3=3515 4096 0 -1.2985E+03 6.1367E-01
# 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/tmd3719/0/prox
auto_baseline=1
# Configures burst-delay as a lookup table using luma as input.
# The input luma will be compared with the first array from left to right.
# When it is less than or equal to the value in the array, the value at the
# same position in the burst_delay array is used.
burst_delay_luma_60hz=112 255
burst_delay_60hz=136 123
burst_delay_luma_120hz=64 255
burst_delay_120hz=61 55
burst_delay_aod=230
hxtalk=1
pulse_count=1
vcsel_ma=10
pd0_far_threshold=40
pd0_near_threshold=70
pd1_far_threshold=60
pd1_near_threshold=110
# "Low power" operating parameters.
pulse_len_us=256
filter_len=4
skip_count=0
pdata0_scale=1.57
pdata1_scale=1.13
gain0=4
gain1=8
# "High power" operating parameters.
hp_pulse_len_us=256
hp_filter_len=1
hp_skip_count=0
hp_pdata0_scale=1.57
hp_pdata1_scale=1.13
hp_pdata0_offset=0
hp_pdata1_offset=0
hp_gain0=4
hp_gain1=8
# High power only if value > 0.
high_power_mode_only=1
max_lux_valid_for_baselining=0.0
max_ir_valid_for_baselining=1.0
+/dev/tmd3719/0/panel-b
sync_delay_ns=4962673
+/dev/tmd3719/0/panel-b/als
itime_table_brightness=680 1073 1428 2193 2631 3041 3574 3828
itime_table=1400000 1400000 1400000 1400000 800000 181750 181750 1400000
max_gain_table=11 10 10 9 9 9 8 8
# 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 2
high_IR_threshold=2.5
# Histogram Configuration.
# Disable until ready.
histo_enable=1
# Display coordinates go from top left to bottom right.
histo_roi_left=260
histo_roi_top=260
histo_roi_right=400
histo_roi_bottom=400
# 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=216
histo_weight_g=736
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 3828 0 0e0 8.42741807E-05 1.49193871E-05 5.05201766E-10
histo_dbv_eq0=0 0 0 0e0
histo_dbv_eq1=1 2193 0 1.67793328E+00 -3.90648589E-04 9.01033905E-07 -1.16337601E-10
histo_dbv_eq2=2194 3574 0 2.25620936E+02 -2.45556510E-01 8.75465901E-05 -9.96545823E-09
histo_dbv_eq3=3575 3828 0 -1.9735E+03 7.3144E-01
# 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=3828
# 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/tmd3719/0/panel-b/prox
# Configures burst-delay as a lookup table using luma as input.
# The input luma will be compared with the first array from left to right.
# When it is less than or equal to the value in the array, the value at the
# same position in the burst_delay array is used.
burst_delay_luma_60hz=112 255
burst_delay_60hz=120 120
burst_delay_luma_120hz=64 255
burst_delay_120hz=157 157
pd0_far_threshold=30
pd0_near_threshold=60
pd1_far_threshold=60
pd1_near_threshold=80
# "Low power" operating parameters.
pulse_len_us=512
pdata0_scale=2.21
pdata1_scale=1.66
gain0=1
gain1=2
# "High power" operating parameters.
hp_pulse_len_us=512
hp_pdata0_scale=2.21
hp_pdata1_scale=1.66
hp_gain0=1
hp_gain1=2
max_lux_valid_for_baselining=0.0
max_ir_valid_for_baselining=1.0
+/dev/vd6282/0/spectral
# Golden values for calibration.
golden_rals_r=952
golden_rals_g=1073
golden_rals_b=267
golden_rals_clr1=4686
golden_rals_ir=3059
golden_rals_clr2=4711
+/dev/vd6282/0/rls
fix_fac_cal=1
lux_scale=115.58067
@@ -0,0 +1,293 @@
#
# Shiba sensor device configuration registry script for the EVT Wingboard 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
#
?+0x33114:0xFFFFFFFF # EVT Wingboard
#
# Record reg_script.
#
+/
reg_script=shiba_evt_win.reg
#
# Sensors
#
# MAG (MMC5633NJ)
+/dev/mmc56x3x/0/mag
fac_cal_transform=1.0814 0.0236 0.0239 0.0213 0.9023 0.0504 -0.0401 0.0116 1.3055 0.0 0.0 0.0
# BARO (ICP20100)
+/dev/icp20100/1
bus_name=i2c0
bus_freq_hz=400000
bus_addr=0x63
intr_id=47
min_period_us=25000
+/dev/icp20100/1/baro
+/dev/icp20100/1/temp
# ALSP (TMD37193)
+/dev/tmd3719/0
bus_name=i2c0
bus_freq_hz=400000
bus_addr=0x39
intr_id=45
sync_delay_ns=4998766
# falling edge = 0, rising edge = 1
te2_alignment=1
anti_aliasing=1
debug_enable=1
+/dev/tmd3719/0/als
lux_scale=3.732433
c_coef=1
r_coef=-0.765091
g_coef=0.986515
b_coef=-1.221424
itime_table_brightness=658 901 1115 2565 3514 4096
itime_table=1400000 1400000 800000 181750 181750 1400000
max_gain_table=11 10 10 9 8 8
# 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 2
fast_filter_size=10
slow_filter_size=100
aod_fast_filter_size=2
aod_slow_filter_size=2
max_lux=160000
high_IR_threshold=2.0
# Number of EM cycles in a 60Hz frame.
EM_cycle_count_60Hz=4
# Step-size (in EM slots) for each rotation.
rotation_step_size=1
new_gain_ratio=1
clear_gain11_ratio=0.11625535387073455
red_gain11_ratio=0.11494924504976897
green_gain11_ratio=0.11410777377297202
blue_gain11_ratio=0.11436384033562808
clear_gain10_ratio=0.2429366201591872
red_gain10_ratio=0.2417615451458759
green_gain10_ratio=0.2411461883740554
blue_gain10_ratio=0.24135573586873238
clear_gain9_ratio=0.49537377596374205
red_gain9_ratio=0.4944763017620627
green_gain9_ratio=0.49411826809132353
blue_gain9_ratio=0.49421853876085087
clear_gain7_ratio=2.007158703756766
red_gain7_ratio=2.0094122647224655
green_gain7_ratio=2.0101826273507655
blue_gain7_ratio=2.0101143454281263
clear_gain6_ratio=4.018255323395394
red_gain6_ratio=4.026196393396218
green_gain6_ratio=4.0287260772874784
blue_gain6_ratio=4.028533405049345
# Histogram Configuration.
# Disable until ready.
histo_enable=1
# Display coordinates go from top left to bottom right.
histo_roi_left=260
histo_roi_top=260
histo_roi_right=400
histo_roi_bottom=400
# 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 208 0 0e0
histo_luma_eq1=209 4096 0 0e0 7.87649495E-04 9.91676468E-06 9.30633047E-09
histo_dbv_eq0=0 208 0 0e0
histo_dbv_eq1=209 1115 0 1.15276982E+00 -7.71696917E-04 3.50379344E-06 -8.42689794E-10
histo_dbv_eq2=1116 3514 0 -1.03807638E+00 7.40530243E-03
histo_dbv_eq3=3515 4096 0 -1.2985E+03 6.1367E-01
# 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/tmd3719/0/prox
auto_baseline=1
# Configures burst-delay as a lookup table using luma as input.
# The input luma will be compared with the first array from left to right.
# When it is less than or equal to the value in the array, the value at the
# same position in the burst_delay array is used.
burst_delay_luma_60hz=112 255
burst_delay_60hz=136 123
burst_delay_luma_120hz=64 255
burst_delay_120hz=61 55
burst_delay_aod=230
hxtalk=1
pulse_count=1
vcsel_ma=10
pd0_far_threshold=40
pd0_near_threshold=70
pd1_far_threshold=60
pd1_near_threshold=110
# "Low power" operating parameters.
pulse_len_us=256
filter_len=4
skip_count=0
pdata0_scale=1.57
pdata1_scale=1.13
gain0=4
gain1=8
# "High power" operating parameters.
hp_pulse_len_us=256
hp_filter_len=1
hp_skip_count=0
hp_pdata0_scale=1.57
hp_pdata1_scale=1.13
hp_pdata0_offset=0
hp_pdata1_offset=0
hp_gain0=4
hp_gain1=8
# High power only if value > 0.
high_power_mode_only=1
max_lux_valid_for_baselining=0.0
max_ir_valid_for_baselining=1.0
+/dev/tmd3719/0/panel-b
sync_delay_ns=4962673
+/dev/tmd3719/0/panel-b/als
itime_table_brightness=680 1073 1428 2193 2631 3041 3574 3828
itime_table=1400000 1400000 1400000 1400000 800000 181750 181750 1400000
max_gain_table=11 10 10 9 9 9 8 8
# 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 2
high_IR_threshold=2.5
# Histogram Configuration.
# Disable until ready.
histo_enable=1
# Display coordinates go from top left to bottom right.
histo_roi_left=260
histo_roi_top=260
histo_roi_right=400
histo_roi_bottom=400
# 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=216
histo_weight_g=736
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 3828 0 0e0 8.42741807E-05 1.49193871E-05 5.05201766E-10
histo_dbv_eq0=0 0 0 0e0
histo_dbv_eq1=1 2193 0 1.67793328E+00 -3.90648589E-04 9.01033905E-07 -1.16337601E-10
histo_dbv_eq2=2194 3574 0 2.25620936E+02 -2.45556510E-01 8.75465901E-05 -9.96545823E-09
histo_dbv_eq3=3575 3828 0 -1.9735E+03 7.3144E-01
# 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=3828
# 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/tmd3719/0/panel-b/prox
# Configures burst-delay as a lookup table using luma as input.
# The input luma will be compared with the first array from left to right.
# When it is less than or equal to the value in the array, the value at the
# same position in the burst_delay array is used.
burst_delay_luma_60hz=112 255
burst_delay_60hz=120 120
burst_delay_luma_120hz=64 255
burst_delay_120hz=157 157
pd0_far_threshold=30
pd0_near_threshold=60
pd1_far_threshold=60
pd1_near_threshold=80
# "Low power" operating parameters.
pulse_len_us=512
pdata0_scale=2.21
pdata1_scale=1.66
gain0=1
gain1=2
# "High power" operating parameters.
hp_pulse_len_us=512
hp_pdata0_scale=2.21
hp_pdata1_scale=1.66
hp_gain0=1
hp_gain1=2
max_lux_valid_for_baselining=0.0
max_ir_valid_for_baselining=1.0
+/dev/vd6282/0/spectral
# Golden values for calibration.
golden_rals_r=952
golden_rals_g=1073
golden_rals_b=267
golden_rals_clr1=4686
golden_rals_ir=3059
golden_rals_clr2=4711
+/dev/vd6282/0/rls
fix_fac_cal=1
lux_scale=115.58067
@@ -0,0 +1,185 @@
#
# Shiba sensor device configuration registry script for the Proto 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
#
?+0x32100:0xFFFFFFF0 # Proto 1.0
#
# Record reg_script.
#
+/
reg_script=shiba_proto_1_0.reg
#
# Sensors
#
# MAG (MMC5633NJ)
+/dev/mmc56x3x/0/mag
fac_cal_transform=1.0857 0.0196 0.0465 0.0287 0.8935 0.0449 -0.0779 0.0167 1.2920 0.0 0.0 0.0
# 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
+/dev/icp20100/0/temp
# ALSP (TMD37193)
+/dev/tmd3719/0
bus_name=i2c0
bus_freq_hz=400000
bus_addr=0x39
intr_id=45
sync_delay_ns=1195227
# falling edge = 0, rising edge = 1
te2_alignment=1
anti_aliasing=1
debug_enable=1
+/dev/tmd3719/0/als
lux_scale=2.272701
c_coef=1
r_coef=-0.765091
g_coef=0.986515
b_coef=-1.221424
itime_table_brightness=658 902 1115 2565 3175
itime_table=2200000 1598000 637500 181750 181750
max_gain_table=11 10 10 9 8
# 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 2
fast_filter_size=10
slow_filter_size=100
aod_fast_filter_size=2
aod_slow_filter_size=2
max_lux=160000
high_IR_threshold=2.0
# Number of EM cycles in a 60Hz frame.
EM_cycle_count_60Hz=4
# Step-size (in EM slots) for each rotation.
rotation_step_size=1
new_gain_ratio=1
clear_gain11_ratio=0.11625535387073455
red_gain11_ratio=0.11494924504976897
green_gain11_ratio=0.11410777377297202
blue_gain11_ratio=0.11436384033562808
clear_gain10_ratio=0.2429366201591872
red_gain10_ratio=0.2417615451458759
green_gain10_ratio=0.2411461883740554
blue_gain10_ratio=0.24135573586873238
clear_gain9_ratio=0.49537377596374205
red_gain9_ratio=0.4944763017620627
green_gain9_ratio=0.49411826809132353
blue_gain9_ratio=0.49421853876085087
clear_gain7_ratio=2.007158703756766
red_gain7_ratio=2.0094122647224655
green_gain7_ratio=2.0101826273507655
blue_gain7_ratio=2.0101143454281263
clear_gain6_ratio=4.018255323395394
red_gain6_ratio=4.026196393396218
green_gain6_ratio=4.0287260772874784
blue_gain6_ratio=4.028533405049345
# Histogram Configuration.
# Disable until ready.
histo_enable=0
+/dev/tmd3719/0/prox
auto_baseline=1
burst_delay_60hz=208
burst_delay_120hz=175
burst_delay_aod=230
hxtalk=1
pulse_count=1
vcsel_ma=10
pd0_far_threshold=50
pd0_near_threshold=50
pd1_far_threshold=100
pd1_near_threshold=170
# "Low power" operating parameters.
pulse_len_us=256
filter_len=4
skip_count=0
pdata0_scale=1.47
pdata1_scale=1.1
gain0=4
gain1=8
# "High power" operating parameters.
hp_pulse_len_us=256
hp_filter_len=1
hp_skip_count=0
hp_pdata0_scale=1.47
hp_pdata1_scale=1.1
hp_pdata0_offset=0
hp_pdata1_offset=0
hp_gain0=4
hp_gain1=8
# High power only if value > 0.
high_power_mode_only=1
max_lux_valid_for_baselining=0.0
max_ir_valid_for_baselining=1.0
+/dev/tmd3719/0/panel-b
sync_delay_ns=1195227
+/dev/tmd3719/0/panel-b/als
itime_table_brightness=948 1341 1696 2461 2899 3308 3672
itime_table=2200000 1898900 1598000 979500 349950 181750 181750
max_gain_table=11 10 10 9 9 9 8
# 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 2
high_IR_threshold=2.5
+/dev/tmd3719/0/panel-b/prox
burst_delay_60hz=211
burst_delay_120hz=157
pd0_far_threshold=50
pd0_near_threshold=50
pd1_far_threshold=75
pd1_near_threshold=100
# "Low power" operating parameters.
pulse_len_us=512
gain0=1
gain1=2
# "High power" operating parameters.
hp_pulse_len_us=512
hp_gain0=1
hp_gain1=2
max_lux_valid_for_baselining=0.0
max_ir_valid_for_baselining=1.0
+/dev/vd6282/0/spectral
# Golden values for calibration.
golden_rals_r=952
golden_rals_g=1073
golden_rals_b=267
golden_rals_clr1=4686
golden_rals_ir=3059
golden_rals_clr2=4711
+/dev/vd6282/0/rls
fix_fac_cal=1
lux_scale=115.58067
@@ -0,0 +1,187 @@
#
# Shiba sensor device configuration registry script for the Proto 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
#
?+0x32100:0xFFFFFF00
# Exclude
?-0x32100:0xFFFFFFF0 # Proto 1.0
#
# Record reg_script.
#
+/
reg_script=shiba_proto_1_1.reg
#
# Sensors
#
# MAG (MMC5633NJ)
+/dev/mmc56x3x/0/mag
fac_cal_transform=1.0857 0.0196 0.0465 0.0287 0.8935 0.0449 -0.0779 0.0167 1.2920 0.0 0.0 0.0
# 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
+/dev/icp20100/0/temp
# ALSP (TMD37193)
+/dev/tmd3719/0
bus_name=i2c0
bus_freq_hz=400000
bus_addr=0x39
intr_id=45
sync_delay_ns=1195227
# falling edge = 0, rising edge = 1
te2_alignment=1
anti_aliasing=1
debug_enable=1
+/dev/tmd3719/0/als
lux_scale=2.272701
c_coef=1
r_coef=-0.765091
g_coef=0.986515
b_coef=-1.221424
itime_table_brightness=658 902 1115 2565 3175
itime_table=2200000 1598000 637500 181750 181750
max_gain_table=11 10 10 9 8
# 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 2
fast_filter_size=10
slow_filter_size=100
aod_fast_filter_size=2
aod_slow_filter_size=2
max_lux=160000
high_IR_threshold=2.0
# Number of EM cycles in a 60Hz frame.
EM_cycle_count_60Hz=4
# Step-size (in EM slots) for each rotation.
rotation_step_size=1
new_gain_ratio=1
clear_gain11_ratio=0.11625535387073455
red_gain11_ratio=0.11494924504976897
green_gain11_ratio=0.11410777377297202
blue_gain11_ratio=0.11436384033562808
clear_gain10_ratio=0.2429366201591872
red_gain10_ratio=0.2417615451458759
green_gain10_ratio=0.2411461883740554
blue_gain10_ratio=0.24135573586873238
clear_gain9_ratio=0.49537377596374205
red_gain9_ratio=0.4944763017620627
green_gain9_ratio=0.49411826809132353
blue_gain9_ratio=0.49421853876085087
clear_gain7_ratio=2.007158703756766
red_gain7_ratio=2.0094122647224655
green_gain7_ratio=2.0101826273507655
blue_gain7_ratio=2.0101143454281263
clear_gain6_ratio=4.018255323395394
red_gain6_ratio=4.026196393396218
green_gain6_ratio=4.0287260772874784
blue_gain6_ratio=4.028533405049345
# Histogram Configuration.
# Disable until ready.
histo_enable=0
+/dev/tmd3719/0/prox
auto_baseline=1
burst_delay_60hz=188
burst_delay_120hz=55
burst_delay_aod=230
hxtalk=1
pulse_count=1
vcsel_ma=10
pd0_far_threshold=50
pd0_near_threshold=70
pd1_far_threshold=60
pd1_near_threshold=110
# "Low power" operating parameters.
pulse_len_us=256
filter_len=4
skip_count=0
pdata0_scale=1.47
pdata1_scale=1.1
gain0=4
gain1=8
# "High power" operating parameters.
hp_pulse_len_us=256
hp_filter_len=1
hp_skip_count=0
hp_pdata0_scale=1.47
hp_pdata1_scale=1.1
hp_pdata0_offset=0
hp_pdata1_offset=0
hp_gain0=4
hp_gain1=8
# High power only if value > 0.
high_power_mode_only=1
max_lux_valid_for_baselining=0.0
max_ir_valid_for_baselining=1.0
+/dev/tmd3719/0/panel-b
sync_delay_ns=1195227
+/dev/tmd3719/0/panel-b/als
itime_table_brightness=948 1341 1696 2461 2899 3308 3672
itime_table=2200000 1898900 1598000 979500 349950 181750 181750
max_gain_table=11 10 10 9 9 9 8
# 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 2
high_IR_threshold=2.5
+/dev/tmd3719/0/panel-b/prox
burst_delay_60hz=211
burst_delay_120hz=157
pd0_far_threshold=40
pd0_near_threshold=60
pd1_far_threshold=40
pd1_near_threshold=60
# "Low power" operating parameters.
pulse_len_us=512
gain0=1
gain1=2
# "High power" operating parameters.
hp_pulse_len_us=512
hp_gain0=1
hp_gain1=2
max_lux_valid_for_baselining=0.0
max_ir_valid_for_baselining=1.0
+/dev/vd6282/0/spectral
# Golden values for calibration.
golden_rals_r=952
golden_rals_g=1073
golden_rals_b=267
golden_rals_clr1=4686
golden_rals_ir=3059
golden_rals_clr2=4711
+/dev/vd6282/0/rls
fix_fac_cal=1
lux_scale=115.58067