mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-02 14:34:13 -04:00
media: atomisp: Simplify atomisp_pipe_check()
All switch (pipe->asd->streaming) cases in atomisp_pipe_check() are either no-ops or never happen: 1. ATOMISP_DEVICE_STREAMING_DISABLED already is a no-op 2. The videobuf2 core guarantees that when we are streaming vb2_is_busy() returns true. So the ATOMISP_DEVICE_STREAMING_ENABLED case is already handled by the if above the switch (pipe->asd->streaming). 3. After recent changes pipe->asd->streaming is only ever set to ATOMISP_DEVICE_STREAMING_STOPPING in atomisp_assert_recovery_work() and that function holds isp->mutex and always transitions the streaming state to ATOMISP_DEVICE_STREAMING_DISABLED or ATOMISP_DEVICE_STREAMING_ENABLED before releasing the mutex. So atomisp_pipe_check() never sees ATOMISP_DEVICE_STREAMING_STOPPING. Remove the entire switch-case. Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
This commit is contained in:
committed by
Mauro Carvalho Chehab
parent
347f2e56b9
commit
e1278e6187
@@ -528,22 +528,6 @@ int atomisp_pipe_check(struct atomisp_video_pipe *pipe, bool settings_change)
|
||||
return -EBUSY;
|
||||
}
|
||||
|
||||
switch (pipe->asd->streaming) {
|
||||
case ATOMISP_DEVICE_STREAMING_DISABLED:
|
||||
break;
|
||||
case ATOMISP_DEVICE_STREAMING_ENABLED:
|
||||
if (settings_change) {
|
||||
dev_err(pipe->isp->dev, "Set fmt/input IOCTL while streaming\n");
|
||||
return -EBUSY;
|
||||
}
|
||||
break;
|
||||
case ATOMISP_DEVICE_STREAMING_STOPPING:
|
||||
dev_err(pipe->isp->dev, "IOCTL issued while stopping\n");
|
||||
return -EBUSY;
|
||||
default:
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user