You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Step 11: Replace full init_settings with targeted pipe 3 setup
max9295_init_settings() writes to global serializer registers (0x02 pipe
enable, 0x308 CSI port select, 0x311 data source, 0x331 MIPI RX) that
disrupt the active GMSL link. When called in Step 11 where the link
is UP (either naturally recovered or restored by Phase 1/2) these
global register writes kill the link within ~34ms, cascading into total
I2C failure (-121) for all addresses (9-001a/b/c/d).
Replace with ds5_setup_pipeline() for pipe 3 (IMU) only. This calls
max9295_set_pipe() + dser set_pipe() which write ONLY per-pipe registers
(data type, vc_id, BPP, LIM_HEART) no global registers are touched
and the GMSL link remains stable.
The D457 FW configures pipes 0-2 (Depth, RGB, IR) during boot.
Pipe 3 (IMU) is the only one the driver must add post-reset.
Symptom: After HW reset via HWMC (light path), init_settings at T+236ms
kills the GMSL link. 34ms later all I2C addresses return -121, leading
to IMU stream start failure and eventually Phase 2 deserializer reset.
0 commit comments