I want to check MIPI CSI error in Orin (5.10.104-tegra, JetPack 5.0.2).
I tried the method which is introduced in Jetson/l4t/Camera BringUp - eLinux.org. In this site, CSI error can be found by analyzing CSIMUX_FRAME data field. However, although if we inject CRC error, there is no CSIMUX_FRAME in the trace.
I’m sorry that I made you confused. Our sensor doesn’t have any failure. I just want to check if VI trace shows CRC error when the error occurs. So I injected CRC error in the working sensor but VI trace doesn’t show any error log related CRC.
I have another question. If there are CRC errors, is there other way to check the error without using VI trace?
We just want to check MIPI Standard Error when this kind of error occurs.
In the TRM, NVCSI_STREAM_0_PH_CHK_CTRL_0 register has crc and ecc enable bit.
However, accessing this register occurs kernel panic. Is this way right to check the CRC error? If then, how to manipulate this kind of registers (eg., NVCSI_STREAM_0_PH_CHK_CTRL_0)?
you may check registers to obtain more CSI details.
for example, NVCSI_STREAM_0_PH_WC_0, or NVCSI_STREAM_0_PF_CRC_0
you should enable camera stream before access registers.
moreover, there’s firewall configuration of accessing to these registers on Orin platforms.
you may refer to Topic 234321 for CBB FIREWALL settings, please update tegra234-mb2-bct-scr-p3701-0000-override.dts then re-flash your target to apply the config.
Thanks for your reply.
I don’t use override dts so I modified hardware/nvidia/platform/t23x/common/bct/firewall/tegra234-firewall-config-base.dtsi to modify firewall configuration. However, this register is not still accessable. Is it okay to modify this dtsi file?
SLAVE_ERR it means fail to communicate with the slave address, it may due to NVCSI did not power-on. I assume you’re using devmem to access the register directly, right?
practically, you must enable camera stream, please stay the camera stream running for NVCSI register reading.
if you have driver implementation to examine register dumps, please check the values after start_stream.
Thanks a lot. I finally succeed accessing NVCSI registers.
But in this case, how could I check whether NVCSI CRC/ECC Error has occured? I want to get alram when this kind of error has occured.
I found that the value of 0x15a10194 is 0x7 and 0x15a101d8 is different at every dump.