mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-02 10:59:18 -04:00
media: atomisp: Remove in_reset argument from atomisp_css_start()
The in_reset argument to atomisp_css_start() is only ever true in atomisp_assert_recovery_work(), drop the argument and move the special reset handlig to atomisp_assert_recovery_work(). 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
1180d072e0
commit
ae39964d2c
@@ -974,7 +974,13 @@ void atomisp_assert_recovery_work(struct work_struct *work)
|
||||
|
||||
atomisp_css_input_set_mode(&isp->asd, IA_CSS_INPUT_MODE_BUFFERED_SENSOR);
|
||||
|
||||
if (atomisp_css_start(&isp->asd, true)) {
|
||||
/* Recreate streams destroyed by atomisp_css_stop() */
|
||||
atomisp_create_pipes_stream(&isp->asd);
|
||||
|
||||
/* Invalidate caches. FIXME: should flush only necessary buffers */
|
||||
wbinvd();
|
||||
|
||||
if (atomisp_css_start(&isp->asd)) {
|
||||
dev_warn(isp->dev, "start SP failed, so do not set streaming to be enable!\n");
|
||||
} else {
|
||||
spin_lock_irqsave(&isp->lock, flags);
|
||||
|
||||
@@ -78,7 +78,7 @@ int atomisp_q_dis_buffer_to_css(struct atomisp_sub_device *asd,
|
||||
|
||||
void ia_css_mmu_invalidate_cache(void);
|
||||
|
||||
int atomisp_css_start(struct atomisp_sub_device *asd, bool in_reset);
|
||||
int atomisp_css_start(struct atomisp_sub_device *asd);
|
||||
|
||||
void atomisp_css_update_isp_params(struct atomisp_sub_device *asd);
|
||||
void atomisp_css_update_isp_params_on_pipe(struct atomisp_sub_device *asd,
|
||||
|
||||
@@ -985,21 +985,12 @@ int atomisp_q_dis_buffer_to_css(struct atomisp_sub_device *asd,
|
||||
return 0;
|
||||
}
|
||||
|
||||
int atomisp_css_start(struct atomisp_sub_device *asd, bool in_reset)
|
||||
int atomisp_css_start(struct atomisp_sub_device *asd)
|
||||
{
|
||||
struct atomisp_device *isp = asd->isp;
|
||||
bool sp_is_started = false;
|
||||
int ret = 0, i = 0;
|
||||
|
||||
if (in_reset) {
|
||||
ret = atomisp_css_update_stream(asd);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
/* Invalidate caches. FIXME: should flush only necessary buffers */
|
||||
wbinvd();
|
||||
}
|
||||
|
||||
if (!sh_css_hrt_system_is_idle())
|
||||
dev_err(isp->dev, "CSS HW not idle before starting SP\n");
|
||||
|
||||
|
||||
@@ -1120,7 +1120,7 @@ int atomisp_start_streaming(struct vb2_queue *vq, unsigned int count)
|
||||
}
|
||||
asd->params.dvs_6axis = NULL;
|
||||
|
||||
ret = atomisp_css_start(asd, false);
|
||||
ret = atomisp_css_start(asd);
|
||||
if (ret) {
|
||||
atomisp_flush_video_pipe(pipe, VB2_BUF_STATE_QUEUED, true);
|
||||
goto out_unlock;
|
||||
|
||||
Reference in New Issue
Block a user