Skip to content

Commit 5461e07

Browse files
committed
Merge tag 'media/v6.2-2' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media
Pull media fixes from Mauro Carvalho Chehab: - A regression at V4L2 core breaking string controls - Build warning fixes on sun6i drivers when building with clang * tag 'media/v6.2-2' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: media: sun6i-isp: params: Unregister pending buffer on cleanup media: sun6i-isp: params: Fix incorrect indentation media: sun6i-isp: capture: Fix uninitialized variable use media: sun6i-isp: proc: Declare subdev ops as static media: sun6i-isp: proc: Error out on invalid port to fix warning media: sun6i-isp: proc: Fix return code handling in stream off path media: sun8i-a83t-mipi-csi2: Clarify return code handling in stream off path media: sun6i-mipi-csi2: Clarify return code handling in stream off path media: sun6i-csi: capture: Remove useless ret initialization media: sun6i-csi: bridge: Error out on invalid port to fix warning media: v4l2-ctrls-api.c: add back dropped ctrl->is_new = 1
2 parents 7a693ea + 542d3c0 commit 5461e07

File tree

8 files changed

+17
-16
lines changed

8 files changed

+17
-16
lines changed

drivers/media/platform/sunxi/sun6i-csi/sun6i_csi_bridge.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -663,7 +663,7 @@ sun6i_csi_bridge_notifier_bound(struct v4l2_async_notifier *notifier,
663663
enabled = !bridge->source_parallel.expected;
664664
break;
665665
default:
666-
break;
666+
return -EINVAL;
667667
}
668668

669669
source->subdev = remote_subdev;

drivers/media/platform/sunxi/sun6i-csi/sun6i_csi_capture.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -832,7 +832,7 @@ static int sun6i_csi_capture_open(struct file *file)
832832
{
833833
struct sun6i_csi_device *csi_dev = video_drvdata(file);
834834
struct sun6i_csi_capture *capture = &csi_dev->capture;
835-
int ret = 0;
835+
int ret;
836836

837837
if (mutex_lock_interruptible(&capture->lock))
838838
return -ERESTARTSYS;

drivers/media/platform/sunxi/sun6i-mipi-csi2/sun6i_mipi_csi2.c

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,8 @@ static int sun6i_mipi_csi2_s_stream(struct v4l2_subdev *subdev, int on)
188188
return -ENODEV;
189189

190190
if (!on) {
191-
ret = v4l2_subdev_call(source_subdev, video, s_stream, 0);
191+
v4l2_subdev_call(source_subdev, video, s_stream, 0);
192+
ret = 0;
192193
goto disable;
193194
}
194195

@@ -280,8 +281,6 @@ static int sun6i_mipi_csi2_s_stream(struct v4l2_subdev *subdev, int on)
280281
return 0;
281282

282283
disable:
283-
if (!on)
284-
ret = 0;
285284
phy_power_off(dphy);
286285
sun6i_mipi_csi2_disable(csi2_dev);
287286

drivers/media/platform/sunxi/sun8i-a83t-mipi-csi2/sun8i_a83t_mipi_csi2.c

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -220,7 +220,8 @@ static int sun8i_a83t_mipi_csi2_s_stream(struct v4l2_subdev *subdev, int on)
220220
return -ENODEV;
221221

222222
if (!on) {
223-
ret = v4l2_subdev_call(source_subdev, video, s_stream, 0);
223+
v4l2_subdev_call(source_subdev, video, s_stream, 0);
224+
ret = 0;
224225
goto disable;
225226
}
226227

@@ -312,8 +313,6 @@ static int sun8i_a83t_mipi_csi2_s_stream(struct v4l2_subdev *subdev, int on)
312313
return 0;
313314

314315
disable:
315-
if (!on)
316-
ret = 0;
317316
phy_power_off(dphy);
318317
sun8i_a83t_mipi_csi2_disable(csi2_dev);
319318

drivers/media/v4l2-core/v4l2-ctrls-api.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -150,6 +150,7 @@ static int user_to_new(struct v4l2_ext_control *c, struct v4l2_ctrl *ctrl)
150150
* then return an error.
151151
*/
152152
if (strlen(ctrl->p_new.p_char) == ctrl->maximum && last)
153+
ctrl->is_new = 1;
153154
return -ERANGE;
154155
}
155156
return ret;

drivers/staging/media/sunxi/sun6i-isp/sun6i_isp_capture.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -108,8 +108,8 @@ sun6i_isp_capture_buffer_configure(struct sun6i_isp_device *isp_dev,
108108
void sun6i_isp_capture_configure(struct sun6i_isp_device *isp_dev)
109109
{
110110
unsigned int width, height;
111-
unsigned int stride_luma, stride_chroma = 0;
112-
unsigned int stride_luma_div4, stride_chroma_div4;
111+
unsigned int stride_luma, stride_chroma;
112+
unsigned int stride_luma_div4, stride_chroma_div4 = 0;
113113
const struct sun6i_isp_capture_format *format;
114114
const struct v4l2_format_info *info;
115115
u32 pixelformat;

drivers/staging/media/sunxi/sun6i-isp/sun6i_isp_params.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -183,8 +183,8 @@ void sun6i_isp_params_configure(struct sun6i_isp_device *isp_dev)
183183
if (state->configured)
184184
goto complete;
185185

186-
sun6i_isp_params_configure_modules(isp_dev,
187-
&sun6i_isp_params_config_default);
186+
sun6i_isp_params_configure_modules(isp_dev,
187+
&sun6i_isp_params_config_default);
188188

189189
state->configured = true;
190190

@@ -208,6 +208,8 @@ static void sun6i_isp_params_state_cleanup(struct sun6i_isp_device *isp_dev,
208208
vb2_buffer = &state->pending->v4l2_buffer.vb2_buf;
209209
vb2_buffer_done(vb2_buffer, error ? VB2_BUF_STATE_ERROR :
210210
VB2_BUF_STATE_QUEUED);
211+
212+
state->pending = NULL;
211213
}
212214

213215
list_for_each_entry(isp_buffer, &state->queue, list) {

drivers/staging/media/sunxi/sun6i-isp/sun6i_isp_proc.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -173,8 +173,7 @@ static int sun6i_isp_proc_s_stream(struct v4l2_subdev *subdev, int on)
173173
struct sun6i_isp_proc_source *source;
174174
struct v4l2_subdev *source_subdev;
175175
struct media_pad *remote_pad;
176-
/* Initialize to 0 to use both in disable label (ret != 0) and off. */
177-
int ret = 0;
176+
int ret;
178177

179178
/* Source */
180179

@@ -195,6 +194,7 @@ static int sun6i_isp_proc_s_stream(struct v4l2_subdev *subdev, int on)
195194
if (!on) {
196195
sun6i_isp_proc_irq_disable(isp_dev);
197196
v4l2_subdev_call(source_subdev, video, s_stream, 0);
197+
ret = 0;
198198
goto disable;
199199
}
200200

@@ -342,7 +342,7 @@ static const struct v4l2_subdev_pad_ops sun6i_isp_proc_pad_ops = {
342342
.set_fmt = sun6i_isp_proc_set_fmt,
343343
};
344344

345-
const struct v4l2_subdev_ops sun6i_isp_proc_subdev_ops = {
345+
static const struct v4l2_subdev_ops sun6i_isp_proc_subdev_ops = {
346346
.video = &sun6i_isp_proc_video_ops,
347347
.pad = &sun6i_isp_proc_pad_ops,
348348
};
@@ -416,7 +416,7 @@ static int sun6i_isp_proc_notifier_bound(struct v4l2_async_notifier *notifier,
416416
enabled = !proc->source_csi0.expected;
417417
break;
418418
default:
419-
break;
419+
return -EINVAL;
420420
}
421421

422422
source->subdev = remote_subdev;

0 commit comments

Comments
 (0)