On Mon, May 06, 2024 at 11:37:13AM +0200, Jacopo Mondi wrote: > On Mon, May 06, 2024 at 12:36:11AM GMT, Laurent Pinchart wrote: > > On Fri, May 03, 2024 at 05:51:26PM +0200, Jacopo Mondi wrote: > > > Use the frame interval stored in the subdev state instead of storing > > > a copy in the driver private structure. > > > > > > Signed-off-by: Jacopo Mondi <jacopo.mondi@xxxxxxxxxxxxxxxx> > > > --- > > > drivers/media/i2c/max9286.c | 52 +++++++++++++++++-------------------- > > > 1 file changed, 24 insertions(+), 28 deletions(-) > > > > > > diff --git a/drivers/media/i2c/max9286.c b/drivers/media/i2c/max9286.c > > > index cc7ee35560fc..4ddbc247395f 100644 > > > --- a/drivers/media/i2c/max9286.c > > > +++ b/drivers/media/i2c/max9286.c > > > @@ -197,8 +197,6 @@ struct max9286_priv { > > > struct v4l2_ctrl *pixelrate_ctrl; > > > unsigned int pixelrate; > > > > > > - struct v4l2_fract interval; > > > - > > > unsigned int nsources; > > > unsigned int source_mask; > > > unsigned int route_mask; > > > @@ -571,11 +569,14 @@ static void max9286_set_video_format(struct max9286_priv *priv, > > > MAX9286_INVVS | MAX9286_HVSRC_D14); > > > } > > > > > > -static void max9286_set_fsync_period(struct max9286_priv *priv) > > > +static void max9286_set_fsync_period(struct max9286_priv *priv, > > > + struct v4l2_subdev_state *state) > > > { > > > + struct v4l2_fract *interval; > > > > const > > ../drivers/media/i2c/max9286.c:993:29: error: assignment of member ‘numerator’ in read-only object > 993 | interval->numerator = 0; That's the .init_state() implementation. There you can't make it const, but in max9286_set_fsync_period() it should be fine. -- Regards, Laurent Pinchart