How to set max96712‘s speed to 3Gbps in NvSIPL

Please provide the following info (check/uncheck the boxes after clicking “+ Create Topic”):
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
Hi, team,
I am trying to add serializer Max96717F camera in NvSIPL. Max967167F only works in 3Gbps mode. I try to modify CNvMMax96712.cpp, but it looks not worked. I think Nv only opensource CNvMMax96712.cpp but not use it in the opensource part. And CNvMMax96712.cpp already build in right? So how can i set Max96712 in 3Gbps mode.

Hi @wangxuhui1 ,

It was built in libnvsipl_devblk_drv_*.so. For configuring MAX96712, you may need to contact with MAXIM. Thanks.

Hi,@VickNV , it’s not MAXIM’s issue. I think there is a bug in NvSIPL.

  1. NvSIPL’s framework support GMSL2 and GMSL1, and GMSL2 only support 6Gbps, But GMSL2 has 6Gbps and 3Gbps , and in function
    static NvMediaStatus SetLinkMode( DevBlkCDIDevice *handle, LinkMAX96712 link)
    only can choose GMSL1 3Gbps and GMSL2 6Gbps. There is no option for GMSL2 3Gbps.
  2. if i set LINK_MODE_GMSL1 in function CNvMDeserializer::LinkMode CNvMMAX96712_96XXXCameraModule::GetLinkMode()
    the program will excute the function
    NvMediaStatus MAX96712SetDefaults( DevBlkCDIDevice *handle)
    If i set LINK_MODE_GMSL2 , the function wont be excuted. Thats super Confusing.

It will be available in the upcoming release.

Please check if CNvMMax96712::Init() is called with LINK_MODE_GMSL2 set.

Hi, @VickNV

  1. Whats the estimated release time of upcoming release?

  2. CNvMMax96712::Init() is not called in both MODE set. The funciton MAX96712CheckLink looks like only called in LINK_MODE_GMSL1 mode. I think there is a copy of class CNvMMax96712 in ? Because i can grep evey printf message in

Release schedule won’t be conveyed in the forum. Maybe you can check it with your nvidia rep.

Isn’t it called in CNvMMax96712.cpp for both GMSL1/2?

SIPLStatus CNvMMax96712::CheckLinkLock(uint8_t linkMask) {                      
        if (item.linkMode == LinkMode::LINK_MODE_GMSL2) {                       
                nvmStatus = MAX96712CheckLink(m_upCDIDevice.get(),              
        } else if (item.linkMode == LinkMode::LINK_MODE_GMSL1) {                
            nvmStatus = MAX96712CheckLink(m_upCDIDevice.get(),                  

@VickNV Yes, SIPLStatus CNvMMax96712::CheckLinkLock(uint8_t linkMask) never called. I tried print log in that function and gdb debug make break for CheckLinkLock. They both show nothing

The function is also called in
You can have a check on them.