From: Maud Spierings <maudspierings@gocontroll.com>
To: Laurent.pinchart@ideasonboard.com, mchehab@kernel.org,
Shawn Guo <shawnguo@kernel.org>,
Sascha Hauer <s.hauer@pengutronix.de>,
Pengutronix Kernel Team <kernel@pengutronix.de>,
Fabio Estevam <festevam@gmail.com>
Cc: linux-media@vger.kernel.org, imx@lists.linux.dev
Subject: Kernel Panic when trying to capture camera with ffmpeg on imx8mp
Date: Wed, 13 Aug 2025 13:11:59 +0200 [thread overview]
Message-ID: <1536a61b-b405-4762-9fb4-7e257f95e49e@gocontroll.com> (raw)
Dear Readers,
I'm attempting to get a raspberry pi camera working with our imx8mp
based platform. However when running ` ffmpeg -f v4l2 -i /dev/video2
-c:v libx264 -preset medium -crf 23 output.mp4`. It results in a kernel
panic.
Kernel version: 6.12.41
ffmpeg version: 7:7.1.1-1+b1 (Debian Trixie)
v4l2-ctl -d 2 -D:
Driver Info:
Driver name : mxc-isi
Card type : mxc-isi-cap
Bus info : platform:32e00000.isi
Driver version : 6.12.41
Capabilities : 0xa4201000
Video Capture Multiplanar
I/O MC
Streaming
Extended Pix Format
Device Capabilities
Device Caps : 0x24201000
Video Capture Multiplanar
I/O MC
Streaming
Extended Pix Format
Media Driver Info:
Driver name : mxc-isi
Model : FSL Capture Media Device
Serial :
Bus info : platform:32e00000.isi
Media version : 6.12.41
Hardware revision: 0x00000000 (0)
Driver version : 6.12.41
Interface Info:
ID : 0x03000017
Type : V4L Video
Entity Info:
ID : 0x00000015 (21)
Name : mxc_isi.1.capture
Function : V4L2 I/O
Pad 0x01000016 : 0: Sink
Link 0x02000019: from remote pad 0x1000014 of entity 'mxc_isi.1'
(Video Pixel Formatter): Data, Enabled, Immutable
Panic:
134.378107] Unable to handle kernel NULL pointer dereference at
virtual address 0000000000000020
[ 134.386921] Mem abort info:
[ 134.389717] ESR = 0x0000000096000004
[ 134.393499] EC = 0x25: DABT (current EL), IL = 32 bits
[ 134.398835] SET = 0, FnV = 0
[ 134.401925] EA = 0, S1PTW = 0
[ 134.405068] FSC = 0x04: level 0 translation fault
[ 134.409956] Data abort info:
[ 134.412841] ISV = 0, ISS = 0x00000004, ISS2 = 0x00000000
[ 134.418345] CM = 0, WnR = 0, TnD = 0, TagAccess = 0
[ 134.423414] GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0
[ 134.428749] user pgtable: 4k pages, 48-bit VAs, pgdp=0000000044ffb000
[ 134.435225] [0000000000000020] pgd=0000000000000000, p4d=0000000000000000
[ 134.442047] Internal error: Oops: 0000000096000004 [#1] PREEMPT SMP
[ 134.448326] Modules linked in: g_serial
[ 134.452176] CPU: 1 UID: 0 PID: 445 Comm: ffmpeg Not tainted
6.12.41-GOcontroll #36
[ 134.459750] Hardware name: GOcontroll Moduline Display with camera
test board (DT)
[ 134.467321] pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS
BTYPE=--)
[ 134.474285] pc : mxc_isi_crossbar_xlate_streams+0xac/0x170
[ 134.479782] lr : mxc_isi_crossbar_xlate_streams+0xa8/0x170
[ 134.485273] sp : ffff8000819738d0
[ 134.488586] x29: ffff8000819738d0 x28: ffff800081973948 x27:
ffff800081973950
[ 134.495734] x26: ffff80008197394c x25: ffff0000028ab0a8 x24:
0000000000000001
[ 134.502878] x23: 0000000000000001 x22: 0000000000000001 x21:
0000000000000001
[ 134.510023] x20: 0000000000000004 x19: ffff00000351c458 x18:
0000000000000002
[ 134.517165] x17: 00007dff35433000 x16: ffff8000815df000 x15:
0000000000000001
[ 134.524310] x14: 0000000000000000 x13: 00000000000629fd x12:
ffff8000812ae000
[ 134.531455] x11: 0000000000000001 x10: 0000000000000001 x9 :
0000000000000004
[ 134.538599] x8 : ffff000002610d2c x7 : 0000000000000000 x6 :
ffff80008197394c
[ 134.545742] x5 : ffff000002611e40 x4 : 000000000fffffff x3 :
ffff0000028ab110
[ 134.552887] x2 : ffff0000028ab110 x1 : 0000000000000000 x0 :
0000000000000000
[ 134.560034] Call trace:
[ 134.562482] mxc_isi_crossbar_xlate_streams+0xac/0x170
[ 134.567626] mxc_isi_crossbar_enable_streams+0x50/0x18c
[ 134.572859] v4l2_subdev_enable_streams+0x180/0x3b0
[ 134.577740] mxc_isi_pipe_enable+0x1e4/0x260
[ 134.582018] mxc_isi_vb2_start_streaming+0xa0/0x108
[ 134.586898] vb2_start_streaming+0x6c/0x178
[ 134.591084] vb2_core_streamon+0xd8/0x1bc
[ 134.595094] vb2_streamon+0x18/0x64
[ 134.598588] mxc_isi_video_streamon+0x318/0x3a0
[ 134.603119] v4l_streamon+0x24/0x30
[ 134.606615] __video_do_ioctl+0x40c/0x4a0
[ 134.610627] video_usercopy+0x354/0x658
[ 134.614465] video_ioctl2+0x18/0x40
[ 134.617956] v4l2_ioctl+0x40/0x60
[ 134.621276] __arm64_sys_ioctl+0xbc/0xdc
[ 134.625202] invoke_syscall+0x48/0x104
[ 134.628961] el0_svc_common.constprop.0+0x40/0xe0
[ 134.633669] do_el0_svc+0x1c/0x28
[ 134.636987] el0_svc+0x30/0x100
[ 134.640136] el0t_64_sync_handler+0x120/0x12c
[ 134.644497] el0t_64_sync+0x190/0x194
[ 134.648168] Code: d37a7f00 8b000020 97ff155f aa0003e1 (f9401000)
[ 134.654264] ---[ end trace 0000000000000000 ]---
[ 134.658883] Kernel panic - not syncing: Oops: Fatal exception
[ 134.664630] SMP: stopping secondary CPUs
[ 134.668558] Kernel Offset: disabled
[ 134.672047] CPU features: 0x00,00000080,00200000,4200420b
[ 134.677448] Memory Limit: none
Other ffmpeg output:
[video4linux2,v4l2 @ 0xaaaacfe2bc60] ioctl(VIDIOC_G_PARM): Inappropriate
ioctl for device
[video4linux2,v4l2 @ 0xaaaacfe2bc60] Time per frame unknown
Likely I'm doing something very stupid because I don't know what I'm
doing. But all the other /dev/videoX entries just result in an error.
Except for this specific one that reproducibly panics.
My devicetree setup is practically identical to the one in
freescale/imx8mp-venice-gw74xx-imx219.dtso (different i2c bus and
regulator gpio only)
I'll try and figure out which variable the guilty one is.
Kind Regards,
Maud
next reply other threads:[~2025-08-13 11:12 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-13 11:11 Maud Spierings [this message]
2025-08-13 11:23 ` Kernel Panic when trying to capture camera with ffmpeg on imx8mp Fabio Estevam
2025-08-13 11:31 ` Maud Spierings
2025-08-13 11:35 ` Laurent Pinchart
2025-08-13 11:41 ` Maud Spierings
2025-08-13 11:41 ` Laurent Pinchart
2025-08-13 11:45 ` Maud Spierings
2025-08-13 11:57 ` Laurent Pinchart
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1536a61b-b405-4762-9fb4-7e257f95e49e@gocontroll.com \
--to=maudspierings@gocontroll.com \
--cc=Laurent.pinchart@ideasonboard.com \
--cc=festevam@gmail.com \
--cc=imx@lists.linux.dev \
--cc=kernel@pengutronix.de \
--cc=linux-media@vger.kernel.org \
--cc=mchehab@kernel.org \
--cc=s.hauer@pengutronix.de \
--cc=shawnguo@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).