Jetson Nano - turn off / disable v4l2 camera

Hi,

I need to temporarily turn off / disable MIPI/CSI camera connected to my Jetson Nano [L4T32.6.1] (so that after reboot it’s back again). I wanted to use modprobe but it looks like this camera is not a loadable module:

$ lsmod

Module                  Size  Used by
bnep                   16562  2
xt_conntrack            3609  1
ipt_MASQUERADE          2346  1
nf_nat_masquerade_ipv4     3111  1 ipt_MASQUERADE
nf_conntrack_netlink    29413  0
nfnetlink               7959  2 nf_conntrack_netlink
xt_addrtype             3670  2
iptable_filter          2481  1
iptable_nat             2882  1
nf_conntrack_ipv4      11992  2
nf_defrag_ipv4          1836  1 nf_conntrack_ipv4
nf_nat_ipv4             6712  1 iptable_nat
nf_nat                 20406  2 nf_nat_masquerade_ipv4,nf_nat_ipv4
nf_conntrack          106659  6 nf_conntrack_ipv4,nf_conntrack_netlink,nf_nat_masquerade_ipv4,xt_conntrack,nf_nat_ipv4,nf_nat
br_netfilter           16216  0
zram                   25920  4
overlay                48718  0
binfmt_misc            13103  1
userspace_alert         5828  0
nvgpu                1589200  18
ip_tables              19441  2 iptable_filter,iptable_nat
x_tables               28951  5 ip_tables,iptable_filter,ipt_MASQUERADE,xt_addrtype,xt_conntrack

$ v4l2-ctl --list-devices

vi-output, arducam-csi2 7-000c (platform:54080000.vi:0):
	/dev/video0

How can I achieve that?

Context: We have a bug in our cameras which can be temporarily fixed by just turning off the camera. However system’s reboot doesn’t work as it doesn’t stop powering CSI cameras. The current solution is to stop powering the whole device but I would like to move it to software-level solution. Any help would be extremely appreciated!

Regards,
Piotr

Hi,

If the camera has a built-in driver (that is in the kernel image) I think you have some options:

  • Disable the driver compilation in the Kernel menu configuration, recompile the kernel, and install it
  • Disable the camera in the device tree, compile the device tree, and install it.
  • Change the driver form built-in to a module in the Kernel menu configuration, recompile the kernel and modules, and install the new kernel and modules. then you can load and unload the driver.

Another option that you can try is to set the device tree to change the status node of the camera directly from the user space using this tool:

For example:

sudo fdtput -t s /proc/device-tree/i2c@3180000/tca9546@70/i2c@0/imx185_a@1a/ status disabled

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