vpfe              181 drivers/media/platform/am437x/am437x-vpfe.c __vpfe_get_format(struct vpfe_device *vpfe,
vpfe              213 drivers/media/platform/am437x/am437x-vpfe.c mbus_to_pix(struct vpfe_device *vpfe,
vpfe              217 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_subdev_info *sdinfo = vpfe->current_subdev;
vpfe              238 drivers/media/platform/am437x/am437x-vpfe.c static void pix_to_mbus(struct vpfe_device *vpfe,
vpfe              247 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_dbg(3, vpfe, "Invalid pixel code: %x, default used instead\n",
vpfe              374 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = to_vpfe(ccdc);
vpfe              376 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(3, vpfe, "ALAW: 0x%x\n", vpfe_reg_read(ccdc, VPFE_ALAW));
vpfe              377 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(3, vpfe, "CLAMP: 0x%x\n", vpfe_reg_read(ccdc, VPFE_CLAMP));
vpfe              378 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(3, vpfe, "DCSUB: 0x%x\n", vpfe_reg_read(ccdc, VPFE_DCSUB));
vpfe              379 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(3, vpfe, "BLKCMP: 0x%x\n", vpfe_reg_read(ccdc, VPFE_BLKCMP));
vpfe              380 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(3, vpfe, "COLPTN: 0x%x\n", vpfe_reg_read(ccdc, VPFE_COLPTN));
vpfe              381 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(3, vpfe, "SDOFST: 0x%x\n", vpfe_reg_read(ccdc, VPFE_SDOFST));
vpfe              382 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(3, vpfe, "SYN_MODE: 0x%x\n",
vpfe              384 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(3, vpfe, "HSIZE_OFF: 0x%x\n",
vpfe              386 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(3, vpfe, "HORZ_INFO: 0x%x\n",
vpfe              388 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(3, vpfe, "VERT_START: 0x%x\n",
vpfe              390 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(3, vpfe, "VERT_LINES: 0x%x\n",
vpfe              398 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = to_vpfe(ccdc);
vpfe              410 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_dbg(1, vpfe, "Invalid data line select\n");
vpfe              487 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = container_of(ccdc, struct vpfe_device, ccdc);
vpfe              496 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_dbg(1, vpfe,
vpfe              516 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = container_of(ccdc, struct vpfe_device, ccdc);
vpfe              520 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(3, vpfe, "vpfe_ccdc_config_ycbcr:\n");
vpfe              645 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = container_of(ccdc, struct vpfe_device, ccdc);
vpfe              652 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(3, vpfe, "vpfe_ccdc_config_raw:\n");
vpfe              682 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_dbg(3, vpfe, "\nWriting 0x%x to ALAW...\n", val);
vpfe              706 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(3, vpfe, "Writing %d (%x) to HSIZE_OFF\n",
vpfe              752 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = container_of(ccdc, struct vpfe_device, ccdc);
vpfe              754 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(1, vpfe, "vpfe_ccdc_set_pixel_format: if_type: %d, pixfmt:%s\n",
vpfe              884 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = container_of(ccdc, struct vpfe_device, ccdc);
vpfe              906 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_dbg(1, vpfe, "params.bus_width: %d\n",
vpfe              908 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_dbg(1, vpfe, "config_params.data_sz: %d\n",
vpfe              999 drivers/media/platform/am437x/am437x-vpfe.c static int vpfe_get_ccdc_image_format(struct vpfe_device *vpfe,
vpfe             1008 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_ccdc_get_image_window(&vpfe->ccdc, &image_win);
vpfe             1011 drivers/media/platform/am437x/am437x-vpfe.c 	f->fmt.pix.bytesperline = vpfe_ccdc_get_line_length(&vpfe->ccdc);
vpfe             1014 drivers/media/platform/am437x/am437x-vpfe.c 	buf_type = vpfe_ccdc_get_buftype(&vpfe->ccdc);
vpfe             1015 drivers/media/platform/am437x/am437x-vpfe.c 	f->fmt.pix.pixelformat = vpfe_ccdc_get_pixel_format(&vpfe->ccdc);
vpfe             1016 drivers/media/platform/am437x/am437x-vpfe.c 	frm_fmt = vpfe_ccdc_get_frame_format(&vpfe->ccdc);
vpfe             1026 drivers/media/platform/am437x/am437x-vpfe.c 			vpfe_err(vpfe, "Invalid buf_type\n");
vpfe             1030 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_err(vpfe, "Invalid frm_fmt\n");
vpfe             1036 drivers/media/platform/am437x/am437x-vpfe.c static int vpfe_config_ccdc_image_format(struct vpfe_device *vpfe)
vpfe             1041 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(2, vpfe, "vpfe_config_ccdc_image_format\n");
vpfe             1043 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(1, vpfe, "pixelformat: %s\n",
vpfe             1044 drivers/media/platform/am437x/am437x-vpfe.c 		print_fourcc(vpfe->fmt.fmt.pix.pixelformat));
vpfe             1046 drivers/media/platform/am437x/am437x-vpfe.c 	if (vpfe_ccdc_set_pixel_format(&vpfe->ccdc,
vpfe             1047 drivers/media/platform/am437x/am437x-vpfe.c 			vpfe->fmt.fmt.pix.pixelformat) < 0) {
vpfe             1048 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_err(vpfe, "couldn't set pix format in ccdc\n");
vpfe             1053 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_ccdc_set_image_window(&vpfe->ccdc, &vpfe->crop, vpfe->bpp);
vpfe             1055 drivers/media/platform/am437x/am437x-vpfe.c 	switch (vpfe->fmt.fmt.pix.field) {
vpfe             1059 drivers/media/platform/am437x/am437x-vpfe.c 				&vpfe->ccdc,
vpfe             1070 drivers/media/platform/am437x/am437x-vpfe.c 				&vpfe->ccdc,
vpfe             1081 drivers/media/platform/am437x/am437x-vpfe.c 	return vpfe_ccdc_set_frame_format(&vpfe->ccdc, frm_fmt);
vpfe             1094 drivers/media/platform/am437x/am437x-vpfe.c static int vpfe_config_image_format(struct vpfe_device *vpfe,
vpfe             1097 drivers/media/platform/am437x/am437x-vpfe.c 	struct v4l2_pix_format *pix = &vpfe->fmt.fmt.pix;
vpfe             1102 drivers/media/platform/am437x/am437x-vpfe.c 			vpfe->std_info.active_pixels =
vpfe             1104 drivers/media/platform/am437x/am437x-vpfe.c 			vpfe->std_info.active_lines =
vpfe             1106 drivers/media/platform/am437x/am437x-vpfe.c 			vpfe->std_info.frame_format =
vpfe             1108 drivers/media/platform/am437x/am437x-vpfe.c 			vpfe->std_index = i;
vpfe             1115 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_err(vpfe, "standard not supported\n");
vpfe             1119 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->crop.top = vpfe->crop.left = 0;
vpfe             1120 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->crop.width = vpfe->std_info.active_pixels;
vpfe             1121 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->crop.height = vpfe->std_info.active_lines;
vpfe             1122 drivers/media/platform/am437x/am437x-vpfe.c 	pix->width = vpfe->crop.width;
vpfe             1123 drivers/media/platform/am437x/am437x-vpfe.c 	pix->height = vpfe->crop.height;
vpfe             1127 drivers/media/platform/am437x/am437x-vpfe.c 	if (vpfe->std_info.frame_format)
vpfe             1132 drivers/media/platform/am437x/am437x-vpfe.c 	ret = __vpfe_get_format(vpfe, &vpfe->fmt, &vpfe->bpp);
vpfe             1137 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->crop.width = pix->width;
vpfe             1138 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->crop.height = pix->height;
vpfe             1140 drivers/media/platform/am437x/am437x-vpfe.c 	return vpfe_config_ccdc_image_format(vpfe);
vpfe             1143 drivers/media/platform/am437x/am437x-vpfe.c static int vpfe_initialize_device(struct vpfe_device *vpfe)
vpfe             1148 drivers/media/platform/am437x/am437x-vpfe.c 	sdinfo = &vpfe->cfg->sub_devs[0];
vpfe             1149 drivers/media/platform/am437x/am437x-vpfe.c 	sdinfo->sd = vpfe->sd[0];
vpfe             1150 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->current_input = 0;
vpfe             1151 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->std_index = 0;
vpfe             1153 drivers/media/platform/am437x/am437x-vpfe.c 	ret = vpfe_config_image_format(vpfe,
vpfe             1154 drivers/media/platform/am437x/am437x-vpfe.c 				       vpfe_standards[vpfe->std_index].std_id);
vpfe             1158 drivers/media/platform/am437x/am437x-vpfe.c 	pm_runtime_get_sync(vpfe->pdev);
vpfe             1160 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_config_enable(&vpfe->ccdc, 1);
vpfe             1162 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_ccdc_restore_defaults(&vpfe->ccdc);
vpfe             1165 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_clear_intr(&vpfe->ccdc, -1);
vpfe             1178 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = video_drvdata(file);
vpfe             1182 drivers/media/platform/am437x/am437x-vpfe.c 	mutex_lock(&vpfe->lock);
vpfe             1195 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_ccdc_close(&vpfe->ccdc, vpfe->pdev);
vpfe             1197 drivers/media/platform/am437x/am437x-vpfe.c 	mutex_unlock(&vpfe->lock);
vpfe             1209 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = video_drvdata(file);
vpfe             1212 drivers/media/platform/am437x/am437x-vpfe.c 	mutex_lock(&vpfe->lock);
vpfe             1216 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_err(vpfe, "v4l2_fh_open failed\n");
vpfe             1223 drivers/media/platform/am437x/am437x-vpfe.c 	if (vpfe_initialize_device(vpfe)) {
vpfe             1229 drivers/media/platform/am437x/am437x-vpfe.c 	mutex_unlock(&vpfe->lock);
vpfe             1243 drivers/media/platform/am437x/am437x-vpfe.c static inline void vpfe_schedule_next_buffer(struct vpfe_device *vpfe)
vpfe             1245 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->next_frm = list_entry(vpfe->dma_queue.next,
vpfe             1247 drivers/media/platform/am437x/am437x-vpfe.c 	list_del(&vpfe->next_frm->list);
vpfe             1249 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_set_sdr_addr(&vpfe->ccdc,
vpfe             1250 drivers/media/platform/am437x/am437x-vpfe.c 	       vb2_dma_contig_plane_dma_addr(&vpfe->next_frm->vb.vb2_buf, 0));
vpfe             1253 drivers/media/platform/am437x/am437x-vpfe.c static inline void vpfe_schedule_bottom_field(struct vpfe_device *vpfe)
vpfe             1257 drivers/media/platform/am437x/am437x-vpfe.c 	addr = vb2_dma_contig_plane_dma_addr(&vpfe->next_frm->vb.vb2_buf, 0) +
vpfe             1258 drivers/media/platform/am437x/am437x-vpfe.c 					vpfe->field_off;
vpfe             1260 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_set_sdr_addr(&vpfe->ccdc, addr);
vpfe             1271 drivers/media/platform/am437x/am437x-vpfe.c static inline void vpfe_process_buffer_complete(struct vpfe_device *vpfe)
vpfe             1273 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->cur_frm->vb.vb2_buf.timestamp = ktime_get_ns();
vpfe             1274 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->cur_frm->vb.field = vpfe->fmt.fmt.pix.field;
vpfe             1275 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->cur_frm->vb.sequence = vpfe->sequence++;
vpfe             1276 drivers/media/platform/am437x/am437x-vpfe.c 	vb2_buffer_done(&vpfe->cur_frm->vb.vb2_buf, VB2_BUF_STATE_DONE);
vpfe             1277 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->cur_frm = vpfe->next_frm;
vpfe             1290 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = (struct vpfe_device *)dev;
vpfe             1295 drivers/media/platform/am437x/am437x-vpfe.c 	intr_status = vpfe_reg_read(&vpfe->ccdc, VPFE_IRQ_STS);
vpfe             1298 drivers/media/platform/am437x/am437x-vpfe.c 		field = vpfe->fmt.fmt.pix.field;
vpfe             1302 drivers/media/platform/am437x/am437x-vpfe.c 			if (vpfe->cur_frm != vpfe->next_frm)
vpfe             1303 drivers/media/platform/am437x/am437x-vpfe.c 				vpfe_process_buffer_complete(vpfe);
vpfe             1309 drivers/media/platform/am437x/am437x-vpfe.c 		fid = vpfe_ccdc_getfid(&vpfe->ccdc);
vpfe             1312 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe->field ^= 1;
vpfe             1313 drivers/media/platform/am437x/am437x-vpfe.c 		if (fid == vpfe->field) {
vpfe             1321 drivers/media/platform/am437x/am437x-vpfe.c 				if (vpfe->cur_frm != vpfe->next_frm)
vpfe             1322 drivers/media/platform/am437x/am437x-vpfe.c 					vpfe_process_buffer_complete(vpfe);
vpfe             1329 drivers/media/platform/am437x/am437x-vpfe.c 					vpfe_schedule_bottom_field(vpfe);
vpfe             1339 drivers/media/platform/am437x/am437x-vpfe.c 			spin_lock(&vpfe->dma_queue_lock);
vpfe             1340 drivers/media/platform/am437x/am437x-vpfe.c 			if (!list_empty(&vpfe->dma_queue) &&
vpfe             1341 drivers/media/platform/am437x/am437x-vpfe.c 			    vpfe->cur_frm == vpfe->next_frm)
vpfe             1342 drivers/media/platform/am437x/am437x-vpfe.c 				vpfe_schedule_next_buffer(vpfe);
vpfe             1343 drivers/media/platform/am437x/am437x-vpfe.c 			spin_unlock(&vpfe->dma_queue_lock);
vpfe             1349 drivers/media/platform/am437x/am437x-vpfe.c 			vpfe->field = fid;
vpfe             1355 drivers/media/platform/am437x/am437x-vpfe.c 		spin_lock(&vpfe->dma_queue_lock);
vpfe             1356 drivers/media/platform/am437x/am437x-vpfe.c 		if (vpfe->fmt.fmt.pix.field == V4L2_FIELD_NONE &&
vpfe             1357 drivers/media/platform/am437x/am437x-vpfe.c 		    !list_empty(&vpfe->dma_queue) &&
vpfe             1358 drivers/media/platform/am437x/am437x-vpfe.c 		    vpfe->cur_frm == vpfe->next_frm)
vpfe             1359 drivers/media/platform/am437x/am437x-vpfe.c 			vpfe_schedule_next_buffer(vpfe);
vpfe             1360 drivers/media/platform/am437x/am437x-vpfe.c 		spin_unlock(&vpfe->dma_queue_lock);
vpfe             1363 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_clear_intr(&vpfe->ccdc, intr_status);
vpfe             1368 drivers/media/platform/am437x/am437x-vpfe.c static inline void vpfe_detach_irq(struct vpfe_device *vpfe)
vpfe             1373 drivers/media/platform/am437x/am437x-vpfe.c 	frame_format = vpfe_ccdc_get_frame_format(&vpfe->ccdc);
vpfe             1377 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_reg_write(&vpfe->ccdc, intr, VPFE_IRQ_EN_CLR);
vpfe             1380 drivers/media/platform/am437x/am437x-vpfe.c static inline void vpfe_attach_irq(struct vpfe_device *vpfe)
vpfe             1385 drivers/media/platform/am437x/am437x-vpfe.c 	frame_format = vpfe_ccdc_get_frame_format(&vpfe->ccdc);
vpfe             1389 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_reg_write(&vpfe->ccdc, intr, VPFE_IRQ_EN_SET);
vpfe             1395 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = video_drvdata(file);
vpfe             1397 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(2, vpfe, "vpfe_querycap\n");
vpfe             1402 drivers/media/platform/am437x/am437x-vpfe.c 			"platform:%s", vpfe->v4l2_dev.name);
vpfe             1407 drivers/media/platform/am437x/am437x-vpfe.c static int __vpfe_get_format(struct vpfe_device *vpfe,
vpfe             1415 drivers/media/platform/am437x/am437x-vpfe.c 	sdinfo = vpfe->current_subdev;
vpfe             1428 drivers/media/platform/am437x/am437x-vpfe.c 		mbus_to_pix(vpfe, &fmt.format, &format->fmt.pix, bpp);
vpfe             1430 drivers/media/platform/am437x/am437x-vpfe.c 		ret = v4l2_device_call_until_err(&vpfe->v4l2_dev,
vpfe             1437 drivers/media/platform/am437x/am437x-vpfe.c 		mbus_to_pix(vpfe, &mbus_fmt, &format->fmt.pix, bpp);
vpfe             1440 drivers/media/platform/am437x/am437x-vpfe.c 	format->type = vpfe->fmt.type;
vpfe             1442 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(1, vpfe,
vpfe             1452 drivers/media/platform/am437x/am437x-vpfe.c static int __vpfe_set_format(struct vpfe_device *vpfe,
vpfe             1459 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(2, vpfe, "__vpfe_set_format\n");
vpfe             1461 drivers/media/platform/am437x/am437x-vpfe.c 	sdinfo = vpfe->current_subdev;
vpfe             1468 drivers/media/platform/am437x/am437x-vpfe.c 	pix_to_mbus(vpfe, &format->fmt.pix, &fmt.format);
vpfe             1475 drivers/media/platform/am437x/am437x-vpfe.c 	mbus_to_pix(vpfe, &fmt.format, &format->fmt.pix, bpp);
vpfe             1477 drivers/media/platform/am437x/am437x-vpfe.c 	format->type = vpfe->fmt.type;
vpfe             1479 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(1, vpfe,
vpfe             1491 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = video_drvdata(file);
vpfe             1493 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(2, vpfe, "vpfe_g_fmt\n");
vpfe             1495 drivers/media/platform/am437x/am437x-vpfe.c 	*fmt = vpfe->fmt;
vpfe             1503 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = video_drvdata(file);
vpfe             1508 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(2, vpfe, "vpfe_enum_format index:%d\n",
vpfe             1511 drivers/media/platform/am437x/am437x-vpfe.c 	sdinfo = vpfe->current_subdev;
vpfe             1529 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(1, vpfe, "vpfe_enum_format: mbus index: %d code: %x pixelformat: %s\n",
vpfe             1538 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = video_drvdata(file);
vpfe             1541 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(2, vpfe, "vpfe_try_fmt\n");
vpfe             1543 drivers/media/platform/am437x/am437x-vpfe.c 	return __vpfe_get_format(vpfe, fmt, &bpp);
vpfe             1549 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = video_drvdata(file);
vpfe             1554 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(2, vpfe, "vpfe_s_fmt\n");
vpfe             1557 drivers/media/platform/am437x/am437x-vpfe.c 	if (vb2_is_busy(&vpfe->buffer_queue)) {
vpfe             1558 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_err(vpfe, "%s device busy\n", __func__);
vpfe             1562 drivers/media/platform/am437x/am437x-vpfe.c 	ret = __vpfe_get_format(vpfe, &format, &bpp);
vpfe             1571 drivers/media/platform/am437x/am437x-vpfe.c 		ret = __vpfe_set_format(vpfe, fmt, &bpp);
vpfe             1578 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_detach_irq(vpfe);
vpfe             1579 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->fmt = *fmt;
vpfe             1580 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->bpp = bpp;
vpfe             1583 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->crop.width = fmt->fmt.pix.width;
vpfe             1584 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->crop.height = fmt->fmt.pix.height;
vpfe             1587 drivers/media/platform/am437x/am437x-vpfe.c 	return vpfe_config_ccdc_image_format(vpfe);
vpfe             1593 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = video_drvdata(file);
vpfe             1601 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(2, vpfe, "vpfe_enum_size\n");
vpfe             1606 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_dbg(3, vpfe, "Invalid pixel code: %x, default used instead\n",
vpfe             1613 drivers/media/platform/am437x/am437x-vpfe.c 	sdinfo = vpfe->current_subdev;
vpfe             1624 drivers/media/platform/am437x/am437x-vpfe.c 	pix_to_mbus(vpfe, &pix, &mbus);
vpfe             1635 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(1, vpfe, "vpfe_enum_size: index: %d code: %x W:[%d,%d] H:[%d,%d]\n",
vpfe             1643 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(1, vpfe, "vpfe_enum_size: index: %d pixformat: %s size: %dx%d\n",
vpfe             1655 drivers/media/platform/am437x/am437x-vpfe.c vpfe_get_subdev_input_index(struct vpfe_device *vpfe,
vpfe             1662 drivers/media/platform/am437x/am437x-vpfe.c 	for (i = 0; i < ARRAY_SIZE(vpfe->cfg->asd); i++) {
vpfe             1678 drivers/media/platform/am437x/am437x-vpfe.c static int vpfe_get_app_input_index(struct vpfe_device *vpfe,
vpfe             1681 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_config *cfg = vpfe->cfg;
vpfe             1687 drivers/media/platform/am437x/am437x-vpfe.c 	curr_client = v4l2_get_subdevdata(vpfe->current_subdev->sd);
vpfe             1688 drivers/media/platform/am437x/am437x-vpfe.c 	for (i = 0; i < ARRAY_SIZE(vpfe->cfg->asd); i++) {
vpfe             1693 drivers/media/platform/am437x/am437x-vpfe.c 			if (vpfe->current_input >= 1)
vpfe             1695 drivers/media/platform/am437x/am437x-vpfe.c 			*app_input_index = j + vpfe->current_input;
vpfe             1706 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = video_drvdata(file);
vpfe             1710 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(2, vpfe, "vpfe_enum_input\n");
vpfe             1712 drivers/media/platform/am437x/am437x-vpfe.c 	if (vpfe_get_subdev_input_index(vpfe, &subdev, &index,
vpfe             1714 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_dbg(1, vpfe,
vpfe             1718 drivers/media/platform/am437x/am437x-vpfe.c 	sdinfo = &vpfe->cfg->sub_devs[subdev];
vpfe             1726 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = video_drvdata(file);
vpfe             1728 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(2, vpfe, "vpfe_g_input\n");
vpfe             1730 drivers/media/platform/am437x/am437x-vpfe.c 	return vpfe_get_app_input_index(vpfe, index);
vpfe             1734 drivers/media/platform/am437x/am437x-vpfe.c static int vpfe_set_input(struct vpfe_device *vpfe, unsigned int index)
vpfe             1742 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(2, vpfe, "vpfe_set_input: index: %d\n", index);
vpfe             1745 drivers/media/platform/am437x/am437x-vpfe.c 	if (vb2_is_busy(&vpfe->buffer_queue)) {
vpfe             1746 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_err(vpfe, "%s device busy\n", __func__);
vpfe             1749 drivers/media/platform/am437x/am437x-vpfe.c 	ret = vpfe_get_subdev_input_index(vpfe,
vpfe             1754 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_err(vpfe, "invalid input index: %d\n", index);
vpfe             1758 drivers/media/platform/am437x/am437x-vpfe.c 	sdinfo = &vpfe->cfg->sub_devs[subdev_index];
vpfe             1759 drivers/media/platform/am437x/am437x-vpfe.c 	sdinfo->sd = vpfe->sd[subdev_index];
vpfe             1768 drivers/media/platform/am437x/am437x-vpfe.c 				vpfe_err(vpfe, "s_routing failed\n");
vpfe             1776 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->current_subdev = sdinfo;
vpfe             1778 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe->v4l2_dev.ctrl_handler = sdinfo->sd->ctrl_handler;
vpfe             1779 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->current_input = index;
vpfe             1780 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->std_index = 0;
vpfe             1783 drivers/media/platform/am437x/am437x-vpfe.c 	ret = vpfe_ccdc_set_hw_if_params(&vpfe->ccdc, &sdinfo->vpfe_param);
vpfe             1788 drivers/media/platform/am437x/am437x-vpfe.c 	return vpfe_config_image_format(vpfe,
vpfe             1789 drivers/media/platform/am437x/am437x-vpfe.c 					vpfe_standards[vpfe->std_index].std_id);
vpfe             1797 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = video_drvdata(file);
vpfe             1799 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(2, vpfe,
vpfe             1802 drivers/media/platform/am437x/am437x-vpfe.c 	return vpfe_set_input(vpfe, index);
vpfe             1807 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = video_drvdata(file);
vpfe             1810 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(2, vpfe, "vpfe_querystd\n");
vpfe             1812 drivers/media/platform/am437x/am437x-vpfe.c 	sdinfo = vpfe->current_subdev;
vpfe             1817 drivers/media/platform/am437x/am437x-vpfe.c 	return v4l2_device_call_until_err(&vpfe->v4l2_dev, sdinfo->grp_id,
vpfe             1823 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = video_drvdata(file);
vpfe             1827 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(2, vpfe, "vpfe_s_std\n");
vpfe             1829 drivers/media/platform/am437x/am437x-vpfe.c 	sdinfo = vpfe->current_subdev;
vpfe             1834 drivers/media/platform/am437x/am437x-vpfe.c 	if (vpfe_standards[vpfe->std_index].std_id == std_id)
vpfe             1838 drivers/media/platform/am437x/am437x-vpfe.c 	if (vb2_is_busy(&vpfe->buffer_queue)) {
vpfe             1839 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_err(vpfe, "%s device busy\n", __func__);
vpfe             1844 drivers/media/platform/am437x/am437x-vpfe.c 	ret = v4l2_device_call_until_err(&vpfe->v4l2_dev, sdinfo->grp_id,
vpfe             1847 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_err(vpfe, "Failed to set standard\n");
vpfe             1850 drivers/media/platform/am437x/am437x-vpfe.c 	ret = vpfe_config_image_format(vpfe, std_id);
vpfe             1857 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = video_drvdata(file);
vpfe             1860 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(2, vpfe, "vpfe_g_std\n");
vpfe             1862 drivers/media/platform/am437x/am437x-vpfe.c 	sdinfo = vpfe->current_subdev;
vpfe             1866 drivers/media/platform/am437x/am437x-vpfe.c 	*std_id = vpfe_standards[vpfe->std_index].std_id;
vpfe             1875 drivers/media/platform/am437x/am437x-vpfe.c static void vpfe_calculate_offsets(struct vpfe_device *vpfe)
vpfe             1879 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(2, vpfe, "vpfe_calculate_offsets\n");
vpfe             1881 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_ccdc_get_image_window(&vpfe->ccdc, &image_win);
vpfe             1882 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->field_off = image_win.height * image_win.width;
vpfe             1900 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = vb2_get_drv_priv(vq);
vpfe             1901 drivers/media/platform/am437x/am437x-vpfe.c 	unsigned size = vpfe->fmt.fmt.pix.sizeimage;
vpfe             1915 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(1, vpfe,
vpfe             1919 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_calculate_offsets(vpfe);
vpfe             1935 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = vb2_get_drv_priv(vb->vb2_queue);
vpfe             1937 drivers/media/platform/am437x/am437x-vpfe.c 	vb2_set_plane_payload(vb, 0, vpfe->fmt.fmt.pix.sizeimage);
vpfe             1942 drivers/media/platform/am437x/am437x-vpfe.c 	vbuf->field = vpfe->fmt.fmt.pix.field;
vpfe             1954 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = vb2_get_drv_priv(vb->vb2_queue);
vpfe             1959 drivers/media/platform/am437x/am437x-vpfe.c 	spin_lock_irqsave(&vpfe->dma_queue_lock, flags);
vpfe             1960 drivers/media/platform/am437x/am437x-vpfe.c 	list_add_tail(&buf->list, &vpfe->dma_queue);
vpfe             1961 drivers/media/platform/am437x/am437x-vpfe.c 	spin_unlock_irqrestore(&vpfe->dma_queue_lock, flags);
vpfe             1971 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = vb2_get_drv_priv(vq);
vpfe             1978 drivers/media/platform/am437x/am437x-vpfe.c 	spin_lock_irqsave(&vpfe->dma_queue_lock, flags);
vpfe             1980 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->field = 0;
vpfe             1981 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->sequence = 0;
vpfe             1983 drivers/media/platform/am437x/am437x-vpfe.c 	sdinfo = vpfe->current_subdev;
vpfe             1985 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_attach_irq(vpfe);
vpfe             1987 drivers/media/platform/am437x/am437x-vpfe.c 	if (vpfe->ccdc.ccdc_cfg.if_type == VPFE_RAW_BAYER)
vpfe             1988 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_ccdc_config_raw(&vpfe->ccdc);
vpfe             1990 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_ccdc_config_ycbcr(&vpfe->ccdc);
vpfe             1993 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->next_frm = list_entry(vpfe->dma_queue.next,
vpfe             1995 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->cur_frm = vpfe->next_frm;
vpfe             1997 drivers/media/platform/am437x/am437x-vpfe.c 	list_del(&vpfe->cur_frm->list);
vpfe             1998 drivers/media/platform/am437x/am437x-vpfe.c 	spin_unlock_irqrestore(&vpfe->dma_queue_lock, flags);
vpfe             2000 drivers/media/platform/am437x/am437x-vpfe.c 	addr = vb2_dma_contig_plane_dma_addr(&vpfe->cur_frm->vb.vb2_buf, 0);
vpfe             2002 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_set_sdr_addr(&vpfe->ccdc, (unsigned long)(addr));
vpfe             2004 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_pcr_enable(&vpfe->ccdc, 1);
vpfe             2008 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_err(vpfe, "Error in attaching interrupt handle\n");
vpfe             2015 drivers/media/platform/am437x/am437x-vpfe.c 	list_for_each_entry_safe(buf, tmp, &vpfe->dma_queue, list) {
vpfe             2032 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = vb2_get_drv_priv(vq);
vpfe             2037 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_pcr_enable(&vpfe->ccdc, 0);
vpfe             2039 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_detach_irq(vpfe);
vpfe             2041 drivers/media/platform/am437x/am437x-vpfe.c 	sdinfo = vpfe->current_subdev;
vpfe             2044 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_dbg(1, vpfe, "stream off failed in subdev\n");
vpfe             2047 drivers/media/platform/am437x/am437x-vpfe.c 	spin_lock_irqsave(&vpfe->dma_queue_lock, flags);
vpfe             2048 drivers/media/platform/am437x/am437x-vpfe.c 	if (vpfe->cur_frm == vpfe->next_frm) {
vpfe             2049 drivers/media/platform/am437x/am437x-vpfe.c 		vb2_buffer_done(&vpfe->cur_frm->vb.vb2_buf,
vpfe             2052 drivers/media/platform/am437x/am437x-vpfe.c 		if (vpfe->cur_frm != NULL)
vpfe             2053 drivers/media/platform/am437x/am437x-vpfe.c 			vb2_buffer_done(&vpfe->cur_frm->vb.vb2_buf,
vpfe             2055 drivers/media/platform/am437x/am437x-vpfe.c 		if (vpfe->next_frm != NULL)
vpfe             2056 drivers/media/platform/am437x/am437x-vpfe.c 			vb2_buffer_done(&vpfe->next_frm->vb.vb2_buf,
vpfe             2060 drivers/media/platform/am437x/am437x-vpfe.c 	while (!list_empty(&vpfe->dma_queue)) {
vpfe             2061 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe->next_frm = list_entry(vpfe->dma_queue.next,
vpfe             2063 drivers/media/platform/am437x/am437x-vpfe.c 		list_del(&vpfe->next_frm->list);
vpfe             2064 drivers/media/platform/am437x/am437x-vpfe.c 		vb2_buffer_done(&vpfe->next_frm->vb.vb2_buf,
vpfe             2067 drivers/media/platform/am437x/am437x-vpfe.c 	spin_unlock_irqrestore(&vpfe->dma_queue_lock, flags);
vpfe             2073 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = video_drvdata(file);
vpfe             2075 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(2, vpfe, "vpfe_g_pixelaspect\n");
vpfe             2078 drivers/media/platform/am437x/am437x-vpfe.c 	    vpfe->std_index >= ARRAY_SIZE(vpfe_standards))
vpfe             2081 drivers/media/platform/am437x/am437x-vpfe.c 	*f = vpfe_standards[vpfe->std_index].pixelaspect;
vpfe             2089 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = video_drvdata(file);
vpfe             2092 drivers/media/platform/am437x/am437x-vpfe.c 	    vpfe->std_index >= ARRAY_SIZE(vpfe_standards))
vpfe             2100 drivers/media/platform/am437x/am437x-vpfe.c 		s->r.width = vpfe_standards[vpfe->std_index].width;
vpfe             2101 drivers/media/platform/am437x/am437x-vpfe.c 		s->r.height = vpfe_standards[vpfe->std_index].height;
vpfe             2105 drivers/media/platform/am437x/am437x-vpfe.c 		s->r = vpfe->crop;
vpfe             2132 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = video_drvdata(file);
vpfe             2133 drivers/media/platform/am437x/am437x-vpfe.c 	struct v4l2_rect cr = vpfe->crop;
vpfe             2137 drivers/media/platform/am437x/am437x-vpfe.c 	if (vb2_is_busy(&vpfe->buffer_queue)) {
vpfe             2138 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_err(vpfe, "%s device busy\n", __func__);
vpfe             2158 drivers/media/platform/am437x/am437x-vpfe.c 	s->r = vpfe->crop = r;
vpfe             2160 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_ccdc_set_image_window(&vpfe->ccdc, &r, vpfe->bpp);
vpfe             2161 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->fmt.fmt.pix.width = r.width;
vpfe             2162 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->fmt.fmt.pix.height = r.height;
vpfe             2163 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->fmt.fmt.pix.bytesperline = vpfe_ccdc_get_line_length(&vpfe->ccdc);
vpfe             2164 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->fmt.fmt.pix.sizeimage = vpfe->fmt.fmt.pix.bytesperline *
vpfe             2165 drivers/media/platform/am437x/am437x-vpfe.c 						vpfe->fmt.fmt.pix.height;
vpfe             2167 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(1, vpfe, "cropped (%d,%d)/%dx%d of %dx%d\n",
vpfe             2176 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = video_drvdata(file);
vpfe             2179 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(2, vpfe, "vpfe_ioctl_default\n");
vpfe             2182 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_err(vpfe, "%s device busy\n", __func__);
vpfe             2187 drivers/media/platform/am437x/am437x-vpfe.c 	if (vb2_is_busy(&vpfe->buffer_queue)) {
vpfe             2188 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_err(vpfe, "%s device busy\n", __func__);
vpfe             2194 drivers/media/platform/am437x/am437x-vpfe.c 		ret = vpfe_ccdc_set_params(&vpfe->ccdc, (void __user *)param);
vpfe             2196 drivers/media/platform/am437x/am437x-vpfe.c 			vpfe_dbg(2, vpfe,
vpfe             2200 drivers/media/platform/am437x/am437x-vpfe.c 		ret = vpfe_get_ccdc_image_format(vpfe,
vpfe             2201 drivers/media/platform/am437x/am437x-vpfe.c 						 &vpfe->fmt);
vpfe             2203 drivers/media/platform/am437x/am437x-vpfe.c 			vpfe_dbg(2, vpfe,
vpfe             2282 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = container_of(notifier->v4l2_dev,
vpfe             2289 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(1, vpfe, "vpfe_async_bound\n");
vpfe             2291 drivers/media/platform/am437x/am437x-vpfe.c 	for (i = 0; i < ARRAY_SIZE(vpfe->cfg->asd); i++) {
vpfe             2292 drivers/media/platform/am437x/am437x-vpfe.c 		if (vpfe->cfg->asd[i]->match.fwnode ==
vpfe             2294 drivers/media/platform/am437x/am437x-vpfe.c 			sdinfo = &vpfe->cfg->sub_devs[i];
vpfe             2295 drivers/media/platform/am437x/am437x-vpfe.c 			vpfe->sd[i] = subdev;
vpfe             2296 drivers/media/platform/am437x/am437x-vpfe.c 			vpfe->sd[i]->grp_id = sdinfo->grp_id;
vpfe             2303 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_info(vpfe, "sub device (%s) not matched\n", subdev->name);
vpfe             2307 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->video_dev.tvnorms |= sdinfo->inputs[0].std;
vpfe             2333 drivers/media/platform/am437x/am437x-vpfe.c static int vpfe_probe_complete(struct vpfe_device *vpfe)
vpfe             2339 drivers/media/platform/am437x/am437x-vpfe.c 	spin_lock_init(&vpfe->dma_queue_lock);
vpfe             2340 drivers/media/platform/am437x/am437x-vpfe.c 	mutex_init(&vpfe->lock);
vpfe             2342 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->fmt.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
vpfe             2345 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->current_subdev = &vpfe->cfg->sub_devs[0];
vpfe             2346 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->v4l2_dev.ctrl_handler = vpfe->sd[0]->ctrl_handler;
vpfe             2348 drivers/media/platform/am437x/am437x-vpfe.c 	err = vpfe_set_input(vpfe, 0);
vpfe             2353 drivers/media/platform/am437x/am437x-vpfe.c 	q = &vpfe->buffer_queue;
vpfe             2356 drivers/media/platform/am437x/am437x-vpfe.c 	q->drv_priv = vpfe;
vpfe             2361 drivers/media/platform/am437x/am437x-vpfe.c 	q->lock = &vpfe->lock;
vpfe             2363 drivers/media/platform/am437x/am437x-vpfe.c 	q->dev = vpfe->pdev;
vpfe             2367 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_err(vpfe, "vb2_queue_init() failed\n");
vpfe             2371 drivers/media/platform/am437x/am437x-vpfe.c 	INIT_LIST_HEAD(&vpfe->dma_queue);
vpfe             2373 drivers/media/platform/am437x/am437x-vpfe.c 	vdev = &vpfe->video_dev;
vpfe             2378 drivers/media/platform/am437x/am437x-vpfe.c 	vdev->v4l2_dev = &vpfe->v4l2_dev;
vpfe             2381 drivers/media/platform/am437x/am437x-vpfe.c 	vdev->lock = &vpfe->lock;
vpfe             2384 drivers/media/platform/am437x/am437x-vpfe.c 	video_set_drvdata(vdev, vpfe);
vpfe             2385 drivers/media/platform/am437x/am437x-vpfe.c 	err = video_register_device(&vpfe->video_dev, VFL_TYPE_GRABBER, -1);
vpfe             2387 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_err(vpfe,
vpfe             2395 drivers/media/platform/am437x/am437x-vpfe.c 	v4l2_device_unregister(&vpfe->v4l2_dev);
vpfe             2401 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = container_of(notifier->v4l2_dev,
vpfe             2404 drivers/media/platform/am437x/am437x-vpfe.c 	return vpfe_probe_complete(vpfe);
vpfe             2413 drivers/media/platform/am437x/am437x-vpfe.c vpfe_get_pdata(struct vpfe_device *vpfe)
vpfe             2416 drivers/media/platform/am437x/am437x-vpfe.c 	struct device *dev = vpfe->pdev;
vpfe             2425 drivers/media/platform/am437x/am437x-vpfe.c 	v4l2_async_notifier_init(&vpfe->notifier);
vpfe             2494 drivers/media/platform/am437x/am437x-vpfe.c 			&vpfe->notifier, of_fwnode_handle(rem),
vpfe             2505 drivers/media/platform/am437x/am437x-vpfe.c 	v4l2_async_notifier_cleanup(&vpfe->notifier);
vpfe             2518 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe;
vpfe             2523 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe = devm_kzalloc(&pdev->dev, sizeof(*vpfe), GFP_KERNEL);
vpfe             2524 drivers/media/platform/am437x/am437x-vpfe.c 	if (!vpfe)
vpfe             2527 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->pdev = &pdev->dev;
vpfe             2529 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_cfg = vpfe_get_pdata(vpfe);
vpfe             2535 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->cfg = vpfe_cfg;
vpfe             2536 drivers/media/platform/am437x/am437x-vpfe.c 	ccdc = &vpfe->ccdc;
vpfe             2550 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->irq = ret;
vpfe             2552 drivers/media/platform/am437x/am437x-vpfe.c 	ret = devm_request_irq(vpfe->pdev, vpfe->irq, vpfe_isr, 0,
vpfe             2553 drivers/media/platform/am437x/am437x-vpfe.c 			       "vpfe_capture0", vpfe);
vpfe             2560 drivers/media/platform/am437x/am437x-vpfe.c 	ret = v4l2_device_register(&pdev->dev, &vpfe->v4l2_dev);
vpfe             2562 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_err(vpfe,
vpfe             2568 drivers/media/platform/am437x/am437x-vpfe.c 	platform_set_drvdata(pdev, vpfe);
vpfe             2579 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->sd = devm_kcalloc(&pdev->dev,
vpfe             2580 drivers/media/platform/am437x/am437x-vpfe.c 				ARRAY_SIZE(vpfe->cfg->asd),
vpfe             2583 drivers/media/platform/am437x/am437x-vpfe.c 	if (!vpfe->sd) {
vpfe             2588 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe->notifier.ops = &vpfe_async_ops;
vpfe             2589 drivers/media/platform/am437x/am437x-vpfe.c 	ret = v4l2_async_notifier_register(&vpfe->v4l2_dev, &vpfe->notifier);
vpfe             2591 drivers/media/platform/am437x/am437x-vpfe.c 		vpfe_err(vpfe, "Error registering async notifier\n");
vpfe             2599 drivers/media/platform/am437x/am437x-vpfe.c 	v4l2_device_unregister(&vpfe->v4l2_dev);
vpfe             2601 drivers/media/platform/am437x/am437x-vpfe.c 	v4l2_async_notifier_cleanup(&vpfe->notifier);
vpfe             2610 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = platform_get_drvdata(pdev);
vpfe             2612 drivers/media/platform/am437x/am437x-vpfe.c 	vpfe_dbg(2, vpfe, "vpfe_remove\n");
vpfe             2616 drivers/media/platform/am437x/am437x-vpfe.c 	v4l2_async_notifier_unregister(&vpfe->notifier);
vpfe             2617 drivers/media/platform/am437x/am437x-vpfe.c 	v4l2_async_notifier_cleanup(&vpfe->notifier);
vpfe             2618 drivers/media/platform/am437x/am437x-vpfe.c 	v4l2_device_unregister(&vpfe->v4l2_dev);
vpfe             2619 drivers/media/platform/am437x/am437x-vpfe.c 	video_unregister_device(&vpfe->video_dev);
vpfe             2657 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = dev_get_drvdata(dev);
vpfe             2658 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_ccdc *ccdc = &vpfe->ccdc;
vpfe             2661 drivers/media/platform/am437x/am437x-vpfe.c 	if (!vb2_start_streaming_called(&vpfe->buffer_queue))
vpfe             2714 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_device *vpfe = dev_get_drvdata(dev);
vpfe             2715 drivers/media/platform/am437x/am437x-vpfe.c 	struct vpfe_ccdc *ccdc = &vpfe->ccdc;
vpfe             2718 drivers/media/platform/am437x/am437x-vpfe.c 	if (!vb2_start_streaming_called(&vpfe->buffer_queue))