Reduced Framerate in different L4T

Hi,
We are using our custom driver for a framegrabber which produces 1080p at 30 fps. In Orin board when working with L4T 35.4.1, we got expected 1080p at 30 fps. But with the same code and same hardware, when we are working with L4T 36.3.0, we got 1080p a 20 fps only. Why this framerate drop observed in L4T 36.3.0?

What kind of framegrabber device? CSI or USB interface? Do you check if any error message?

PCIe interface framegrabber device. I did not see any error messages

It’s v4l2 interface to get the frame?

Yes, V4L2 to get the frame. With fakesink also I got 20 fps and with v4l2-ctl application also i got 20 fps. But the same hardware with just different Jetpack I got 30 fps.

Do you confirm by v4l2-ctl —stream-mmap?

yes, I confirm with v4l2-ctl —stream-mmap also behavior is same

Could you probe the signal to confirm the output is 30fps.

Thanks

Hi Shane,
One thing I have noticed is when I used L4T 36.3.0, number of lanes downgraded to two. I have attached my dmesg and lspci log. Please check it.
orin_lspci_log.txt (17.0 KB)
orin_dmesg_log.txt (65.6 KB)

With different L4T I found the attached logs where lanes were correctly downgraded to four
orin2_dmesg_log.txt (78.0 KB)
orin2_lspci_log.txt (16.3 KB)

One more thing noticed is, payload size is 128 when the fps is 20 and it is 256 when the fps is 30

Hi @ShaneCCC ,
We verified by probing the signal and found it took more than 33 ms to send a frame from FPGA(endpoint) to Orin(Root Complex) and Our FPGA team said it was mainly due to Max Payload Size which is 128bytes in this JetPack. How to increase Max Payload Size to 256?

Reference to below topic for the payload size.

You can try setpci command to set it also.

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.