From: Steev Klimaszewski <threeway@gmail.com>
To: dmitry.baryshkov@oss.qualcomm.com
Cc: abhinav.kumar@linux.dev, andersson@kernel.org, bod@kernel.org,
bryan.odonoghue@linaro.org, conor+dt@kernel.org, david@ixit.cz,
devicetree@vger.kernel.org, dikshita.agarwal@oss.qualcomm.com,
johan+linaro@kernel.org, konrad.dybcio@oss.qualcomm.com,
konradybcio@kernel.org, krzk+dt@kernel.org,
linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-media@vger.kernel.org, mchehab@kernel.org, robh@kernel.org,
stanimir.varbanov@linaro.org, vikash.garodia@oss.qualcomm.com
Subject: Re: [PATCH v4 0/6] media: iris: enable SM8350 and SC8280XP support
Date: Fri, 27 Mar 2026 11:46:51 -0500 [thread overview]
Message-ID: <20260327164651.45628-1-threeway@gmail.com> (raw)
In-Reply-To: <20260312-iris-sc8280xp-v4-0-a047ef1e3c7d@oss.qualcomm.com>
Hi Dmitry, all,
I've tested this on my Thinkpad X13s, after disabling venus module otherwise it
loads venus not iris.
In el2, the device seems to be /dev/video33
steev@finn:~$ v4l2-compliance -d 33
v4l2-compliance 1.32.0, 64 bits, 64-bit time_t
Compliance test for iris_driver device /dev/video33:
Driver Info:
Driver name : iris_driver
Card type : Iris Encoder
Bus info : platform:aa00000.video-codec
Driver version : 6.19.10
Capabilities : 0x84204000
Video Memory-to-Memory Multiplanar
Streaming
Extended Pix Format
Device Capabilities
Device Caps : 0x04204000
Video Memory-to-Memory Multiplanar
Streaming
Extended Pix Format
Detected Stateful Encoder
Required ioctls:
test VIDIOC_QUERYCAP: OK
test invalid ioctls: OK
Allow for multiple opens:
test second /dev/video33 open: OK
test VIDIOC_QUERYCAP: OK
test VIDIOC_G/S_PRIORITY: OK
test for unlimited opens: OK
Debug ioctls:
test VIDIOC_DBG_G/S_REGISTER: OK (Not Supported)
test VIDIOC_LOG_STATUS: OK (Not Supported)
Input ioctls:
test VIDIOC_G/S_TUNER/ENUM_FREQ_BANDS: OK (Not Supported)
test VIDIOC_G/S_FREQUENCY: OK (Not Supported)
test VIDIOC_S_HW_FREQ_SEEK: OK (Not Supported)
test VIDIOC_ENUMAUDIO: OK (Not Supported)
test VIDIOC_G/S/ENUMINPUT: OK (Not Supported)
test VIDIOC_G/S_AUDIO: OK (Not Supported)
Inputs: 0 Audio Inputs: 0 Tuners: 0
Output ioctls:
test VIDIOC_G/S_MODULATOR: OK (Not Supported)
test VIDIOC_G/S_FREQUENCY: OK (Not Supported)
test VIDIOC_ENUMAUDOUT: OK (Not Supported)
test VIDIOC_G/S/ENUMOUTPUT: OK (Not Supported)
test VIDIOC_G/S_AUDOUT: OK (Not Supported)
Outputs: 0 Audio Outputs: 0 Modulators: 0
Input/Output configuration ioctls:
test VIDIOC_ENUM/G/S/QUERY_STD: OK (Not Supported)
test VIDIOC_ENUM/G/S/QUERY_DV_TIMINGS: OK (Not Supported)
test VIDIOC_DV_TIMINGS_CAP: OK (Not Supported)
test VIDIOC_G/S_EDID: OK (Not Supported)
Control ioctls:
test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK
test VIDIOC_QUERYCTRL: OK
test VIDIOC_G/S_CTRL: OK
test VIDIOC_G/S/TRY_EXT_CTRLS: OK
test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: OK
test VIDIOC_G/S_JPEGCOMP: OK (Not Supported)
Standard Controls: 33 Private Controls: 0
Format ioctls:
test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK
test VIDIOC_G/S_PARM: OK
test VIDIOC_G_FBUF: OK (Not Supported)
test VIDIOC_G_FMT: OK
test VIDIOC_TRY_FMT: OK
test VIDIOC_S_FMT: OK
test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported)
test Cropping: OK
test Composing: OK (Not Supported)
test Scaling: OK (Not Supported)
Codec ioctls:
test VIDIOC_(TRY_)ENCODER_CMD: OK
test VIDIOC_G_ENC_INDEX: OK (Not Supported)
test VIDIOC_(TRY_)DECODER_CMD: OK (Not Supported)
Buffer ioctls:
test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK
test CREATE_BUFS maximum buffers: OK
test VIDIOC_REMOVE_BUFS: OK
test VIDIOC_EXPBUF: OK
test Requests: OK (Not Supported)
test blocking wait: OK
Total for iris_driver device /dev/video33: 48, Succeeded: 48, Failed: 0, Warnings: 0
In el1, the device becomes /dev/video0
steev@finn:~$ v4l2-compliance
v4l2-compliance 1.32.0, 64 bits, 64-bit time_t
Compliance test for iris_driver device /dev/video0:
Driver Info:
Driver name : iris_driver
Card type : Iris Decoder
Bus info : platform:aa00000.video-codec
Driver version : 6.19.10
Capabilities : 0x84204000
Video Memory-to-Memory Multiplanar
Streaming
Extended Pix Format
Device Capabilities
Device Caps : 0x04204000
Video Memory-to-Memory Multiplanar
Streaming
Extended Pix Format
Detected Stateful Decoder
Required ioctls:
test VIDIOC_QUERYCAP: OK
test invalid ioctls: OK
Allow for multiple opens:
test second /dev/video0 open: OK
test VIDIOC_QUERYCAP: OK
test VIDIOC_G/S_PRIORITY: OK
test for unlimited opens: OK
Debug ioctls:
test VIDIOC_DBG_G/S_REGISTER: OK (Not Supported)
test VIDIOC_LOG_STATUS: OK (Not Supported)
Input ioctls:
test VIDIOC_G/S_TUNER/ENUM_FREQ_BANDS: OK (Not Supported)
test VIDIOC_G/S_FREQUENCY: OK (Not Supported)
test VIDIOC_S_HW_FREQ_SEEK: OK (Not Supported)
test VIDIOC_ENUMAUDIO: OK (Not Supported)
test VIDIOC_G/S/ENUMINPUT: OK (Not Supported)
test VIDIOC_G/S_AUDIO: OK (Not Supported)
Inputs: 0 Audio Inputs: 0 Tuners: 0
Output ioctls:
test VIDIOC_G/S_MODULATOR: OK (Not Supported)
test VIDIOC_G/S_FREQUENCY: OK (Not Supported)
test VIDIOC_ENUMAUDOUT: OK (Not Supported)
test VIDIOC_G/S/ENUMOUTPUT: OK (Not Supported)
test VIDIOC_G/S_AUDOUT: OK (Not Supported)
Outputs: 0 Audio Outputs: 0 Modulators: 0
Input/Output configuration ioctls:
test VIDIOC_ENUM/G/S/QUERY_STD: OK (Not Supported)
test VIDIOC_ENUM/G/S/QUERY_DV_TIMINGS: OK (Not Supported)
test VIDIOC_DV_TIMINGS_CAP: OK (Not Supported)
test VIDIOC_G/S_EDID: OK (Not Supported)
Control ioctls:
test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK
test VIDIOC_QUERYCTRL: OK
test VIDIOC_G/S_CTRL: OK
test VIDIOC_G/S/TRY_EXT_CTRLS: OK
test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: OK
test VIDIOC_G/S_JPEGCOMP: OK (Not Supported)
Standard Controls: 2 Private Controls: 0
Format ioctls:
test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK
test VIDIOC_G/S_PARM: OK (Not Supported)
test VIDIOC_G_FBUF: OK (Not Supported)
test VIDIOC_G_FMT: OK
test VIDIOC_TRY_FMT: OK
test VIDIOC_S_FMT: OK
test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported)
test Cropping: OK
test Composing: OK
test Scaling: OK (Not Supported)
Codec ioctls:
test VIDIOC_(TRY_)ENCODER_CMD: OK (Not Supported)
test VIDIOC_G_ENC_INDEX: OK (Not Supported)
test VIDIOC_(TRY_)DECODER_CMD: OK
Buffer ioctls:
test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK
test CREATE_BUFS maximum buffers: OK
test VIDIOC_REMOVE_BUFS: OK
test VIDIOC_EXPBUF: OK
test Requests: OK (Not Supported)
test blocking wait: OK
Total for iris_driver device /dev/video0: 48, Succeeded: 48, Failed: 0, Warnings: 0
So the compliance tests pass in both el1 and el2, however, if I attempt to play
a video in totem, and then skip forward in it some random amount of time, totem
freezes and I get the following splat:
[ 143.388380] arm-smmu 15000000.iommu: Unhandled context fault: fsr=0x402, iova=0xd516d400, fsynr=0x600002, cbfrsynra=0x2a00, cb=6
[ 143.388390] arm-smmu 15000000.iommu: FSR = 00000402 [Format=2 TF], SID=0x2a00
[ 143.388392] arm-smmu 15000000.iommu: FSYNR0 = 00600002 [S1CBNDX=96 PLVL=2]
[ 143.388423] qcom-iris aa00000.video-codec: sys error (type: 1, session id:ff, data1:1, data2:deadbead)
[ 145.913827] qcom-iris aa00000.video-codec: session error for command: 0, event id:1004, session id:e39bc002
[ 146.945692] qcom-iris aa00000.video-codec: session error for command: 0, event id:1004, session id:e39bc002
[ 147.969651] qcom-iris aa00000.video-codec: session error for command: 0, event id:1004, session id:e39bc002
[ 147.969693] qcom-iris aa00000.video-codec: session error for command: 0, event id:1004, session id:e39bc002
[ 147.970493] qcom-iris aa00000.video-codec: session error for command: 0, event id:1004, session id:e39bc002
[ 148.993683] ------------[ cut here ]------------
[ 148.993695] WARNING: drivers/media/common/videobuf2/videobuf2-core.c:1827 at vb2_start_streaming+0xe0/0x17c [videobuf2_common], CPU#3: totem/7330
[ 148.993727] Modules linked in: michael_mic uhid
[ 148.993732] qcom-iris aa00000.video-codec: session error for command: 0, event id:1004, session id:e39bc002
[ 148.993736] algif_hash
[ 148.993739] algif_skcipher af_alg snd_soc_wsa883x q6prm_clocks q6apm_lpass_dais q6apm_dai snd_q6dsp_common q6prm overlay zram lz4hc_compress zsmalloc lz4_compress binfmt_misc qrtr_mhi ath11k_pci ath11k mac80211 libarc4 sha256 cfg80211 mhi hci_uart btqca btbcm bluetooth ecdh_generic ecc rfkill qcom_spmi_temp_alarm snd_soc_sc8280xp lenovo_thinkpad_t14s snd_soc_qcom_sdw snd_soc_qcom_common sparse_keymap qcom_spmi_adc_tm5 qcom_spmi_adc5 qcom_vadc_common ov5675 snd_soc_hdmi_codec qcom_camss qcom_iris videobuf2_dma_contig videobuf2_dma_sg v4l2_mem2mem snd_soc_wcd938x videobuf2_memops videobuf2_v4l2 v4l2_fwnode videobuf2_common v4l2_async snd_soc_lpass_rx_macro snd_soc_lpass_tx_macro snd_soc_lpass_wsa_macro snd_soc_lpass_va_macro snd_soc_wcd938x_sdw regmap_sdw snd_soc_wcd_mbhc videodev snd_soc_wcd_common soundwire_qcom snd_q6apm snd_soc_wcd_classh snd_soc_lpass_macro_common mc snd_soc_core snd_compress snd_pcm_dmaengine snd_pcm fastrpc slimbus pci_pwrctrl_pwrseq snd_timer qcom_rng snd soundcore soundwire_bus fuse nfnetlink
[ 148.993936] ipv6 btrfs xor xor_neon raid6_pq zstd_compress panel_edp hid_multitouch qcom_pm8008_regulator nvme ucsi_glink pmic_glink_altmode qcom_battmgr aux_hpd_bridge typec_ucsi nvme_core qcom_pm8008 i2c_hid_of_elan i2c_hid_of rpmsg_ctrl apr i2c_hid rpmsg_char qrtr_smd qcom_pd_mapper msm ubwc_config ocmem drm_gpuvm drm_exec gpu_sched drm_display_helper phy_qcom_qmp_combo cec leds_qcom_lpg aux_bridge drm_dp_aux_bus led_class_multicolor qcom_pbs rtc_pm8xxx qcom_pon qcom_stats dispcc_sc8280xp drm_client_lib phy_qcom_edp camcc_sc8280xp i2c_qcom_cci i2c_qcom_geni drm_kms_helper phy_qcom_qmp_usb qcom_refgen_regulator videocc_sm8350 llcc_qcom drm icc_bwmon phy_qcom_snps_femto_v2 gpi gpucc_sc8280xp qrtr qcom_q6v5_pas qcom_pil_info qcom_common qcom_glink_smem lpasscc_sc8280xp pinctrl_sc8280xp_lpass_lpi pinctrl_lpass_lpi qcom_q6v5 pmic_glink qcom_sysmon gpio_sbu_mux phy_qcom_qmp_pcie mdt_loader pdr_interface qcom_wdt icc_osm_l3 qcom_pdr_msg pwrseq_qcom_wcn typec qmi_helpers pwrseq_core socinfo pwm_bl backlight
[ 148.994147] CPU: 3 UID: 1000 PID: 7330 Comm: totem Not tainted 6.19.10 #2 PREEMPT
[ 148.994155] Hardware name: LENOVO 21BX0015US/21BX0015US, BIOS N3HET94W (1.66 ) 09/15/2025
[ 148.994160] pstate: 80401005 (Nzcv daif +PAN -UAO -TCO -DIT +SSBS BTYPE=--)
[ 148.994166] pc : vb2_start_streaming+0xe0/0x17c [videobuf2_common]
[ 148.994178] lr : vb2_start_streaming+0x70/0x17c [videobuf2_common]
[ 148.994187] sp : ffff80009b95bb70
[ 148.994191] x29: ffff80009b95bb70 x28: 0000000000000001 x27: ffff80009b95bce8
[ 148.994201] x26: 0000000000000000 x25: 0000000000000000 x24: ffffd3da9782e138
[ 148.994211] x23: ffff0000902f5cc0 x22: 0000000040045612 x21: ffff0000f7ada910
[ 148.994219] x20: ffff0000f7ada928 x19: 00000000fffffff0 x18: 0000000000000000
[ 148.994228] x17: 0000000000000000 x16: ffffd3daf7056f00 x15: 0000ffff1802f330
[ 148.994237] x14: 0000000000000000 x13: 0000000000000000 x12: 0000000000000000
[ 148.994246] x11: 0000000000000000 x10: 0000000000000000 x9 : 0000000000000035
[ 148.994255] x8 : ffff80009b95bd68 x7 : ffffd3da976bafc0 x6 : 0000000000000012
[ 148.994263] x5 : ffff0000f7ada948 x4 : 0000000000000000 x3 : 0000000000000005
[ 148.994272] x2 : ffff0000c1b82080 x1 : ffff0000c1b82080 x0 : ffff000084517a30
[ 148.994282] Call trace:
[ 148.994285] vb2_start_streaming+0xe0/0x17c [videobuf2_common] (P)
[ 148.994298] vb2_core_streamon+0xd8/0x1bc [videobuf2_common]
[ 148.994308] vb2_streamon+0x18/0x60 [videobuf2_v4l2]
[ 148.994318] v4l2_m2m_ioctl_streamon+0x5c/0xa0 [v4l2_mem2mem]
[ 148.994330] v4l_streamon+0x24/0x30 [videodev]
[ 148.994362] __video_do_ioctl+0x340/0x3ec [videodev]
[ 148.994389] video_usercopy+0x2b0/0x74c [videodev]
[ 148.994415] video_ioctl2+0x18/0x34 [videodev]
[ 148.994441] v4l2_ioctl+0x40/0x60 [videodev]
[ 148.994467] __arm64_sys_ioctl+0xa4/0xf4
[ 148.994480] invoke_syscall.constprop.0+0x40/0xf0
[ 148.994495] el0_svc_common.constprop.0+0x38/0xd8
[ 148.994504] do_el0_svc+0x1c/0x28
[ 148.994513] el0_svc+0x34/0x104
[ 148.994525] el0t_64_sync_handler+0xa0/0xe4
[ 148.994534] el0t_64_sync+0x198/0x19c
[ 148.994543] ---[ end trace 0000000000000000 ]---
This is much better than the previous venus patchset where accessing the
hardware decoding would cause the machine to hard reset at least!
-- steev
next prev parent reply other threads:[~2026-03-27 16:46 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-12 15:14 [PATCH v4 0/6] media: iris: enable SM8350 and SC8280XP support Dmitry Baryshkov
2026-03-12 15:14 ` [PATCH v4 1/6] media: dt-bindings: Document SC8280XP/SM8350 Iris Dmitry Baryshkov
2026-03-13 7:55 ` Krzysztof Kozlowski
2026-03-13 8:14 ` Dmitry Baryshkov
2026-03-13 8:25 ` Krzysztof Kozlowski
2026-03-13 16:04 ` Dmitry Baryshkov
2026-03-12 15:14 ` [PATCH v4 2/6] arm64: dts: qcom: sc8280xp: sort reserved memory regions Dmitry Baryshkov
2026-03-12 15:14 ` [PATCH v4 3/6] arm64: dts: qcom: sc8280xp: Add Iris core Dmitry Baryshkov
2026-03-13 12:31 ` Konrad Dybcio
2026-03-12 15:14 ` [PATCH v4 4/6] arm64: dts: qcom: sc8280xp-x13s: Enable Iris Dmitry Baryshkov
2026-03-12 15:14 ` [PATCH v4 5/6] arm64: dts: qcom: sm8350: add Iris device Dmitry Baryshkov
2026-03-13 12:32 ` Konrad Dybcio
2026-03-12 15:14 ` [PATCH v4 6/6] arm64: dts: qcom: sm8350-hdk: enable Iris core Dmitry Baryshkov
2026-03-13 12:30 ` Konrad Dybcio
2026-03-27 16:46 ` Steev Klimaszewski [this message]
2026-03-27 21:09 ` [PATCH v4 0/6] media: iris: enable SM8350 and SC8280XP support Dmitry Baryshkov
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=20260327164651.45628-1-threeway@gmail.com \
--to=threeway@gmail.com \
--cc=abhinav.kumar@linux.dev \
--cc=andersson@kernel.org \
--cc=bod@kernel.org \
--cc=bryan.odonoghue@linaro.org \
--cc=conor+dt@kernel.org \
--cc=david@ixit.cz \
--cc=devicetree@vger.kernel.org \
--cc=dikshita.agarwal@oss.qualcomm.com \
--cc=dmitry.baryshkov@oss.qualcomm.com \
--cc=johan+linaro@kernel.org \
--cc=konrad.dybcio@oss.qualcomm.com \
--cc=konradybcio@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=mchehab@kernel.org \
--cc=robh@kernel.org \
--cc=stanimir.varbanov@linaro.org \
--cc=vikash.garodia@oss.qualcomm.com \
/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