media: atomisp: Remove asd == NULL checks from ioctl handling
At probe time isp_subdev_init_entities() sets pipe->asd to a non NULL value for all four (preview/vf/capture/capture_video) pipes by calling atomisp_init_subdev_pipe() for all 4 pipes. So it can never be NULL. Remove the redundant NULL checks. Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
This commit is contained in:
parent
2468083f79
commit
0d51573df3
@ -1755,12 +1755,6 @@ void atomisp_wdt_refresh(struct atomisp_sub_device *asd, unsigned int delay)
|
||||
/* ISP2401 */
|
||||
void atomisp_wdt_stop_pipe(struct atomisp_video_pipe *pipe, bool sync)
|
||||
{
|
||||
if (!pipe->asd) {
|
||||
dev_err(pipe->isp->dev, "%s(): asd is NULL, device is %s\n",
|
||||
__func__, pipe->vdev.name);
|
||||
return;
|
||||
}
|
||||
|
||||
if (!atomisp_is_wdt_running(pipe))
|
||||
return;
|
||||
|
||||
@ -5557,12 +5551,6 @@ int atomisp_set_fmt(struct video_device *vdev, struct v4l2_format *f)
|
||||
|
||||
lockdep_assert_held(&isp->mutex);
|
||||
|
||||
if (!asd) {
|
||||
dev_err(isp->dev, "%s(): asd is NULL, device is %s\n",
|
||||
__func__, vdev->name);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (source_pad >= ATOMISP_SUBDEV_PADS_NUM)
|
||||
return -EINVAL;
|
||||
|
||||
@ -6587,12 +6575,6 @@ int atomisp_get_invalid_frame_num(struct video_device *vdev,
|
||||
struct ia_css_pipe_info p_info;
|
||||
int ret;
|
||||
|
||||
if (!asd) {
|
||||
dev_err(pipe->isp->dev, "%s(): asd is NULL, device is %s\n",
|
||||
__func__, vdev->name);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (asd->isp->inputs[asd->input_curr].camera_caps->
|
||||
sensor[asd->sensor_curr].stream_num > 1) {
|
||||
/* External ISP */
|
||||
|
@ -632,12 +632,6 @@ static int atomisp_g_input(struct file *file, void *fh, unsigned int *input)
|
||||
struct atomisp_device *isp = video_get_drvdata(vdev);
|
||||
struct atomisp_sub_device *asd = atomisp_to_video_pipe(vdev)->asd;
|
||||
|
||||
if (!asd) {
|
||||
dev_err(isp->dev, "%s(): asd is NULL, device is %s\n",
|
||||
__func__, vdev->name);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
mutex_lock(&isp->mutex);
|
||||
*input = asd->input_curr;
|
||||
mutex_unlock(&isp->mutex);
|
||||
@ -657,12 +651,6 @@ static int atomisp_s_input(struct file *file, void *fh, unsigned int input)
|
||||
struct v4l2_subdev *motor;
|
||||
int ret;
|
||||
|
||||
if (!asd) {
|
||||
dev_err(isp->dev, "%s(): asd is NULL, device is %s\n",
|
||||
__func__, vdev->name);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
mutex_lock(&isp->mutex);
|
||||
if (input >= ATOM_ISP_MAX_INPUTS || input >= isp->input_cnt) {
|
||||
dev_dbg(isp->dev, "input_cnt: %d\n", isp->input_cnt);
|
||||
@ -818,12 +806,6 @@ static int atomisp_enum_fmt_cap(struct file *file, void *fh,
|
||||
unsigned int i, fi = 0;
|
||||
int rval;
|
||||
|
||||
if (!asd) {
|
||||
dev_err(isp->dev, "%s(): asd is NULL, device is %s\n",
|
||||
__func__, vdev->name);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
camera = isp->inputs[asd->input_curr].camera;
|
||||
if(!camera) {
|
||||
dev_err(isp->dev, "%s(): camera is NULL, device is %s\n",
|
||||
@ -1152,11 +1134,6 @@ int __atomisp_reqbufs(struct file *file, void *fh,
|
||||
u16 stream_id;
|
||||
int ret = 0, i = 0;
|
||||
|
||||
if (!asd) {
|
||||
dev_err(pipe->isp->dev, "%s(): asd is NULL, device is %s\n",
|
||||
__func__, vdev->name);
|
||||
return -EINVAL;
|
||||
}
|
||||
stream_id = atomisp_source_pad_to_stream_id(asd, source_pad);
|
||||
|
||||
if (req->count == 0) {
|
||||
@ -1261,12 +1238,6 @@ static int atomisp_qbuf(struct file *file, void *fh, struct v4l2_buffer *buf)
|
||||
u32 pgnr;
|
||||
int ret = 0;
|
||||
|
||||
if (!asd) {
|
||||
dev_err(isp->dev, "%s(): asd is NULL, device is %s\n",
|
||||
__func__, vdev->name);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
mutex_lock(&isp->mutex);
|
||||
if (isp->isp_fatal_error) {
|
||||
ret = -EIO;
|
||||
@ -1449,12 +1420,6 @@ static int atomisp_dqbuf(struct file *file, void *fh, struct v4l2_buffer *buf)
|
||||
struct atomisp_device *isp = video_get_drvdata(vdev);
|
||||
int ret = 0;
|
||||
|
||||
if (!asd) {
|
||||
dev_err(isp->dev, "%s(): asd is NULL, device is %s\n",
|
||||
__func__, vdev->name);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
mutex_lock(&isp->mutex);
|
||||
|
||||
if (isp->isp_fatal_error) {
|
||||
@ -1706,12 +1671,6 @@ static int atomisp_streamon(struct file *file, void *fh,
|
||||
int ret = 0;
|
||||
unsigned long irqflags;
|
||||
|
||||
if (!asd) {
|
||||
dev_err(isp->dev, "%s(): asd is NULL, device is %s\n",
|
||||
__func__, vdev->name);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
dev_dbg(isp->dev, "Start stream on pad %d for asd%d\n",
|
||||
atomisp_subdev_source_pad(vdev), asd->index);
|
||||
|
||||
@ -1963,12 +1922,6 @@ int __atomisp_streamoff(struct file *file, void *fh, enum v4l2_buf_type type)
|
||||
unsigned long flags;
|
||||
bool first_streamoff = false;
|
||||
|
||||
if (!asd) {
|
||||
dev_err(isp->dev, "%s(): asd is NULL, device is %s\n",
|
||||
__func__, vdev->name);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
dev_dbg(isp->dev, "Stop stream on pad %d for asd%d\n",
|
||||
atomisp_subdev_source_pad(vdev), asd->index);
|
||||
|
||||
@ -2213,12 +2166,6 @@ static int atomisp_g_ctrl(struct file *file, void *fh,
|
||||
struct atomisp_device *isp = video_get_drvdata(vdev);
|
||||
int i, ret = -EINVAL;
|
||||
|
||||
if (!asd) {
|
||||
dev_err(isp->dev, "%s(): asd is NULL, device is %s\n",
|
||||
__func__, vdev->name);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
for (i = 0; i < ctrls_num; i++) {
|
||||
if (ci_v4l2_controls[i].id == control->id) {
|
||||
ret = 0;
|
||||
@ -2298,12 +2245,6 @@ static int atomisp_s_ctrl(struct file *file, void *fh,
|
||||
struct atomisp_device *isp = video_get_drvdata(vdev);
|
||||
int i, ret = -EINVAL;
|
||||
|
||||
if (!asd) {
|
||||
dev_err(isp->dev, "%s(): asd is NULL, device is %s\n",
|
||||
__func__, vdev->name);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
for (i = 0; i < ctrls_num; i++) {
|
||||
if (ci_v4l2_controls[i].id == control->id) {
|
||||
ret = 0;
|
||||
@ -2385,12 +2326,6 @@ static int atomisp_queryctl(struct file *file, void *fh,
|
||||
struct atomisp_sub_device *asd = atomisp_to_video_pipe(vdev)->asd;
|
||||
struct atomisp_device *isp = video_get_drvdata(vdev);
|
||||
|
||||
if (!asd) {
|
||||
dev_err(isp->dev, "%s(): asd is NULL, device is %s\n",
|
||||
__func__, vdev->name);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
switch (qc->id) {
|
||||
case V4L2_CID_FOCUS_ABSOLUTE:
|
||||
case V4L2_CID_FOCUS_RELATIVE:
|
||||
@ -2436,12 +2371,6 @@ static int atomisp_camera_g_ext_ctrls(struct file *file, void *fh,
|
||||
int i;
|
||||
int ret = 0;
|
||||
|
||||
if (!asd) {
|
||||
dev_err(isp->dev, "%s(): asd is NULL, device is %s\n",
|
||||
__func__, vdev->name);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (!IS_ISP2401)
|
||||
motor = isp->inputs[asd->input_curr].motor;
|
||||
else
|
||||
@ -2553,12 +2482,6 @@ static int atomisp_camera_s_ext_ctrls(struct file *file, void *fh,
|
||||
int i;
|
||||
int ret = 0;
|
||||
|
||||
if (!asd) {
|
||||
dev_err(isp->dev, "%s(): asd is NULL, device is %s\n",
|
||||
__func__, vdev->name);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (!IS_ISP2401)
|
||||
motor = isp->inputs[asd->input_curr].motor;
|
||||
else
|
||||
@ -2684,12 +2607,6 @@ static int atomisp_g_parm(struct file *file, void *fh,
|
||||
struct atomisp_sub_device *asd = atomisp_to_video_pipe(vdev)->asd;
|
||||
struct atomisp_device *isp = video_get_drvdata(vdev);
|
||||
|
||||
if (!asd) {
|
||||
dev_err(isp->dev, "%s(): asd is NULL, device is %s\n",
|
||||
__func__, vdev->name);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (parm->type != V4L2_BUF_TYPE_VIDEO_CAPTURE) {
|
||||
dev_err(isp->dev, "unsupported v4l2 buf type\n");
|
||||
return -EINVAL;
|
||||
@ -2712,12 +2629,6 @@ static int atomisp_s_parm(struct file *file, void *fh,
|
||||
int rval;
|
||||
int fps;
|
||||
|
||||
if (!asd) {
|
||||
dev_err(isp->dev, "%s(): asd is NULL, device is %s\n",
|
||||
__func__, vdev->name);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (parm->type != V4L2_BUF_TYPE_VIDEO_CAPTURE) {
|
||||
dev_err(isp->dev, "unsupported v4l2 buf type\n");
|
||||
return -EINVAL;
|
||||
|
Loading…
x
Reference in New Issue
Block a user