From 02e5e2239224407e996209939dbf65dc6f79132c Mon Sep 17 00:00:00 2001 From: Atlas Yu Date: Fri, 9 Jan 2026 15:33:14 +0800 Subject: [PATCH] media: ipu7: Stop accessing streams configs directly The v4l2_subdev_stream_config structure is private after Linux 6.18, now iterate over routes instead to get the stream's ID. --- drivers/media/pci/intel/ipu7/ipu7-isys-video.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/drivers/media/pci/intel/ipu7/ipu7-isys-video.c b/drivers/media/pci/intel/ipu7/ipu7-isys-video.c index de3ebf9..501a1ea 100644 --- a/drivers/media/pci/intel/ipu7/ipu7-isys-video.c +++ b/drivers/media/pci/intel/ipu7/ipu7-isys-video.c @@ -864,19 +864,17 @@ static u32 get_remote_pad_stream(struct media_pad *r_pad) { struct v4l2_subdev_state *state; struct v4l2_subdev *sd; + struct v4l2_subdev_route *route; u32 stream_id = 0; - unsigned int i; sd = media_entity_to_v4l2_subdev(r_pad->entity); state = v4l2_subdev_lock_and_get_active_state(sd); if (!state) return 0; - for (i = 0; i < state->stream_configs.num_configs; i++) { - struct v4l2_subdev_stream_config *cfg = - &state->stream_configs.configs[i]; - if (cfg->pad == r_pad->index) { - stream_id = cfg->stream; + for_each_active_route(&state->routing, route) { + if (route->source_pad == r_pad->index) { + stream_id = route->source_stream; break; } }