Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] "Failed to reserve DRM plane" when running python overlay_drm.py in RPi5 Composite #995

Closed
ArtemKorr opened this issue Mar 31, 2024 · 26 comments

Comments

@ArtemKorr
Copy link

Please only report one bug per issue!
I'm attempting to display the output of the Picamera2 on a DRM (Direct Rendering Manager) preview window and then output it to analog video. However, when I launch the application, I encounter the following error:
I previously inquired about this issue in the repository responsible for the kernel. raspberrypi/linux#5948 (comment)

raise RuntimeError("Failed to reserve DRM plane")
RuntimeError: Failed to reserve DRM plane

Could you advise on how to resolve this issue and what I might be doing wrong in this scenario?
Describe the bug
I'm having trouble seeing the DRM (Direct Rendering Manager) preview on an RPI5 when using the composite video output.
Hardware :
I'm using Raspberry Pi 5
Console Output, Screenshots
If applicable, any console output or screenshots that show the problem and associated error messages.

Additional context

uname -a
`Linux raspberrypi 6.6.22-v8-16k+ #1747 SMP PREEMPT Wed Mar 27 17:06:56 GMT 2024 aarch64 GNU/Linux
vcgencmd version

2024/02/16 15:28:41 
Copyright (c) 2012 Broadcom
version 4c845bd3 (release) (embedded)
`cat /boot/config.txt
# For more options and information see
# http://rptl.io/configtxt
# Some settings may impact device functionality. See link above for details
# Uncomment some or all of these to enable the optional hardware interfaces
#dtparam=i2c_arm=on
#dtparam=i2s=on
#dtparam=spi=on
disable_overscan=1
# Enable audio (loads snd_bcm2835)
suddtparam=audio=on

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

# Automatically load overlays for detected cameras
camera_auto_detect=1

# Automatically load overlays for detected DSI displays
#display_auto_detect=1
#[pi4]
#dtoverlay=imx296
#dtoverlay=ov5647o
#[pi5]
#dtoverlay=imx708

# Automatically load initramfs files, if found
#auto_initramfs=1
#[pi5]
#hdmi_force_hotplug=1
#hdmi_enable_4kp60=1

[pi4]
force_turbo=1
arm_freq=1900
core_freq=600
h264_freq=600
isp_freq=600
v3d_freq=600
hevc_freq=600
#sdram_freq=3200
arm_freq_min=1900
core_freq_min=600
gpu_freq_min=600
#h264_freq_min
isp_freq_min=600
v3d_freq_min=600
#sdram_freq_min=4267
over_voltage=6
#[all]
hdmi_ignore_hotplug=1
enable_tvout=1

# Run in 64-bit mode
arm_64bit=1

# Disable compensation for displays with overscan

# Run as fast as firmware / board allows
arm_boost=1
[pi4]
# Enable DRM VC4 V3D driver on top of the dispmanx display stack
dtoverlay=vc4-fkms-v3d,composite=1

[pi5]
#dtoverlay=vc4-kms-v3d-pi5,cma-256=1,composite=1
dtoverlay=vc4-kms-v3d,composite
[all]
max_framebuffers=2
# enable serial interface
[pi4]
enable_uart=1
#dtoverlay=uart0
#dtoverlay=uart1
#dtoverlay=uart2
#dtoverlay=uart3
dtoverlay=uart4
dtoverlay=uart5
dtoverlay=disable-bt
[pi5]
enable_uart=1
dtoverlay=uart3-pi5
dtoverlay=uart4-pi5
dtoverlay=disable-bt
 cat /boot/cmdline.txt
root=PARTUUID=7d3bf79a-02 rootfstype=ext4 fsck.repair=yes rootwait cfg80211.ieee80211_regdom=UA vc4.tv_norm=PAL60 video=Composite-1:1280x720@60D
dmesg 
[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x414fd0b1]
[    0.000000] Linux version 6.6.22-v8-16k+ (dom@buildbot) (aarch64-linux-gnu-gcc-8 (Ubuntu/Linaro 8.4.0-3ubuntu1) 8.4.0, GNU ld (GNU Binutils for Ubuntu) 2.34) #1747 SMP PREEMPT Wed Mar 27 17:06:56 GMT 2024
[    0.000000] KASLR enabled
[    0.000000] random: crng init done
[    0.000000] Machine model: Raspberry Pi 5 Model B Rev 1.0
[    0.000000] efi: UEFI not found.
[    0.000000] Reserved memory: created CMA memory pool at 0x0000000002000000, size 320 MiB
[    0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool
[    0.000000] OF: reserved mem: 0x0000000002000000..0x0000000015ffffff (327680 KiB) map reusable linux,cma
[    0.000000] OF: reserved mem: 0x0000000000000000..0x000000000007ffff (512 KiB) nomap non-reusable atf@0
[    0.000000] OF: reserved mem: 0x000000003fd16780..0x000000003fd167b6 (0 KiB) nomap non-reusable nvram@0
[    0.000000] Zone ranges:
[    0.000000]   DMA      [mem 0x0000000000000000-0x00000000ffffffff]
[    0.000000]   DMA32    empty
[    0.000000]   Normal   empty
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000000000000-0x000000000007ffff]
[    0.000000]   node   0: [mem 0x0000000000080000-0x000000003fbfffff]
[    0.000000]   node   0: [mem 0x0000000040000000-0x00000000ffffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x00000000ffffffff]
[    0.000000] On node 0, zone DMA: 256 pages in unavailable ranges
[    0.000000] psci: probing for conduit method from DT.
[    0.000000] psci: PSCIv1.1 detected in firmware.
[    0.000000] psci: Using standard PSCI v0.2 function IDs
[    0.000000] psci: MIGRATE_INFO_TYPE not supported.
[    0.000000] psci: SMC Calling Convention v1.2
[    0.000000] percpu: Embedded 14 pages/cpu s184040 r8192 d37144 u229376
[    0.000000] pcpu-alloc: s184040 r8192 d37144 u229376 alloc=14*16384
[    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: Virtualization Host Extensions
[    0.000000] CPU features: detected: Hardware dirty bit management
[    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] alternatives: applying boot alternatives
[    0.000000] Kernel command line: reboot=w coherent_pool=1M 8250.nr_uarts=1 pci=pcie_bus_safe snd_bcm2835.enable_compat_alsa=0 snd_bcm2835.enable_hdmi=1  smsc95xx.macaddr=D8:3A:DD:CB:12:E4 vc_mem.mem_base=0x3fc00000 vc_mem.mem_size=0x40000000  root=PARTUUID=7d3bf79a-02 rootfstype=ext4 fsck.repair=yes rootwait cfg80211.ieee80211_regdom=UA vc4.tv_norm=PAL60 video=Composite-1:1280x720@60D
[    0.000000] Dentry cache hash table entries: 524288 (order: 8, 4194304 bytes, linear)
[    0.000000] Inode-cache hash table entries: 262144 (order: 7, 2097152 bytes, linear)
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 260864
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] Memory: 3809520K/4190208K available (13376K kernel code, 2222K rwdata, 4336K rodata, 5120K init, 1213K bss, 53008K reserved, 327680K cma-reserved)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] ftrace: allocating 44583 entries in 44 pages
[    0.000000] ftrace: allocated 44 pages with 3 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.000000] sched_clock: 56 bits at 54MHz, resolution 18ns, wraps every 4398046511102ns
[    0.000170] Console: colour dummy device 80x25
[    0.000174] printk: console [tty0] enabled
[    0.000348] Calibrating delay loop (skipped), value calculated using timer frequency.. 108.00 BogoMIPS (lpj=216000)
[    0.000357] pid_max: default: 32768 minimum: 301
[    0.000381] LSM: initializing lsm=capability,integrity
[    0.000440] Mount-cache hash table entries: 8192 (order: 2, 65536 bytes, linear)
[    0.000453] Mountpoint-cache hash table entries: 8192 (order: 2, 65536 bytes, linear)
[    0.000801] cgroup: Disabling memory control group subsystem
[    0.001231] RCU Tasks: Setting shift to 2 and lim to 1 rcu_task_cb_adjust=1.
[    0.001260] RCU Tasks Rude: Setting shift to 2 and lim to 1 rcu_task_cb_adjust=1.
[    0.001287] RCU Tasks Trace: Setting shift to 2 and lim to 1 rcu_task_cb_adjust=1.
[    0.001349] rcu: Hierarchical SRCU implementation.
[    0.001354] rcu:     Max phase no-delay instances is 1000.
[    0.001959] EFI services will not be available.
[    0.002034] smp: Bringing up secondary CPUs ...
[    0.002201] Detected PIPT I-cache on CPU1
[    0.002244] CPU1: Booted secondary processor 0x0000000100 [0x414fd0b1]
[    0.002431] Detected PIPT I-cache on CPU2
[    0.002463] CPU2: Booted secondary processor 0x0000000200 [0x414fd0b1]
[    0.002632] Detected PIPT I-cache on CPU3
[    0.002662] CPU3: Booted secondary processor 0x0000000300 [0x414fd0b1]
[    0.002688] smp: Brought up 1 node, 4 CPUs
[    0.002708] SMP: Total of 4 processors activated.
[    0.002713] CPU features: detected: 32-bit EL0 Support
[    0.002717] CPU features: detected: Data cache clean to the PoU not required for I/D coherence
[    0.002722] CPU features: detected: Common not Private translations
[    0.002726] CPU features: detected: CRC32 instructions
[    0.002731] CPU features: detected: RCpc load-acquire (LDAPR)
[    0.002734] CPU features: detected: LSE atomic instructions
[    0.002738] CPU features: detected: Privileged Access Never
[    0.002742] CPU features: detected: RAS Extension Support
[    0.002747] CPU features: detected: Speculative Store Bypassing Safe (SSBS)
[    0.002782] CPU: All CPU(s) started at EL2
[    0.002785] alternatives: applying system-wide alternatives
[    0.004592] devtmpfs: initialized
[    0.007469] Enabled cp15_barrier support
[    0.007480] Enabled setend support
[    0.007543] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[    0.007552] futex hash table entries: 1024 (order: 2, 65536 bytes, linear)
[    0.008311] pinctrl core: initialized pinctrl subsystem
[    0.008447] DMI not present or invalid.
[    0.008627] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[    0.009235] DMA: preallocated 1024 KiB GFP_KERNEL pool for atomic allocations
[    0.009285] DMA: preallocated 1024 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
[    0.009337] DMA: preallocated 1024 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[    0.009358] audit: initializing netlink subsys (disabled)
[    0.009410] audit: type=2000 audit(0.008:1): state=initialized audit_enabled=0 res=1
[    0.009529] thermal_sys: Registered thermal governor 'step_wise'
[    0.009540] cpuidle: using governor menu
[    0.009647] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
[    0.009678] ASID allocator initialised with 32768 entries
[    0.009995] Serial: AMBA PL011 UART driver
[    0.010782] bcm2835-mbox 107c013880.mailbox: mailbox enabled
[    0.011095] 107d001000.serial: ttyAMA10 at MMIO 0x107d001000 (irq = 15, base_baud = 0) is a PL011 rev2
[    0.011109] printk: console [ttyAMA10] enabled
[    0.742297] raspberrypi-firmware soc:firmware: Attached to firmware from 2024-02-16T15:28:41, variant start_cd
[    0.756349] raspberrypi-firmware soc:firmware: Firmware hash is 4c845bd300000000000000000000000000000000
[    0.772180] Modules: 2G module region forced by RANDOMIZE_MODULE_REGION_FULL
[    0.779262] Modules: 0 pages in range for non-PLT usage
[    0.779264] Modules: 129412 pages in range for PLT usage
[    0.789075] bcm2835-dma 1000010000.dma: DMA legacy API manager, dmachans=0x1
[    0.802009] iommu: Default domain type: Translated
[    0.806826] iommu: DMA domain TLB invalidation policy: strict mode
[    0.813125] SCSI subsystem initialized
[    0.816924] usbcore: registered new interface driver usbfs
[    0.822438] usbcore: registered new interface driver hub
[    0.827784] usbcore: registered new device driver usb
[    0.832941] pps_core: LinuxPPS API ver. 1 registered
[    0.837924] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <[email protected]>
[    0.847098] PTP clock support registered
[    0.851283] vgaarb: loaded
[    0.854142] clocksource: Switched to clocksource arch_sys_counter
[    1.078925] VFS: Disk quotas dquot_6.6.0
[    1.082883] VFS: Dquot-cache hash table entries: 2048 (order 0, 16384 bytes)
[    1.089988] FS-Cache: Loaded
[    1.092914] CacheFiles: Loaded
[    1.097500] NET: Registered PF_INET protocol family
[    1.102484] IP idents hash table entries: 65536 (order: 5, 524288 bytes, linear)
[    1.111175] tcp_listen_portaddr_hash hash table entries: 2048 (order: 1, 32768 bytes, linear)
[    1.119760] Table-perturb hash table entries: 65536 (order: 4, 262144 bytes, linear)
[    1.127539] TCP established hash table entries: 32768 (order: 4, 262144 bytes, linear)
[    1.135623] TCP bind hash table entries: 32768 (order: 6, 1048576 bytes, linear)
[    1.143818] TCP: Hash tables configured (established 32768 bind 32768)
[    1.150497] MPTCP token hash table entries: 4096 (order: 2, 98304 bytes, linear)
[    1.157979] UDP hash table entries: 2048 (order: 2, 65536 bytes, linear)
[    1.164759] UDP-Lite hash table entries: 2048 (order: 2, 65536 bytes, linear)
[    1.172042] NET: Registered PF_UNIX/PF_LOCAL protocol family
[    1.177834] RPC: Registered named UNIX socket transport module.
[    1.183780] RPC: Registered udp transport module.
[    1.188500] RPC: Registered tcp transport module.
[    1.193220] RPC: Registered tcp-with-tls transport module.
[    1.198729] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    1.205202] PCI: CLS 0 bytes, default 64
[    1.209320] kvm [1]: IPA Size Limit: 40 bits
[    1.213627] kvm [1]: GICV region size/alignment is unsafe, using trapping (reduced performance)
[    1.222385] kvm [1]: vgic interrupt IRQ9
[    1.226331] kvm [1]: VHE mode initialized successfully
[    1.231838] Initialise system trusted keyrings
[    1.236338] workingset: timestamp_bits=46 max_order=18 bucket_order=0
[    1.242820] zbud: loaded
[    1.245505] NFS: Registering the id_resolver key type
[    1.250585] Key type id_resolver registered
[    1.254781] Key type id_legacy registered
[    1.258807] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    1.265535] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
[    1.272994] F2FS not supported on PAGE_SIZE(16384) != 4096
[    1.278551] Key type asymmetric registered
[    1.282661] Asymmetric key parser 'x509' registered
[    1.287567] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 247)
[    1.295026] io scheduler mq-deadline registered
[    1.299573] io scheduler kyber registered
[    1.303603] io scheduler bfq registered
[    1.307649] irq_brcmstb_l2: registered L2 intc (/soc/interrupt-controller@7c502000, parent irq: 26)
[    1.316799] irq_brcmstb_l2: registered L2 intc (/soc/intc@7d503000, parent irq: 27)
[    1.324539] irq_brcmstb_l2: registered L2 intc (/soc/intc@7d508380, parent irq: 28)
[    1.332273] irq_brcmstb_l2: registered L2 intc (/soc/intc@7d508400, parent irq: 29)
[    1.340009] irq_brcmstb_l2: registered L2 intc (/soc/interrupt-controller@7d510600, parent irq: 30)
[    1.349137] irq_brcmstb_l2: registered L2 intc (/soc/intc@7d517b00, parent irq: 31)
[    1.391586] Serial: 8250/16550 driver, 1 ports, IRQ sharing enabled
[    1.398281] 107d50c000.serial: ttyS0 at MMIO 0x107d50c000 (irq = 33, base_baud = 6000000) is a Broadcom BCM7271 UART
[    1.409162] iproc-rng200 107d208000.rng: hwrng registered
[    1.414634] vc-mem: phys_addr:0x00000000 mem_base=0x3fc00000 mem_size:0x40000000(1024 MiB)
[    1.423149] bcm2712-iommu-cache 1000005b00.iommuc: bcm2712_iommu_cache_probe
[    1.432082] brd: module loaded
[    1.436524] loop: module loaded
[    1.439800] bcm2835-power bcm2835-power: Broadcom BCM2835 power domains driver
[    1.447167] Loading iSCSI transport class v2.0-870.
[    1.452903] usbcore: registered new device driver r8152-cfgselector
[    1.459207] usbcore: registered new interface driver r8152
[    1.464718] usbcore: registered new interface driver lan78xx
[    1.470404] usbcore: registered new interface driver smsc95xx
[    1.476228] dwc_otg: version 3.00a 10-AUG-2012 (platform bus)
[    1.482015] dwc_otg: FIQ enabled
[    1.482017] dwc_otg: NAK holdoff enabled
[    1.482018] dwc_otg: FIQ split-transaction FSM enabled
[    1.482021] Module dwc_common_port init
[    1.482143] usbcore: registered new interface driver uas
[    1.487481] usbcore: registered new interface driver usb-storage
[    1.493600] mousedev: PS/2 mouse device common for all mice
[    1.507179] rpi-rtc soc:rpi_rtc: registered as rtc0
[    1.513580] rpi-rtc soc:rpi_rtc: setting system clock to 2024-03-31T10:37:24 UTC (1711881444)
[    1.522465] bcm2835-wdt bcm2835-wdt: Poweroff handler already present!
[    1.529023] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer
[    1.537772] sdhci: Secure Digital Host Controller Interface driver
[    1.543982] sdhci: Copyright(c) Pierre Ossman
[    1.548392] sdhci-pltfm: SDHCI platform and OF driver helper
[    1.554260] ledtrig-cpu: registered to indicate activity on CPUs
[    1.560326] SMCCC: SOC_ID: ARCH_SOC_ID not implemented, skipping ....
[    1.566803] hid: raw HID events driver (C) Jiri Kosina
[    1.571977] usbcore: registered new interface driver usbhid
[    1.577571] usbhid: USB HID core driver
[    1.581725] hw perfevents: enabled with armv8_cortex_a76 PMU driver, 7 counters available
[    1.590118] NET: Registered PF_PACKET protocol family
[    1.595214] Key type dns_resolver registered
[    1.604489] registered taskstats version 1
[    1.608669] Loading compiled-in X.509 certificates
[    1.615847] Key type .fscrypt registered
[    1.619863] Key type fscrypt-provisioning registered
[    1.625629] brcm-pcie 1000120000.pcie: host bridge /axi/pcie@120000 ranges:
[    1.632636] brcm-pcie 1000120000.pcie:   No bus range found for /axi/pcie@120000, using [bus 00-ff]
[    1.641735] brcm-pcie 1000120000.pcie:      MEM 0x1f00000000..0x1ffffffffb -> 0x0000000000
[    1.650042] brcm-pcie 1000120000.pcie:      MEM 0x1c00000000..0x1effffffff -> 0x0400000000
[    1.658348] brcm-pcie 1000120000.pcie:   IB MEM 0x1f00000000..0x1f003fffff -> 0x0000000000
[    1.666652] brcm-pcie 1000120000.pcie:   IB MEM 0x0000000000..0x0fffffffff -> 0x1000000000
[    1.676127] brcm-pcie 1000120000.pcie: Forcing gen 2
[    1.681300] brcm-pcie 1000120000.pcie: PCI host bridge to bus 0000:00
[    1.687769] pci_bus 0000:00: root bus resource [bus 00-ff]
[    1.693277] pci_bus 0000:00: root bus resource [mem 0x1f00000000-0x1ffffffffb] (bus address [0x00000000-0xfffffffb])
[    1.703848] pci_bus 0000:00: root bus resource [mem 0x1c00000000-0x1effffffff pref] (bus address [0x400000000-0x6ffffffff])
[    1.715040] pci 0000:00:00.0: [14e4:2712] type 01 class 0x060400
[    1.721096] pci 0000:00:00.0: PME# supported from D0 D3hot
[    1.727565] pci 0000:00:00.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[    1.842148] brcm-pcie 1000120000.pcie: link up, 5.0 GT/s PCIe x4 (!SSC)
[    1.848809] pci 0000:01:00.0: [1de4:0001] type 00 class 0x020000
[    1.854852] pci 0000:01:00.0: reg 0x10: [mem 0xffffc000-0xffffffff]
[    1.861150] pci 0000:01:00.0: reg 0x14: [mem 0xffc00000-0xffffffff]
[    1.867446] pci 0000:01:00.0: reg 0x18: [mem 0xffff0000-0xffffffff]
[    1.873806] pci 0000:01:00.0: supports D1
[    1.877829] pci 0000:01:00.0: PME# supported from D0 D1 D3hot D3cold
[    1.894151] pci_bus 0000:01: busn_res: [bus 01-ff] end is updated to 01
[    1.900801] pci 0000:00:00.0: BAR 8: assigned [mem 0x1f00000000-0x1f005fffff]
[    1.907969] pci 0000:01:00.0: BAR 1: assigned [mem 0x1f00000000-0x1f003fffff]
[    1.915137] pci 0000:01:00.0: BAR 2: assigned [mem 0x1f00400000-0x1f0040ffff]
[    1.922304] pci 0000:01:00.0: BAR 0: assigned [mem 0x1f00410000-0x1f00413fff]
[    1.929472] pci 0000:00:00.0: PCI bridge to [bus 01]
[    1.934455] pci 0000:00:00.0:   bridge window [mem 0x1f00000000-0x1f005fffff]
[    1.941622] pci 0000:00:00.0: Max Payload Size set to  256/ 512 (was  128), Max Read Rq  512
[    1.950105] pci 0000:01:00.0: Max Payload Size set to  256/ 256 (was  128), Max Read Rq  512
[    1.958642] pcieport 0000:00:00.0: enabling device (0000 -> 0002)
[    1.964795] pcieport 0000:00:00.0: PME: Signaling with IRQ 38
[    1.970619] pcieport 0000:00:00.0: AER: enabled with IRQ 38
[    1.976296] rp1 0000:01:00.0: bar0 len 0x4000, start 0x1f00410000, end 0x1f00413fff, flags, 0x40200
[    1.985386] rp1 0000:01:00.0: bar1 len 0x400000, start 0x1f00000000, end 0x1f003fffff, flags, 0x40200
[    1.994654] rp1 0000:01:00.0: enabling device (0000 -> 0002)
[    2.001491] rp1 0000:01:00.0: chip_id 0x20001927
[    2.028187] macb 1f00100000.ethernet eth0: Cadence GEM rev 0x00070109 at 0x1f00100000 irq 106 (d8:3a:dd:cb:12:e4)
[    2.038596] platform 1f00110000.csi: Fixed dependency cycle(s) with /axi/pcie@120000/rp1/i2c@88000/imx708@1a
[    2.049024] dw_axi_dmac_platform 1f00188000.dma: DesignWare AXI DMA Controller, 8 channels
[    2.057593] xhci-hcd xhci-hcd.0: xHCI Host Controller
[    2.062670] xhci-hcd xhci-hcd.0: new USB bus registered, assigned bus number 1
[    2.070376] xhci-hcd xhci-hcd.0: hcc params 0x0240fe6d hci version 0x110 quirks 0x0000008000000810
[    2.079384] xhci-hcd xhci-hcd.0: irq 131, io mem 0x1f00200000
[    2.085222] xhci-hcd xhci-hcd.0: xHCI Host Controller
[    2.090295] xhci-hcd xhci-hcd.0: new USB bus registered, assigned bus number 2
[    2.097548] xhci-hcd xhci-hcd.0: Host supports USB 3.0 SuperSpeed
[    2.103720] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 6.06
[    2.112024] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    2.119282] usb usb1: Product: xHCI Host Controller
[    2.124178] usb usb1: Manufacturer: Linux 6.6.22-v8-16k+ xhci-hcd
[    2.130295] usb usb1: SerialNumber: xhci-hcd.0
[    2.134874] hub 1-0:1.0: USB hub found
[    2.138650] hub 1-0:1.0: 2 ports detected
[    2.142817] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 6.06
[    2.151122] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    2.158377] usb usb2: Product: xHCI Host Controller
[    2.163289] usb usb2: Manufacturer: Linux 6.6.22-v8-16k+ xhci-hcd
[    2.169481] usb usb2: SerialNumber: xhci-hcd.0
[    2.174036] hub 2-0:1.0: USB hub found
[    2.177809] hub 2-0:1.0: 1 port detected
[    2.182054] xhci-hcd xhci-hcd.1: xHCI Host Controller
[    2.187250] xhci-hcd xhci-hcd.1: new USB bus registered, assigned bus number 3
[    2.194954] xhci-hcd xhci-hcd.1: hcc params 0x0240fe6d hci version 0x110 quirks 0x0000008000000810
[    2.204073] xhci-hcd xhci-hcd.1: irq 136, io mem 0x1f00300000
[    2.209907] xhci-hcd xhci-hcd.1: xHCI Host Controller
[    2.214979] xhci-hcd xhci-hcd.1: new USB bus registered, assigned bus number 4
[    2.222344] xhci-hcd xhci-hcd.1: Host supports USB 3.0 SuperSpeed
[    2.228501] usb usb3: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 6.06
[    2.236801] usb usb3: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    2.244164] usb usb3: Product: xHCI Host Controller
[    2.249060] usb usb3: Manufacturer: Linux 6.6.22-v8-16k+ xhci-hcd
[    2.255176] usb usb3: SerialNumber: xhci-hcd.1
[    2.259837] hub 3-0:1.0: USB hub found
[    2.263613] hub 3-0:1.0: 2 ports detected
[    2.267769] usb usb4: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 6.06
[    2.276185] usb usb4: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    2.283467] usb usb4: Product: xHCI Host Controller
[    2.288363] usb usb4: Manufacturer: Linux 6.6.22-v8-16k+ xhci-hcd
[    2.294663] usb usb4: SerialNumber: xhci-hcd.1
[    2.299222] hub 4-0:1.0: USB hub found
[    2.302994] hub 4-0:1.0: 1 port detected
[    2.307657] bcm2712-iommu 1000005100.iommu: bcm2712_iommu_init: DEBUG_INFO = 0x20804774
[    2.316218] platform 1000800000.codec: bcm2712_iommu_probe_device: MMU 1000005100.iommu
[    2.324261] platform 1000800000.codec: bcm2712_iommu_device_group: MMU 1000005100.iommu
[    2.332529] platform 1000800000.codec: Adding to iommu group 0
[    2.338394] platform 1000880000.pisp_be: bcm2712_iommu_probe_device: MMU 1000005100.iommu
[    2.346818] platform 1000880000.pisp_be: bcm2712_iommu_device_group: MMU 1000005100.iommu
[    2.355040] platform 1000880000.pisp_be: Adding to iommu group 0
[    2.361104] platform 1000800000.codec: bcm2712_iommu_attach_dev: MMU 1000005100.iommu
[    2.369171] platform 1000880000.pisp_be: bcm2712_iommu_attach_dev: MMU 1000005100.iommu
[    2.377238] bcm2712-iommu 1000005100.iommu: bcm2712_iommu_probe: Success
[    2.384515] bcm2712-iommu 1000005200.iommu: bcm2712_iommu_init: DEBUG_INFO = 0x20804774
[    2.392853] platform axi:gpu: bcm2712_iommu_probe_device: MMU 1000005200.iommu
[    2.400319] platform axi:gpu: bcm2712_iommu_device_group: MMU 1000005200.iommu
[    2.407575] platform axi:gpu: Adding to iommu group 1
[    2.412705] platform axi:gpu: bcm2712_iommu_attach_dev: MMU 1000005200.iommu
[    2.420008] bcm2712-iommu 1000005200.iommu: bcm2712_iommu_probe: Success
[    2.427059] bcm2712-iommu 1000005280.iommu: bcm2712_iommu_init: DEBUG_INFO = 0x20804774
[    2.435606] platform 1f00110000.csi: bcm2712_iommu_probe_device: MMU 1000005280.iommu
[    2.443474] platform 1f00110000.csi: bcm2712_iommu_device_group: MMU 1000005280.iommu
[    2.451542] platform 1f00110000.csi: Adding to iommu group 2
[    2.457257] platform 1f00144000.vec: bcm2712_iommu_probe_device: MMU 1000005280.iommu
[    2.465150] platform 1f00144000.vec: bcm2712_iommu_device_group: MMU 1000005280.iommu
[    2.473226] platform 1f00144000.vec: Adding to iommu group 2
[    2.478921] platform 1f00110000.csi: bcm2712_iommu_attach_dev: MMU 1000005280.iommu
[    2.486811] platform 1f00144000.vec: bcm2712_iommu_attach_dev: MMU 1000005280.iommu
[    2.494502] bcm2712-iommu 1000005280.iommu: bcm2712_iommu_probe: Success
[    2.501637] pl011-axi 1f0003c000.serial: cts_event_workaround enabled
[    2.508266] sdhci-brcmstb 1000fff000.mmc: Got CD GPIO
[    2.508573] mmc1: CQHCI version 5.10
[    2.513417] 1f0003c000.serial: ttyAMA3 at MMIO 0x1f0003c000 (irq = 144, base_baud = 0) is a PL011 AXI
[    2.526379] pl011-axi 1f00040000.serial: cts_event_workaround enabled
[    2.532907] 1f00040000.serial: ttyAMA4 at MMIO 0x1f00040000 (irq = 145, base_baud = 0) is a PL011 AXI
[    2.542948] of_cfs_init
[    2.545430] of_cfs_init: OK
[    2.548355] clk: Disabling unused clocks
[    2.549310] mmc0: SDHCI controller on 1000fff000.mmc [1000fff000.mmc] using ADMA 64-bit
[    2.562156] uart-pl011 107d001000.serial: no DMA platform data
[    2.663947] mmc0: new ultra high speed SDR104 SDHC card at address aaaa
[    2.670837] mmcblk0: mmc0:aaaa SP32G 29.7 GiB
[    2.678207]  mmcblk0: p1 p2
[    2.681101] mmcblk0: mmc0:aaaa SP32G 29.7 GiB (quirks 0x00004000)
[    2.704680] mmc1: SDHCI controller on 1001100000.mmc [1001100000.mmc] using ADMA 64-bit
[    2.718923] EXT4-fs (mmcblk0p2): mounted filesystem 4aa56689-dcb4-4759-90e6-179beae559ac ro with ordered data mode. Quota mode: none.
[    2.731015] VFS: Mounted root (ext4 filesystem) readonly on device 179:2.
[    2.742292] devtmpfs: mounted
[    2.748508] Freeing unused kernel memory: 5120K
[    2.753108] Run /sbin/init as init process
[    2.754767] mmc1: new ultra high speed DDR50 SDIO card at address 0001
[    2.757217]   with arguments:
[    2.763773]     /sbin/init
[    2.763775]   with environment:
[    2.763776]     HOME=/
[    2.763778]     TERM=linux
[    3.019054] NET: Registered PF_INET6 protocol family
[    3.024420] Segment Routing with IPv6
[    3.028117] In-situ OAM (IOAM) with IPv6
[    3.061395] systemd[1]: systemd 252.19-1~deb12u1 running in system mode (+PAM +AUDIT +SELINUX +APPARMOR +IMA +SMACK +SECCOMP +GCRYPT -GNUTLS +OPENSSL +ACL +BLKID +CURL +ELFUTILS +FIDO2 +IDN2 -IDN +IPTC +KMOD +LIBCRYPTSETUP +LIBFDISK +PCRE2 -PWQUALITY +P11KIT +QRENCODE +TPM2 +BZIP2 +LZ4 +XZ +ZLIB +ZSTD -BPF_FRAMEWORK -XKBCOMMON +UTMP +SYSVINIT default-hierarchy=unified)
[    3.094248] systemd[1]: Detected architecture arm64.
[    3.121035] systemd[1]: Hostname set to <raspberrypi>.
[    3.398850] systemd[1]: Queued start job for default target multi-user.target.
[    3.426817] systemd[1]: Created slice system-getty.slice - Slice /system/getty.
[    3.450472] systemd[1]: Created slice system-modprobe.slice - Slice /system/modprobe.
[    3.474462] systemd[1]: Created slice system-serial\x2dgetty.slice - Slice /system/serial-getty.
[    3.498448] systemd[1]: Created slice system-systemd\x2dfsck.slice - Slice /system/systemd-fsck.
[    3.522317] systemd[1]: Created slice user.slice - User and Session Slice.
[    3.546253] systemd[1]: Started systemd-ask-password-wall.path - Forward Password Requests to Wall Directory Watch.
[    3.574358] systemd[1]: Set up automount proc-sys-fs-binfmt_misc.automount - Arbitrary Executable File Formats File System Automount Point.
[    3.602230] systemd[1]: Reached target integritysetup.target - Local Integrity Protected Volumes.
[    3.626205] systemd[1]: Reached target slices.target - Slice Units.
[    3.646177] systemd[1]: Reached target swap.target - Swaps.
[    3.666180] systemd[1]: Reached target veritysetup.target - Local Verity Protected Volumes.
[    3.690307] systemd[1]: Listening on systemd-fsckd.socket - fsck to fsckd communication Socket.
[    3.714223] systemd[1]: Listening on systemd-initctl.socket - initctl Compatibility Named Pipe.
[    3.738422] systemd[1]: Listening on systemd-journald-audit.socket - Journal Audit Socket.
[    3.762294] systemd[1]: Listening on systemd-journald-dev-log.socket - Journal Socket (/dev/log).
[    3.786295] systemd[1]: Listening on systemd-journald.socket - Journal Socket.
[    3.812386] systemd[1]: Listening on systemd-udevd-control.socket - udev Control Socket.
[    3.838257] systemd[1]: Listening on systemd-udevd-kernel.socket - udev Kernel Socket.
[    3.862312] systemd[1]: dev-hugepages.mount - Huge Pages File System was skipped because of an unmet condition check (ConditionPathExists=/sys/kernel/mm/hugepages).
[    3.902265] systemd[1]: Mounting dev-mqueue.mount - POSIX Message Queue File System...
[    3.927103] systemd[1]: Mounting sys-kernel-debug.mount - Kernel Debug File System...
[    3.951029] systemd[1]: Mounting sys-kernel-tracing.mount - Kernel Trace File System...
[    3.974250] systemd[1]: auth-rpcgss-module.service - Kernel Module supporting RPCSEC_GSS was skipped because of an unmet condition check (ConditionPathExists=/etc/krb5.keytab).
[    3.993436] systemd[1]: Starting fake-hwclock.service - Restore / save the current clock...
[    4.019427] systemd[1]: Starting keyboard-setup.service - Set the console keyboard layout...
[    4.043476] systemd[1]: Starting kmod-static-nodes.service - Create List of Static Device Nodes...
[    4.071335] systemd[1]: Starting [email protected] - Load Kernel Module configfs...
[    4.095280] systemd[1]: Starting modprobe@dm_mod.service - Load Kernel Module dm_mod...
[    4.111800] device-mapper: ioctl: 4.48.0-ioctl (2023-03-01) initialised: [email protected]
[    4.146339] systemd[1]: Starting [email protected] - Load Kernel Module drm...
[    4.175553] systemd[1]: Starting modprobe@efi_pstore.service - Load Kernel Module efi_pstore...
[    4.199472] systemd[1]: Starting [email protected] - Load Kernel Module fuse...
[    4.213812] fuse: init (API version 7.39)
[    4.223403] systemd[1]: Starting [email protected] - Load Kernel Module loop...
[    4.251385] systemd[1]: Starting systemd-fsck-root.service - File System Check on Root Device...
[    4.262362] systemd[1]: Starting systemd-journald.service - Journal Service...
[    4.277504] systemd[1]: Starting systemd-modules-load.service - Load Kernel Modules...
[    4.289049] systemd[1]: Starting systemd-udev-trigger.service - Coldplug All udev Devices...
[    4.300752] i2c_dev: i2c /dev entries driver
[    4.301506] systemd[1]: Mounted dev-mqueue.mount - POSIX Message Queue File System.
[    4.316936] systemd[1]: Mounted sys-kernel-debug.mount - Kernel Debug File System.
[    4.327344] systemd[1]: Mounted sys-kernel-tracing.mount - Kernel Trace File System.
[    4.338131] systemd[1]: Finished fake-hwclock.service - Restore / save the current clock.
[    4.349201] systemd[1]: Started systemd-journald.service - Journal Service.
[    4.780982] EXT4-fs (mmcblk0p2): re-mounted 4aa56689-dcb4-4759-90e6-179beae559ac r/w. Quota mode: none.
[    4.844536] systemd-journald[145]: Received client request to flush runtime journal.
[    5.479052] rpi-gpiomem 107d508500.gpiomem: window base 0x107d508500 size 0x00000040
[    5.479157] rpi-gpiomem 107d508500.gpiomem: initialised 1 regions as /dev/gpiomem1
[    5.479205] rpi-gpiomem 107d517c00.gpiomem: window base 0x107d517c00 size 0x00000040
[    5.479247] rpi-gpiomem 107d517c00.gpiomem: initialised 1 regions as /dev/gpiomem2
[    5.479274] rpi-gpiomem 107d504100.gpiomem: window base 0x107d504100 size 0x00000020
[    5.479307] rpi-gpiomem 107d504100.gpiomem: initialised 1 regions as /dev/gpiomem3
[    5.479334] rpi-gpiomem 107d510700.gpiomem: window base 0x107d510700 size 0x00000020
[    5.479368] rpi-gpiomem 107d510700.gpiomem: initialised 1 regions as /dev/gpiomem4
[    5.479492] rpi-gpiomem 1f000d0000.gpiomem: window base 0x1f000d0000 size 0x00030000
[    5.479534] rpi-gpiomem 1f000d0000.gpiomem: initialised 1 regions as /dev/gpiomem0
[    5.517878] input: pwr_button as /devices/platform/pwr_button/input/input0
[    5.520227] drm-rp1-vec 1f00144000.vec: bcm2712_iommu_of_xlate: MMU 1000005280.iommu
[    5.520656] mc: Linux media interface: v0.10
[    5.521110] drm-rp1-vec 1f00144000.vec: rp1vec_platform_probe
[    5.522309] [drm] forcing Composite-1 connector on
[    5.559495] [drm] Initialized v3d 1.0.0 20180419 for 1002000000.v3d on minor 1
[    5.566310] [drm] Initialized drm-rp1-vec 1.0.0 0 for 1f00144000.vec on minor 0
[    5.566432] drm-rp1-vec 1f00144000.vec: [drm] User-defined mode not supported: "1280x720": 60 74440 1280 1336 1472 1664 720 721 724 746 0x20 0x6
[    5.606056] drm-rp1-vec 1f00144000.vec: rp1vec_pipe_enable
[    5.606064] drm-rp1-vec 1f00144000.vec: rp1vec_hw_setup: in_fmt='XR24' mode=704x432i [011] tvstd=0
[    5.606328] Console: switching to colour frame buffer device 88x27
[    5.629912] videodev: Linux video capture interface: v2.00
[    5.639505] drm-rp1-vec 1f00144000.vec: [drm] fb0: drm-rp1-vecdrmf frame buffer device
[    5.650962] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[    5.662406] Loaded X.509 cert '[email protected]: 577e021cb980e0e820821ba7b54b4961b8b4fadf'
[    5.662751] Loaded X.509 cert '[email protected]: 3abbc6ec146e09d1b6016ab9d6cf71dd233f0328'
[    5.664096] Loaded X.509 cert 'wens: 61c038651aabdcf94bd0ac7ff06c7248db18c600'
[    5.666380] Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[    5.692932] rp1-cfe 1f00110000.csi: bcm2712_iommu_of_xlate: MMU 1000005280.iommu
[    5.693311] rp1-cfe 1f00110000.csi: DW dphy Host HW v1.20
[    5.693325] rp1-cfe 1f00110000.csi: PiSP FE HW v0.1
[    5.696376] pispbe 1000880000.pisp_be: bcm2712_iommu_of_xlate: MMU 1000005100.iommu
[    5.696492] pispbe 1000880000.pisp_be: pispbe_probe: HW version:  0x02252700
[    5.696496] pispbe 1000880000.pisp_be: pispbe_probe: BatchStatus: 0x00000000
[    5.696499] pispbe 1000880000.pisp_be: pispbe_probe: Status:      0x00000000
[    5.696501] pispbe 1000880000.pisp_be: Register nodes for group 0
[    5.696567] rp1-cfe 1f00110000.csi: found subdevice /axi/pcie@120000/rp1/i2c@88000/imx708@1a
[    5.696652] pispbe 1000880000.pisp_be: input device node registered as /dev/video20
[    5.704049] rpivid_hevc: module is from the staging directory, the quality is unknown, you have been warned.
[    5.734650] brcmfmac: F1 signature read @0x18000000=0x15264345
[    5.735109] rpivid 1000800000.codec: bcm2712_iommu_of_xlate: MMU 1000005100.iommu
[    5.738005] pispbe 1000880000.pisp_be: tdn_input device node registered as /dev/video21
[    5.738482] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6
[    5.742210] rpivid 1000800000.codec: Device registered as /dev/video19
[    5.743925] pispbe 1000880000.pisp_be: stitch_input device node registered as /dev/video22
[    5.744395] usbcore: registered new interface driver brcmfmac
[    5.748260] pispbe 1000880000.pisp_be: hog_output device node registered as /dev/video23
[    5.748402] pispbe 1000880000.pisp_be: output0 device node registered as /dev/video24
[    5.748508] pispbe 1000880000.pisp_be: output1 device node registered as /dev/video25
[    5.748601] pispbe 1000880000.pisp_be: tdn_output device node registered as /dev/video26
[    5.760730] pispbe 1000880000.pisp_be: stitch_output device node registered as /dev/video27
[    5.794450] pispbe 1000880000.pisp_be: config device node registered as /dev/video28
[    5.811667] pispbe 1000880000.pisp_be: Register nodes for group 1
[    5.826540] pispbe 1000880000.pisp_be: input device node registered as /dev/video29
[    5.826621] pispbe 1000880000.pisp_be: tdn_input device node registered as /dev/video30
[    5.885579] vc4-drm axi:gpu: bcm2712_iommu_of_xlate: MMU 1000005200.iommu
[    5.903020] pispbe 1000880000.pisp_be: stitch_input device node registered as /dev/video31
[    5.911970] pispbe 1000880000.pisp_be: hog_output device node registered as /dev/video32
[    5.913507] vc4-drm axi:gpu: bound 107c580000.hvs (ops vc4_hvs_ops [vc4])
[    5.913642] vc4-drm axi:gpu: bound 107c500000.mop (ops vc4_txp_ops [vc4])
[    5.913717] brcmfmac_wcc: brcmf_wcc_attach: executing
[    5.913718] vc4-drm axi:gpu: bound 107c501000.moplet (ops vc4_txp_ops [vc4])
[    5.920547] brcmfmac: brcmf_c_process_txcap_blob: no txcap_blob available (err=-2)
[    5.920831] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4345/6 wl0: Nov  1 2021 00:37:25 version 7.45.241 (1a2f2fa CY) FWID 01-703fd60
[    5.930493] pispbe 1000880000.pisp_be: output0 device node registered as /dev/video33
[    5.933537] ieee80211 phy0: brcmf_cfg80211_reg_notifier: Firmware rejected country setting
[    5.934029] pispbe 1000880000.pisp_be: output1 device node registered as /dev/video34
[    5.934795] pispbe 1000880000.pisp_be: tdn_output device node registered as /dev/video35
[    5.935008] [drm] Initialized vc4 0.0.0 20140616 for axi:gpu on minor 2
[    5.935024] vc4-drm axi:gpu: [drm] Cannot find any crtc or sizes
[    5.963677] pispbe 1000880000.pisp_be: stitch_output device node registered as /dev/video36
[    5.979123] pispbe 1000880000.pisp_be: config device node registered as /dev/video37
[    6.142471] imx708 6-001a: camera module ID 0x0302
[    6.145716] rp1-cfe 1f00110000.csi: Using sensor imx708_wide for capture
[    6.145838] rp1-cfe 1f00110000.csi: Registered [rp1-cfe-csi2_ch0] node id 0 successfully as /dev/video0
[    6.145881] rp1-cfe 1f00110000.csi: Registered [rp1-cfe-embedded] node id 1 successfully as /dev/video1
[    6.145922] rp1-cfe 1f00110000.csi: Registered [rp1-cfe-csi2_ch2] node id 2 successfully as /dev/video2
[    6.145954] rp1-cfe 1f00110000.csi: Registered [rp1-cfe-csi2_ch3] node id 3 successfully as /dev/video3
[    6.145987] rp1-cfe 1f00110000.csi: Registered [rp1-cfe-fe_image0] node id 4 successfully as /dev/video4
[    6.146023] rp1-cfe 1f00110000.csi: Registered [rp1-cfe-fe_image1] node id 5 successfully as /dev/video5
[    6.146057] rp1-cfe 1f00110000.csi: Registered [rp1-cfe-fe_stats] node id 6 successfully as /dev/video6
[    6.146107] rp1-cfe 1f00110000.csi: Registered [rp1-cfe-fe_config] node id 7 successfully as /dev/video7
[    6.497449] Adding 3146784k swap on /var/swap.  Priority:-2 extents:119 across:28003616k SS
[    7.076295] macb 1f00100000.ethernet eth0: PHY [1f00100000.ethernet-ffffffff:01] driver [Broadcom BCM54213PE] (irq=POLL)
[    7.076305] macb 1f00100000.ethernet eth0: configuring for phy/rgmii-id link mode
[    7.078967] pps pps0: new PPS source ptp0
[    7.079026] macb 1f00100000.ethernet: gem-ptp-timer ptp clock registered.
[    7.108911] brcmfmac: brcmf_cfg80211_set_power_mgmt: power save enabled
[   15.169963] systemd[852]: memfd_create() called without MFD_EXEC or MFD_NOEXEC_SEAL set
[   19.557506] pl011-axi 1f0003c000.serial: no DMA platform data
[   19.557568] pl011-axi 1f00040000.serial: no DMA platform data
[   22.117364] drm-rp1-vec 1f00144000.vec: [drm] User-defined mode not supported: "1280x720": 60 74440 1280 1336 1472 1664 720 721 724 746 0x20 0x6
[   54.089289] drm-rp1-vec 1f00144000.vec: [drm] User-defined mode not supported: "1280x720": 60 74440 1280 1336 1472 1664 720 721 724 746 0x20 0x6
[   61.403661] drm-rp1-vec 1f00144000.vec: [drm] User-defined mode not supported: "1280x720": 60 74440 1280 1336 1472 1664 720 721 724 746 0x20 0x6
[   61.476027] source of link 'rp1-cfe-fe_config':0->'pisp-fe':1 is not a V4L2 sub-device, driver bug!
[   61.476051] rp1-cfe 1f00110000.csi: Using a link rate of 900 Mbps
@davidplowman
Copy link
Collaborator

Hi, thanks for the report. I don't have the right hardware to do any work on this, but am happy to do my best to help if we can establish what it is that needs fixing. Can I assume you have checked out the latest version of Picamera2, and have added your local version to your PYTHONPATH?

If you run the most basic example

from picamera2 import Picamera2
picam2 = Picamera2()
picam2.start(show_preview=True)

can you say exactly where it is going wrong, and what the immediate cause of the error is? Thanks!

@ArtemKorr
Copy link
Author

Hello. thanks for the answer.
I use picamera2 0.3.16
I tried the most basic example that you sent me and got this
image

It is important that this does not work only if you combine the output.
For example, if I take an HDMI converter then RCA, then since Linux works with HDMI for DRM output, then there are no problems

@ArtemKorr
Copy link
Author

If I try to call the same code by connecting the keyboard (before this I ran the code via ssh), then looking at the analog screen. then I get the same thing. Most likely it doesn’t matter, but just for fun I wanted to try it
image

@davidplowman
Copy link
Collaborator

Presumably your application is using one of the 32bpp "XRGB8888" type of output formats, which would translate into something like pykms.PixelFormat.XRGB8888, and this is being rejected. Do you know what kind of pixel format this display will accept, one of the 24bpp ones perhaps?

@ArtemKorr
Copy link
Author

Also https://github.com/raspberrypi/rpicam-apps/blob/70894c0c46855955442284aba9dedb66d8d4bfbf/preview/drm_preview.cpp#L90 I also tried to run this code in C++ but I get “No suitable enabled connector found” due to the fact that count_connectors turns out to be empty

@ArtemKorr
Copy link
Author

Presumably your application is using one of the 32bpp "XRGB8888" type of output formats, which would translate into something like pykms.PixelFormat.XRGB8888, and this is being rejected. Do you know what kind of pixel format this display will accept, one of the 24bpp ones perhaps?

Well, this display works with what the analog output gives it. in this case pal.

@ArtemKorr
Copy link
Author

I run kmsprint and here output
image

@davidplowman
Copy link
Collaborator

OK, this is totally beyond my understanding (I know basically nothing about DRM or KMS). @6by9 Does any of this mean anything to you?

@ArtemKorr
Copy link
Author

We previously talked about this and this is what he wrote to me.
raspberrypi/linux#5948 (comment)

@ArtemKorr
Copy link
Author

ArtemKorr commented Apr 3, 2024

I tried changing the format in drm_preview.py from AB24 to XB24, but still failed

@6by9
Copy link
Contributor

6by9 commented Apr 3, 2024

OK, this is totally beyond my understanding (I know basically nothing about DRM or KMS). @6by9 Does any of this mean anything to you?

As discussed previously, Picamera2 (and rpicam-apps) are assuming they're running against vc4 as the DRM renderer, and hence have a wide choice of formats, scaling, and planes.

RP1 for DSI, DPI, and VEC (and also most SPI displays) only have a single primary plane, and only support XRGB8888, XBGR8888, RGB888, BGR888, and RGB565 formats. Asking for any other format or requiring an overlay plane will fail.

Picamera2 and rpicam-apps need to fall back to using the primary plane in the absence of a suitable overlay plane, and ensure that their pixel format choice is supported by the DRM device.

@davidplowman
Copy link
Collaborator

Thanks for that!

@ArtemKorr Sounds like either of the 24bpp or 32bpp formats should work then. Do you you want to try replacing reserve_overlay_plane (the line where it falls over), with reserve_plane. Also, just a few lines below that, delete the half dozen or so lines that refer to overlay_plane. Lets see if that works.

@ArtemKorr
Copy link
Author

ArtemKorr commented Apr 3, 2024

Ok, if I understood you correctly, I tried to make the changes you say. I attached the file in a zip archive. now that line has passed, but it breaks below
also I use type Primary
here
self.plane = self.resman.reserve_plane(crtc=self.crtc,type= pykms.PlaneType.Primary,format=fmt)
It 's only one combination which worked
image

@davidplowman
Copy link
Collaborator

Hmm, so it seems to be failing to create a pykms.DmabufFramebuffer. I assume you've tried a different format or two. Perhaps this kind of display doesn't support dmabufs? It would be nice if there was a way to know that. Maybe we need to allocate a pykms.DumbFramebuffer instead and copy the image into that (though it will involve lots of pixel copying...)?

@6by9 Does the above sound plausible, do you think?

@6by9
Copy link
Contributor

6by9 commented Apr 3, 2024

It should be happy to import a dmabuf. RP1 has an iommu, so should be able to import any buffer.
Is the buffer the same geometry as the display? DSI has no scaler, so it needs to be full screen and 1:1.

If we have a simple way to reproduce this, then I can have a look and see why DRM is unhappy.

@davidplowman
Copy link
Collaborator

OK, that's interesting. I don't have any means of reproducing this behaviour, unfortunately. @ArtemKorr Can you check your image dimensions match the display exactly?

@ArtemKorr
Copy link
Author

ArtemKorr commented Apr 3, 2024

The previous time I tried it didn’t match. The image is 1280 x 720, I took it from the camera. And the display is 704/432, respectively.

@ArtemKorr
Copy link
Author

ArtemKorr commented Apr 3, 2024

OK. When I set the photo size to be the same as my display (704*432) I don’t get any errors.. But I don’t see the image on the screen either
image
Can you help, maybe my code that I modified has problems

@davidplowman
Copy link
Collaborator

I guess you're sure that the image actually does contain something? (Perhaps you are able to save it as a JPEG and view it somewhere else?)

@ArtemKorr
Copy link
Author

This is a live stream from a camera... but the camera is working. shoots, so the images must contain something exactly

@ArtemKorr
Copy link
Author

ArtemKorr commented Apr 3, 2024

Ok I found a bug in myself. I decided to remove the frame size by default. Now everything works
image
thanks for support!

@davidplowman
Copy link
Collaborator

Great glad it's working! I'd like to get these changes packaged into a PR that can be merged into our code base, so that in future this will "just work" for everyone, and you won't need special code edits of your own.

Would you be able to commit your changes and post your tree to a Github fork of Picamera2? Then I can tidy them up a bit and make sure I haven't broken anything else. Then I'll create a PR which can be merged. I'd be extremely grateful if you'd have a moment to test that PR before I finally merge it. Would that be OK? Thanks very much for your help with this issue.

@ArtemKorr
Copy link
Author

Of course I can. But everything I did was commented out as you told me.
As I understand it, the overlay needs to be removed completely because it cannot be supported in such formats (AR24 and other). And I don’t quite understand what the preview file should be called. Like preview_composite_pi5? . Just on Rpi4, when I tried it, because of the fkms, everything worked and the overlay beat.

@davidplowman
Copy link
Collaborator

Well, I'll make up a PR in the next day or so, and maybe you could give it a try just to check that I've fixed your issue correctly. That would be great!

@6by9
Copy link
Contributor

6by9 commented Apr 4, 2024

FKMS is deprecated.

vc4-kms-v3d when rendering through vc4 (the composition hardware for HDMI, DSI, DPI, and VEC on Pi0-4, and for HDMI on Pi5) allows lots of options that currently picamera2 assumes are present.
With the RP1 outputs, or with other random DRM drivers (eg SPI displays, DisplayLink USB devices, etc), those features aren't available. Picamera2 needs to handle these situations properly.
It also really wants a mechanism for passing in dev_path when creating the card, so you can choose which display device to render to (https://github.com/tomba/pykms/blob/master/kms/card.py#L24)

Largely the PR is to make sure that nothing gets missed out from what works for you. I'm trying to get it working on an SPI display at present, but with limited success.

@6by9
Copy link
Contributor

6by9 commented Apr 4, 2024

I've succeeded in getting picamera2 to render to an SPI display (yes the refresh rate sucks!), but it does require jumping through a few hoops in the configuration as well as fixing up drm_preview.
Changes pushed to #1000

I still had to configure things manually in my stream config. It feels like at least the pixel format should be extracted from the preview renderer.

from picamera2 import Picamera2, Preview
picam2 = Picamera2()
picam2.start_preview(Preview.DRM, width=480, height=320)

preview_config = picam2.create_preview_configuration({"format": "XRGB8888","size": (480, 320)})
picam2.configure(preview_config)

picam2.start()

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants