2321729_en-US

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

2321729_en-US

2321729_en-US

i.MX93 RAW10 capture issue – only first line valid (IMX219 + ISI)

Hello,

I am currently debugging a RAW capture issue on i.MX93 (FRDM-iMX93) using a Sony IMX219 sensor and would appreciate any guidance on how to further debug or resolve this problem.

Setup:

  • SoC: i.MX93

  • Sensor: IMX219

  • Format: RAW10 (SRGGB10_1X10)

  • Capture via mxc-isi → /dev/video0

  • Kernel: 6.12.20 (NXP BSP based)

Media topology:

The media graph looks correct and all links are enabled. The active pipeline is:

Device topology

  • entity 1: crossbar (3 pads, 3 links, 1 route)
    type V4L2 subdev subtype Unknown flags 0
    device node name /dev/v4l-subdev0
    routes:
    0/0 to 2/0 [ACTIVE]
    pad0: SINK, MUST_CONNECT
    stream 0 format SRGGB10_1X10 3280x2464 field none
    connected from csidev-4ae00000.csi pad1
    pad1: SINK, MUST_CONNECT
    connected from mxc_isi.output pad0
    pad2: SOURCE
    stream 0 format SRGGB10_1X10 3280x2464 field none
    connected to mxc_isi.0 pad0

  • entity 5: mxc_isi.0 (2 pads, 2 links, 0 routes)
    type V4L2 subdev subtype Unknown flags 0
    device node name /dev/v4l-subdev1
    pad0: SINK
    stream 0 format SRGGB10_1X10 3280x2464 field none
    compose bounds 0,0 3280x2464
    compose 0,0 3280x2464
    connected from crossbar pad2
    pad1: SOURCE
    stream 0 format SRGGB10_1X10 3280x2464 field none
    crop bounds 0,0 3280x2464
    crop 0,0 3280x2464
    connected to mxc_isi.0.capture pad0

  • entity 8: mxc_isi.0.capture (1 pad, 1 link)
    type Node subtype V4L flags 0
    device node name /dev/video0
    pad0: SINK
    connected from mxc_isi.0 pad1

  • entity 16: mxc_isi.output (1 pad, 1 link)
    type Node subtype V4L flags 0
    pad0: SOURCE
    connected to crossbar pad1

  • entity 23: csidev-4ae00000.csi (2 pads, 2 links, 1 route)
    type V4L2 subdev subtype Unknown flags 0
    device node name /dev/v4l-subdev2
    routes:
    0/0 to 1/0 [ACTIVE]
    pad0: SINK
    stream 0 format SRGGB10_1X10 3280x2464 field none
    connected from imx219 2-0010 pad0
    pad1: SOURCE
    stream 0 format SRGGB10_1X10 3280x2464 field none
    connected to crossbar pad0

  • entity 28: imx219 2-0010 (1 pad, 1 link, 0 routes)
    type V4L2 subdev subtype Sensor flags 0
    device node name /dev/v4l-subdev3
    pad0: SOURCE
    stream 0 format SRGGB10_1X10 3280x2464
    colorspace raw, full-range
    crop bounds 8,8 3280x2464
    crop 8,8 3280x2464
    connected to csidev-4ae00000.csi pad0

Streaming starts successfully and runs at about 15 fps.

Capture command used:

v4l2-ctl -d /dev/video0
--set-fmt-video=width=3280,height=2464,pixelformat=RG10
--stream-mmap --stream-count=1 --stream-to=raw10.raw

Streaming to /dev/null also works and reports approximately 15.00 fps.

Issue description:

This is the RAW frame I captured. Although streaming succeeds, the dumped RAW image contains valid data only in the first line. The rest of the frame appears invalid or constant.

This behavior is consistent across multiple captures.

Questions:

  1. Are there any known issues on i.MX93 ISI when capturing RAW formats (especially RAW10) where only the first line is written correctly?

  2. Could this be related to:

    • Bytes-per-line or stride mismatch?

    • CSI-2 packet handling such as line length or short packets?

    • ISI RAW packing or memory write configuration?

  3. Are there recommended debug points such as registers, trace events, or driver logs in:

    • CSI-2 RX

    • ISI

    • Crossbar

that could help identify why only one line is captured correctly?

Any hints, references, or similar experiences would be very helpful.

Thank you in advance for your support.

Best regards,
Minh

Re: i.MX93 RAW10 capture issue – only first line valid (IMX219 + ISI)

Hello,

You're successfully hitting 15 fps, the CSI-2 receiver is seeing the Start and End of Frame packets, but the ISI is likely discarding the rest of the payload because the line length doesn't match the programmed width or the 32-byte alignment requirements of the NXP DMA engine. Check your byte CareCredit com sperline calculation for RAW10—if the ISI is expecting a specific packing format and gets a different byte count, it often stops writing to memory after the first line to prevent buffer corruption. I’d recommend checking the CSI-2 RX error registers for CRC/ECC flags and ensuring the ISI is in full bypass mode, as any attempt at internal color processing on RAW10 will cause the pipeline to stall or misbehave.

Re: i.MX93 RAW10 capture issue – only first line valid (IMX219 + ISI)

it seems you capture resolution bigger than 2k, how about capturing 1080P? if you need capture resolution bigger than 2k, you need change the ISI driver about chain buffer

标记 (1)
无评分
版本历史
最后更新:
‎04-04-2026 02:30 AM
更新人: