When max9295_init_settings() is invoked at the max9295 probe stage or streamed y8/y8i before running y12i, the 0x31E register is overridden by a non-default value.
Any change on the 0x31E register for enabling y8/y8i may cause y12i not to work since the change on that reg is not required in y12i.
Solution
Reset the 0x31E reg in both driver and new script SerDes_D457_1.0.0.8a.sh to enable y12i.
More
SerDes_D457_1.0.0.8a.sh is inherited from SerDes_D457_1.0.0.7a.sh.
Compared to SerDes_D457_1.0.0.7a.sh file, only appended one line, "sudo i2cset -f -y 2 0x40 0x03 0x181E w".
root cause for y12i not work:
When max9295_init_settings() is invoked at the max9295 probe stage or streamed y8/y8i before running y12i, the 0x31E register is overridden by a non-default value. Any change on the 0x31E register for enabling y8/y8i may cause y12i not to work since the change on that reg is not required in y12i.