]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
Merge tag 'media/v6.18-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab...
authorLinus Torvalds <torvalds@linux-foundation.org>
Thu, 2 Oct 2025 20:13:26 +0000 (13:13 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 2 Oct 2025 20:13:26 +0000 (13:13 -0700)
Pull media updates from Mauro Carvalho Chehab:

 - Added a new V4L2 clock helper

 - New camera sensor drivers

 - iris: Enable H.264/H.265 encoder support and fixes in iris driver
   common code

 - camss: add support for new SoC flavors

 - venus: add new SoC support

 - tc358743: support more infoframe types

 - Various fixes, driver improvements and cleanups

* tag 'media/v6.18-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (439 commits)
  media: venus: pm_helpers: add fallback for the opp-table
  media: qcom: camss: vfe: Fix BPL alignment for QCM2290
  media: tuner: xc5000: Fix use-after-free in xc5000_release
  media: i2c: tc358743: Fix use-after-free bugs caused by orphan timer in probe
  media: b2c2: Fix use-after-free causing by irq_check_work in flexcop_pci_remove
  media: vsp1: Export missing vsp1_isp_free_buffer symbol
  media: renesas: vsp1: Convert to SYSTEM_SLEEP/RUNTIME_PM_OPS()
  media: renesas: ceu: Convert to RUNTIME_PM_OPS()
  media: renesas: fdp1: Convert to RUNTIME_PM_OPS()
  media: renesas: rcar-vin: Convert to DEFINE_SIMPLE_DEV_PM_OPS()
  media: renesas: rcar_drif: Convert to DEFINE_SIMPLE_DEV_PM_OPS()
  media: uvcvideo: Mark invalid entities with id UVC_INVALID_ENTITY_ID
  media: uvcvideo: Support UVC_CROSXU_CONTROL_IQ_PROFILE
  media: uvcvideo: Run uvc_ctrl_init_ctrl for all controls
  media: uvcvideo: Shorten the transfer size non compliance message
  media: uvcvideo: Do not re-reference dev->udev
  media: uvcvideo: Use intf instead of udev for printks
  media: uvcvideo: Move video_device under video_queue
  media: uvcvideo: Drop stream->mutex
  media: uvcvideo: Move MSXU_CONTROL_METADATA definition to header
  ...

23 files changed:
1  2 
.mailmap
Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml
MAINTAINERS
drivers/media/i2c/gc2145.c
drivers/media/i2c/imx219.c
drivers/media/i2c/imx283.c
drivers/media/i2c/imx290.c
drivers/media/i2c/imx296.c
drivers/media/i2c/imx415.c
drivers/media/i2c/mt9m114.c
drivers/media/i2c/ov4689.c
drivers/media/i2c/ov5640.c
drivers/media/i2c/ov5645.c
drivers/media/i2c/ov64a40.c
drivers/media/i2c/ov8858.c
drivers/media/i2c/vd55g1.c
drivers/media/i2c/vd56g3.c
drivers/media/platform/cadence/cdns-csi2rx.c
drivers/media/platform/chips-media/wave5/wave5-vpu-dec.c
drivers/media/platform/chips-media/wave5/wave5-vpu-enc.c
drivers/media/platform/qcom/venus/firmware.c
drivers/media/platform/rockchip/rkvdec/rkvdec.c
drivers/media/platform/verisilicon/hantro_drv.c

diff --cc .mailmap
Simple merge
diff --cc MAINTAINERS
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index 7f1ce95cdc3f13e29b3892cff89f21ee0d71a168,828b4ba4301d3e96c73f7695a7e254ae5f681060..8c19f125da3e50f55a0ae280b05e7918ce115101
@@@ -569,6 -580,33 +580,33 @@@ static int csi2rx_init_state(struct v4l
        return csi2rx_set_fmt(subdev, state, &format);
  }
  
 -EXPORT_SYMBOL_GPL_FOR_MODULES(cdns_csi2rx_negotiate_ppc, "j721e-csi2rx");
+ int cdns_csi2rx_negotiate_ppc(struct v4l2_subdev *subdev, unsigned int pad,
+                             u8 *ppc)
+ {
+       struct csi2rx_priv *csi2rx = v4l2_subdev_to_csi2rx(subdev);
+       const struct csi2rx_fmt *csi_fmt;
+       struct v4l2_subdev_state *state;
+       struct v4l2_mbus_framefmt *fmt;
+       if (!ppc || pad < CSI2RX_PAD_SOURCE_STREAM0 || pad >= CSI2RX_PAD_MAX)
+               return -EINVAL;
+       state = v4l2_subdev_lock_and_get_active_state(subdev);
+       fmt = v4l2_subdev_state_get_format(state, pad);
+       csi_fmt = csi2rx_get_fmt_by_code(fmt->code);
+       /* Reduce requested PPC if it is too high */
+       *ppc = min(*ppc, csi_fmt->max_pixels);
+       v4l2_subdev_unlock_state(state);
+       csi2rx->num_pixels[pad - CSI2RX_PAD_SOURCE_STREAM0] =
+               CSI2RX_STREAM_CFG_NUM_PIXELS(*ppc);
+       return 0;
+ }
++EXPORT_SYMBOL_FOR_MODULES(cdns_csi2rx_negotiate_ppc, "j721e-csi2rx");
  static const struct v4l2_subdev_pad_ops csi2rx_pad_ops = {
        .enum_mbus_code = csi2rx_enum_mbus_code,
        .get_fmt        = v4l2_subdev_get_fmt,