[PATCH v16 00/22] media: i2c: add Maxim GMSL2/3 serializer and deserializer drivers

Dumitru Ceclan via B4 Relay posted 22 patches 3 weeks, 5 days ago
There is a newer version of this series
.../bindings/media/i2c/maxim,max9296a.yaml         |  242 ++
.../bindings/media/i2c/maxim,max96712.yaml         |   74 +-
.../bindings/media/i2c/maxim,max96714.yaml         |    5 +-
.../bindings/media/i2c/maxim,max96717.yaml         |  163 +-
.../userspace-api/media/mediactl/media-types.rst   |    9 +
MAINTAINERS                                        |   10 +-
arch/arm64/configs/defconfig                       |    1 -
drivers/media/i2c/Kconfig                          |   34 +-
drivers/media/i2c/Makefile                         |    3 +-
drivers/media/i2c/max96714.c                       | 1017 ------
drivers/media/i2c/max96717.c                       | 1104 -------
drivers/media/i2c/maxim-serdes/Kconfig             |   63 +
drivers/media/i2c/maxim-serdes/Makefile            |    6 +
drivers/media/i2c/maxim-serdes/max9296a.c          | 1461 +++++++++
drivers/media/i2c/maxim-serdes/max96717.c          | 1703 ++++++++++
drivers/media/i2c/maxim-serdes/max96724.c          | 1339 ++++++++
drivers/media/i2c/maxim-serdes/max_des.c           | 3354 ++++++++++++++++++++
drivers/media/i2c/maxim-serdes/max_des.h           |  157 +
drivers/media/i2c/maxim-serdes/max_ser.c           | 2210 +++++++++++++
drivers/media/i2c/maxim-serdes/max_ser.h           |  147 +
drivers/media/i2c/maxim-serdes/max_serdes.c        |  413 +++
drivers/media/i2c/maxim-serdes/max_serdes.h        |  181 ++
drivers/media/mc/mc-entity.c                       |   15 +-
drivers/staging/media/Kconfig                      |    2 -
drivers/staging/media/Makefile                     |    1 -
drivers/staging/media/max96712/Kconfig             |   13 -
drivers/staging/media/max96712/Makefile            |    2 -
drivers/staging/media/max96712/max96712.c          |  487 ---
include/uapi/linux/media.h                         |    1 +
29 files changed, 11530 insertions(+), 2687 deletions(-)
[PATCH v16 00/22] media: i2c: add Maxim GMSL2/3 serializer and deserializer drivers
Posted by Dumitru Ceclan via B4 Relay 3 weeks, 5 days ago
This series adds new drivers for multiple Maxim GMSL2 and GMSL3 devices,
replacing the few GMSL2 drivers already in upstream, and introducing a
common framework that can be used to implement such GMSL chips, which
avoids code duplication while also adding support for previously
unsupported features.

While the normally acceptable and polite way would be to extend the
current mainline drivers, the choice was made here to add a totally new
set of drivers. The current drivers support only a small subset of the
possible features, and only a few devices, so the end result after
extending them would in any case be essentially fully rewritten, new
drivers.

This series depends on support for internal pads, for which a patch has
been added.

The previous version is at:
v15: https://lore.kernel.org/r/20260807-gmsl2-3_serdes-v15-0-7212e9e5156a@analog.com

Since the previous series, Cosmin has left Analog Devices.
Because included changes from previous version are trivial, his sign-off
and tags were retained.

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)

The following list enumerates new features that are supported by the
common framework and their respective chip-specific drivers:
* Full Streams API support. Most deserializers have support for more
than one link, and more than one PHY. Streams support allows
configuration of routing between these links and PHYs.

* .get_frame_desc() support. Both the serializers and deserializers
implement this to query and provide frame descriptor data. This is
used in features explained in-depth below.

* .get_mbus_config() support. The deserializers implement this to allow
upstream devices to query the link frequency of its pads.

* Address translation with I2C ATR for the serializers.

* I2C ATR translation - some deserializers cannot do muxing since I2C
communication channel masking is not available per-link, and the only
other way to select links is to turn them off, causing link resets.
For such cases, I2C ATR is used to change the address of the
serializers at probe time.

* Automatic GMSL link version negotiation between GMSL3, GMSL2 6Gbps, GMSL2
3Gbps.

* Automatic stream id selection for deserializers which need serializers to
stream on unique stream ids.

* Automatic VC remapping on the deserializers. VCs are picked so that
if they were unique on the sink pad, they will end up as unique on
the source pad they are routed to too, prioritizing using the same
VC ID as the sink pad, to facilitate the possibility of using tunnel
mode.

* Automatic pixel mode / tunnel mode selection. Tunnel mode is used
when VC IDs do not need to be changed and all hardware supports
tunnel mode, otherwise, pixel mode is used. The serializers are
automatically switched between the two by using a private API.

* Automatic double mode selection. In pixel mode, double mode can be
used to pack two pixels into a single data unit, optimizing bandwidth
usage. The serializers are automatically set up to support the double
modes determined by the deserializers using a private API.

* Automatic data padding. In pixel mode, if the data being transferred
uses two different BPPs, data needs to be padded. The serializers
automatically set this up depending on the configured double mode
settings and incoming data types.

* Logging. Both the deserializers and serializers implement the V4L2
.log_status() ops to allow debugging of the internal state and
important chip status registers.

* PHY modes. Deserializer chips commonly have more than a single PHY.
The firmware ports are parsed to determine the modes in which to
configure the PHYs (2x4, 4x2, 1x4+2x2, 2x2+1x4, and variations using
fewer lanes).

* Serializer pinctrl. Serializers implement pinctrl to allow setting
configs which would otherwise be inaccessible through GPIO: TX/RX via
GMSL link, pull-up & pull-down (with strength), open-drain &
push-pull, slew rate, RCLK pin selection.

* TPG with selectable formats, resolutions and framerates for both
serializers and deserializers.

The drivers have been tested on the following hardware combinations, but
further testing is welcome to ensure no / minimal breakage:
* Raspberry Pi 5 + MAX9296A + 2xMAX96717 + 2xIMX219
* Raspberry Pi 5 + MAX96714 + 1xMAX96717 + 1xIMX219
* Raspberry Pi 5 + MAX96716A + 2xMAX96717 + 2xIMX219
* Raspberry Pi 5 + MAX96712 + 4xMAX96717 + 4xIMX219
* Raspberry Pi 5 + MAX96724 + 4xMAX96717 + 4xIMX219
* Raspberry Pi 5 + MAX96792A + 1xMAX96793 + 1xMAX96717 + 2xIMX219
* Raspberry Pi 5 + MAX96792A + 2xMAX96717 + 2xIMX219
* Renesas V4H + MAX96712 + 2xMAX96717 + 2xIMX219

Analog Devices is taking responsibility for the maintenance of these
drivers and common framework, and plans to add support for new
broad-market chips on top of them.

Special thanks go to Tomi Valkeinen <
tomi.valkeinen+renesas@ideasonboard.com>
for testing the drivers, helping debug and coming up with ideas /
implementations for various features.

V16:
* reorder the driver patches so each removal precedes its replacement,
  keeping the series bisectable

* dt-bindings: max96717: restrict slew-rate to the pins that have a slew
  rate control field (MFP0-MFP4, MFP7, MFP8)

max_ser:
* reject endpoints declaring zero data lanes
* revert the pipe mode through the driver op directly on the error path,
  the wrapper made it a no-op
* clear priv->atr on teardown and reuse max_ser_i2c_atr_deinit on the
  adapter registration error path
* clear source->sd when media link creation fails

max_des:
* reject endpoints declaring zero data lanes
* handle 10-bit and 12-bit double modes in max_des_get_pipe_mode()
* guard every .select_links() call, warn on failure
* skip link selection in max_des_i2c_mux_select for single-link
  deserializers
* match serializers probing synchronously from i2c_mux_add_adapter in the
  I2C bus notifier, before link->adapter is assigned
* reject deserializers declaring no GMSL version, and only require
  .set_link_version() when more than one version is supported
* return -ENOENT when no serializer version matches
* fix swapped bus_type/pad arguments in the unsupported bus-type message
* fix .select_link_version typos in probe error messages

max96717:
* set REFGEN_PREDEF_EN when configuring the reference clock generator
* use default_value 1 for maxim,jitter-compensation
  fails the u32 read and falls back to the default, so 0 cleared the bit
* skip the default RCLKOUT mux in max96717_register_clkout if pinctrl
  already routed it

max96724:
* poll the per-link LOCKED bits after link selection instead of sleeping
  60ms, allowing up to 200ms

max9296a:
* poll the LOCKED bits after link selection instead of sleeping 200ms,
  using per-link status on MAX96716A and MAX96792A
* fix the PATGEN checkerboard mode encoding
* set BACKTOP30 W_FRAME to hold off MIPI packet requests until frame
  start, so the first frame out of the line buffer is whole
* skip initial and periodic deskew on C-PHY
* use max9296a_pipe_id when selecting the TPG clock source
* rename max9626a_log_pipe_status to max9296a_log_pipe_status
* describe the part as a dual GMSL2/3 deserializer, not quad

V15:
* fix git diff context for patches 20,21

V14:
dt-bindings:
* max96712: add default to maxim,control-channel-port

max_ser:
* goto out_unlock on ops->log_status failure in max_ser_log_status
* put i2c-gate fwnode in max_ser_i2c_adapter_deinit
* put source ep_fwnode handles on probe error paths and in max_ser_remove
* unregister subdev before notifier in max_ser_v4l2_unregister
* return -ETIMEDOUT instead of 0 on timeout in max_ser_wait_for_multiple
* pass numerator and denominator in the right order to
  max_ser_find_tpg_entry in max_ser_set_frame_interval
* stop filtering on the output-only interval in max_ser_enum_frame_interval

max_des:
* hold active state lock in max_des_log_status
* put source ep_fwnode handles on probe error paths and in max_des_remove
* clear source->ep_fwnode after putting it in
  max_des_parse_sink_dt_endpoint
* keep disabling remaining POC supplies after a failure in
  max_des_update_pocs
* unregister notifier before deleting adapters and clear link->adapter in
  max_des_i2c_mux_deinit
* restore the enabled link mask on all exit paths in
  max_des_ser_attach_addr
* add max_des_enabled_links_mask helper
* skip PHYs without hardware data lanes when picking the unused PHY
* pass numerator and denominator in the right order to
  max_des_find_tpg_entry in max_des_set_frame_interval
* stop filtering on the output-only interval in max_des_enum_frame_interval
* join split quoted string in max_des_populate_mode_context
* fix unsed / unampped typos

max96724:
* only alias PHY 1 onto PHY 0 when it has no data lanes of its own in
  max96724_phy_id

V13:
max_serdes:
* fix NULL check on source pointer, check source->sd instead
* copy old streams_masks before applying deltas to preserve unaffected pads

max_ser:
* drop get_mbus_config from commit message
* zero-initialize frame descriptor in max_ser_route_to_hw
* return early after WARN_ON in max_ser_i2c_atr_detach_addr
* clean up ATR on i2c_atr_add_adapter failure
* put fwnode after truthiness check in max_ser_i2c_adapter_init
* free ctrl_handler in max_ser_v4l2_unregister
* put ep fwnode when fwnode_graph_get_remote_endpoint fails
* hold active state lock in max_ser_log_status
* add bounds check in max_ser_get_pipe_vcs_dts
* guard against bpps=0 before __ffs/__fls in max_ser_get_pipe_mode

max_des:
* zero-initialize frame descriptor in max_des_route_to_hw
* validate stream_id before indexing stack array
* check vc_remaps pointer instead of count before devm_kfree
* goto err_add_adapters on select_links failure in max_des_i2c_atr_init
* fix notifier chan_id mapping for sparse links by matching adapter pointer
* initialize fd->num_entries in max_des_get_frame_desc_state
* goto err_free_streams_masks on set_vc_remaps failure
* clear source->sd on media_create_pad_link failure
* roll back enabled regulators on partial enable failure
* put source ep_fwnode handles in max_des_v4l2_unregister
* use HZ_PER_MHZ for link frequency constants
* change link_frequency from s64 to u64

max96717:
* add missing VIDEO_DEV Kconfig dependency
* move OUTPUT_ENABLE/INPUT_ENABLE to value-returning case block
* use dev_dbg instead of dev_warn in max96717_clk_determine_rate

max96724:
* add missing VIDEO_DEV Kconfig dependency
* fix BIT(p) to BIT((p) % 4) in MAX96724_BACKTOP32_BPP12
* use u64 for dpll_freq to avoid truncation
* skip absorbed PHYs in max96724_set_phy_enable
* use devm_add_action_or_reset for power-off cleanup
* fix PHY standby bit comment to match actual bit positions

max9296a:
* add missing VIDEO_DEV Kconfig dependency
* use stream_id parameter instead of pipe->stream_id
* use devm_add_action_or_reset for power-off cleanup
* add missing .set_pipe_link to max96792a_ops

V12:
* max_serdes: drop custom field_get/prep custom macros
* max96717: use new clock ops function determine_rate()
* fix git diff context for patches 20-22

V11:
* max96724: preserve cc_port_cfg in select_links()

V10:
* dt-bindings: add control-channel property
* max96724: add configurable control-channel port selection
* max-ser/max-des: fix VIDIOC_SUBDEV_G/S_FMT, detect ~0U format
 (v4l2-test-subdevs.cpp:448: s_fmt.format.code == ~0U)
* max-ser/max-des: fix VIDIOC_SUBDEV_G/S_FRAME_INTERVAL fail:
	 add max_(ser/des)_get_frame_interval returning -ENOTTY
	for non-TPG pads and streams
 (v4l2-test-subdevs.cpp:302: node->enum_frame_interval_pad != (int)pad)

V9:
* split max_des_ops into *_info and *_ops
* use read_poll_timeout macro in *_wait_for_device()
* return read_poll_timeout error -ETIMEDOUT in *_wait_for_device()
* remove use_atr duplicate from max9296a_chip_info, present in max_des_info
* fix max9296a DPLL register offset
* fix C-PHY DPLL frequency in max9296a and max96724
    reported by: Cory Keitz <ckeitz@amazon.com>
* use MAX9296A_COMMON_INFO and MAX9296A_COMMON_OPS to simplify
  probe ops init
* fix borked patches in previous version, actually remove MAX96717 and
  MAX96714 drivers

V8:
* max96717: use the renamed PIN_CONFIG_OUTPUT to _LEVEL
* max96717: use the renamed set_rv ops from struct gpio_chip
* dt-bindings: set minItems lane-polarities to 2
* dt-bindings: "add myself as maintainer" commits were removed
* max_des & max_ser: use a default format for set_routing
* max_des & max_ser: return ENNOTTY in *_frame_interval for non-TPG pads

V7:
* dt-bindings: max9296a: use full max96717 compatible
* max9296a: make max96714_rlms_reg_sequence static
* explicitly include linux/bitfield.h
* explicitly depend on I2C and PINCTRL
* sort media_entity_operations
* add has_pad_interdep to media_entity_operations

V6:
* max9296a: put rlms sequence in max9296a_chip_info
* max_des: reflow stream id a comment
* max_ser: remove exported symbols not used in other modules
* max_ser: init mode to a supported value
* add default routing
* MAX_SERDES_GMSL_3 -> MAX_SERDES_GMSL_3_12GBPS
* guard reg_read/write with CONFIG_VIDEO_ADV_DEBUG
* put exported symbols in MAXIM_SERDES namespace

V5:
* dt-bindings: max96717: restrict RCLKOUT to pins 2 & 4
* dt-bindings: max96717: remove confusing rclksel pinconf property
* dt-bindings: max96717: remove maxim,gmsl-tx/rx pinconf property
* dt-bindings: max96717: remove gmsl prefix from maxim,gmsl-tx-id/rx-id
* dt-bindings: max96717: remove minimum: 0
* dt-bindings: max96717: better document slew-rate
* dt-bindings: max96717: better document maxim,jitter-compensation
* dt-bindings: max96717: better document maxim,tx-id/rx-id

* max_serdes: add default TPG values
* max_serdes: remove MAX_MIPI_FMT macro
* max_serdes: EXPORT_SYMBOL -> EXPORT_SYMBOL_GPL
* max_serdes: remove EXPORT_SYMBOL_GPL from symbols not used in other
modules
* max_serdes: rename symbols/macros/types to have max_serdes prefix
* max_serdes: slim down TPG functions

* max_des: fix may be used uninitialized errors
* max_des: fix misplaced TPG validation
* max_des: fix setting pipe PHY in tunnel mode for chips that support
both set_pipe_phy() and set_pipe_tunnel_phy()
* max_des: move doubled_bpp/sink_bpps variables to usage place
* max_des: do not dynamically control PHY enable, letting lanes be in
LP-11 when not streaming
* max_des: refactor get/set_pipe_stream_id() logic
* max_des: remove explicit ret = 0

* max_ser: make VC remaps not pipe-specific, allocate dynamically

* max9296a: add missing 1080p30 TPG entry
* max9296a: move BIT() left shift into macro
* max9296a: move BIT() ternary into macro
* max9296a: reuse max_des_ops for chip-specific ops\
* max9296a: document and compress RLMS register writes

* max96717: restrict RCLKOUT to pins 2 & 4 because of hardware
capabilities
* max96717: add support for XTAL/1, XTAL/2, XTAL/4 clocks
* max96717: set RX_EN/TX_EN automatically
* max96717: reorder custom pinconf flags
* max96717: drop OF dependency

* drop of_match_ptr
* re-do some indentation
* implement TPG pattern control
* remove pr_info() usage
* inline lane polarity val = 0
* inline returns
* rewrite some Kconfig docs
* split up patches for easier review

V4:
* max_des: fix infinite version loop
* max_des: fix pipe link id when there are more pipes than links
* max_des: implement setting pipe link
* max_des: do not pass routing to phy update
* max_des: move GMSL version strings to max_serdes
* max_des: split finding existing VC remap from adding a new one
* max_des: add tracking for in-use pipes
* max_des: skip unused pipes when finding / setting pixel/tunnel mode
* max_des: simplify remap code
* max_des: split set_pipe_phy() into set_pipe_tunnel_phy()

* max_ser: clean up i2c_xlates printing
* max_ser: fix changing serializer address
* max_ser: move non-continuous mode check into max96717 driver

* max96724: use regmap_set_bits for STREAM_SEL_ALL
* max96724: match surrounding indent for MAX96724_PHY1_ALT_CLOCK
* max96724: fix setting invalid PHY to 1 when PHY 0 is in 4-lane mode
* max96724: remove support for setting pipe phy from max96712
* max96724: fix setting double mode on pipes 4-7
* max96724: drop powerdown gpios

* max96717: use gpio_chip's set_rv

* max9296a: switch versions to unsigned int
* max9296a: remove parantheses from MAX9296A_MIPI_PHY18/20
* max9296a: fix printing of PHY packet counts
* max9296a: fix phy_hw_ids size

* remove usage of cammel case in defines
* move field_get/prep to max_serdes.h
* rework stream id setup
* rework tunnel/pixel mode finding
* rework bpps retrieval
* pass whole subdev state around
* add helper for retrieving a route's hw components / frame desc
* update pipe enable based on active routes
* add support for tunnel-only chips and VC remaps in tunnel mode
* simplify max_get_streams_masks()
* add support for TPG

V3:
* dt-bindings: drop reflow text patches

* dt-bindings: max96717: move pinctrl configuration into main file
* dt-bindings: max96717: allow a single level of pins configuration
* dt-bindings: max96717: use regex for matching pins nodes
* dt-bindings: max96717: drop extra allOf in pinctrl configuration
* dt-bindings: max96717: fix i2c-atr channel name regex
* dt-bindings: max96717: limit pinctrl functions to gpio / rclkout
* dt-bindings: max96717: limit pins for gpio / rclkout
* dt-bindings: max96717: add description for bias-pull-up/down
* dt-bindings: max96717: require pins and function properties
* dt-bindings: max96717: turn single compatible strings into an enum

* dt-bindings: max9296a: include indices in port descriptions
* dt-bindings: max9296a: remove property-less schema from input ports
* dt-bindings: max9296a: use ATR for MAX96716A too, removing MUX entirely

* dt-bindings: max96712: include indices in port descriptions
* dt-bindings: max96712: deprecate enable-gpios in favor of powerdown-gpios
* dt-bindings: max96712: switch from MUX to ATR

* dt-bindings: max96714: add support for MAX96714R

* max_des: fix POC NULL check
* max_des: remove index var in POC enable
* max_des: fix writing empty remaps
* max_des: skip mode setting in tunnel mode
* max_des: remove a duplicate source->sd NULL check
* max_des: set pipe tunnel mode even for disabled links

* max_ser: apply TX ID changes irrespective of serializer ID

* max9296a: fix typo in BACKTOP22
* max9296a: make register macros more consistent
* max9296a: switch MAX96716 from MUX to ATR
* max9296a: deduplicate max9296a_phy_id() logic
* max9296a: use proper PHY id in remaps
* max9296a: fix DPLL reset clear
* max9296a: limit MAX96714F to GMSL2 3Gbps
* max9296a: add support for MAX96714R
* max9296a: do not write GMSL3 link select registers in GMSL2 devices
* max9296a: use field_prep when setting RX_RATE
* max9296a: simplify setting SEL_STREAM for MAX96714
* max9296a: max96716_set_pipe_phy -> max96716a_set_pipe_phy
* max9296a: fix off-by-one in lane polarity when using
polarity_on_physical_lanes

* max96724: fix typo in BACKTOP22
* max96724: switch from MUX to ATR
* max96724: add support for powerdown GPIO
* max96724: remove support for tunneling from MAX96712
* max96724: only set tunnel-related bits when in tunnel mode
* max96724: add support for MAX96724F/R
* max96724: oneshot reset links after link selection

* remove GMSL2 version defaults, set all supported versions explicitly
* reorder GMSL versions to start from 0
* add support for GMSL2 3Gbps
* support GMSL version finding for devices using MUX / GATE
* add support for deserializers which don't have individual control
of each link's GMSL version
* add support for deserializers that need unique stream ids across all
serializers
* select_link_version -> set_link_version
* select_resets_link -> use_atr

V2:
* add missing compatible for MAX96717F
* fix embarrassing dt-bindings mistakes
* move MAX9296A/MAX96716/MAX96792A to a separate file as they have two
links / PHYs, and adding those conditionally seems impossible

Tested-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
Signed-off-by: Dumitru Ceclan <dumitru.ceclan@analog.com>
---
To: Tomi Valkeinen <tomi.valkeinen+renesas@ideasonboard.com>
To: Mauro Carvalho Chehab <mchehab@kernel.org>
To: Sakari Ailus <sakari.ailus@linux.intel.com>
To: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
To: Julien Massot <julien.massot@collabora.com>
To: Rob Herring <robh@kernel.org>
To: Niklas Söderlund <niklas.soderlund@ragnatech.se>
To: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: mitrutzceclan@gmail.com
Cc: linux-media@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: devicetree@vger.kernel.org
Cc: linux-staging@lists.linux.dev
Cc: linux-gpio@vger.kernel.org
Cc: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Cc: Martin Hecht <Martin.Hecht@avnet.eu>
Cc: Andrian Suciu <Adrian.Suciu@analog.com>

---
Cosmin Tanislav (20):
      dt-bindings: media: i2c: max96717: add support for I2C ATR
      dt-bindings: media: i2c: max96717: add support for pinctrl/pinconf
      dt-bindings: media: i2c: max96717: add support for MAX9295A
      dt-bindings: media: i2c: max96717: add support for MAX96793
      dt-bindings: media: i2c: max96712: use pattern properties for ports
      dt-bindings: media: i2c: max96712: add support for I2C ATR
      dt-bindings: media: i2c: max96712: add support for POC supplies
      dt-bindings: media: i2c: max96712: add support for MAX96724F/R
      dt-bindings: media: i2c: max96714: add support for MAX96714R
      dt-bindings: media: i2c: add MAX9296A, MAX96716A, MAX96792A
      media: i2c: add Maxim GMSL2/3 serializer and deserializer framework
      media: i2c: add Maxim GMSL2/3 serializer framework
      media: i2c: add Maxim GMSL2/3 deserializer framework
      media: i2c: remove MAX96717 driver
      media: i2c: maxim-serdes: add MAX96717 driver
      arm64: defconfig: disable deprecated MAX96712 driver
      staging: media: remove MAX96712 driver
      media: i2c: maxim-serdes: add MAX96724 driver
      media: i2c: remove MAX96714 driver
      media: i2c: maxim-serdes: add MAX9296A driver

Dumitru Ceclan (1):
      dt-bindings: media: i2c: max96712: add control-channel-port property

Sakari Ailus (1):
      media: mc: Add INTERNAL pad flag

 .../bindings/media/i2c/maxim,max9296a.yaml         |  242 ++
 .../bindings/media/i2c/maxim,max96712.yaml         |   74 +-
 .../bindings/media/i2c/maxim,max96714.yaml         |    5 +-
 .../bindings/media/i2c/maxim,max96717.yaml         |  163 +-
 .../userspace-api/media/mediactl/media-types.rst   |    9 +
 MAINTAINERS                                        |   10 +-
 arch/arm64/configs/defconfig                       |    1 -
 drivers/media/i2c/Kconfig                          |   34 +-
 drivers/media/i2c/Makefile                         |    3 +-
 drivers/media/i2c/max96714.c                       | 1017 ------
 drivers/media/i2c/max96717.c                       | 1104 -------
 drivers/media/i2c/maxim-serdes/Kconfig             |   63 +
 drivers/media/i2c/maxim-serdes/Makefile            |    6 +
 drivers/media/i2c/maxim-serdes/max9296a.c          | 1461 +++++++++
 drivers/media/i2c/maxim-serdes/max96717.c          | 1703 ++++++++++
 drivers/media/i2c/maxim-serdes/max96724.c          | 1339 ++++++++
 drivers/media/i2c/maxim-serdes/max_des.c           | 3354 ++++++++++++++++++++
 drivers/media/i2c/maxim-serdes/max_des.h           |  157 +
 drivers/media/i2c/maxim-serdes/max_ser.c           | 2210 +++++++++++++
 drivers/media/i2c/maxim-serdes/max_ser.h           |  147 +
 drivers/media/i2c/maxim-serdes/max_serdes.c        |  413 +++
 drivers/media/i2c/maxim-serdes/max_serdes.h        |  181 ++
 drivers/media/mc/mc-entity.c                       |   15 +-
 drivers/staging/media/Kconfig                      |    2 -
 drivers/staging/media/Makefile                     |    1 -
 drivers/staging/media/max96712/Kconfig             |   13 -
 drivers/staging/media/max96712/Makefile            |    2 -
 drivers/staging/media/max96712/max96712.c          |  487 ---
 include/uapi/linux/media.h                         |    1 +
 29 files changed, 11530 insertions(+), 2687 deletions(-)
---
base-commit: 7afaff660cd61e00ababfc3f7fe7b14f35869b18
change-id: 20251107-gmsl2-3_serdes-3f2b885209c3

Best regards,
-- 
Dumitru Ceclan <dumitru.ceclan@analog.com>


Re: [PATCH v16 00/22] media: i2c: add Maxim GMSL2/3 serializer and deserializer drivers
Posted by Niklas Söderlund 3 weeks, 5 days ago
Hello,

Thanks for  your continued effort pushing this work forward!

On 2026-08-31 16:21:19 +0300, Dumitru Ceclan via B4 Relay wrote:
> This series adds new drivers for multiple Maxim GMSL2 and GMSL3 devices,
> replacing the few GMSL2 drivers already in upstream, and introducing a
> common framework that can be used to implement such GMSL chips, which
> avoids code duplication while also adding support for previously
> unsupported features.
> 
> While the normally acceptable and polite way would be to extend the
> current mainline drivers, the choice was made here to add a totally new
> set of drivers. The current drivers support only a small subset of the
> possible features, and only a few devices, so the end result after
> extending them would in any case be essentially fully rewritten, new
> drivers.
> 
> This series depends on support for internal pads, for which a patch has
> been added.

It also depends on enabling the streams API right? At least I need to do 
so to be able to use the TPG. Out of curiosity do you know the plan to 
enable it by default upstream?

> The drivers have been tested on the following hardware combinations, 
> but
> further testing is welcome to ensure no / minimal breakage:
> * Raspberry Pi 5 + MAX9296A + 2xMAX96717 + 2xIMX219
> * Raspberry Pi 5 + MAX96714 + 1xMAX96717 + 1xIMX219
> * Raspberry Pi 5 + MAX96716A + 2xMAX96717 + 2xIMX219
> * Raspberry Pi 5 + MAX96712 + 4xMAX96717 + 4xIMX219
> * Raspberry Pi 5 + MAX96724 + 4xMAX96717 + 4xIMX219
> * Raspberry Pi 5 + MAX96792A + 1xMAX96793 + 1xMAX96717 + 2xIMX219
> * Raspberry Pi 5 + MAX96792A + 2xMAX96717 + 2xIMX219
> * Renesas V4H + MAX96712 + 2xMAX96717 + 2xIMX219

I tested the TPG on Renesas V3U + MAX96712 and it works as just as good 
or better then the staging driver this work makes obsolete.

-- 
Kind Regards,
Niklas Söderlund
Re: [PATCH v16 00/22] media: i2c: add Maxim GMSL2/3 serializer and deserializer drivers
Posted by Ceclan Dumitru 3 weeks, 4 days ago

On 8/31/26 8:03 PM, Niklas Söderlund wrote:
> Hello,
> 
> Thanks for  your continued effort pushing this work forward!
> 
> On 2026-08-31 16:21:19 +0300, Dumitru Ceclan via B4 Relay wrote:
>> This series adds new drivers for multiple Maxim GMSL2 and GMSL3 devices,
>> replacing the few GMSL2 drivers already in upstream, and introducing a
>> common framework that can be used to implement such GMSL chips, which
>> avoids code duplication while also adding support for previously
>> unsupported features.
>>
>> While the normally acceptable and polite way would be to extend the
>> current mainline drivers, the choice was made here to add a totally new
>> set of drivers. The current drivers support only a small subset of the
>> possible features, and only a few devices, so the end result after
>> extending them would in any case be essentially fully rewritten, new
>> drivers.
>>
>> This series depends on support for internal pads, for which a patch has
>> been added.
> 
> It also depends on enabling the streams API right? At least I need to do 
> so to be able to use the TPG. Out of curiosity do you know the plan to 
> enable it by default upstream?
> 

I do not know when default enable is planned, but series could make it
so VIDEO_MAXIM_SERDES selection causes v4l2_subdev_enable_streams_api=1.
  I am not sure that such a hack would be acceptable by Sakari or
upstream in general.

>> The drivers have been tested on the following hardware combinations, 
>> but
>> further testing is welcome to ensure no / minimal breakage:
>> * Raspberry Pi 5 + MAX9296A + 2xMAX96717 + 2xIMX219
>> * Raspberry Pi 5 + MAX96714 + 1xMAX96717 + 1xIMX219
>> * Raspberry Pi 5 + MAX96716A + 2xMAX96717 + 2xIMX219
>> * Raspberry Pi 5 + MAX96712 + 4xMAX96717 + 4xIMX219
>> * Raspberry Pi 5 + MAX96724 + 4xMAX96717 + 4xIMX219
>> * Raspberry Pi 5 + MAX96792A + 1xMAX96793 + 1xMAX96717 + 2xIMX219
>> * Raspberry Pi 5 + MAX96792A + 2xMAX96717 + 2xIMX219
>> * Renesas V4H + MAX96712 + 2xMAX96717 + 2xIMX219
> 
> I tested the TPG on Renesas V3U + MAX96712 and it works as just as good 
> or better then the staging driver this work makes obsolete.
> 
Re: [PATCH v16 00/22] media: i2c: add Maxim GMSL2/3 serializer and deserializer drivers
Posted by Tomi Valkeinen 3 weeks, 4 days ago
Hi,

On 01/09/2026 10:39, Ceclan Dumitru wrote:
> 
> 
> On 8/31/26 8:03 PM, Niklas Söderlund wrote:
>> Hello,
>>
>> Thanks for  your continued effort pushing this work forward!
>>
>> On 2026-08-31 16:21:19 +0300, Dumitru Ceclan via B4 Relay wrote:
>>> This series adds new drivers for multiple Maxim GMSL2 and GMSL3 devices,
>>> replacing the few GMSL2 drivers already in upstream, and introducing a
>>> common framework that can be used to implement such GMSL chips, which
>>> avoids code duplication while also adding support for previously
>>> unsupported features.
>>>
>>> While the normally acceptable and polite way would be to extend the
>>> current mainline drivers, the choice was made here to add a totally new
>>> set of drivers. The current drivers support only a small subset of the
>>> possible features, and only a few devices, so the end result after
>>> extending them would in any case be essentially fully rewritten, new
>>> drivers.
>>>
>>> This series depends on support for internal pads, for which a patch has
>>> been added.
>>
>> It also depends on enabling the streams API right? At least I need to do
>> so to be able to use the TPG. Out of curiosity do you know the plan to
>> enable it by default upstream?
>>
> 
> I do not know when default enable is planned, but series could make it
> so VIDEO_MAXIM_SERDES selection causes v4l2_subdev_enable_streams_api=1.
>    I am not sure that such a hack would be acceptable by Sakari or
> upstream in general.
I haven't tested with this driver, but in theory these kind of drivers 
should work with the Streams API still disabled. The Streams API is a 
uAPI, so the driver itself works without it. If the default routing for 
the drivers provides a sensible single route, one can use the drivers 
with a single camera. This is what the FPD-Link drivers do (although 
it's been a long time since I verified it with Streams API disabled).

  Tomi

Re: [PATCH v16 00/22] media: i2c: add Maxim GMSL2/3 serializer and deserializer drivers
Posted by Niklas Söderlund 3 weeks, 3 days ago
On 2026-09-01 10:43:44 +0300, Tomi Valkeinen wrote:
> Hi,
> 
> On 01/09/2026 10:39, Ceclan Dumitru wrote:
> > 
> > 
> > On 8/31/26 8:03 PM, Niklas Söderlund wrote:
> > > Hello,
> > > 
> > > Thanks for  your continued effort pushing this work forward!
> > > 
> > > On 2026-08-31 16:21:19 +0300, Dumitru Ceclan via B4 Relay wrote:
> > > > This series adds new drivers for multiple Maxim GMSL2 and GMSL3 devices,
> > > > replacing the few GMSL2 drivers already in upstream, and introducing a
> > > > common framework that can be used to implement such GMSL chips, which
> > > > avoids code duplication while also adding support for previously
> > > > unsupported features.
> > > > 
> > > > While the normally acceptable and polite way would be to extend the
> > > > current mainline drivers, the choice was made here to add a totally new
> > > > set of drivers. The current drivers support only a small subset of the
> > > > possible features, and only a few devices, so the end result after
> > > > extending them would in any case be essentially fully rewritten, new
> > > > drivers.
> > > > 
> > > > This series depends on support for internal pads, for which a patch has
> > > > been added.
> > > 
> > > It also depends on enabling the streams API right? At least I need to do
> > > so to be able to use the TPG. Out of curiosity do you know the plan to
> > > enable it by default upstream?
> > > 
> > 
> > I do not know when default enable is planned, but series could make it
> > so VIDEO_MAXIM_SERDES selection causes v4l2_subdev_enable_streams_api=1.
> >    I am not sure that such a hack would be acceptable by Sakari or
> > upstream in general.
> I haven't tested with this driver, but in theory these kind of drivers
> should work with the Streams API still disabled. The Streams API is a uAPI,
> so the driver itself works without it. If the default routing for the
> drivers provides a sensible single route, one can use the drivers with a
> single camera. This is what the FPD-Link drivers do (although it's been a
> long time since I verified it with Streams API disabled).

Indeed, but to enable the TPG I need to non-default routing ;-) Nothing 
big I'm just impatient for the streams API to be enabled by default in 
general.

> 
>  Tomi
> 

-- 
Kind Regards,
Niklas Söderlund
Re: [PATCH v16 00/22] media: i2c: add Maxim GMSL2/3 serializer and deserializer drivers
Posted by Tomi Valkeinen 3 weeks, 3 days ago
Hi,

On 02/09/2026 11:37, Niklas Söderlund wrote:
> On 2026-09-01 10:43:44 +0300, Tomi Valkeinen wrote:
>> Hi,
>>
>> On 01/09/2026 10:39, Ceclan Dumitru wrote:
>>>
>>>
>>> On 8/31/26 8:03 PM, Niklas Söderlund wrote:
>>>> Hello,
>>>>
>>>> Thanks for  your continued effort pushing this work forward!
>>>>
>>>> On 2026-08-31 16:21:19 +0300, Dumitru Ceclan via B4 Relay wrote:
>>>>> This series adds new drivers for multiple Maxim GMSL2 and GMSL3 devices,
>>>>> replacing the few GMSL2 drivers already in upstream, and introducing a
>>>>> common framework that can be used to implement such GMSL chips, which
>>>>> avoids code duplication while also adding support for previously
>>>>> unsupported features.
>>>>>
>>>>> While the normally acceptable and polite way would be to extend the
>>>>> current mainline drivers, the choice was made here to add a totally new
>>>>> set of drivers. The current drivers support only a small subset of the
>>>>> possible features, and only a few devices, so the end result after
>>>>> extending them would in any case be essentially fully rewritten, new
>>>>> drivers.
>>>>>
>>>>> This series depends on support for internal pads, for which a patch has
>>>>> been added.
>>>>
>>>> It also depends on enabling the streams API right? At least I need to do
>>>> so to be able to use the TPG. Out of curiosity do you know the plan to
>>>> enable it by default upstream?
>>>>
>>>
>>> I do not know when default enable is planned, but series could make it
>>> so VIDEO_MAXIM_SERDES selection causes v4l2_subdev_enable_streams_api=1.
>>>     I am not sure that such a hack would be acceptable by Sakari or
>>> upstream in general.
>> I haven't tested with this driver, but in theory these kind of drivers
>> should work with the Streams API still disabled. The Streams API is a uAPI,
>> so the driver itself works without it. If the default routing for the
>> drivers provides a sensible single route, one can use the drivers with a
>> single camera. This is what the FPD-Link drivers do (although it's been a
>> long time since I verified it with Streams API disabled).
> 
> Indeed, but to enable the TPG I need to non-default routing ;-) Nothing
> big I'm just impatient for the streams API to be enabled by default in
> general.
Yes, that is true. And annoying, if TPG is your main use case ;).

The FPD-Link drivers don't have TPG in upstream. I have patches in my 
local branch, waiting for internal pads.

  Tomi

Re: [PATCH v16 00/22] media: i2c: add Maxim GMSL2/3 serializer and deserializer drivers
Posted by Tomi Valkeinen 3 weeks, 1 day ago
Hi,

On 31/08/2026 16:21, Dumitru Ceclan via B4 Relay wrote:
> This series adds new drivers for multiple Maxim GMSL2 and GMSL3 devices,
> replacing the few GMSL2 drivers already in upstream, and introducing a
> common framework that can be used to implement such GMSL chips, which
> avoids code duplication while also adding support for previously
> unsupported features.
I had a quick test with this v16, and while cameras and serializer TPGs 
work, I still can't get anything from deser TPG. I'm trying to capture 
1920x1080-XRGB8888. There could be something wrong with the media config 
I do from the userspace, though.

Niklas, what settings you used with TPG on MAX96712?

  Tomi
Re: [PATCH v16 00/22] media: i2c: add Maxim GMSL2/3 serializer and deserializer drivers
Posted by Niklas Söderlund 3 weeks, 1 day ago
Hi Tomi,

On 2026-09-04 11:55:08 +0300, Tomi Valkeinen wrote:
> Hi,
> 
> On 31/08/2026 16:21, Dumitru Ceclan via B4 Relay wrote:
> > This series adds new drivers for multiple Maxim GMSL2 and GMSL3 devices,
> > replacing the few GMSL2 drivers already in upstream, and introducing a
> > common framework that can be used to implement such GMSL chips, which
> > avoids code duplication while also adding support for previously
> > unsupported features.
> I had a quick test with this v16, and while cameras and serializer TPGs
> work, I still can't get anything from deser TPG. I'm trying to capture
> 1920x1080-XRGB8888. There could be something wrong with the media config I
> do from the userspace, though.
> 
> Niklas, what settings you used with TPG on MAX96712?

Attached is the complete log from my CI pipeline. I'm sorry about all 
the start and end markers added by systemd.. I'm trying to find a clever 
way to remove them.


> 
>  Tomi
> 

-- 
Kind Regards,
Niklas Söderlund
Renesas Falcon CPU and Breakout boards based on r8a779a0
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo rcbqncvbrf $$; rm -fr /tmp/vin-capture; echo icwpiyjrwd $?
echo rcbqncvbrf $$; rm -fr /tmp/vin-capture; echo icwpiyjrwd $?
3008;start=6ae66edd-359a-4f62-aa49-720d430cf720;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\rcbqncvbrf 869
icwpiyjrwd 0
3008;end=6ae66edd-359a-4f62-aa49-720d430cf720;exit=success\echo sydudqwqly $$; mkdir -p /tmp/vin-capture; echo uizbulzztf $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo sydudqwqly $$; mkdir -p /tmp/vin-capture; echo uizbulzztf $?
3008;start=e325a517-5756-4486-9ea9-bf599663917b;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\sydudqwqly 869
uizbulzztf 0
3008;end=e325a517-5756-4486-9ea9-bf599663917b;exit=success\echo pcftcjnpvm $$; basename $(\ls -1 -d /sys/bus/platform/drivers/rcar-vin/*.video/media*); echo rjcwsquaxe $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo pcftcjnpvm $$; basename $(\ls -1 -d /sys/bus/platform/drivers/rcar-vin/*.video/media*); echo rjcwsquaxe $?
3008;start=1713ef21-22b4-4ba1-9118-f39133658ae7;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\pcftcjnpvm 869
media0
rjcwsquaxe 0
echo edyuxtrjtk $$; media-ctl -d /dev/media0 -r; echo eijnmfxywb $?
3008;end=1713ef21-22b4-4ba1-9118-f39133658ae7;exit=success\3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo edyuxtrjtk $$; media-ctl -d /dev/media0 -r; echo eijnmfxywb $?
3008;start=661ca835-b6ac-4e11-8a6c-c1bd11de0482;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\edyuxtrjtk 869
eijnmfxywb 0
3008;end=661ca835-b6ac-4e11-8a6c-c1bd11de0482;exit=success\echo tjmiijrrrp $$; media-ctl -d /dev/media0 --set-routes "'max96724 1-0049' [8/0 -> 4/0 [1]]"; echo oxcrpmtlcy $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo tjmiijrrrp $$; media-ctl -d /dev/media0 --set-routes "'max96724 1-0049' [8/0 -> 4/0 [1]]"; echo oxcrpmtlcy $?
3008;start=5e2d09d9-90d2-420a-8386-9da00f13569d;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\tjmiijrrrp 869
oxcrpmtlcy 0
echo tflcqtvdiu $$; media-ctl -d /dev/media0 --get-v4l2 "'max96724 1-0049':8"; echo lkuyajjaii $?
3008;end=5e2d09d9-90d2-420a-8386-9da00f13569d;exit=success\3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo tflcqtvdiu $$; media-ctl -d /dev/media0 --get-v4l2 "'max96724 1-0049':8"; echo lkuyajjaii $?
3008;start=2450ab61-9fc5-4217-8daa-a357048d051a;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\tflcqtvdiu 869
		[stream:0 fmt:RGB888_1X24/640x480]
lkuyajjaii 0
3008;end=2450ab61-9fc5-4217-8daa-a357048d051a;exit=success\echo ocpawxmhma $$; media-ctl -d /dev/media0 -V "'max96724 1-0049':8 [fmt:RGB888_1X24/1920x1080 field:none]"; echo btoyibixrq $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo ocpawxmhma $$; media-ctl -d /dev/media0 -V "'max96724 1-0049':8 [fmt:RGB888_1X24/1920x1080 field:none]"; echo btoyibixrq $?
3008;start=cc53a835-f9ac-4c72-8550-aae5c3a133d5;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\ocpawxmhma 869
btoyibixrq 0
3008;end=cc53a835-f9ac-4c72-8550-aae5c3a133d5;exit=success\echo eigybydofi $$; media-ctl -d /dev/media0 -V "'rcar_csi2 feaa0000.csi2':0 [fmt:RGB888_1X24/1920x1080 field:none]"; echo psqaoupyae $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo eigybydofi $$; media-ctl -d /dev/media0 -V "'rcar_csi2 feaa0000.csi2':0 [fmt:RGB888_1X24/1920x1080 field:none]"; echo psqaoupyae $?
3008;start=304879b1-d4a1-4ed7-9675-a6ee6c45c3d4;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\eigybydofi 869
psqaoupyae 0
3008;end=304879b1-d4a1-4ed7-9675-a6ee6c45c3d4;exit=success\echo tjseuznosw $$; media-ctl -d /dev/media0 -V "'rcar_isp fed00000.isp':0 [fmt:RGB888_1X24/1920x1080 field:none]"; echo gzikzpdubp $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo tjseuznosw $$; media-ctl -d /dev/media0 -V "'rcar_isp fed00000.isp':0 [fmt:RGB888_1X24/1920x1080 field:none]"; echo gzikzpdubp $?
3008;start=57e0b86e-ae36-45d7-8820-52b28efca61b;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\tjseuznosw 869
gzikzpdubp 0
3008;end=57e0b86e-ae36-45d7-8820-52b28efca61b;exit=success\echo oqyuoplzrn $$; grep -l 'VIN0 output' /sys/class/video4linux/*/name | sed 's#.*video4linux\(.*\)/name#/dev\1#g'; echo rxvnjtimjg $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo oqyuoplzrn $$; grep -l 'VIN0 output' /sys/class/video4linux/*/name | sed 's#.*video4linux\(.*\)/name#/dev\1#g'; echo rxvnjtimjg $?
3008;start=78a50b54-48ad-42aa-8212-38bfe9d38c18;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\oqyuoplzrn 869
/dev/video0
rxvnjtimjg 0
echo rgomvnkmea $$; yavta -f ABGR32 -s 1920x1080 --field none /dev/video0; echo hfdznkarjq $?
3008;end=78a50b54-48ad-42aa-8212-38bfe9d38c18;exit=success\3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo rgomvnkmea $$; yavta -f ABGR32 -s 1920x1080 --field none /dev/video0; echo hfdznkarjq $?
3008;start=d70b55ea-6f97-45f9-82dd-e61575c84f3f;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\rgomvnkmea 869
Device /dev/video0 opened.
Device `R_Car_VIN' on `platform:e6ef0000.video' (driver 'rcar_vin') supports video, capture, without mplanes.
Video format set: ABGR32 (34325241) 1920x1080 (stride 7680) field none buffer size 8294400
Video format: ABGR32 (34325241) 1920x1080 (stride 7680) field none buffer size 8294400
hfdznkarjq 0
3008;end=d70b55ea-6f97-45f9-82dd-e61575c84f3f;exit=success\echo rxwnhbcovo $$; grep -l 'max96724 1-0049' /sys/class/video4linux/*/name | sed 's#.*video4linux\(.*\)/name#/dev\1#g'; echo tvbupouvrv $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo rxwnhbcovo $$; grep -l 'max96724 1-0049' /sys/class/video4linux/*/name | sed 's#.*video4linux\(.*\)/name#/dev\1#g'; echo tvbupouvrv $?
3008;start=e9066954-06c3-43f3-875e-3d7f7fbb04a9;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\rxwnhbcovo 869
/dev/v4l-subdev2
tvbupouvrv 0
3008;end=e9066954-06c3-43f3-875e-3d7f7fbb04a9;exit=success\echo ulbguytayp $$; yavta --set-control '0x009f0903 0' /dev/v4l-subdev2; echo qmikwbmfup $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo ulbguytayp $$; yavta --set-control '0x009f0903 0' /dev/v4l-subdev2; echo qmikwbmfup $?
3008;start=e273f40b-32cd-46d6-b1da-4ba6b0d7c69d;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\ulbguytayp 869
Device /dev/v4l-subdev2 opened.
Control 0x009f0903 set to 0, is 0
Unable to get format: Inappropriate ioctl for device (25).
qmikwbmfup 0
echo xeiseshqpg $$; yavta -c10 --file=/tmp/vin-capture/checkerboard-ABGR32-1920x1080-#.bin /dev/video0; echo pqgvcmkdto $?
3008;end=e273f40b-32cd-46d6-b1da-4ba6b0d7c69d;exit=success\3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo xeiseshqpg $$; yavta -c10 --file=/tmp/vin-capture/checkerboard-ABGR32-1920x1080-#.bin /dev/video0; echo pqgvcmkdto $?
3008;start=aa309ddb-5405-4252-8943-33a768f3239d;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\xeiseshqpg 869
Device /dev/video0 opened.
Device `R_Car_VIN' on `platform:e6ef0000.video' (driver 'rcar_vin') supports video, capture, without mplanes.
Video format: ABGR32 (34325241) 1920x1080 (stride 7680) field none buffer size 8294400
8 buffers requested.
length: 8294400 offset: 0 timestamp type/source: mono/EoF
Buffer 0/0 mapped at address 0xffffb7727000.
length: 8294400 offset: 32768 timestamp type/source: mono/EoF
Buffer 1/0 mapped at address 0xffffb6f3e000.
length: 8294400 offset: 65536 timestamp type/source: mono/EoF
Buffer 2/0 mapped at address 0xffffb6755000.
length: 8294400 offset: 98304 timestamp type/source: mono/EoF
Buffer 3/0 mapped at address 0xffffb5f6c000.
length: 8294400 offset: 131072 timestamp type/source: mono/EoF
Buffer 4/0 mapped at address 0xffffb5783000.
length: 8294400 offset: 163840 timestamp type/source: mono/EoF
Buffer 5/0 mapped at address 0xffffb4f9a000.
length: 8294400 offset: 196608 timestamp type/source: mono/EoF
Buffer 6/0 mapped at address 0xffffb47b1000.
length: 8294400 offset: 229376 timestamp type/source: mono/EoF
Buffer 7/0 mapped at address 0xffffb3fc8000.
0 (0) [-] none 0 8294400 B 39.617866 39.618829 7.958 fps ts mono/EoF
1 (1) [-] none 1 8294400 B 39.651195 39.658795 30.004 fps ts mono/EoF
2 (2) [-] none 2 8294400 B 39.684516 39.698056 30.011 fps ts mono/EoF
3 (3) [-] none 3 8294400 B 39.717837 39.737152 30.011 fps ts mono/EoF
4 (4) [-] none 4 8294400 B 39.751159 39.776026 30.010 fps ts mono/EoF
5 (5) [-] none 5 8294400 B 39.784478 39.815068 30.013 fps ts mono/EoF
6 (6) [-] none 6 8294400 B 39.817800 39.854007 30.010 fps ts mono/EoF
7 (7) [-] none 7 8294400 B 39.851122 39.893262 30.010 fps ts mono/EoF
8 (0) [-] none 8 8294400 B 39.884444 39.932518 30.010 fps ts mono/EoF
9 (1) [-] none 9 8294400 B 39.917765 39.971624 30.011 fps ts mono/EoF
Captured 10 frames in 0.479421 seconds (20.858463 fps, 173008432.630080 B/s).
8 buffers released.
pqgvcmkdto 0
3008;end=aa309ddb-5405-4252-8943-33a768f3239d;exit=success\echo vddmdvxytp $$; md5sum /tmp/vin-capture/checkerboard-ABGR32-1920x1080-*.bin; echo sglqjsclpb $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo vddmdvxytp $$; md5sum /tmp/vin-capture/checkerboard-ABGR32-1920x1080-*.bin; echo sglqjsclpb $?
3008;start=df8d3269-0df8-44c3-961d-1d148d0cef8b;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\vddmdvxytp 869
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000000.bin
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000001.bin
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000002.bin
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000003.bin
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000004.bin
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000005.bin
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000006.bin
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000007.bin
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000008.bin
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000009.bin
sglqjsclpb 0
echo drrgalvupu $$; yavta --set-control '0x009f0903 1' /dev/v4l-subdev2; echo afdhccbfzl $?
3008;end=df8d3269-0df8-44c3-961d-1d148d0cef8b;exit=success\3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo drrgalvupu $$; yavta --set-control '0x009f0903 1' /dev/v4l-subdev2; echo afdhccbfzl $?
3008;start=6a53da1a-55dc-4f2f-96ab-0664d671d13f;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\drrgalvupu 869
Device /dev/v4l-subdev2 opened.
Control 0x009f0903 set to 1, is 1
Unable to get format: Inappropriate ioctl for device (25).
afdhccbfzl 0
3008;end=6a53da1a-55dc-4f2f-96ab-0664d671d13f;exit=success\echo foheysynzz $$; yavta -c10 --file=/tmp/vin-capture/gradient-ABGR32-1920x1080-#.bin /dev/video0; echo bgcjhzxwgf $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo foheysynzz $$; yavta -c10 --file=/tmp/vin-capture/gradient-ABGR32-1920x1080-#.bin /dev/video0; echo bgcjhzxwgf $?
3008;start=99ce03b0-a9e2-4579-8a9a-9fdce96c85e2;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\foheysynzz 869
Device /dev/video0 opened.
Device `R_Car_VIN' on `platform:e6ef0000.video' (driver 'rcar_vin') supports video, capture, without mplanes.
Video format: ABGR32 (34325241) 1920x1080 (stride 7680) field none buffer size 8294400
8 buffers requested.
length: 8294400 offset: 0 timestamp type/source: mono/EoF
Buffer 0/0 mapped at address 0xffff827d7000.
length: 8294400 offset: 32768 timestamp type/source: mono/EoF
Buffer 1/0 mapped at address 0xffff81fee000.
length: 8294400 offset: 65536 timestamp type/source: mono/EoF
Buffer 2/0 mapped at address 0xffff81805000.
length: 8294400 offset: 98304 timestamp type/source: mono/EoF
Buffer 3/0 mapped at address 0xffff8101c000.
length: 8294400 offset: 131072 timestamp type/source: mono/EoF
Buffer 4/0 mapped at address 0xffff80833000.
length: 8294400 offset: 163840 timestamp type/source: mono/EoF
Buffer 5/0 mapped at address 0xffff8004a000.
length: 8294400 offset: 196608 timestamp type/source: mono/EoF
Buffer 6/0 mapped at address 0xffff7f861000.
length: 8294400 offset: 229376 timestamp type/source: mono/EoF
Buffer 7/0 mapped at address 0xffff7f078000.
0 (0) [-] none 0 8294400 B 41.080545 41.080574 10.829 fps ts mono/EoF
1 (1) [-] none 1 8294400 B 41.113870 41.119683 30.008 fps ts mono/EoF
2 (2) [-] none 2 8294400 B 41.147193 41.158664 30.009 fps ts mono/EoF
3 (3) [-] none 3 8294400 B 41.180514 41.197693 30.011 fps ts mono/EoF
4 (4) [-] none 4 8294400 B 41.213837 41.236586 30.009 fps ts mono/EoF
5 (5) [-] none 5 8294400 B 41.247158 41.275574 30.011 fps ts mono/EoF
6 (6) [-] none 6 8294400 B 41.280477 41.314427 30.013 fps ts mono/EoF
7 (7) [-] none 7 8294400 B 41.313800 41.353399 30.009 fps ts mono/EoF
8 (0) [-] none 8 8294400 B 41.347122 41.392199 30.010 fps ts mono/EoF
9 (1) [-] none 9 8294400 B 41.380442 41.431170 30.012 fps ts mono/EoF
Captured 10 frames in 0.442970 seconds (22.574885 fps, 187245130.107327 B/s).
8 buffers released.
bgcjhzxwgf 0
echo qptbargaid $$; md5sum /tmp/vin-capture/gradient-ABGR32-1920x1080-*.bin; echo btmpwrmobc $?
3008;end=99ce03b0-a9e2-4579-8a9a-9fdce96c85e2;exit=success\3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo qptbargaid $$; md5sum /tmp/vin-capture/gradient-ABGR32-1920x1080-*.bin; echo btmpwrmobc $?
3008;start=b38f56f7-20ae-4793-9f7f-bb6123361939;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\qptbargaid 869
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000000.bin
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000001.bin
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000002.bin
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000003.bin
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000004.bin
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000005.bin
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000006.bin
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000007.bin
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000008.bin
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000009.bin
btmpwrmobc 0
echo edyrkcxyhz $$; media-ctl -d /dev/media0 -r; echo dcyggvwrpz $?
3008;end=b38f56f7-20ae-4793-9f7f-bb6123361939;exit=success\3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo edyrkcxyhz $$; media-ctl -d /dev/media0 -r; echo dcyggvwrpz $?
3008;start=e96d8ee7-9704-4b4b-88a7-6144cddfd804;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\edyrkcxyhz 869
dcyggvwrpz 0
3008;end=e96d8ee7-9704-4b4b-88a7-6144cddfd804;exit=success\echo spjkmqqgev $$; media-ctl -d /dev/media0 --set-routes "'max96724 1-004b' [8/0 -> 4/0 [1]]"; echo xepuwaprop $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo spjkmqqgev $$; media-ctl -d /dev/media0 --set-routes "'max96724 1-004b' [8/0 -> 4/0 [1]]"; echo xepuwaprop $?
3008;start=5a01a8c1-b327-4011-97f0-c461f3073898;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\spjkmqqgev 869
xepuwaprop 0
3008;end=5a01a8c1-b327-4011-97f0-c461f3073898;exit=success\echo pxrquuyvos $$; media-ctl -d /dev/media0 --get-v4l2 "'max96724 1-004b':8"; echo sndeagxpdb $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo pxrquuyvos $$; media-ctl -d /dev/media0 --get-v4l2 "'max96724 1-004b':8"; echo sndeagxpdb $?
3008;start=d641fb37-db46-493e-8afc-f84586dd8e91;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\pxrquuyvos 869
		[stream:0 fmt:RGB888_1X24/640x480]
sndeagxpdb 0
echo aakclhdmys $$; media-ctl -d /dev/media0 -V "'max96724 1-004b':8 [fmt:RGB888_1X24/1920x1080 field:none]"; echo okallpohbq $?
3008;end=d641fb37-db46-493e-8afc-f84586dd8e91;exit=success\3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo aakclhdmys $$; media-ctl -d /dev/media0 -V "'max96724 1-004b':8 [fmt:RGB888_1X24/1920x1080 field:none]"; echo okallpohbq $?
3008;start=67c61c30-f31b-45c2-b92c-939e5a5d0644;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\aakclhdmys 869
okallpohbq 0
3008;end=67c61c30-f31b-45c2-b92c-939e5a5d0644;exit=success\echo tapzranfvz $$; media-ctl -d /dev/media0 -V "'rcar_csi2 fed60000.csi2':0 [fmt:RGB888_1X24/1920x1080 field:none]"; echo nbmaqhpkcn $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo tapzranfvz $$; media-ctl -d /dev/media0 -V "'rcar_csi2 fed60000.csi2':0 [fmt:RGB888_1X24/1920x1080 field:none]"; echo nbmaqhpkcn $?
3008;start=5f64884d-82a8-4c97-a10c-5337c8408582;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\tapzranfvz 869
nbmaqhpkcn 0
3008;end=5f64884d-82a8-4c97-a10c-5337c8408582;exit=success\echo lovleifzfo $$; media-ctl -d /dev/media0 -V "'rcar_isp fed30000.isp':0 [fmt:RGB888_1X24/1920x1080 field:none]"; echo nedmgsmusx $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo lovleifzfo $$; media-ctl -d /dev/media0 -V "'rcar_isp fed30000.isp':0 [fmt:RGB888_1X24/1920x1080 field:none]"; echo nedmgsmusx $?
3008;start=ee9e9db3-bd3a-413d-9a74-00af3105db96;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\lovleifzfo 869
nedmgsmusx 0
3008;end=ee9e9db3-bd3a-413d-9a74-00af3105db96;exit=success\echo pgjnpgvmuu $$; grep -l 'VIN16 output' /sys/class/video4linux/*/name | sed 's#.*video4linux\(.*\)/name#/dev\1#g'; echo qthlpecfsx $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo pgjnpgvmuu $$; grep -l 'VIN16 output' /sys/class/video4linux/*/name | sed 's#.*video4linux\(.*\)/name#/dev\1#g'; echo qthlpecfsx $?
3008;start=6bb28673-7e22-4dc5-907a-724726d19ce1;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\pgjnpgvmuu 869
/dev/video8
qthlpecfsx 0
3008;end=6bb28673-7e22-4dc5-907a-724726d19ce1;exit=success\echo rptpyzylgp $$; yavta -f ABGR32 -s 1920x1080 --field none /dev/video8; echo ijrlkozwdz $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo rptpyzylgp $$; yavta -f ABGR32 -s 1920x1080 --field none /dev/video8; echo ijrlkozwdz $?
3008;start=394c3133-04fe-4ed8-8c52-8b08513646c6;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\rptpyzylgp 869
Device /dev/video8 opened.
Device `R_Car_VIN' on `platform:e6ed0000.video' (driver 'rcar_vin') supports video, capture, without mplanes.
Video format set: ABGR32 (34325241) 1920x1080 (stride 7680) field none buffer size 8294400
Video format: ABGR32 (34325241) 1920x1080 (stride 7680) field none buffer size 8294400
ijrlkozwdz 0
3008;end=394c3133-04fe-4ed8-8c52-8b08513646c6;exit=success\echo grdnkpntqj $$; grep -l 'max96724 1-004b' /sys/class/video4linux/*/name | sed 's#.*video4linux\(.*\)/name#/dev\1#g'; echo eouuybcgbn $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo grdnkpntqj $$; grep -l 'max96724 1-004b' /sys/class/video4linux/*/name | sed 's#.*video4linux\(.*\)/name#/dev\1#g'; echo eouuybcgbn $?
3008;start=295f7937-7db9-4726-a9bc-10a01a619df3;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\grdnkpntqj 869
/dev/v4l-subdev5
eouuybcgbn 0
3008;end=295f7937-7db9-4726-a9bc-10a01a619df3;exit=success\echo mwnldglbst $$; yavta --set-control '0x009f0903 0' /dev/v4l-subdev5; echo pggagilaop $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo mwnldglbst $$; yavta --set-control '0x009f0903 0' /dev/v4l-subdev5; echo pggagilaop $?
3008;start=1ea79791-3905-45e3-8cd9-49b0276130d8;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\mwnldglbst 869
Device /dev/v4l-subdev5 opened.
Control 0x009f0903 set to 0, is 0
Unable to get format: Inappropriate ioctl for device (25).
pggagilaop 0
echo boxypjyzij $$; yavta -c10 --file=/tmp/vin-capture/checkerboard-ABGR32-1920x1080-#.bin /dev/video8; echo emcpgaejag $?
3008;end=1ea79791-3905-45e3-8cd9-49b0276130d8;exit=success\3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo boxypjyzij $$; yavta -c10 --file=/tmp/vin-capture/checkerboard-ABGR32-1920x1080-#.bin /dev/video8; echo emcpgaejag $?
3008;start=b98b1285-0c83-4c57-b949-efffacf3a0b6;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\boxypjyzij 869
Device /dev/video8 opened.
Device `R_Car_VIN' on `platform:e6ed0000.video' (driver 'rcar_vin') supports video, capture, without mplanes.
Video format: ABGR32 (34325241) 1920x1080 (stride 7680) field none buffer size 8294400
8 buffers requested.
length: 8294400 offset: 0 timestamp type/source: mono/EoF
Buffer 0/0 mapped at address 0xffffa3cd7000.
length: 8294400 offset: 32768 timestamp type/source: mono/EoF
Buffer 1/0 mapped at address 0xffffa34ee000.
length: 8294400 offset: 65536 timestamp type/source: mono/EoF
Buffer 2/0 mapped at address 0xffffa2d05000.
length: 8294400 offset: 98304 timestamp type/source: mono/EoF
Buffer 3/0 mapped at address 0xffffa251c000.
length: 8294400 offset: 131072 timestamp type/source: mono/EoF
Buffer 4/0 mapped at address 0xffffa1d33000.
length: 8294400 offset: 163840 timestamp type/source: mono/EoF
Buffer 5/0 mapped at address 0xffffa154a000.
length: 8294400 offset: 196608 timestamp type/source: mono/EoF
Buffer 6/0 mapped at address 0xffffa0d61000.
length: 8294400 offset: 229376 timestamp type/source: mono/EoF
Buffer 7/0 mapped at address 0xffffa0578000.
0 (0) [-] none 0 8294400 B 43.604035 43.604066 7.957 fps ts mono/EoF
1 (1) [-] none 1 8294400 B 43.637363 43.648104 30.005 fps ts mono/EoF
2 (2) [-] none 2 8294400 B 43.670685 43.691536 30.010 fps ts mono/EoF
3 (3) [-] none 3 8294400 B 43.704005 43.734981 30.012 fps ts mono/EoF
4 (4) [-] none 4 8294400 B 43.737326 43.810144 30.011 fps ts mono/EoF
5 (5) [-] none 5 8294400 B 43.770650 43.854021 30.008 fps ts mono/EoF
6 (6) [-] none 6 8294400 B 43.803972 43.897371 30.010 fps ts mono/EoF
7 (7) [-] none 7 8294400 B 43.837292 43.940990 30.012 fps ts mono/EoF
8 (0) [-] none 8 8294400 B 43.870613 43.984158 30.011 fps ts mono/EoF
9 (1) [-] none 9 8294400 B 43.903932 44.027508 30.013 fps ts mono/EoF
Captured 10 frames in 0.549155 seconds (18.209794 fps, 151039319.376736 B/s).
8 buffers released.
emcpgaejag 0
echo byvthakmop $$; md5sum /tmp/vin-capture/checkerboard-ABGR32-1920x1080-*.bin; echo frbehbovau $?
3008;end=b98b1285-0c83-4c57-b949-efffacf3a0b6;exit=success\3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo byvthakmop $$; md5sum /tmp/vin-capture/checkerboard-ABGR32-1920x1080-*.bin; echo frbehbovau $?
3008;start=169c0bc8-5abb-4c6c-9715-e504a599de8e;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\byvthakmop 869
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000000.bin
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000001.bin
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000002.bin
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000003.bin
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000004.bin
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000005.bin
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000006.bin
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000007.bin
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000008.bin
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000009.bin
frbehbovau 0
echo uibuhhmhgg $$; yavta --set-control '0x009f0903 1' /dev/v4l-subdev5; echo cwkqxpwtat $?
3008;end=169c0bc8-5abb-4c6c-9715-e504a599de8e;exit=success\3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo uibuhhmhgg $$; yavta --set-control '0x009f0903 1' /dev/v4l-subdev5; echo cwkqxpwtat $?
3008;start=752be5e8-41e9-46a8-9088-47d8eacd56ba;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\uibuhhmhgg 869
Device /dev/v4l-subdev5 opened.
Control 0x009f0903 set to 1, is 1
Unable to get format: Inappropriate ioctl for device (25).
cwkqxpwtat 0
3008;end=752be5e8-41e9-46a8-9088-47d8eacd56ba;exit=success\echo tnvrsobydy $$; yavta -c10 --file=/tmp/vin-capture/gradient-ABGR32-1920x1080-#.bin /dev/video8; echo aojkkhltmw $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo tnvrsobydy $$; yavta -c10 --file=/tmp/vin-capture/gradient-ABGR32-1920x1080-#.bin /dev/video8; echo aojkkhltmw $?
3008;start=3cbf987e-3a76-437d-84ca-06b933bdf750;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\tnvrsobydy 869
Device /dev/video8 opened.
Device `R_Car_VIN' on `platform:e6ed0000.video' (driver 'rcar_vin') supports video, capture, without mplanes.
Video format: ABGR32 (34325241) 1920x1080 (stride 7680) field none buffer size 8294400
8 buffers requested.
length: 8294400 offset: 0 timestamp type/source: mono/EoF
Buffer 0/0 mapped at address 0xffffaf3d7000.
length: 8294400 offset: 32768 timestamp type/source: mono/EoF
Buffer 1/0 mapped at address 0xffffaebee000.
length: 8294400 offset: 65536 timestamp type/source: mono/EoF
Buffer 2/0 mapped at address 0xffffae405000.
length: 8294400 offset: 98304 timestamp type/source: mono/EoF
Buffer 3/0 mapped at address 0xffffadc1c000.
length: 8294400 offset: 131072 timestamp type/source: mono/EoF
Buffer 4/0 mapped at address 0xffffad433000.
length: 8294400 offset: 163840 timestamp type/source: mono/EoF
Buffer 5/0 mapped at address 0xffffacc4a000.
length: 8294400 offset: 196608 timestamp type/source: mono/EoF
Buffer 6/0 mapped at address 0xffffac461000.
length: 8294400 offset: 229376 timestamp type/source: mono/EoF
Buffer 7/0 mapped at address 0xffffabc78000.
0 (0) [-] none 0 8294400 B 45.187186 45.187214 6.290 fps ts mono/EoF
1 (1) [-] none 1 8294400 B 45.220513 45.230681 30.006 fps ts mono/EoF
2 (2) [-] none 2 8294400 B 45.253835 45.273934 30.010 fps ts mono/EoF
3 (3) [-] none 3 8294400 B 45.287156 45.317196 30.011 fps ts mono/EoF
4 (4) [-] none 4 8294400 B 45.320480 45.360473 30.008 fps ts mono/EoF
5 (5) [-] none 5 8294400 B 45.353799 45.403996 30.013 fps ts mono/EoF
6 (6) [-] none 6 8294400 B 45.387121 45.447173 30.010 fps ts mono/EoF
7 (7) [-] none 7 8294400 B 45.420441 45.490448 30.012 fps ts mono/EoF
8 (0) [-] none 8 8294400 B 45.453761 45.533625 30.012 fps ts mono/EoF
9 (1) [-] none 9 8294400 B 45.487083 45.577015 30.010 fps ts mono/EoF
Captured 10 frames in 0.548817 seconds (18.220987 fps, 151132152.998215 B/s).
8 buffers released.
aojkkhltmw 0
echo egjgpccvxr $$; md5sum /tmp/vin-capture/gradient-ABGR32-1920x1080-*.bin; echo ozrcekonfn $?
3008;end=3cbf987e-3a76-437d-84ca-06b933bdf750;exit=success\3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo egjgpccvxr $$; md5sum /tmp/vin-capture/gradient-ABGR32-1920x1080-*.bin; echo ozrcekonfn $?
3008;start=e89955ab-9718-400f-a798-a1a1e392c80e;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\egjgpccvxr 869
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000000.bin
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000001.bin
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000002.bin
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000003.bin
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000004.bin
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000005.bin
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000006.bin
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000007.bin
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000008.bin
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000009.bin
ozrcekonfn 0
echo mxsufjbeia $$; media-ctl -d /dev/media0 -r; echo xqnmfionla $?
3008;end=e89955ab-9718-400f-a798-a1a1e392c80e;exit=success\3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo mxsufjbeia $$; media-ctl -d /dev/media0 -r; echo xqnmfionla $?
3008;start=bee0a639-75a2-4d06-ad2a-474c3951be94;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\mxsufjbeia 869
xqnmfionla 0
3008;end=bee0a639-75a2-4d06-ad2a-474c3951be94;exit=success\echo peplntulyo $$; media-ctl -d /dev/media0 --set-routes "'max96724 1-006b' [8/0 -> 4/0 [1]]"; echo mahrpafojy $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo peplntulyo $$; media-ctl -d /dev/media0 --set-routes "'max96724 1-006b' [8/0 -> 4/0 [1]]"; echo mahrpafojy $?
3008;start=0ed09528-c6b2-423b-9c67-fa42626582bc;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\peplntulyo 869
mahrpafojy 0
3008;end=0ed09528-c6b2-423b-9c67-fa42626582bc;exit=success\echo xaepuacddn $$; media-ctl -d /dev/media0 --get-v4l2 "'max96724 1-006b':8"; echo dfqpxyulcy $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo xaepuacddn $$; media-ctl -d /dev/media0 --get-v4l2 "'max96724 1-006b':8"; echo dfqpxyulcy $?
3008;start=0866cc8c-0d2f-4e9d-9d25-93d6b7a8a249;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\xaepuacddn 869
		[stream:0 fmt:RGB888_1X24/640x480]
dfqpxyulcy 0
3008;end=0866cc8c-0d2f-4e9d-9d25-93d6b7a8a249;exit=success\echo antuahayec $$; media-ctl -d /dev/media0 -V "'max96724 1-006b':8 [fmt:RGB888_1X24/1920x1080 field:none]"; echo azbpkheacn $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo antuahayec $$; media-ctl -d /dev/media0 -V "'max96724 1-006b':8 [fmt:RGB888_1X24/1920x1080 field:none]"; echo azbpkheacn $?
3008;start=90df5e3c-78f0-412e-b447-2450bb24f24e;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\antuahayec 869
azbpkheacn 0
3008;end=90df5e3c-78f0-412e-b447-2450bb24f24e;exit=success\echo ecgydajihu $$; media-ctl -d /dev/media0 -V "'rcar_csi2 fed70000.csi2':0 [fmt:RGB888_1X24/1920x1080 field:none]"; echo pjiqjqsrci $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo ecgydajihu $$; media-ctl -d /dev/media0 -V "'rcar_csi2 fed70000.csi2':0 [fmt:RGB888_1X24/1920x1080 field:none]"; echo pjiqjqsrci $?
3008;start=3962247f-ac37-4c8a-8916-5eb85cd3a6b6;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\ecgydajihu 869
pjiqjqsrci 0
3008;end=3962247f-ac37-4c8a-8916-5eb85cd3a6b6;exit=success\echo mkpzufbslb $$; media-ctl -d /dev/media0 -V "'rcar_isp fed40000.isp':0 [fmt:RGB888_1X24/1920x1080 field:none]"; echo oqmviqjzko $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo mkpzufbslb $$; media-ctl -d /dev/media0 -V "'rcar_isp fed40000.isp':0 [fmt:RGB888_1X24/1920x1080 field:none]"; echo oqmviqjzko $?
3008;start=4340d926-e4b4-498e-b1a7-b7304afaa0fe;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\mkpzufbslb 869
oqmviqjzko 0
3008;end=4340d926-e4b4-498e-b1a7-b7304afaa0fe;exit=success\echo lzjkflieff $$; grep -l 'VIN24 output' /sys/class/video4linux/*/name | sed 's#.*video4linux\(.*\)/name#/dev\1#g'; echo xlqvfmpisj $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo lzjkflieff $$; grep -l 'VIN24 output' /sys/class/video4linux/*/name | sed 's#.*video4linux\(.*\)/name#/dev\1#g'; echo xlqvfmpisj $?
3008;start=03d2938e-3203-4ded-8a46-d3b422cfba5e;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\lzjkflieff 869
/dev/video16
xlqvfmpisj 0
3008;end=03d2938e-3203-4ded-8a46-d3b422cfba5e;exit=success\echo pqecpxhzcg $$; yavta -f ABGR32 -s 1920x1080 --field none /dev/video16; echo sdrnkkwyzt $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo pqecpxhzcg $$; yavta -f ABGR32 -s 1920x1080 --field none /dev/video16; echo sdrnkkwyzt $?
3008;start=263af513-1d8e-4a52-922a-5cd53f8bf1c2;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\pqecpxhzcg 869
Device /dev/video16 opened.
Device `R_Car_VIN' on `platform:e6ed8000.video' (driver 'rcar_vin') supports video, capture, without mplanes.
Video format set: ABGR32 (34325241) 1920x1080 (stride 7680) field none buffer size 8294400
Video format: ABGR32 (34325241) 1920x1080 (stride 7680) field none buffer size 8294400
sdrnkkwyzt 0
echo obcwrrisdf $$; grep -l 'max96724 1-006b' /sys/class/video4linux/*/name | sed 's#.*video4linux\(.*\)/name#/dev\1#g'; echo jslxrqvgvz $?
3008;end=263af513-1d8e-4a52-922a-5cd53f8bf1c2;exit=success\3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo obcwrrisdf $$; grep -l 'max96724 1-006b' /sys/class/video4linux/*/name | sed 's#.*video4linux\(.*\)/name#/dev\1#g'; echo jslxrqvgvz $?
3008;start=3ba5dc1b-44f0-4c54-81cd-978c1fa76dbb;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\obcwrrisdf 869
/dev/v4l-subdev8
jslxrqvgvz 0
echo ndwahmzhox $$; yavta --set-control '0x009f0903 0' /dev/v4l-subdev8; echo fdnqhwxudn $?
3008;end=3ba5dc1b-44f0-4c54-81cd-978c1fa76dbb;exit=success\3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo ndwahmzhox $$; yavta --set-control '0x009f0903 0' /dev/v4l-subdev8; echo fdnqhwxudn $?
3008;start=86c9e4d7-9c4e-4d8a-acbd-d9c9d8589b79;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\ndwahmzhox 869
Device /dev/v4l-subdev8 opened.
Control 0x009f0903 set to 0, is 0
Unable to get format: Inappropriate ioctl for device (25).
fdnqhwxudn 0
echo pqdijodbsn $$; yavta -c10 --file=/tmp/vin-capture/checkerboard-ABGR32-1920x1080-#.bin /dev/video16; echo dweugkrxua $?
3008;end=86c9e4d7-9c4e-4d8a-acbd-d9c9d8589b79;exit=success\3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo pqdijodbsn $$; yavta -c10 --file=/tmp/vin-capture/checkerboard-ABGR32-1920x1080-#.bin /dev/video16; echo dweugkrxua $?
3008;start=4471629a-2eac-4add-ad2c-357a8c3b3898;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\pqdijodbsn 869
Device /dev/video16 opened.
Device `R_Car_VIN' on `platform:e6ed8000.video' (driver 'rcar_vin') supports video, capture, without mplanes.
Video format: ABGR32 (34325241) 1920x1080 (stride 7680) field none buffer size 8294400
8 buffers requested.
length: 8294400 offset: 0 timestamp type/source: mono/EoF
Buffer 0/0 mapped at address 0xffffb1a07000.
length: 8294400 offset: 32768 timestamp type/source: mono/EoF
Buffer 1/0 mapped at address 0xffffb121e000.
length: 8294400 offset: 65536 timestamp type/source: mono/EoF
Buffer 2/0 mapped at address 0xffffb0a35000.
length: 8294400 offset: 98304 timestamp type/source: mono/EoF
Buffer 3/0 mapped at address 0xffffb024c000.
length: 8294400 offset: 131072 timestamp type/source: mono/EoF
Buffer 4/0 mapped at address 0xffffafa63000.
length: 8294400 offset: 163840 timestamp type/source: mono/EoF
Buffer 5/0 mapped at address 0xffffaf27a000.
length: 8294400 offset: 196608 timestamp type/source: mono/EoF
Buffer 6/0 mapped at address 0xffffaea91000.
length: 8294400 offset: 229376 timestamp type/source: mono/EoF
Buffer 7/0 mapped at address 0xffffae2a8000.
0 (0) [-] none 0 8294400 B 47.753871 47.753901 7.957 fps ts mono/EoF
1 (1) [-] none 1 8294400 B 47.787201 47.797971 30.003 fps ts mono/EoF
2 (2) [-] none 2 8294400 B 47.820519 47.841285 30.014 fps ts mono/EoF
3 (3) [-] none 3 8294400 B 47.853840 47.884649 30.011 fps ts mono/EoF
4 (4) [-] none 4 8294400 B 47.887165 47.927912 30.008 fps ts mono/EoF
5 (5) [-] none 5 8294400 B 47.920483 47.971634 30.014 fps ts mono/EoF
6 (6) [-] none 6 8294400 B 47.953805 48.014831 30.010 fps ts mono/EoF
7 (7) [-] none 7 8294400 B 47.987126 48.058164 30.011 fps ts mono/EoF
8 (0) [-] none 8 8294400 B 48.020445 48.101361 30.013 fps ts mono/EoF
9 (1) [-] none 9 8294400 B 48.053767 48.147725 30.010 fps ts mono/EoF
Captured 10 frames in 0.519522 seconds (19.248433 fps, 159654200.212627 B/s).
8 buffers released.
dweugkrxua 0
echo yencwszpqj $$; md5sum /tmp/vin-capture/checkerboard-ABGR32-1920x1080-*.bin; echo gyaexftqht $?
3008;end=4471629a-2eac-4add-ad2c-357a8c3b3898;exit=success\3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo yencwszpqj $$; md5sum /tmp/vin-capture/checkerboard-ABGR32-1920x1080-*.bin; echo gyaexftqht $?
3008;start=d07e9674-dc4c-47be-853c-1325a74a0cbf;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\yencwszpqj 869
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000000.bin
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000001.bin
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000002.bin
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000003.bin
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000004.bin
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000005.bin
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000006.bin
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000007.bin
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000008.bin
21d0f33966148e2ed1089ed1ddb76415  /tmp/vin-capture/checkerboard-ABGR32-1920x1080-000009.bin
gyaexftqht 0
echo jzszdgdahc $$; yavta --set-control '0x009f0903 1' /dev/v4l-subdev8; echo eknkjnjwdq $?
3008;end=d07e9674-dc4c-47be-853c-1325a74a0cbf;exit=success\3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo jzszdgdahc $$; yavta --set-control '0x009f0903 1' /dev/v4l-subdev8; echo eknkjnjwdq $?
3008;start=511cee07-52f0-414c-8bdb-80c8c2587019;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\jzszdgdahc 869
Device /dev/v4l-subdev8 opened.
Control 0x009f0903 set to 1, is 1
Unable to get format: Inappropriate ioctl for device (25).
eknkjnjwdq 0
3008;end=511cee07-52f0-414c-8bdb-80c8c2587019;exit=success\echo eqkvnbdvca $$; yavta -c10 --file=/tmp/vin-capture/gradient-ABGR32-1920x1080-#.bin /dev/video16; echo itzpioorze $?
3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo eqkvnbdvca $$; yavta -c10 --file=/tmp/vin-capture/gradient-ABGR32-1920x1080-#.bin /dev/video16; echo itzpioorze $?
3008;start=5a3aca1e-4a5e-4a05-ab61-666041fa3a48;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\eqkvnbdvca 869
Device /dev/video16 opened.
Device `R_Car_VIN' on `platform:e6ed8000.video' (driver 'rcar_vin') supports video, capture, without mplanes.
Video format: ABGR32 (34325241) 1920x1080 (stride 7680) field none buffer size 8294400
8 buffers requested.
length: 8294400 offset: 0 timestamp type/source: mono/EoF
Buffer 0/0 mapped at address 0xffffb67e7000.
length: 8294400 offset: 32768 timestamp type/source: mono/EoF
Buffer 1/0 mapped at address 0xffffb5ffe000.
length: 8294400 offset: 65536 timestamp type/source: mono/EoF
Buffer 2/0 mapped at address 0xffffb5815000.
length: 8294400 offset: 98304 timestamp type/source: mono/EoF
Buffer 3/0 mapped at address 0xffffb502c000.
length: 8294400 offset: 131072 timestamp type/source: mono/EoF
Buffer 4/0 mapped at address 0xffffb4843000.
length: 8294400 offset: 163840 timestamp type/source: mono/EoF
Buffer 5/0 mapped at address 0xffffb405a000.
length: 8294400 offset: 196608 timestamp type/source: mono/EoF
Buffer 6/0 mapped at address 0xffffb3871000.
length: 8294400 offset: 229376 timestamp type/source: mono/EoF
Buffer 7/0 mapped at address 0xffffb3088000.
0 (0) [-] none 0 8294400 B 49.253865 49.253896 7.957 fps ts mono/EoF
1 (1) [-] none 1 8294400 B 49.287193 49.297443 30.005 fps ts mono/EoF
2 (2) [-] none 2 8294400 B 49.320514 49.340764 30.011 fps ts mono/EoF
3 (3) [-] none 3 8294400 B 49.353837 49.384168 30.009 fps ts mono/EoF
4 (4) [-] none 4 8294400 B 49.387159 49.427651 30.010 fps ts mono/EoF
5 (5) [-] none 5 8294400 B 49.420478 49.470970 30.013 fps ts mono/EoF
6 (6) [-] none 6 8294400 B 49.453799 49.514182 30.011 fps ts mono/EoF
7 (7) [-] none 7 8294400 B 49.487119 49.557384 30.012 fps ts mono/EoF
8 (0) [-] none 8 8294400 B 49.520440 49.600586 30.011 fps ts mono/EoF
9 (1) [-] none 9 8294400 B 49.553761 49.643898 30.011 fps ts mono/EoF
Captured 10 frames in 0.515703 seconds (19.390981 fps, 160836549.552079 B/s).
8 buffers released.
itzpioorze 0
echo szbpxungio $$; md5sum /tmp/vin-capture/gradient-ABGR32-1920x1080-*.bin; echo pejjkaeplb $?
3008;end=5a3aca1e-4a5e-4a05-ab61-666041fa3a48;exit=success\3008;start=65ca0a45-1b47-4b5e-b526-b87e9c21d0a0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=shell;cwd=/root\01marm64 ~ # echo szbpxungio $$; md5sum /tmp/vin-capture/gradient-ABGR32-1920x1080-*.bin; echo pejjkaeplb $?
3008;start=7169b0cb-def8-44f4-b848-2a6dccfd7ba0;machineid=f96e3a8d3dfd4be8bd719d9170779065;user=root;hostname=arm64;bootid=8006fc6b-2089-49a1-a726-f3127b64340f;pid=869;type=command;cwd=/root\szbpxungio 869
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000000.bin
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000001.bin
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000002.bin
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000003.bin
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000004.bin
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000005.bin
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000006.bin
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000007.bin
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000008.bin
f409c6fd3912b1b1b830d9661a83f3f7  /tmp/vin-capture/gradient-ABGR32-1920x1080-000009.bin
pejjkaeplb 0
exit
Re: [PATCH v16 00/22] media: i2c: add Maxim GMSL2/3 serializer and deserializer drivers
Posted by Sakari Ailus 3 weeks, 1 day ago
Hi Dumitru,

On Mon, Aug 31, 2026 at 04:21:19PM +0300, Dumitru Ceclan via B4 Relay wrote:
> This series adds new drivers for multiple Maxim GMSL2 and GMSL3 devices,
> replacing the few GMSL2 drivers already in upstream, and introducing a
> common framework that can be used to implement such GMSL chips, which
> avoids code duplication while also adding support for previously
> unsupported features.
> 
> While the normally acceptable and polite way would be to extend the
> current mainline drivers, the choice was made here to add a totally new
> set of drivers. The current drivers support only a small subset of the
> possible features, and only a few devices, so the end result after
> extending them would in any case be essentially fully rewritten, new
> drivers.
> 
> This series depends on support for internal pads, for which a patch has
> been added.
> 
> The previous version is at:
> v15: https://lore.kernel.org/r/20260807-gmsl2-3_serdes-v15-0-7212e9e5156a@analog.com
> 
> Since the previous series, Cosmin has left Analog Devices.
> Because included changes from previous version are trivial, his sign-off
> and tags were retained.

Can you check this
<URL:https://linux-media.pages.freedesktop.org/-/users/sailus/-/jobs/109521830/artifacts/junit/test-smatch.log.txt>
please? If there's a single patch that needs to be modified, I can squash a
patch into that, otherwise v17 it is.

-- 
Regards,

Sakari Ailus
Re: [PATCH v16 00/22] media: i2c: add Maxim GMSL2/3 serializer and deserializer drivers
Posted by Ceclan Dumitru 2 weeks, 4 days ago

On 9/4/26 11:51 AM, Sakari Ailus wrote:
> Hi Dumitru,
> 
> On Mon, Aug 31, 2026 at 04:21:19PM +0300, Dumitru Ceclan via B4 Relay wrote:
>> This series adds new drivers for multiple Maxim GMSL2 and GMSL3 devices,
>> replacing the few GMSL2 drivers already in upstream, and introducing a
>> common framework that can be used to implement such GMSL chips, which
>> avoids code duplication while also adding support for previously
>> unsupported features.
>>
>> While the normally acceptable and polite way would be to extend the
>> current mainline drivers, the choice was made here to add a totally new
>> set of drivers. The current drivers support only a small subset of the
>> possible features, and only a few devices, so the end result after
>> extending them would in any case be essentially fully rewritten, new
>> drivers.
>>
>> This series depends on support for internal pads, for which a patch has
>> been added.
>>
>> The previous version is at:
>> v15: https://lore.kernel.org/r/20260807-gmsl2-3_serdes-v15-0-7212e9e5156a@analog.com
>>
>> Since the previous series, Cosmin has left Analog Devices.
>> Because included changes from previous version are trivial, his sign-off
>> and tags were retained.
> 
> Can you check this
> <URL:https://linux-media.pages.freedesktop.org/-/users/sailus/-/jobs/109521830/artifacts/junit/test-smatch.log.txt>
> please? If there's a single patch that needs to be modified, I can squash a
> patch into that, otherwise v17 it is.
> 

These are the same warns reported by Niklas in V13. Dan fixed them in
smatch in devel branch but fix is not in master. Testing with smatch on
that branch yields no warnings.

https://lore.kernel.org/all/ai_txjwLPHsSKsJI@stanley.mountain
https://repo.or.cz/smatch.git/commit/d12183645a31b737d7fb39cbefa589e34615e8f7

v17 is still needed to revert one breaking change introduced in v16 and
fix more findings from Sashiko.

Thanks,
  Dumitru
Re: [PATCH v16 00/22] media: i2c: add Maxim GMSL2/3 serializer and deserializer drivers
Posted by Sakari Ailus 2 weeks ago
Hi Dumitru, Dan, Ricardo,

On Tue, Sep 08, 2026 at 01:35:05PM +0300, Ceclan Dumitru wrote:
> > Can you check this
> > <URL:https://linux-media.pages.freedesktop.org/-/users/sailus/-/jobs/109521830/artifacts/junit/test-smatch.log.txt>
> > please? If there's a single patch that needs to be modified, I can squash a
> > patch into that, otherwise v17 it is.
> > 
> 
> These are the same warns reported by Niklas in V13. Dan fixed them in
> smatch in devel branch but fix is not in master. Testing with smatch on
> that branch yields no warnings.

Dan: any plans to merge these things to master some time soon? Or:

Ricardo: could we use devel branch of smatch for some time?

This driver has been waiting to be merged for quite some time so it'd be
nice to get it to 7.4

> 
> https://lore.kernel.org/all/ai_txjwLPHsSKsJI@stanley.mountain
> https://repo.or.cz/smatch.git/commit/d12183645a31b737d7fb39cbefa589e34615e8f7
> 
> v17 is still needed to revert one breaking change introduced in v16 and
> fix more findings from Sashiko.

Ack.

-- 
Kind regards,

Sakari Ailus
Re: [PATCH v16 00/22] media: i2c: add Maxim GMSL2/3 serializer and deserializer drivers
Posted by Ricardo Ribalda 1 week, 5 days ago
Hi Sakari

On Sat, 12 Sept 2026 at 13:36, Sakari Ailus
<sakari.ailus@linux.intel.com> wrote:
>
> Hi Dumitru, Dan, Ricardo,
>
> On Tue, Sep 08, 2026 at 01:35:05PM +0300, Ceclan Dumitru wrote:
> > > Can you check this
> > > <URL:https://linux-media.pages.freedesktop.org/-/users/sailus/-/jobs/109521830/artifacts/junit/test-smatch.log.txt>
> > > please? If there's a single patch that needs to be modified, I can squash a
> > > patch into that, otherwise v17 it is.
> > >
> >
> > These are the same warns reported by Niklas in V13. Dan fixed them in
> > smatch in devel branch but fix is not in master. Testing with smatch on
> > that branch yields no warnings.
>
> Dan: any plans to merge these things to master some time soon? Or:
>
> Ricardo: could we use devel branch of smatch for some time?

Do you know what patch fixes it? If it is easy to cherry pick I can
add it to our list of smatch patches
https://gitlab.freedesktop.org/linux-media/media-ci/-/tree/main/third_party?ref_type=heads

>
> This driver has been waiting to be merged for quite some time so it'd be
> nice to get it to 7.4
>
> >
> > https://lore.kernel.org/all/ai_txjwLPHsSKsJI@stanley.mountain
> > https://repo.or.cz/smatch.git/commit/d12183645a31b737d7fb39cbefa589e34615e8f7
> >
> > v17 is still needed to revert one breaking change introduced in v16 and
> > fix more findings from Sashiko.
>
> Ack.
>
> --
> Kind regards,
>
> Sakari Ailus



-- 
Ricardo Ribalda
Re: [PATCH v16 00/22] media: i2c: add Maxim GMSL2/3 serializer and deserializer drivers
Posted by Dan Carpenter 1 week, 5 days ago
On Mon, Sep 14, 2026 at 02:10:10PM +0200, Ricardo Ribalda wrote:
> Hi Sakari
> 
> On Sat, 12 Sept 2026 at 13:36, Sakari Ailus
> <sakari.ailus@linux.intel.com> wrote:
> >
> > Hi Dumitru, Dan, Ricardo,
> >
> > On Tue, Sep 08, 2026 at 01:35:05PM +0300, Ceclan Dumitru wrote:
> > > > Can you check this
> > > > <URL:https://linux-media.pages.freedesktop.org/-/users/sailus/-/jobs/109521830/artifacts/junit/test-smatch.log.txt>
> > > > please? If there's a single patch that needs to be modified, I can squash a
> > > > patch into that, otherwise v17 it is.
> > > >
> > >
> > > These are the same warns reported by Niklas in V13. Dan fixed them in
> > > smatch in devel branch but fix is not in master. Testing with smatch on
> > > that branch yields no warnings.
> >
> > Dan: any plans to merge these things to master some time soon? Or:
> >
> > Ricardo: could we use devel branch of smatch for some time?
> 
> Do you know what patch fixes it? If it is easy to cherry pick I can
> add it to our list of smatch patches
> https://gitlab.freedesktop.org/linux-media/media-ci/-/tree/main/third_party?ref_type=heads
> 

Commit d12183645a31 ("precedence: silence some false positives")

Sorry, I felt like I was close to merging devel but then I started
another major surgery to the core and got stuck.

regards,
dan carpenter
Re: [PATCH v16 00/22] media: i2c: add Maxim GMSL2/3 serializer and deserializer drivers
Posted by Ricardo Ribalda 1 week, 4 days ago
Hi Dan, Hi Sakari

On Mon, 14 Sept 2026 at 15:11, Dan Carpenter <error27@gmail.com> wrote:
>
> On Mon, Sep 14, 2026 at 02:10:10PM +0200, Ricardo Ribalda wrote:
> > Hi Sakari
> >
> > On Sat, 12 Sept 2026 at 13:36, Sakari Ailus
> > <sakari.ailus@linux.intel.com> wrote:
> > >
> > > Hi Dumitru, Dan, Ricardo,
> > >
> > > On Tue, Sep 08, 2026 at 01:35:05PM +0300, Ceclan Dumitru wrote:
> > > > > Can you check this
> > > > > <URL:https://linux-media.pages.freedesktop.org/-/users/sailus/-/jobs/109521830/artifacts/junit/test-smatch.log.txt>
> > > > > please? If there's a single patch that needs to be modified, I can squash a
> > > > > patch into that, otherwise v17 it is.
> > > > >
> > > >
> > > > These are the same warns reported by Niklas in V13. Dan fixed them in
> > > > smatch in devel branch but fix is not in master. Testing with smatch on
> > > > that branch yields no warnings.
> > >
> > > Dan: any plans to merge these things to master some time soon? Or:
> > >
> > > Ricardo: could we use devel branch of smatch for some time?
> >
> > Do you know what patch fixes it? If it is easy to cherry pick I can
> > add it to our list of smatch patches
> > https://gitlab.freedesktop.org/linux-media/media-ci/-/tree/main/third_party?ref_type=heads
> >
>
> Commit d12183645a31 ("precedence: silence some false positives")
>
> Sorry, I felt like I was close to merging devel but then I started
> another major surgery to the core and got stuck.

Thanks for the pointer. I have added the patch to media-ci
https://gitlab.freedesktop.org/linux-media/media-ci/-/merge_requests/351

Now that I have your attention ... :P

May I ask you to look int
https://lore.kernel.org/all/20260914-unqual-v2-0-60a1407a0cd4@chromium.org/
in case you have missed it?

Thanks a lot!


>
> regards,
> dan carpenter
>
>


-- 
Ricardo Ribalda
Re: [PATCH v16 00/22] media: i2c: add Maxim GMSL2/3 serializer and deserializer drivers
Posted by Sakari Ailus 4 days, 6 hours ago
Hi Ricardo, Dan,

On Tue, Sep 15, 2026 at 05:56:43PM +0200, Ricardo Ribalda wrote:
> Hi Dan, Hi Sakari
> 
> On Mon, 14 Sept 2026 at 15:11, Dan Carpenter <error27@gmail.com> wrote:
> >
> > On Mon, Sep 14, 2026 at 02:10:10PM +0200, Ricardo Ribalda wrote:
> > > Hi Sakari
> > >
> > > On Sat, 12 Sept 2026 at 13:36, Sakari Ailus
> > > <sakari.ailus@linux.intel.com> wrote:
> > > >
> > > > Hi Dumitru, Dan, Ricardo,
> > > >
> > > > On Tue, Sep 08, 2026 at 01:35:05PM +0300, Ceclan Dumitru wrote:
> > > > > > Can you check this
> > > > > > <URL:https://linux-media.pages.freedesktop.org/-/users/sailus/-/jobs/109521830/artifacts/junit/test-smatch.log.txt>
> > > > > > please? If there's a single patch that needs to be modified, I can squash a
> > > > > > patch into that, otherwise v17 it is.
> > > > > >
> > > > >
> > > > > These are the same warns reported by Niklas in V13. Dan fixed them in
> > > > > smatch in devel branch but fix is not in master. Testing with smatch on
> > > > > that branch yields no warnings.
> > > >
> > > > Dan: any plans to merge these things to master some time soon? Or:
> > > >
> > > > Ricardo: could we use devel branch of smatch for some time?
> > >
> > > Do you know what patch fixes it? If it is easy to cherry pick I can
> > > add it to our list of smatch patches
> > > https://gitlab.freedesktop.org/linux-media/media-ci/-/tree/main/third_party?ref_type=heads
> > >
> >
> > Commit d12183645a31 ("precedence: silence some false positives")
> >
> > Sorry, I felt like I was close to merging devel but then I started
> > another major surgery to the core and got stuck.
> 
> Thanks for the pointer. I have added the patch to media-ci
> https://gitlab.freedesktop.org/linux-media/media-ci/-/merge_requests/351
> 
> Now that I have your attention ... :P
> 
> May I ask you to look int
> https://lore.kernel.org/all/20260914-unqual-v2-0-60a1407a0cd4@chromium.org/
> in case you have missed it?

I understand the required commit is there and I tried to push the Maxim
serdes driver again but I'm still getting
<URL:https://gitlab.freedesktop.org/linux-media/users/sailus/-/jobs/110822240/artifacts/file/junit/test-smatch.log.txt>.

I wonder if we could have the devel branch there or some more commits...?

-- 
Regards,

Sakari Ailus
Re: [PATCH v16 00/22] media: i2c: add Maxim GMSL2/3 serializer and deserializer drivers
Posted by Ricardo Ribalda 4 days, 6 hours ago
On Tue, 22 Sept 2026 at 13:17, Sakari Ailus
<sakari.ailus@linux.intel.com> wrote:
>
> Hi Ricardo, Dan,
>
> On Tue, Sep 15, 2026 at 05:56:43PM +0200, Ricardo Ribalda wrote:
> > Hi Dan, Hi Sakari
> >
> > On Mon, 14 Sept 2026 at 15:11, Dan Carpenter <error27@gmail.com> wrote:
> > >
> > > On Mon, Sep 14, 2026 at 02:10:10PM +0200, Ricardo Ribalda wrote:
> > > > Hi Sakari
> > > >
> > > > On Sat, 12 Sept 2026 at 13:36, Sakari Ailus
> > > > <sakari.ailus@linux.intel.com> wrote:
> > > > >
> > > > > Hi Dumitru, Dan, Ricardo,
> > > > >
> > > > > On Tue, Sep 08, 2026 at 01:35:05PM +0300, Ceclan Dumitru wrote:
> > > > > > > Can you check this
> > > > > > > <URL:https://linux-media.pages.freedesktop.org/-/users/sailus/-/jobs/109521830/artifacts/junit/test-smatch.log.txt>
> > > > > > > please? If there's a single patch that needs to be modified, I can squash a
> > > > > > > patch into that, otherwise v17 it is.
> > > > > > >
> > > > > >
> > > > > > These are the same warns reported by Niklas in V13. Dan fixed them in
> > > > > > smatch in devel branch but fix is not in master. Testing with smatch on
> > > > > > that branch yields no warnings.
> > > > >
> > > > > Dan: any plans to merge these things to master some time soon? Or:
> > > > >
> > > > > Ricardo: could we use devel branch of smatch for some time?
> > > >
> > > > Do you know what patch fixes it? If it is easy to cherry pick I can
> > > > add it to our list of smatch patches
> > > > https://gitlab.freedesktop.org/linux-media/media-ci/-/tree/main/third_party?ref_type=heads
> > > >
> > >
> > > Commit d12183645a31 ("precedence: silence some false positives")
> > >
> > > Sorry, I felt like I was close to merging devel but then I started
> > > another major surgery to the core and got stuck.
> >
> > Thanks for the pointer. I have added the patch to media-ci
> > https://gitlab.freedesktop.org/linux-media/media-ci/-/merge_requests/351
> >
> > Now that I have your attention ... :P
> >
> > May I ask you to look int
> > https://lore.kernel.org/all/20260914-unqual-v2-0-60a1407a0cd4@chromium.org/
> > in case you have missed it?
>
> I understand the required commit is there and I tried to push the Maxim
> serdes driver again but I'm still getting
> <URL:https://gitlab.freedesktop.org/linux-media/users/sailus/-/jobs/110822240/artifacts/file/junit/test-smatch.log.txt>.
>
> I wonder if we could have the devel branch there or some more commits...?

I managed to reproduce it also in my computer, so I do not think that
it is an issue in media-ci.

I would prefer using only tagged versions in media-ci.

Dan, how far are you from making a release?

>
> --
> Regards,
>
> Sakari Ailus



-- 
Ricardo Ribalda
Re: [PATCH v16 00/22] media: i2c: add Maxim GMSL2/3 serializer and deserializer drivers
Posted by Artur Andrzejczak 2 weeks, 4 days ago
Hi Dumitru,

Went through v16 and checked points I raised on v15.
All of them have been addressed.

Kind Regards,
Artur Andrzejczak