forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-10-22 8ac6c7a54ed1b98d142dce24b11c6de6a1e239a5
kernel/drivers/media/usb/uvc/uvc_queue.c
....@@ -1,14 +1,9 @@
1
+// SPDX-License-Identifier: GPL-2.0-or-later
12 /*
23 * uvc_queue.c -- USB Video Class driver - Buffers management
34 *
45 * Copyright (C) 2005-2010
56 * Laurent Pinchart (laurent.pinchart@ideasonboard.com)
6
- *
7
- * This program is free software; you can redistribute it and/or modify
8
- * it under the terms of the GNU General Public License as published by
9
- * the Free Software Foundation; either version 2 of the License, or
10
- * (at your option) any later version.
11
- *
127 */
138
149 #include <linux/atomic.h>
....@@ -84,7 +79,7 @@
8479
8580 switch (vq->type) {
8681 case V4L2_BUF_TYPE_META_CAPTURE:
87
- size = UVC_METATADA_BUF_SIZE;
82
+ size = UVC_METADATA_BUF_SIZE;
8883 break;
8984
9085 default:
....@@ -176,7 +171,7 @@
176171
177172 queue->buf_used = 0;
178173
179
- ret = uvc_video_enable(stream, 1);
174
+ ret = uvc_video_start_streaming(stream);
180175 if (ret == 0)
181176 return 0;
182177
....@@ -194,7 +189,7 @@
194189 lockdep_assert_irqs_enabled();
195190
196191 if (vq->type != V4L2_BUF_TYPE_META_CAPTURE)
197
- uvc_video_enable(uvc_queue_to_stream(queue), 0);
192
+ uvc_video_stop_streaming(uvc_queue_to_stream(queue));
198193
199194 spin_lock_irq(&queue->irqlock);
200195 uvc_queue_return_buffers(queue, UVC_BUF_STATE_ERROR);
....@@ -303,12 +298,13 @@
303298 return ret;
304299 }
305300
306
-int uvc_queue_buffer(struct uvc_video_queue *queue, struct v4l2_buffer *buf)
301
+int uvc_queue_buffer(struct uvc_video_queue *queue,
302
+ struct media_device *mdev, struct v4l2_buffer *buf)
307303 {
308304 int ret;
309305
310306 mutex_lock(&queue->mutex);
311
- ret = vb2_qbuf(&queue->queue, buf);
307
+ ret = vb2_qbuf(&queue->queue, mdev, buf);
312308 mutex_unlock(&queue->mutex);
313309
314310 return ret;