Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

media: drivers: use video device pipeline start/stop

Convert the media drivers to use video device based pipeline start/stop
where possible.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>

authored by

Tomi Valkeinen and committed by
Mauro Carvalho Chehab
12cecbf9 340eba47

+62 -66
+3 -3
drivers/media/pci/intel/ipu3/ipu3-cio2-main.c
··· 989 989 return r; 990 990 } 991 991 992 - r = media_pipeline_start(&q->vdev.entity, &q->pipe); 992 + r = video_device_pipeline_start(&q->vdev, &q->pipe); 993 993 if (r) 994 994 goto fail_pipeline; 995 995 ··· 1009 1009 fail_csi2_subdev: 1010 1010 cio2_hw_exit(cio2, q); 1011 1011 fail_hw: 1012 - media_pipeline_stop(&q->vdev.entity); 1012 + video_device_pipeline_stop(&q->vdev); 1013 1013 fail_pipeline: 1014 1014 dev_dbg(dev, "failed to start streaming (%d)\n", r); 1015 1015 cio2_vb2_return_all_buffers(q, VB2_BUF_STATE_QUEUED); ··· 1030 1030 cio2_hw_exit(cio2, q); 1031 1031 synchronize_irq(cio2->pci_dev->irq); 1032 1032 cio2_vb2_return_all_buffers(q, VB2_BUF_STATE_ERROR); 1033 - media_pipeline_stop(&q->vdev.entity); 1033 + video_device_pipeline_stop(&q->vdev); 1034 1034 pm_runtime_put(dev); 1035 1035 cio2->streaming = false; 1036 1036 }
+3 -3
drivers/media/platform/qcom/camss/camss-video.c
··· 493 493 struct v4l2_subdev *subdev; 494 494 int ret; 495 495 496 - ret = media_pipeline_start(&vdev->entity, &video->pipe); 496 + ret = video_device_pipeline_start(vdev, &video->pipe); 497 497 if (ret < 0) 498 498 return ret; 499 499 ··· 522 522 return 0; 523 523 524 524 error: 525 - media_pipeline_stop(&vdev->entity); 525 + video_device_pipeline_stop(vdev); 526 526 527 527 video->ops->flush_buffers(video, VB2_BUF_STATE_QUEUED); 528 528 ··· 553 553 v4l2_subdev_call(subdev, video, s_stream, 0); 554 554 } 555 555 556 - media_pipeline_stop(&vdev->entity); 556 + video_device_pipeline_stop(vdev); 557 557 558 558 video->ops->flush_buffers(video, VB2_BUF_STATE_ERROR); 559 559 }
+3 -3
drivers/media/platform/renesas/rcar-vin/rcar-dma.c
··· 1265 1265 sd = media_entity_to_v4l2_subdev(pad->entity); 1266 1266 1267 1267 if (!on) { 1268 - media_pipeline_stop(&vin->vdev.entity); 1268 + video_device_pipeline_stop(&vin->vdev); 1269 1269 return v4l2_subdev_call(sd, video, s_stream, 0); 1270 1270 } 1271 1271 ··· 1282 1282 mdev = vin->vdev.entity.graph_obj.mdev; 1283 1283 mutex_lock(&mdev->graph_mutex); 1284 1284 pipe = media_entity_pipeline(&sd->entity) ? : &vin->vdev.pipe; 1285 - ret = __media_pipeline_start(&vin->vdev.entity, pipe); 1285 + ret = __video_device_pipeline_start(&vin->vdev, pipe); 1286 1286 mutex_unlock(&mdev->graph_mutex); 1287 1287 if (ret) 1288 1288 return ret; ··· 1291 1291 if (ret == -ENOIOCTLCMD) 1292 1292 ret = 0; 1293 1293 if (ret) 1294 - media_pipeline_stop(&vin->vdev.entity); 1294 + video_device_pipeline_stop(&vin->vdev); 1295 1295 1296 1296 return ret; 1297 1297 }
+3 -3
drivers/media/platform/renesas/vsp1/vsp1_video.c
··· 927 927 } 928 928 mutex_unlock(&pipe->lock); 929 929 930 - media_pipeline_stop(&video->video.entity); 930 + video_device_pipeline_stop(&video->video); 931 931 vsp1_video_release_buffers(video); 932 932 vsp1_video_pipeline_put(pipe); 933 933 } ··· 1046 1046 return PTR_ERR(pipe); 1047 1047 } 1048 1048 1049 - ret = __media_pipeline_start(&video->video.entity, &pipe->pipe); 1049 + ret = __video_device_pipeline_start(&video->video, &pipe->pipe); 1050 1050 if (ret < 0) { 1051 1051 mutex_unlock(&mdev->graph_mutex); 1052 1052 goto err_pipe; ··· 1070 1070 return 0; 1071 1071 1072 1072 err_stop: 1073 - media_pipeline_stop(&video->video.entity); 1073 + video_device_pipeline_stop(&video->video); 1074 1074 err_pipe: 1075 1075 vsp1_video_pipeline_put(pipe); 1076 1076 return ret;
+5 -5
drivers/media/platform/rockchip/rkisp1/rkisp1-capture.c
··· 913 913 * 914 914 * Call s_stream(false) in the reverse order from 915 915 * rkisp1_pipeline_stream_enable() and disable the DMA engine. 916 - * Should be called before media_pipeline_stop() 916 + * Should be called before video_device_pipeline_stop() 917 917 */ 918 918 static void rkisp1_pipeline_stream_disable(struct rkisp1_capture *cap) 919 919 __must_hold(&cap->rkisp1->stream_lock) ··· 937 937 * rkisp1_pipeline_stream_enable - enable nodes in the pipeline 938 938 * 939 939 * Enable the DMA Engine and call s_stream(true) through the pipeline. 940 - * Should be called after media_pipeline_start() 940 + * Should be called after video_device_pipeline_start() 941 941 */ 942 942 static int rkisp1_pipeline_stream_enable(struct rkisp1_capture *cap) 943 943 __must_hold(&cap->rkisp1->stream_lock) ··· 994 994 995 995 rkisp1_dummy_buf_destroy(cap); 996 996 997 - media_pipeline_stop(&node->vdev.entity); 997 + video_device_pipeline_stop(&node->vdev); 998 998 999 999 mutex_unlock(&cap->rkisp1->stream_lock); 1000 1000 } ··· 1008 1008 1009 1009 mutex_lock(&cap->rkisp1->stream_lock); 1010 1010 1011 - ret = media_pipeline_start(entity, &cap->rkisp1->pipe); 1011 + ret = video_device_pipeline_start(&cap->vnode.vdev, &cap->rkisp1->pipe); 1012 1012 if (ret) { 1013 1013 dev_err(cap->rkisp1->dev, "start pipeline failed %d\n", ret); 1014 1014 goto err_ret_buffers; ··· 1044 1044 err_destroy_dummy: 1045 1045 rkisp1_dummy_buf_destroy(cap); 1046 1046 err_pipeline_stop: 1047 - media_pipeline_stop(entity); 1047 + video_device_pipeline_stop(&cap->vnode.vdev); 1048 1048 err_ret_buffers: 1049 1049 rkisp1_return_all_buffers(cap, VB2_BUF_STATE_QUEUED); 1050 1050 mutex_unlock(&cap->rkisp1->stream_lock);
+4 -5
drivers/media/platform/samsung/exynos4-is/fimc-capture.c
··· 524 524 mutex_lock(&fimc->lock); 525 525 526 526 if (close && vc->streaming) { 527 - media_pipeline_stop(&vc->ve.vdev.entity); 527 + video_device_pipeline_stop(&vc->ve.vdev); 528 528 vc->streaming = false; 529 529 } 530 530 ··· 1176 1176 { 1177 1177 struct fimc_dev *fimc = video_drvdata(file); 1178 1178 struct fimc_vid_cap *vc = &fimc->vid_cap; 1179 - struct media_entity *entity = &vc->ve.vdev.entity; 1180 1179 struct fimc_source_info *si = NULL; 1181 1180 struct v4l2_subdev *sd; 1182 1181 int ret; ··· 1183 1184 if (fimc_capture_active(fimc)) 1184 1185 return -EBUSY; 1185 1186 1186 - ret = media_pipeline_start(entity, &vc->ve.pipe->mp); 1187 + ret = video_device_pipeline_start(&vc->ve.vdev, &vc->ve.pipe->mp); 1187 1188 if (ret < 0) 1188 1189 return ret; 1189 1190 ··· 1217 1218 } 1218 1219 1219 1220 err_p_stop: 1220 - media_pipeline_stop(entity); 1221 + video_device_pipeline_stop(&vc->ve.vdev); 1221 1222 return ret; 1222 1223 } 1223 1224 ··· 1233 1234 return ret; 1234 1235 1235 1236 if (vc->streaming) { 1236 - media_pipeline_stop(&vc->ve.vdev.entity); 1237 + video_device_pipeline_stop(&vc->ve.vdev); 1237 1238 vc->streaming = false; 1238 1239 } 1239 1240
+4 -5
drivers/media/platform/samsung/exynos4-is/fimc-isp-video.c
··· 312 312 is_singular_file = v4l2_fh_is_singular_file(file); 313 313 314 314 if (is_singular_file && ivc->streaming) { 315 - media_pipeline_stop(entity); 315 + video_device_pipeline_stop(&ivc->ve.vdev); 316 316 ivc->streaming = 0; 317 317 } 318 318 ··· 490 490 { 491 491 struct fimc_isp *isp = video_drvdata(file); 492 492 struct exynos_video_entity *ve = &isp->video_capture.ve; 493 - struct media_entity *me = &ve->vdev.entity; 494 493 int ret; 495 494 496 - ret = media_pipeline_start(me, &ve->pipe->mp); 495 + ret = video_device_pipeline_start(&ve->vdev, &ve->pipe->mp); 497 496 if (ret < 0) 498 497 return ret; 499 498 ··· 507 508 isp->video_capture.streaming = 1; 508 509 return 0; 509 510 p_stop: 510 - media_pipeline_stop(me); 511 + video_device_pipeline_stop(&ve->vdev); 511 512 return ret; 512 513 } 513 514 ··· 522 523 if (ret < 0) 523 524 return ret; 524 525 525 - media_pipeline_stop(&video->ve.vdev.entity); 526 + video_device_pipeline_stop(&video->ve.vdev); 526 527 video->streaming = 0; 527 528 return 0; 528 529 }
+4 -5
drivers/media/platform/samsung/exynos4-is/fimc-lite.c
··· 516 516 if (v4l2_fh_is_singular_file(file) && 517 517 atomic_read(&fimc->out_path) == FIMC_IO_DMA) { 518 518 if (fimc->streaming) { 519 - media_pipeline_stop(entity); 519 + video_device_pipeline_stop(&fimc->ve.vdev); 520 520 fimc->streaming = false; 521 521 } 522 522 fimc_lite_stop_capture(fimc, false); ··· 812 812 enum v4l2_buf_type type) 813 813 { 814 814 struct fimc_lite *fimc = video_drvdata(file); 815 - struct media_entity *entity = &fimc->ve.vdev.entity; 816 815 int ret; 817 816 818 817 if (fimc_lite_active(fimc)) 819 818 return -EBUSY; 820 819 821 - ret = media_pipeline_start(entity, &fimc->ve.pipe->mp); 820 + ret = video_device_pipeline_start(&fimc->ve.vdev, &fimc->ve.pipe->mp); 822 821 if (ret < 0) 823 822 return ret; 824 823 ··· 834 835 } 835 836 836 837 err_p_stop: 837 - media_pipeline_stop(entity); 838 + video_device_pipeline_stop(&fimc->ve.vdev); 838 839 return 0; 839 840 } 840 841 ··· 848 849 if (ret < 0) 849 850 return ret; 850 851 851 - media_pipeline_stop(&fimc->ve.vdev.entity); 852 + video_device_pipeline_stop(&fimc->ve.vdev); 852 853 fimc->streaming = false; 853 854 return 0; 854 855 }
+3 -3
drivers/media/platform/st/stm32/stm32-dcmi.c
··· 751 751 goto err_unlocked; 752 752 } 753 753 754 - ret = media_pipeline_start(&dcmi->vdev->entity, &dcmi->pipeline); 754 + ret = video_device_pipeline_start(dcmi->vdev, &dcmi->pipeline); 755 755 if (ret < 0) { 756 756 dev_err(dcmi->dev, "%s: Failed to start streaming, media pipeline start error (%d)\n", 757 757 __func__, ret); ··· 865 865 dcmi_pipeline_stop(dcmi); 866 866 867 867 err_media_pipeline_stop: 868 - media_pipeline_stop(&dcmi->vdev->entity); 868 + video_device_pipeline_stop(dcmi->vdev); 869 869 870 870 err_pm_put: 871 871 pm_runtime_put(dcmi->dev); ··· 892 892 893 893 dcmi_pipeline_stop(dcmi); 894 894 895 - media_pipeline_stop(&dcmi->vdev->entity); 895 + video_device_pipeline_stop(dcmi->vdev); 896 896 897 897 spin_lock_irq(&dcmi->irqlock); 898 898
+3 -3
drivers/media/platform/sunxi/sun4i-csi/sun4i_dma.c
··· 266 266 goto err_clear_dma_queue; 267 267 } 268 268 269 - ret = media_pipeline_start(&csi->vdev.entity, &csi->vdev.pipe); 269 + ret = video_device_pipeline_start(&csi->vdev, &csi->vdev.pipe); 270 270 if (ret < 0) 271 271 goto err_free_scratch_buffer; 272 272 ··· 330 330 sun4i_csi_capture_stop(csi); 331 331 332 332 err_disable_pipeline: 333 - media_pipeline_stop(&csi->vdev.entity); 333 + video_device_pipeline_stop(&csi->vdev); 334 334 335 335 err_free_scratch_buffer: 336 336 dma_free_coherent(csi->dev, csi->scratch.size, csi->scratch.vaddr, ··· 359 359 return_all_buffers(csi, VB2_BUF_STATE_ERROR); 360 360 spin_unlock_irqrestore(&csi->qlock, flags); 361 361 362 - media_pipeline_stop(&csi->vdev.entity); 362 + video_device_pipeline_stop(&csi->vdev); 363 363 364 364 dma_free_coherent(csi->dev, csi->scratch.size, csi->scratch.vaddr, 365 365 csi->scratch.paddr);
+3 -3
drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c
··· 141 141 142 142 video->sequence = 0; 143 143 144 - ret = media_pipeline_start(&video->vdev.entity, &video->vdev.pipe); 144 + ret = video_device_pipeline_start(&video->vdev, &video->vdev.pipe); 145 145 if (ret < 0) 146 146 goto clear_dma_queue; 147 147 ··· 207 207 stop_csi_stream: 208 208 sun6i_csi_set_stream(video->csi, false); 209 209 stop_media_pipeline: 210 - media_pipeline_stop(&video->vdev.entity); 210 + video_device_pipeline_stop(&video->vdev); 211 211 clear_dma_queue: 212 212 spin_lock_irqsave(&video->dma_queue_lock, flags); 213 213 list_for_each_entry(buf, &video->dma_queue, list) ··· 231 231 232 232 sun6i_csi_set_stream(video->csi, false); 233 233 234 - media_pipeline_stop(&video->vdev.entity); 234 + video_device_pipeline_stop(&video->vdev); 235 235 236 236 /* Release all active buffers */ 237 237 spin_lock_irqsave(&video->dma_queue_lock, flags);
+3 -3
drivers/media/platform/ti/cal/cal-video.c
··· 708 708 dma_addr_t addr; 709 709 int ret; 710 710 711 - ret = media_pipeline_start(&ctx->vdev.entity, &ctx->phy->pipe); 711 + ret = video_device_pipeline_start(&ctx->vdev, &ctx->phy->pipe); 712 712 if (ret < 0) { 713 713 ctx_err(ctx, "Failed to start media pipeline: %d\n", ret); 714 714 goto error_release_buffers; ··· 761 761 cal_ctx_unprepare(ctx); 762 762 763 763 error_pipeline: 764 - media_pipeline_stop(&ctx->vdev.entity); 764 + video_device_pipeline_stop(&ctx->vdev); 765 765 error_release_buffers: 766 766 cal_release_buffers(ctx, VB2_BUF_STATE_QUEUED); 767 767 ··· 782 782 783 783 cal_release_buffers(ctx, VB2_BUF_STATE_ERROR); 784 784 785 - media_pipeline_stop(&ctx->vdev.entity); 785 + video_device_pipeline_stop(&ctx->vdev); 786 786 } 787 787 788 788 static const struct vb2_ops cal_video_qops = {
+3 -3
drivers/media/platform/ti/omap3isp/ispvideo.c
··· 1103 1103 pipe->l3_ick = clk_get_rate(video->isp->clock[ISP_CLK_L3_ICK]); 1104 1104 pipe->max_rate = pipe->l3_ick; 1105 1105 1106 - ret = media_pipeline_start(&video->video.entity, &pipe->pipe); 1106 + ret = video_device_pipeline_start(&video->video, &pipe->pipe); 1107 1107 if (ret < 0) 1108 1108 goto err_pipeline_start; 1109 1109 ··· 1160 1160 return 0; 1161 1161 1162 1162 err_check_format: 1163 - media_pipeline_stop(&video->video.entity); 1163 + video_device_pipeline_stop(&video->video); 1164 1164 err_pipeline_start: 1165 1165 /* TODO: Implement PM QoS */ 1166 1166 /* The DMA queue must be emptied here, otherwise CCDC interrupts that ··· 1227 1227 video->error = false; 1228 1228 1229 1229 /* TODO: Implement PM QoS */ 1230 - media_pipeline_stop(&video->video.entity); 1230 + video_device_pipeline_stop(&video->video); 1231 1231 1232 1232 media_entity_enum_cleanup(&pipe->ent_enum); 1233 1233
+3 -3
drivers/media/platform/xilinx/xilinx-dma.c
··· 404 404 */ 405 405 pipe = to_xvip_pipeline(&dma->video.entity) ? : &dma->pipe; 406 406 407 - ret = media_pipeline_start(&dma->video.entity, &pipe->pipe); 407 + ret = video_device_pipeline_start(&dma->video, &pipe->pipe); 408 408 if (ret < 0) 409 409 goto error; 410 410 ··· 430 430 return 0; 431 431 432 432 error_stop: 433 - media_pipeline_stop(&dma->video.entity); 433 + video_device_pipeline_stop(&dma->video); 434 434 435 435 error: 436 436 /* Give back all queued buffers to videobuf2. */ ··· 458 458 459 459 /* Cleanup the pipeline and mark it as being stopped. */ 460 460 xvip_pipeline_cleanup(pipe); 461 - media_pipeline_stop(&dma->video.entity); 461 + video_device_pipeline_stop(&dma->video); 462 462 463 463 /* Give back all queued buffers to videobuf2. */ 464 464 spin_lock_irq(&dma->queued_lock);
+3 -4
drivers/media/test-drivers/vimc/vimc-capture.c
··· 241 241 static int vimc_capture_start_streaming(struct vb2_queue *vq, unsigned int count) 242 242 { 243 243 struct vimc_capture_device *vcapture = vb2_get_drv_priv(vq); 244 - struct media_entity *entity = &vcapture->vdev.entity; 245 244 int ret; 246 245 247 246 vcapture->sequence = 0; 248 247 249 248 /* Start the media pipeline */ 250 - ret = media_pipeline_start(entity, &vcapture->stream.pipe); 249 + ret = video_device_pipeline_start(&vcapture->vdev, &vcapture->stream.pipe); 251 250 if (ret) { 252 251 vimc_capture_return_all_buffers(vcapture, VB2_BUF_STATE_QUEUED); 253 252 return ret; ··· 254 255 255 256 ret = vimc_streamer_s_stream(&vcapture->stream, &vcapture->ved, 1); 256 257 if (ret) { 257 - media_pipeline_stop(entity); 258 + video_device_pipeline_stop(&vcapture->vdev); 258 259 vimc_capture_return_all_buffers(vcapture, VB2_BUF_STATE_QUEUED); 259 260 return ret; 260 261 } ··· 273 274 vimc_streamer_s_stream(&vcapture->stream, &vcapture->ved, 0); 274 275 275 276 /* Stop the media pipeline */ 276 - media_pipeline_stop(&vcapture->vdev.entity); 277 + video_device_pipeline_stop(&vcapture->vdev); 277 278 278 279 /* Release all active buffers */ 279 280 vimc_capture_return_all_buffers(vcapture, VB2_BUF_STATE_ERROR);
+3 -3
drivers/staging/media/imx/imx7-media-csi.c
··· 1360 1360 1361 1361 mutex_lock(&csi->mdev.graph_mutex); 1362 1362 1363 - ret = __media_pipeline_start(&csi->sd.entity, &csi->pipe); 1363 + ret = __video_device_pipeline_start(csi->vdev, &csi->pipe); 1364 1364 if (ret) 1365 1365 goto err_unlock; 1366 1366 ··· 1373 1373 return 0; 1374 1374 1375 1375 err_stop: 1376 - __media_pipeline_stop(&csi->sd.entity); 1376 + __video_device_pipeline_stop(csi->vdev); 1377 1377 err_unlock: 1378 1378 mutex_unlock(&csi->mdev.graph_mutex); 1379 1379 dev_err(csi->dev, "pipeline start failed with %d\n", ret); ··· 1396 1396 1397 1397 mutex_lock(&csi->mdev.graph_mutex); 1398 1398 v4l2_subdev_call(&csi->sd, video, s_stream, 0); 1399 - __media_pipeline_stop(&csi->sd.entity); 1399 + __video_device_pipeline_stop(csi->vdev); 1400 1400 mutex_unlock(&csi->mdev.graph_mutex); 1401 1401 1402 1402 /* release all active buffers */
+3 -3
drivers/staging/media/ipu3/ipu3-v4l2.c
··· 483 483 pipe = node->pipe; 484 484 imgu_pipe = &imgu->imgu_pipe[pipe]; 485 485 atomic_set(&node->sequence, 0); 486 - r = media_pipeline_start(&node->vdev.entity, &imgu_pipe->pipeline); 486 + r = video_device_pipeline_start(&node->vdev, &imgu_pipe->pipeline); 487 487 if (r < 0) 488 488 goto fail_return_bufs; 489 489 ··· 508 508 return 0; 509 509 510 510 fail_stop_pipeline: 511 - media_pipeline_stop(&node->vdev.entity); 511 + video_device_pipeline_stop(&node->vdev); 512 512 fail_return_bufs: 513 513 imgu_return_all_buffers(imgu, node, VB2_BUF_STATE_QUEUED); 514 514 ··· 548 548 imgu_return_all_buffers(imgu, node, VB2_BUF_STATE_ERROR); 549 549 mutex_unlock(&imgu->streaming_lock); 550 550 551 - media_pipeline_stop(&node->vdev.entity); 551 + video_device_pipeline_stop(&node->vdev); 552 552 } 553 553 554 554 /******************** v4l2_ioctl_ops ********************/
+3 -3
drivers/staging/media/omap4iss/iss_video.c
··· 886 886 if (video->iss->pdata->set_constraints) 887 887 video->iss->pdata->set_constraints(video->iss, true); 888 888 889 - ret = media_pipeline_start(entity, &pipe->pipe); 889 + ret = video_device_pipeline_start(&video->video, &pipe->pipe); 890 890 if (ret < 0) 891 891 goto err_media_pipeline_start; 892 892 ··· 977 977 err_omap4iss_set_stream: 978 978 vb2_streamoff(&vfh->queue, type); 979 979 err_iss_video_check_format: 980 - media_pipeline_stop(&video->video.entity); 980 + video_device_pipeline_stop(&video->video); 981 981 err_media_pipeline_start: 982 982 if (video->iss->pdata->set_constraints) 983 983 video->iss->pdata->set_constraints(video->iss, false); ··· 1031 1031 1032 1032 if (video->iss->pdata->set_constraints) 1033 1033 video->iss->pdata->set_constraints(video->iss, false); 1034 - media_pipeline_stop(&video->video.entity); 1034 + video_device_pipeline_stop(&video->video); 1035 1035 1036 1036 done: 1037 1037 mutex_unlock(&video->stream_lock);
+3 -3
drivers/staging/media/tegra-video/tegra210.c
··· 547 547 VI_INCR_SYNCPT_NO_STALL); 548 548 549 549 /* start the pipeline */ 550 - ret = media_pipeline_start(&chan->video.entity, pipe); 550 + ret = video_device_pipeline_start(&chan->video, pipe); 551 551 if (ret < 0) 552 552 goto error_pipeline_start; 553 553 ··· 595 595 error_kthread_start: 596 596 tegra_channel_set_stream(chan, false); 597 597 error_set_stream: 598 - media_pipeline_stop(&chan->video.entity); 598 + video_device_pipeline_stop(&chan->video); 599 599 error_pipeline_start: 600 600 tegra_channel_release_buffers(chan, VB2_BUF_STATE_QUEUED); 601 601 return ret; ··· 617 617 618 618 tegra_channel_release_buffers(chan, VB2_BUF_STATE_ERROR); 619 619 tegra_channel_set_stream(chan, false); 620 - media_pipeline_stop(&chan->video.entity); 620 + video_device_pipeline_stop(&chan->video); 621 621 } 622 622 623 623 /*