Purpose of nvsipl/devblk/devices/MAX96712DeserializerDriver/CNvMMax96712.cpp

Please provide the following info:
Software Version
[*] DRIVE OS Linux 5.2.0
DRIVE OS Linux 5.2.0 and DriveWorks 3.5
NVIDIA DRIVE™ Software 10.0 (Linux)
NVIDIA DRIVE™ Software 9.0 (Linux)
other DRIVE OS version

Target Operating System
[*] Linux

Hardware Platform
NVIDIA DRIVE™ AGX Xavier DevKit (E3550)
NVIDIA DRIVE™ AGX Pegasus DevKit (E3550)

SDK Manager Version

Host Machine Version
[*] native Ubuntu 18.04

Hello Nvidia engineers,

I am playing around the nvsipl sample and noticed that the source code of CNvMMax96712.cpp is useless when building camera modules. It seems like nvsipl is using the prebuilt libnvsipl_devblk.so which is compiled with CNvMMax96712.cpp?
This restricts users from creating customized camera modules because nvsipl framework will forcibly do some max96712 operations during Init() or Start() stage that might not be universal for all camera modules.
Ideally all serdes operations should be under camera module driver’s control, the nvsipl framework could provide some common but overrideable operations?

Hi @ranchen ,

The information of the supported camera modules is listed in DRIVE Ecosystem Hardware and Software Components | NVIDIA Developer. Unfortunately the current default DRIVE OS release only supports MAX96712 deserializer (see below table from Understanding NvMedia SIPL Framework). Further camera development is only for specific partners and will need other packages. Please contact with your nvidia representive for further discussion. Thanks.