IMX462 B0444 Camera is not recognized by kernel

I’m having problems setting up my IMX462 2MPx Color Ultra Low Light Camer on Rapberry PI 4

  1. Where did you get the camera module(s)?
    local reseller

  2. Model number of the product(s)?
    IMX462 B0444 Color Ultra Low Light

  3. What hardware/platform were you working on?
    Raspberry PI 4 B, Debian 11 (bullseye) aarch64
    Kernel: 6.1.21-v8+

  4. Instructions you have followed. (link/manual/etc.)
    Separately tried these:

    1. Quick Start - Arducam Wiki
    2. https://www.waveshare.com/wiki/IMX462_2MP_Starlight_Camera

Both doesn’t help
Tried myself to set other sibling drivers(aka imx290) into /boot/config.txt and /dev/video0 appeared, but I cannot read it

  1. Problems you were having?
    When used ArduCam manual /dev/video0 doesn’t show up, so I cannot use libcamera nor the v4l2-ctl to access my camera, even though I can see that i2cdetect says that there are used addresses after the driver was added to kernel boot config.
    Also I noted that after OS is booted I still can see modprobe of:Narducam_pivarietyT(null)Carducam,arducam-pivariety and it has uninterruptible state.

  2. The dmesg log from your hardware?
    Will be in further message because of length restriction

By these lines at least I can say that module started loading:

[    0.079037] platform fe801000.csi: Fixed dependency cycle(s) with /soc/i2c0mux/i2c@1/arducam_pivariety@c
[   10.651441] arducam-pivariety 10-000c: firmware version: 0x10003

But as I can see nothing else interesting didn’t happen.
My /boot/config.txt:

# For more options and information see
# http://rpf.io/configtxt
# Some settings may impact device functionality. See link above for details

# uncomment if you get no picture on HDMI for a default "safe" mode
#hdmi_safe=1

# uncomment the following to adjust overscan. Use positive numbers if console
# goes off screen, and negative if there is too much border
#overscan_left=16
#overscan_right=16
#overscan_top=16
#overscan_bottom=16

# uncomment to force a console size. By default it will be display's size minus
# overscan.
#framebuffer_width=1280
#framebuffer_height=720

# uncomment if hdmi display is not detected and composite is being output
#hdmi_force_hotplug=1

# uncomment to force a specific HDMI mode (this will force VGA)
#hdmi_group=1
#hdmi_mode=1

# uncomment to force a HDMI mode rather than DVI. This can make audio work in
# DMT (computer monitor) modes
#hdmi_drive=2

# uncomment to increase signal to HDMI, if you have interference, blanking, or
# no display
#config_hdmi_boost=4

# uncomment for composite PAL
#sdtv_mode=2

#uncomment to overclock the arm. 700 MHz is the default.
#arm_freq=800

# Uncomment some or all of these to enable the optional hardware interfaces
dtparam=i2c_arm=on
dtparam=i2c_vc=on
disable_touchscreen=1
#dtparam=i2s=on
dtparam=spi=on

# Uncomment this to enable infrared communication.
#dtoverlay=gpio-ir,gpio_pin=17
#dtoverlay=gpio-ir-tx,gpio_pin=18

# Additional overlays and parameters are documented /boot/overlays/README

# Enable audio (loads snd_bcm2835)
dtparam=audio=on

# Automatically load overlays for detected cameras

# Automatically load overlays for detected DSI displays
display_auto_detect=1

# Enable DRM VC4 V3D driver
max_framebuffers=2

# Run in 64-bit mode
arm_64bit=1

# Disable compensation for displays with overscan
disable_overscan=1

[cm4]
# Enable host mode on the 2711 built-in XHCI USB controller.
# This line should be removed if the legacy DWC2 controller is required
# (e.g. for USB device mode) or if USB support is not required.
otg_mode=1

[pi4]
# Run as fast as firmware / board allows
arm_boost=1
dtoverlay=vc4-kms-v3d,cma-512

[all]
enable_uart=1
camera_auto_detect=0
dtoverlay=arducam-pivariety,media-controller=0

Also I’ve tried with other variations of camera_auto_detect and adding cam=0

dmesg:

[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd083]
[    0.000000] Linux version 6.1.21-v8+ (dom@buildbot) (aarch64-linux-gnu-gcc-8 (Ubuntu/Linaro 8.4.0-3ubuntu1) 8.4.0, GNU ld (GNU Binutils for Ubuntu) 2.34) #1642 SMP PREEMPT Mon Apr  3 17:24:16 BST 2023
[    0.000000] random: crng init done
[    0.000000] Machine model: Raspberry Pi 4 Model B Rev 1.4
[    0.000000] efi: UEFI not found.
[    0.000000] Reserved memory: created CMA memory pool at 0x000000000ec00000, size 512 MiB
[    0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool
[    0.000000] Zone ranges:
[    0.000000]   DMA      [mem 0x0000000000000000-0x000000003fffffff]
[    0.000000]   DMA32    [mem 0x0000000040000000-0x00000000ffffffff]
[    0.000000]   Normal   [mem 0x0000000100000000-0x00000001ffffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000000000000-0x000000003b3fffff]
[    0.000000]   node   0: [mem 0x0000000040000000-0x00000000fbffffff]
[    0.000000]   node   0: [mem 0x0000000100000000-0x00000001ffffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x00000001ffffffff]
[    0.000000] On node 0, zone DMA32: 19456 pages in unavailable ranges
[    0.000000] On node 0, zone Normal: 16384 pages in unavailable ranges
[    0.000000] percpu: Embedded 29 pages/cpu s78504 r8192 d32088 u118784
[    0.000000] pcpu-alloc: s78504 r8192 d32088 u118784 alloc=29*4096
[    0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3 
[    0.000000] Detected PIPT I-cache on CPU0
[    0.000000] CPU features: detected: Spectre-v2
[    0.000000] CPU features: detected: Spectre-v3a
[    0.000000] CPU features: detected: Spectre-v4
[    0.000000] CPU features: detected: Spectre-BHB
[    0.000000] CPU features: kernel page table isolation forced ON by KASLR
[    0.000000] CPU features: detected: Kernel page table isolation (KPTI)
[    0.000000] CPU features: detected: ARM erratum 1742098
[    0.000000] CPU features: detected: ARM errata 1165522, 1319367, or 1530923
[    0.000000] alternatives: applying boot alternatives
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 2028848
[    0.000000] Kernel command line: coherent_pool=1M 8250.nr_uarts=1 snd_bcm2835.enable_headphones=0 snd_bcm2835.enable_headphones=1 snd_bcm2835.enable_hdmi=1 snd_bcm2835.enable_hdmi=0  smsc95xx.macaddr=DC:A6:32:F9:5F:BA vc_mem.mem_base=0x3ec00000 vc_mem.mem_size=0x40000000  console=ttyS0,115200 console=tty1 root=PARTUUID=61135e11-02 rootfstype=ext4 fsck.repair=yes rootwait
[    0.000000] Dentry cache hash table entries: 1048576 (order: 11, 8388608 bytes, linear)
[    0.000000] Inode-cache hash table entries: 524288 (order: 10, 4194304 bytes, linear)
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] software IO TLB: area num 4.
[    0.000000] software IO TLB: mapped [mem 0x0000000037400000-0x000000003b400000] (64MB)
[    0.000000] Memory: 7471360K/8245248K available (11776K kernel code, 2106K rwdata, 3688K rodata, 4160K init, 1077K bss, 249600K reserved, 524288K cma-reserved)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] ftrace: allocating 39744 entries in 156 pages
[    0.000000] ftrace: allocated 156 pages with 4 groups
[    0.000000] trace event string verifier disabled
[    0.000000] rcu: Preemptible hierarchical RCU implementation.
[    0.000000] rcu: 	RCU event tracing is enabled.
[    0.000000] rcu: 	RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=4.
[    0.000000] 	Trampoline variant of Tasks RCU enabled.
[    0.000000] 	Rude variant of Tasks RCU enabled.
[    0.000000] 	Tracing variant of Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
[    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=4
[    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
[    0.000000] Root IRQ handler: gic_handle_irq
[    0.000000] GIC: Using split EOI/Deactivate mode
[    0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
[    0.000000] arch_timer: cp15 timer(s) running at 54.00MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0xc743ce346, max_idle_ns: 440795203123 ns
[    0.000001] sched_clock: 56 bits at 54MHz, resolution 18ns, wraps every 4398046511102ns
[    0.000303] Console: colour dummy device 80x25
[    0.000908] printk: console [tty1] enabled
[    0.000988] Calibrating delay loop (skipped), value calculated using timer frequency.. 108.00 BogoMIPS (lpj=216000)
[    0.001028] pid_max: default: 32768 minimum: 301
[    0.001155] LSM: Security Framework initializing
[    0.001402] Mount-cache hash table entries: 16384 (order: 5, 131072 bytes, linear)
[    0.001513] Mountpoint-cache hash table entries: 16384 (order: 5, 131072 bytes, linear)
[    0.002764] cgroup: Disabling memory control group subsystem
[    0.004935] cblist_init_generic: Setting adjustable number of callback queues.
[    0.004972] cblist_init_generic: Setting shift to 2 and lim to 1.
[    0.005160] cblist_init_generic: Setting shift to 2 and lim to 1.
[    0.005347] cblist_init_generic: Setting shift to 2 and lim to 1.
[    0.005809] rcu: Hierarchical SRCU implementation.
[    0.005834] rcu: 	Max phase no-delay instances is 1000.
[    0.007129] EFI services will not be available.
[    0.007649] smp: Bringing up secondary CPUs ...
[    0.008783] Detected PIPT I-cache on CPU1
[    0.008934] CPU1: Booted secondary processor 0x0000000001 [0x410fd083]
[    0.010063] Detected PIPT I-cache on CPU2
[    0.010188] CPU2: Booted secondary processor 0x0000000002 [0x410fd083]
[    0.011263] Detected PIPT I-cache on CPU3
[    0.011387] CPU3: Booted secondary processor 0x0000000003 [0x410fd083]
[    0.011533] smp: Brought up 1 node, 4 CPUs
[    0.011621] SMP: Total of 4 processors activated.
[    0.011642] CPU features: detected: 32-bit EL0 Support
[    0.011660] CPU features: detected: 32-bit EL1 Support
[    0.011682] CPU features: detected: CRC32 instructions
[    0.011823] CPU: All CPU(s) started at EL2
[    0.011856] alternatives: applying system-wide alternatives
[    0.013808] devtmpfs: initialized
[    0.025786] Enabled cp15_barrier support
[    0.025847] Enabled setend support
[    0.026071] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[    0.026123] futex hash table entries: 1024 (order: 4, 65536 bytes, linear)
[    0.038951] pinctrl core: initialized pinctrl subsystem
[    0.039838] DMI not present or invalid.
[    0.040579] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[    0.044033] DMA: preallocated 1024 KiB GFP_KERNEL pool for atomic allocations
[    0.044386] DMA: preallocated 1024 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
[    0.045339] DMA: preallocated 1024 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[    0.045446] audit: initializing netlink subsys (disabled)
[    0.045719] audit: type=2000 audit(0.044:1): state=initialized audit_enabled=0 res=1
[    0.046320] thermal_sys: Registered thermal governor 'step_wise'
[    0.046410] cpuidle: using governor menu
[    0.046793] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
[    0.047003] ASID allocator initialised with 32768 entries
[    0.047185] Serial: AMBA PL011 UART driver
[    0.062583] bcm2835-mbox fe00b880.mailbox: mailbox enabled
[    0.079037] platform fe801000.csi: Fixed dependency cycle(s) with /soc/i2c0mux/i2c@1/arducam_pivariety@c
[    0.088297] raspberrypi-firmware soc:firmware: Attached to firmware from 2023-03-17T10:50:39, variant start
[    0.092314] raspberrypi-firmware soc:firmware: Firmware hash is 82f3750a65fadae9a38077e3c2e217ad158c8d54
[    0.108500] KASLR enabled
[    0.142223] bcm2835-dma fe007000.dma: DMA legacy API manager, dmachans=0x1
[    0.148038] SCSI subsystem initialized
[    0.148303] usbcore: registered new interface driver usbfs
[    0.148377] usbcore: registered new interface driver hub
[    0.148455] usbcore: registered new device driver usb
[    0.148881] usb_phy_generic phy: supply vcc not found, using dummy regulator
[    0.149119] usb_phy_generic phy: dummy supplies not allowed for exclusive requests
[    0.149492] pps_core: LinuxPPS API ver. 1 registered
[    0.149516] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <[email protected]>
[    0.149557] PTP clock support registered
[    0.150675] vgaarb: loaded
[    0.151374] clocksource: Switched to clocksource arch_sys_counter
[    1.316270] VFS: Disk quotas dquot_6.6.0
[    1.316388] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[    1.316587] FS-Cache: Loaded
[    1.316863] CacheFiles: Loaded
[    1.327870] NET: Registered PF_INET protocol family
[    1.328716] IP idents hash table entries: 131072 (order: 8, 1048576 bytes, linear)
[    1.337633] tcp_listen_portaddr_hash hash table entries: 4096 (order: 4, 65536 bytes, linear)
[    1.337758] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
[    1.337805] TCP established hash table entries: 65536 (order: 7, 524288 bytes, linear)
[    1.338224] TCP bind hash table entries: 65536 (order: 9, 2097152 bytes, linear)
[    1.340853] TCP: Hash tables configured (established 65536 bind 65536)
[    1.341116] UDP hash table entries: 4096 (order: 5, 131072 bytes, linear)
[    1.341241] UDP-Lite hash table entries: 4096 (order: 5, 131072 bytes, linear)
[    1.341599] NET: Registered PF_UNIX/PF_LOCAL protocol family
[    1.342459] RPC: Registered named UNIX socket transport module.
[    1.342490] RPC: Registered udp transport module.
[    1.342509] RPC: Registered tcp transport module.
[    1.342528] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    1.342562] PCI: CLS 0 bytes, default 64
[    1.345176] hw perfevents: enabled with armv8_cortex_a72 PMU driver, 7 counters available
[    1.345566] kvm [1]: IPA Size Limit: 44 bits
[    1.346908] kvm [1]: vgic interrupt IRQ9
[    1.347156] kvm [1]: Hyp mode initialized successfully
[    1.349384] Initialise system trusted keyrings
[    1.349763] workingset: timestamp_bits=46 max_order=21 bucket_order=0
[    1.357219] zbud: loaded
[    1.360118] NFS: Registering the id_resolver key type
[    1.360168] Key type id_resolver registered
[    1.360189] Key type id_legacy registered
[    1.360310] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    1.360339] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
[    1.361750] Key type asymmetric registered
[    1.361781] Asymmetric key parser 'x509' registered
[    1.361873] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 247)
[    1.362171] io scheduler mq-deadline registered
[    1.362200] io scheduler kyber registered
[    1.364378] irq_brcmstb_l2: registered L2 intc (/soc/interrupt-controller@7ef00100, parent irq: 27)
[    1.372257] brcm-pcie fd500000.pcie: host bridge /scb/pcie@7d500000 ranges:
[    1.372321] brcm-pcie fd500000.pcie:   No bus range found for /scb/pcie@7d500000, using [bus 00-ff]
[    1.372426] brcm-pcie fd500000.pcie:      MEM 0x0600000000..0x063fffffff -> 0x00c0000000
[    1.372526] brcm-pcie fd500000.pcie:   IB MEM 0x0000000000..0x00bfffffff -> 0x0400000000
[    1.373585] brcm-pcie fd500000.pcie: PCI host bridge to bus 0000:00
[    1.373617] pci_bus 0000:00: root bus resource [bus 00-ff]
[    1.373646] pci_bus 0000:00: root bus resource [mem 0x600000000-0x63fffffff] (bus address [0xc0000000-0xffffffff])
[    1.373743] pci 0000:00:00.0: [14e4:2711] type 01 class 0x060400
[    1.374008] pci 0000:00:00.0: PME# supported from D0 D3hot
[    1.377911] pci 0000:00:00.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[    1.378193] pci_bus 0000:01: supply vpcie3v3 not found, using dummy regulator
[    1.378384] pci_bus 0000:01: supply vpcie3v3aux not found, using dummy regulator
[    1.378499] pci_bus 0000:01: supply vpcie12v not found, using dummy regulator
[    1.441469] brcm-pcie fd500000.pcie: link up, 5.0 GT/s PCIe x1 (SSC)
[    1.441649] pci 0000:01:00.0: [1106:3483] type 00 class 0x0c0330
[    1.441786] pci 0000:01:00.0: reg 0x10: [mem 0x00000000-0x00000fff 64bit]
[    1.442274] pci 0000:01:00.0: PME# supported from D0 D3hot
[    1.442993] pci_bus 0000:01: busn_res: [bus 01-ff] end is updated to 01
[    1.443049] pci 0000:00:00.0: BAR 8: assigned [mem 0x600000000-0x6000fffff]
[    1.443084] pci 0000:01:00.0: BAR 0: assigned [mem 0x600000000-0x600000fff 64bit]
[    1.443140] pci 0000:00:00.0: PCI bridge to [bus 01]
[    1.443172] pci 0000:00:00.0:   bridge window [mem 0x600000000-0x6000fffff]
[    1.452028] Serial: 8250/16550 driver, 1 ports, IRQ sharing enabled
[    1.455276] iproc-rng200 fe104000.rng: hwrng registered
[    1.455934] vc-mem: phys_addr:0x00000000 mem_base=0x3ec00000 mem_size:0x40000000(1024 MiB)
[    1.457508] gpiomem-bcm2835 fe200000.gpiomem: Initialised: Registers at 0xfe200000
[    1.470126] brd: module loaded
[    1.478689] loop: module loaded
[    1.479611] Loading iSCSI transport class v2.0-870.
[    1.484999] bcmgenet fd580000.ethernet: GENET 5.0 EPHY: 0x0000
[    1.543539] unimac-mdio unimac-mdio.-19: Broadcom UniMAC MDIO bus
[    1.544701] usbcore: registered new interface driver r8152
[    1.544802] usbcore: registered new interface driver lan78xx
[    1.544874] usbcore: registered new interface driver smsc95xx
[    1.590775] pci 0000:00:00.0: enabling device (0000 -> 0002)
[    1.590977] xhci_hcd 0000:01:00.0: xHCI Host Controller
[    1.591020] xhci_hcd 0000:01:00.0: new USB bus registered, assigned bus number 1
[    1.591797] xhci_hcd 0000:01:00.0: hcc params 0x002841eb hci version 0x100 quirks 0x0000e40000000890
[    1.592858] xhci_hcd 0000:01:00.0: xHCI Host Controller
[    1.592892] xhci_hcd 0000:01:00.0: new USB bus registered, assigned bus number 2
[    1.592928] xhci_hcd 0000:01:00.0: Host supports USB 3.0 SuperSpeed
[    1.593307] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 6.01
[    1.593343] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    1.593371] usb usb1: Product: xHCI Host Controller
[    1.593393] usb usb1: Manufacturer: Linux 6.1.21-v8+ xhci-hcd
[    1.593416] usb usb1: SerialNumber: 0000:01:00.0
[    1.594137] hub 1-0:1.0: USB hub found
[    1.594217] hub 1-0:1.0: 1 port detected
[    1.595145] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 6.01
[    1.595182] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    1.595209] usb usb2: Product: xHCI Host Controller
[    1.595231] usb usb2: Manufacturer: Linux 6.1.21-v8+ xhci-hcd
[    1.595253] usb usb2: SerialNumber: 0000:01:00.0
[    1.596022] hub 2-0:1.0: USB hub found
[    1.596131] hub 2-0:1.0: 4 ports detected
[    1.597938] dwc_otg: version 3.00a 10-AUG-2012 (platform bus)
[    1.598311] dwc_otg: FIQ enabled
[    1.598322] dwc_otg: NAK holdoff enabled
[    1.598332] dwc_otg: FIQ split-transaction FSM enabled
[    1.598351] Module dwc_common_port init
[    1.598891] usbcore: registered new interface driver uas
[    1.599020] usbcore: registered new interface driver usb-storage
[    1.599244] mousedev: PS/2 mouse device common for all mice
[    1.605931] sdhci: Secure Digital Host Controller Interface driver
[    1.605967] sdhci: Copyright(c) Pierre Ossman
[    1.606708] sdhci-pltfm: SDHCI platform and OF driver helper
[    1.610348] ledtrig-cpu: registered to indicate activity on CPUs
[    1.610720] hid: raw HID events driver (C) Jiri Kosina
[    1.610933] usbcore: registered new interface driver usbhid
[    1.610959] usbhid: USB HID core driver
[    1.619542] NET: Registered PF_PACKET protocol family
[    1.619693] Key type dns_resolver registered
[    1.620998] registered taskstats version 1
[    1.621091] Loading compiled-in X.509 certificates
[    1.622044] Key type .fscrypt registered
[    1.622071] Key type fscrypt-provisioning registered
[    1.637742] uart-pl011 fe201000.serial: there is not valid maps for state default
[    1.638489] uart-pl011 fe201000.serial: cts_event_workaround enabled
[    1.638658] fe201000.serial: ttyAMA0 at MMIO 0xfe201000 (irq = 36, base_baud = 0) is a PL011 rev2
[    1.646835] bcm2835-aux-uart fe215040.serial: there is not valid maps for state default
[    1.647670] printk: console [ttyS0] disabled
[    1.647797] fe215040.serial: ttyS0 at MMIO 0xfe215040 (irq = 37, base_baud = 62500000) is a 16550
[    1.867400] usb 1-1: new high-speed USB device number 2 using xhci_hcd
[    1.869854] printk: console [ttyS0] enabled
[    2.092120] usb 1-1: New USB device found, idVendor=2109, idProduct=3431, bcdDevice= 4.21
[    2.105798] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer
[    2.111072] usb 1-1: New USB device strings: Mfr=0, Product=1, SerialNumber=0
[    2.116038] bcm2835-power bcm2835-power: Broadcom BCM2835 power domains driver
[    2.120953] usb 1-1: Product: USB2.0 Hub
[    2.141247] hub 1-1:1.0: USB hub found
[    2.146501] mmc-bcm2835 fe300000.mmcnr: mmc_debug:0 mmc_debug2:0
[    2.156042] hub 1-1:1.0: 4 ports detected
[    2.162653] mmc-bcm2835 fe300000.mmcnr: DMA channel allocated
[    3.197899] of_cfs_init
[    3.200594] of_cfs_init: OK
[    3.232273] mmc0: SDHCI controller on fe340000.mmc [fe340000.mmc] using ADMA
[    3.239851] Waiting for root device PARTUUID=61135e11-02...
[    3.290173] mmc1: new high speed SDIO card at address 0001
[    3.355445] mmc0: new ultra high speed DDR50 SDXC card at address 0001
[    3.363071] mmcblk0: mmc0:0001 SD64G 58.2 GiB 
[    3.371040]  mmcblk0: p1 p2
[    3.374458] mmcblk0: mmc0:0001 SD64G 58.2 GiB
[    3.395598] EXT4-fs (mmcblk0p2): INFO: recovery required on readonly filesystem
[    3.403091] EXT4-fs (mmcblk0p2): write access will be enabled during recovery
[    4.056000] EXT4-fs (mmcblk0p2): recovery complete
[    4.070279] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Quota mode: none.
[    4.079084] VFS: Mounted root (ext4 filesystem) readonly on device 179:2.
[    4.087056] devtmpfs: mounted
[    4.097941] Freeing unused kernel memory: 4160K
[    4.102772] Run /sbin/init as init process
[    4.106960]   with arguments:
[    4.106970]     /sbin/init
[    4.106981]   with environment:
[    4.106991]     HOME=/
[    4.107001]     TERM=linux
[    4.515118] systemd[1]: System time before build time, advancing clock.
[    4.710082] NET: Registered PF_INET6 protocol family
[    4.717046] Segment Routing with IPv6
[    4.720854] In-situ OAM (IOAM) with IPv6
[    4.796061] systemd[1]: systemd 247.3-7+deb11u4 running in system mode. (+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +ZSTD +SECCOMP +BLKID +ELFUTILS +KMOD +IDN2 -IDN +PCRE2 default-hierarchy=unified)
[    4.820460] systemd[1]: Detected architecture arm64.
[    4.842522] systemd[1]: Set hostname to <raspberrypi>.
[    5.587574] systemd[1]: Queued start job for default target Graphical Interface.
[    5.617047] systemd[1]: Created slice system-modprobe.slice.
[    5.624642] systemd[1]: Created slice system-serial\x2dgetty.slice.
[    5.632436] systemd[1]: Created slice system-systemd\x2dfsck.slice.
[    5.640053] systemd[1]: Created slice User and Session Slice.
[    5.646715] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
[    5.655575] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
[    5.664654] systemd[1]: Set up automount Arbitrary Executable File Formats File System Automount Point.
[    5.674750] systemd[1]: Reached target Local Encrypted Volumes.
[    5.681294] systemd[1]: Reached target Paths.
[    5.686172] systemd[1]: Reached target Slices.
[    5.691113] systemd[1]: Reached target Swap.
[    5.696703] systemd[1]: Listening on Syslog Socket.
[    5.702742] systemd[1]: Listening on fsck to fsckd communication Socket.
[    5.710273] systemd[1]: Listening on initctl Compatibility Named Pipe.
[    5.718452] systemd[1]: Listening on Journal Audit Socket.
[    5.725125] systemd[1]: Listening on Journal Socket (/dev/log).
[    5.732473] systemd[1]: Listening on Journal Socket.
[    5.739013] systemd[1]: Listening on udev Control Socket.
[    5.745610] systemd[1]: Listening on udev Kernel Socket.
[    5.752294] systemd[1]: Condition check resulted in Huge Pages File System being skipped.
[    5.783873] systemd[1]: Mounting POSIX Message Queue File System...
[    5.795158] systemd[1]: Mounting RPC Pipe File System...
[    5.805991] systemd[1]: Mounting Kernel Debug File System...
[    5.817190] systemd[1]: Mounting Kernel Trace File System...
[    5.823926] systemd[1]: Condition check resulted in Kernel Module supporting RPCSEC_GSS being skipped.
[    5.838987] systemd[1]: Starting Restore / save the current clock...
[    5.850462] systemd[1]: Starting Set the console keyboard layout...
[    5.862450] systemd[1]: Starting Create list of static device nodes for the current kernel...
[    5.876647] systemd[1]: Starting Load Kernel Module configfs...
[    5.888090] systemd[1]: Starting Load Kernel Module drm...
[    5.900603] systemd[1]: Starting Load Kernel Module fuse...
[    5.910818] systemd[1]: Condition check resulted in Set Up Additional Binary Formats being skipped.
[    5.927727] systemd[1]: Starting File System Check on Root Device...
[    5.943837] systemd[1]: Starting Journal Service...
[    5.967317] fuse: init (API version 7.37)
[    5.978211] systemd[1]: Starting Load Kernel Modules...
[    5.991451] systemd[1]: Starting Coldplug All udev Devices...
[    6.029210] systemd[1]: Mounted POSIX Message Queue File System.
[    6.037583] systemd[1]: Mounted RPC Pipe File System.
[    6.044783] systemd[1]: Mounted Kernel Debug File System.
[    6.052358] systemd[1]: Mounted Kernel Trace File System.
[    6.060866] systemd[1]: Finished Restore / save the current clock.
[    6.070119] i2c_dev: i2c /dev entries driver
[    6.070392] systemd[1]: Finished Create list of static device nodes for the current kernel.
[    6.086542] systemd[1]: [email protected]: Succeeded.
[    6.094283] systemd[1]: Finished Load Kernel Module configfs.
[    6.102887] systemd[1]: [email protected]: Succeeded.
[    6.110152] systemd[1]: Finished Load Kernel Module drm.
[    6.118323] systemd[1]: [email protected]: Succeeded.
[    6.125439] systemd[1]: Finished Load Kernel Module fuse.
[    6.133727] systemd[1]: Finished Load Kernel Modules.
[    6.164377] systemd[1]: Mounting FUSE Control File System...
[    6.175544] systemd[1]: Mounting Kernel Configuration File System...
[    6.186733] systemd[1]: Started File System Check Daemon to report status.
[    6.220136] systemd[1]: Starting Apply Kernel Variables...
[    6.246881] systemd[1]: Finished File System Check on Root Device.
[    6.254583] systemd[1]: Mounted FUSE Control File System.
[    6.261144] systemd[1]: Mounted Kernel Configuration File System.
[    6.269818] systemd[1]: Finished Apply Kernel Variables.
[    6.275106] systemd[1]: Starting Remount Root and Kernel File Systems...
[    6.293407] systemd[1]: Started Journal Service.
[    6.426315] EXT4-fs (mmcblk0p2): re-mounted. Quota mode: none.
[    6.501002] systemd-journald[149]: Received client request to flush runtime journal.
[    6.505548] systemd-journald[149]: File /var/log/journal/f4d38cde5a104eed9a8f9eda488cb99c/system.journal corrupted or uncleanly shut down, renaming and replacing.
[    8.158373] mc: Linux media interface: v0.10
[    8.241205] vc_sm_cma: module is from the staging directory, the quality is unknown, you have been warned.
[    8.268295] videodev: Linux video capture interface: v2.00
[    8.288257] bcm2835_vc_sm_cma_probe: Videocore shared memory driver
[    8.288300] [vc_sm_connected_init]: start
[    8.329176] [vc_sm_connected_init]: installed successfully
[    8.483605] bcm2835_mmal_vchiq: module is from the staging directory, the quality is unknown, you have been warned.
[    8.492919] snd_bcm2835: module is from the staging directory, the quality is unknown, you have been warned.
[    8.519503] rpivid_hevc: module is from the staging directory, the quality is unknown, you have been warned.
[    8.520866] bcm2835_isp: module is from the staging directory, the quality is unknown, you have been warned.
[    8.531587] i2c i2c-22: Added multiplexed i2c bus 0
[    8.533828] i2c i2c-22: Added multiplexed i2c bus 10
[    8.537092] bcm2835_audio bcm2835_audio: card created with 8 channels
[    8.565044] rpivid feb10000.codec: Device registered as /dev/video19
[    8.584171] bcm2835-isp bcm2835-isp: Device node output[0] registered as /dev/video13
[    8.590620] bcm2835-isp bcm2835-isp: Device node capture[0] registered as /dev/video14
[    8.597266] bcm2835_v4l2: module is from the staging directory, the quality is unknown, you have been warned.
[    8.599300] bcm2835_codec: module is from the staging directory, the quality is unknown, you have been warned.
[    8.613281] brcmstb-i2c fef04500.i2c:  @97500hz registered in polling mode
[    8.624346] brcmstb-i2c fef09500.i2c:  @97500hz registered in polling mode
[    8.671069] bcm2835-isp bcm2835-isp: Device node capture[1] registered as /dev/video15
[    8.675652] bcm2835-isp bcm2835-isp: Device node stats[2] registered as /dev/video16
[    8.675700] bcm2835-isp bcm2835-isp: Register output node 0 with media controller
[    8.675725] bcm2835-isp bcm2835-isp: Register capture node 1 with media controller
[    8.675745] bcm2835-isp bcm2835-isp: Register capture node 2 with media controller
[    8.675763] bcm2835-isp bcm2835-isp: Register capture node 3 with media controller
[    8.718575] bcm2835-isp bcm2835-isp: Device node output[0] registered as /dev/video20
[    8.726952] bcm2835-isp bcm2835-isp: Device node capture[0] registered as /dev/video21
[    8.735882] bcm2835-isp bcm2835-isp: Device node capture[1] registered as /dev/video22
[    8.736940] bcm2835-codec bcm2835-codec: Device registered as /dev/video10
[    8.737107] bcm2835-codec bcm2835-codec: Loaded V4L2 decode
[    8.795742] bcm2835-isp bcm2835-isp: Device node stats[2] registered as /dev/video23
[    8.795789] bcm2835-isp bcm2835-isp: Register output node 0 with media controller
[    8.795813] bcm2835-isp bcm2835-isp: Register capture node 1 with media controller
[    8.795833] bcm2835-isp bcm2835-isp: Register capture node 2 with media controller
[    8.795851] bcm2835-isp bcm2835-isp: Register capture node 3 with media controller
[    8.803675] bcm2835-codec bcm2835-codec: Device registered as /dev/video11
[    8.803733] bcm2835-codec bcm2835-codec: Loaded V4L2 encode
[    8.813213] bcm2835-codec bcm2835-codec: Device registered as /dev/video12
[    8.813279] bcm2835-codec bcm2835-codec: Loaded V4L2 isp
[    8.827091] bcm2835-codec bcm2835-codec: Device registered as /dev/video18
[    8.827150] bcm2835-codec bcm2835-codec: Loaded V4L2 image_fx
[    8.837689] bcm2835-isp bcm2835-isp: Loaded V4L2 bcm2835-isp
[    8.973252] bcm2835-codec bcm2835-codec: Device registered as /dev/video31
[    8.973317] bcm2835-codec bcm2835-codec: Loaded V4L2 encode_image
[    8.985364] [drm] Initialized v3d 1.0.0 20180419 for fec00000.v3d on minor 0
[    9.060804] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[    9.128727] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[    9.148749] cfg80211: loaded regulatory.db is malformed or signature is missing/invalid
[    9.445608] brcmfmac: F1 signature read @0x18000000=0x15264345
[    9.472864] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6
[    9.591152] usbcore: registered new interface driver brcmfmac
[    9.759699] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4345/6 wl0: Nov  1 2021 00:37:25 version 7.45.241 (1a2f2fa CY) FWID 01-703fd60
[    9.834460] vc4-drm gpu: bound fe400000.hvs (ops vc4_hvs_ops [vc4])
[   10.039818] Registered IR keymap rc-cec
[   10.071152] rc rc0: vc4-hdmi-0 as /devices/platform/soc/fef00700.hdmi/rc/rc0
[   10.178234] input: vc4-hdmi-0 as /devices/platform/soc/fef00700.hdmi/rc/rc0/input0
[   10.363844] vc4-drm gpu: bound fef00700.hdmi (ops vc4_hdmi_ops [vc4])
[   10.477285] Registered IR keymap rc-cec
[   10.477504] rc rc1: vc4-hdmi-1 as /devices/platform/soc/fef05700.hdmi/rc/rc1
[   10.477738] input: vc4-hdmi-1 as /devices/platform/soc/fef05700.hdmi/rc/rc1/input1
[   10.527291] vc4-drm gpu: bound fef05700.hdmi (ops vc4_hdmi_ops [vc4])
[   10.528405] vc4-drm gpu: bound fe004000.txp (ops vc4_txp_ops [vc4])
[   10.528949] vc4-drm gpu: bound fe206000.pixelvalve (ops vc4_crtc_ops [vc4])
[   10.529417] vc4-drm gpu: bound fe207000.pixelvalve (ops vc4_crtc_ops [vc4])
[   10.529890] vc4-drm gpu: bound fe20a000.pixelvalve (ops vc4_crtc_ops [vc4])
[   10.530227] vc4-drm gpu: bound fe216000.pixelvalve (ops vc4_crtc_ops [vc4])
[   10.530760] vc4-drm gpu: bound fec12000.pixelvalve (ops vc4_crtc_ops [vc4])
[   10.651441] arducam-pivariety 10-000c: firmware version: 0x10003
[   10.660240] [drm] Initialized vc4 0.0.0 20140616 for gpu on minor 1
[   10.662612] vc4-drm gpu: [drm] Cannot find any crtc or sizes
[   10.948805] uart-pl011 fe201000.serial: no DMA platform data
[   11.149002] Adding 102396k swap on /var/swap.  Priority:-2 extents:1 across:102396k SSFS
[   12.649361] bcmgenet fd580000.ethernet: configuring instance for external RGMII (RX delay)
[   12.650141] bcmgenet fd580000.ethernet eth0: Link is Down
[   12.693966] brcmfmac: brcmf_cfg80211_set_power_mgmt: power save enabled
[   13.218524] brcmfmac: brcmf_cfg80211_set_power_mgmt: power save enabled
[   16.706139] brcmfmac: brcmf_cfg80211_set_power_mgmt: power save enabled
[   18.526530] Bluetooth: Core ver 2.22
[   18.526657] NET: Registered PF_BLUETOOTH protocol family
[   18.526667] Bluetooth: HCI device and connection manager initialized
[   18.526692] Bluetooth: HCI socket layer initialized
[   18.526706] Bluetooth: L2CAP socket layer initialized
[   18.526729] Bluetooth: SCO socket layer initialized
[   18.540685] Bluetooth: HCI UART driver ver 2.3
[   18.540715] Bluetooth: HCI UART protocol H4 registered
[   18.541100] Bluetooth: HCI UART protocol Three-wire (H5) registered
[   18.541787] Bluetooth: HCI UART protocol Broadcom registered
[   18.737026] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[   18.737045] Bluetooth: BNEP filters: protocol multicast
[   18.737060] Bluetooth: BNEP socket layer initialized
[   18.741231] Bluetooth: MGMT ver 1.22
[   18.749504] NET: Registered PF_ALG protocol family
[   22.375606] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[   22.386909] ieee80211 phy0: brcmf_cfg80211_reg_notifier: Firmware rejected country setting

Hi @ElectronicsLover
Not sure why you added the media-controller=0 behind the dtoverlay=arducam-pivariety. You seem to go off the path to Eden :melting_face:
Please delete the media-controller=0 and just keep the dtoverlay=arducam-pivariety in the config file. Besides, it is inevitable to install the libcamera form the Arducam branch.

wget -O install_pivariety_pkgs.sh https://github.com/ArduCAM/Arducam-Pivariety-V4L2-Driver/releases/download/install_script/install_pivariety_pkgs.sh
chmod +x install_pivariety_pkgs.sh
./install_pivariety_pkgs.sh -p libcamera_dev
./install_pivariety_pkgs.sh -p libcamera_apps

Thanks for the support, I’m sorry that I didn’t clarify that I followed ArduCam manuals and done steps with installing custom libcamera libraries and apps and also set dtoverlay=arducam-pivariety in /boot/config.txt, but for sake of test I tried this again and it doesn’t work, because I can’t see /dev/video0 and libcamera-hello --list-cameras gives:

pi@raspberrypi:~$ libcamera-hello --list-cameras
No cameras available!

I still see modprobe process in uninterruptible state and it even hinders system shutdown.

Hi,
Please post the output of the commands below:

dmesg | grep arducam
dpkg -l | grep libcamera
cat /boot/config.txt
pi@raspberrypi:~$ dmesg | grep arducam
[    0.079518] platform fe801000.csi: Fixed dependency cycle(s) with /soc/i2c0mux/i2c@1/arducam_pivariety@c
[   11.086604] arducam-pivariety 10-000c: firmware version: 0x10003
pi@raspberrypi:~$ dpkg -l | grep libcamera
ii  libcamera-apps                       1.2.1-1                          arm64        libcamera-apps
ii  libcamera-dev:arm64                  0~git20230724+ad9428b4-1         arm64        complex camera support library (development files)
ii  libcamera0:arm64                     0~git20230724+ad9428b4-1         arm64        complex camera support library
ii  python3-libcamera                    0~git20230720+bde9b04f-1         arm64        complex camera support library (Python 3 bindings)

cat /boot/config.txt

# For more options and information see
# http://rpf.io/configtxt
# Some settings may impact device functionality. See link above for details

# uncomment if you get no picture on HDMI for a default "safe" mode
#hdmi_safe=1

# uncomment the following to adjust overscan. Use positive numbers if console
# goes off screen, and negative if there is too much border
#overscan_left=16
#overscan_right=16
#overscan_top=16
#overscan_bottom=16

# uncomment to force a console size. By default it will be display's size minus
# overscan.
#framebuffer_width=1280
#framebuffer_height=720

# uncomment if hdmi display is not detected and composite is being output
#hdmi_force_hotplug=1

# uncomment to force a specific HDMI mode (this will force VGA)
#hdmi_group=1
#hdmi_mode=1

# uncomment to force a HDMI mode rather than DVI. This can make audio work in
# DMT (computer monitor) modes
#hdmi_drive=2

# uncomment to increase signal to HDMI, if you have interference, blanking, or
# no display
#config_hdmi_boost=4

# uncomment for composite PAL
#sdtv_mode=2

#uncomment to overclock the arm. 700 MHz is the default.
#arm_freq=800

# Uncomment some or all of these to enable the optional hardware interfaces
dtparam=i2c_arm=on
dtparam=i2c_vc=on
disable_touchscreen=1
#dtparam=i2s=on
dtparam=spi=on

# Uncomment this to enable infrared communication.
#dtoverlay=gpio-ir,gpio_pin=17
#dtoverlay=gpio-ir-tx,gpio_pin=18

# Additional overlays and parameters are documented /boot/overlays/README

# Enable audio (loads snd_bcm2835)
dtparam=audio=on

# Automatically load overlays for detected cameras

# Automatically load overlays for detected DSI displays
display_auto_detect=1

# Enable DRM VC4 V3D driver
max_framebuffers=2

# Run in 64-bit mode
arm_64bit=1

# Disable compensation for displays with overscan
disable_overscan=1

[cm4]
# Enable host mode on the 2711 built-in XHCI USB controller.
# This line should be removed if the legacy DWC2 controller is required
# (e.g. for USB device mode) or if USB support is not required.
otg_mode=1

[pi4]
# Run as fast as firmware / board allows
arm_boost=1
dtoverlay=vc4-kms-v3d,cma-512

[all]
enable_uart=1
camera_auto_detect=0
dtoverlay=arducam-pivariety

Also, I’ve tried setting camera_auto_detect=1 and camera_auto_detect=0, but that didn’t help

Hi @ElectronicsLover
Everything seems to go well. How about running the command “libcamera-still -t 0”?

It doesn’t work(

pi@raspberrypi:~$ libcamera-still -t 0
Preview window unavailable
[0:00:40.761824511] [1033]  INFO Camera camera_manager.cpp:297 libcamera v0.0.0+4367-ad9428b4
ERROR: *** no cameras available ***

list-cameras gives:

pi@raspberrypi:~$ libcamera-hello --list-cameras
No cameras available!

And I can’t see /dev/video0

Even though I can see i2cdetect gives used address of camera