media: atomisp: atomisp_v4l2.c: set wdt timers according with ISP version

Add a runtime check to use the proper wdt timer init at runtime,
depending on the chipset revision.

For now, we can't get rid of the remaining version checks, as
the rest of the code is not prepared yet to detect the ISP
version on runtime.

Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
This commit is contained in:
Mauro Carvalho Chehab 2020-04-22 14:06:58 +02:00
parent 9ace178dee
commit a19b190e32

View File

@ -1148,14 +1148,17 @@ static int init_atomisp_wdts(struct atomisp_device *isp)
for (i = 0; i < isp->num_of_streams; i++) {
struct atomisp_sub_device *asd = &isp->asd[i];
#ifndef ISP2401
timer_setup(&asd->wdt, atomisp_wdt, 0);
#else
timer_setup(&asd->video_out_capture.wdt, atomisp_wdt, 0);
timer_setup(&asd->video_out_preview.wdt, atomisp_wdt, 0);
timer_setup(&asd->video_out_vf.wdt, atomisp_wdt, 0);
timer_setup(&asd->video_out_video_capture.wdt, atomisp_wdt, 0);
#endif
if (!atomisp_hw_is_isp2401)
timer_setup(&asd->wdt, atomisp_wdt, 0);
else {
timer_setup(&asd->video_out_capture.wdt,
atomisp_wdt, 0);
timer_setup(&asd->video_out_preview.wdt,
atomisp_wdt, 0);
timer_setup(&asd->video_out_vf.wdt, atomisp_wdt, 0);
timer_setup(&asd->video_out_video_capture.wdt,
atomisp_wdt, 0);
}
}
return 0;
alloc_fail: