Lines Matching defs:isp

357 	lockdep_assert_held(&pipe->isp->mutex);
359 if (pipe->isp->isp_fatal_error)
363 dev_err(pipe->isp->dev, "Set fmt/input IOCTL while streaming\n");
378 struct atomisp_device *isp = video_get_drvdata(vdev);
382 snprintf(cap->bus_info, sizeof(cap->bus_info), "PCI:%s", dev_name(isp->dev));
394 struct atomisp_device *isp = video_get_drvdata(vdev);
397 if (index >= isp->input_cnt)
400 if (!isp->inputs[index].camera)
404 strscpy(input->name, isp->inputs[index].camera->name,
409 input->reserved[1] = isp->inputs[index].port;
440 struct atomisp_device *isp = video_get_drvdata(vdev);
444 if (input >= isp->input_cnt)
447 if (!isp->inputs[input].camera)
454 mutex_lock(&isp->media_dev.graph_mutex);
455 ret = atomisp_select_input(isp, input);
456 mutex_unlock(&isp->media_dev.graph_mutex);
465 static int atomisp_enum_framesizes_crop_inner(struct atomisp_device *isp,
488 atomisp_get_padding(isp, frame_sizes[i].width, frame_sizes[i].height,
515 static int atomisp_enum_framesizes_crop(struct atomisp_device *isp,
518 struct atomisp_input_subdev *input = &isp->inputs[isp->asd.input_curr];
523 ret = atomisp_enum_framesizes_crop_inner(isp, fsize, &active, &native, &valid_sizes);
535 return atomisp_enum_framesizes_crop_inner(isp, fsize, &active, &native, &valid_sizes);
542 struct atomisp_device *isp = video_get_drvdata(vdev);
544 struct atomisp_input_subdev *input = &isp->inputs[asd->input_curr];
557 return atomisp_enum_framesizes_crop(isp, fsize);
578 struct atomisp_device *isp = video_get_drvdata(vdev);
580 struct atomisp_input_subdev *input = &isp->inputs[asd->input_curr];
612 struct atomisp_device *isp = video_get_drvdata(vdev);
614 struct atomisp_input_subdev *input = &isp->inputs[asd->input_curr];
666 struct atomisp_device *isp = video_get_drvdata(vdev);
668 return atomisp_try_fmt(isp, &f->fmt.pix, NULL, NULL);
695 struct atomisp_device *isp = asd->isp;
708 dev_dbg(isp->dev, "allocating %d 3a buffers\n", count);
727 dev_dbg(isp->dev, "allocating %d dis buffers\n", count);
748 dev_dbg(isp->dev, "allocating %d metadata buffers for type %d\n",
768 dev_err(isp->dev, "failed to allocate statistics buffers\n");
804 struct atomisp_device *isp = video_get_drvdata(vdev);
814 dev_dbg(isp->dev,
828 struct atomisp_device *isp = video_get_drvdata(vdev);
846 dev_dbg(isp->dev,
874 struct atomisp_device *isp = asd->isp;
875 struct pci_dev *pdev = to_pci_dev(isp->dev);
879 dev_dbg(isp->dev, "Start stream\n");
881 mutex_lock(&isp->mutex);
892 mutex_lock(&isp->media_dev.graph_mutex);
893 atomisp_setup_input_links(isp);
895 mutex_unlock(&isp->media_dev.graph_mutex);
897 dev_err(isp->dev, "Error starting mc pipline: %d\n", ret);
924 spin_lock_irqsave(&isp->lock, irqflags);
926 spin_unlock_irqrestore(&isp->lock, irqflags);
941 atomisp_css_irq_enable(isp, IA_CSS_IRQ_INFO_CSS_RECEIVER_SOF,
942 atomisp_css_valid_sof(isp));
945 if (atomisp_freq_scaling(isp, ATOMISP_DFS_MODE_AUTO, false) < 0)
946 dev_dbg(isp->dev, "DFS auto mode failed!\n");
949 if (isp->media_dev.hw_revision >= ((ATOMISP_HW_REVISION_ISP2401 <<
952 isp->saved_regs.csi_control | MRFLD_PCI_CSI_CONTROL_CSI_READY);
956 ret = v4l2_subdev_call(isp->inputs[asd->input_curr].camera,
959 dev_err(isp->dev, "Starting sensor stream failed: %d\n", ret);
960 spin_lock_irqsave(&isp->lock, irqflags);
962 spin_unlock_irqrestore(&isp->lock, irqflags);
968 mutex_unlock(&isp->mutex);
976 struct atomisp_device *isp = asd->isp;
977 struct pci_dev *pdev = to_pci_dev(isp->dev);
981 dev_dbg(isp->dev, "Stop stream\n");
983 mutex_lock(&isp->mutex);
991 mutex_unlock(&isp->mutex);
995 mutex_lock(&isp->mutex);
998 dev_warn(isp->dev, "Warning timeout waiting for CSS to return buffers\n");
1000 spin_lock_irqsave(&isp->lock, flags);
1002 spin_unlock_irqrestore(&isp->lock, flags);
1005 atomisp_css_irq_enable(isp, IA_CSS_IRQ_INFO_CSS_RECEIVER_SOF, false);
1013 ret = v4l2_subdev_call(isp->inputs[asd->input_curr].camera,
1016 dev_warn(isp->dev, "Stopping sensor stream failed: %d\n", ret);
1019 if (isp->media_dev.hw_revision >= ((ATOMISP_HW_REVISION_ISP2401 <<
1022 isp->saved_regs.csi_control & ~MRFLD_PCI_CSI_CONTROL_CSI_READY);
1025 if (atomisp_freq_scaling(isp, ATOMISP_DFS_MODE_LOW, false))
1026 dev_warn(isp->dev, "DFS failed.\n");
1034 isp->saved_regs.i_control | MRFLD_PCI_I_CONTROL_SRSE_RESET_MASK);
1035 atomisp_reset(isp);
1038 ret = atomisp_create_pipes_stream(&isp->asd);
1040 dev_warn(isp->dev, "Recreating streams failed: %d\n", ret);
1043 mutex_unlock(&isp->mutex);
1299 * vidioc_g/s_param are used to switch isp running mode
1306 struct atomisp_device *isp = video_get_drvdata(vdev);
1309 dev_err(isp->dev, "unsupported v4l2 buf type\n");
1322 struct atomisp_device *isp = video_get_drvdata(vdev);
1329 dev_err(isp->dev, "unsupported v4l2 buf type\n");
1340 rval = v4l2_subdev_call_state_active(isp->inputs[asd->input_curr].camera,