Re: [PATCH v9 00/21] media: i2c: add Maxim GMSL2/3 serializer and deserializer drivers
From: Martin Hecht
Date: Fri Mar 13 2026 - 04:35:38 EST
Hi Sakari, hi Dumitru,
I'm testing v8 already and will migrate next week to that version. Below some further comments.
On 3/11/26 08:58, Sakari Ailus wrote:
Hi Dumitru,
On Wed, Mar 11, 2026 at 09:17:12AM +0200, Dumitru Ceclan via B4 Relay wrote:
The following deserializers are supported:
* MAX96712 (already exists in staging)
* MAX96714 (already exists)
* MAX96714F (already exists)
* MAX96714R (GMSL2)
* MAX96716 (GMSL2)
* MAX96724 (already exists as part of existing MAX96712 driver)
* MAX96724F (GMSL2)
* MAX96724R (GMSL2)
* MAX9296A (GMSL2)
* MAX96792A (GMSL3)
The following serializers are supported:
* MAX96717 (already exists)
* MAX9295A (GMSL2)
* MAX96793 (GMSL3)
It'd be nice to have more reviews as well as comments from the users of the
existing drivers especially on how this works for them.
Are there differences in functionality or UAPI compared to the drivers
already in upstream?
Compared with the current mainline drivers from Julian (what offere a good basic functionality) there are a lot or more features enabled. One ov them is support for routing the channels as well as i2c-atr instead of i2c-gate only. Both helps to setup up more complex and reconfigurable routing of the video channels in complex systems with many sensors/cameras/streams.
Additionally a lot more and never devices are supported by that patchset including the new GMSL3 devices what are also backward compatible to GMSL2.
Both link types are supported now. Generation of test patterns in pixel mode has been added.
Also log-status returns a lot of very useful information about the link mode (tunnel mode versus pixel mode) and potential errors / packet losses over cable by presenting the counter registers. That helps to monitor the quality and reliability of the GMSL links as well as CSI links.
...
The following v4l2-compliance test still fails:
fail: v4l2-test-subdevs.cpp(371): fmt.code == 0 || fmt.code == ~0U
fail: v4l2-test-subdevs.cpp(418): checkMBusFrameFmt(node, fmt.format)
test Active VIDIOC_SUBDEV_G/S_FMT: FAIL
Could you post the full report here, please?
BR Martin