@@ -289,6 +289,12 @@ int apple_isp_detect_camera(struct apple_isp *isp)
289289 }
290290
291291 err = isp_detect_camera (isp );
292+
293+ isp_cmd_flicker_sensor_set (isp , 0 );
294+
295+ isp_cmd_ch_stop (isp , 0 );
296+ isp_cmd_ch_buffer_return (isp , isp -> current_ch );
297+
292298 apple_isp_firmware_shutdown (isp );
293299
294300 return err ;
@@ -335,6 +341,8 @@ static int isp_ch_configure_capture(struct apple_isp *isp, u32 ch)
335341 struct isp_format * fmt = isp_get_format (isp , ch );
336342 int err ;
337343
344+ isp_cmd_flicker_sensor_set (isp , 0 );
345+
338346 /* The setfile isn't requisite but then we don't get calibration */
339347 err = isp_ch_load_setfile (isp , ch );
340348 if (err ) {
@@ -356,16 +364,16 @@ static int isp_ch_configure_capture(struct apple_isp *isp, u32 ch)
356364 if (err )
357365 return err ;
358366
359- err = isp_cmd_ch_buffer_recycle_mode_set (
360- isp , ch , CISP_BUFFER_RECYCLE_MODE_EMPTY_ONLY );
367+ err = isp_cmd_ch_camera_config_select (isp , ch , fmt -> preset -> index );
361368 if (err )
362369 return err ;
363370
364- err = isp_cmd_ch_buffer_recycle_start (isp , ch );
371+ err = isp_cmd_ch_buffer_recycle_mode_set (
372+ isp , ch , CISP_BUFFER_RECYCLE_MODE_EMPTY_ONLY );
365373 if (err )
366374 return err ;
367375
368- err = isp_cmd_ch_camera_config_select (isp , ch , fmt -> preset -> index );
376+ err = isp_cmd_ch_buffer_recycle_start (isp , ch );
369377 if (err )
370378 return err ;
371379
@@ -395,43 +403,43 @@ static int isp_ch_configure_capture(struct apple_isp *isp, u32 ch)
395403 if (err )
396404 return err ;
397405
398- err = isp_cmd_apple_ch_temporal_filter_start (isp , ch , isp -> temporal_filter );
406+ err = isp_cmd_apple_ch_ae_fd_scene_metering_config_set (isp , ch );
399407 if (err )
400408 return err ;
401409
402- err = isp_cmd_apple_ch_motion_history_start (isp , ch );
410+ err = isp_cmd_apple_ch_ae_metering_mode_set (isp , ch , 3 );
403411 if (err )
404412 return err ;
405413
406- err = isp_cmd_apple_ch_temporal_filter_enable (isp , ch );
414+ err = isp_cmd_ch_ae_stability_set (isp , ch , 32 );
407415 if (err )
408416 return err ;
409417
410- err = isp_cmd_apple_ch_ae_fd_scene_metering_config_set (isp , ch );
418+ err = isp_cmd_ch_ae_stability_to_stable_set (isp , ch , 20 );
411419 if (err )
412420 return err ;
413421
414- err = isp_cmd_apple_ch_ae_metering_mode_set (isp , ch , 3 );
422+ err = isp_cmd_ch_sif_pixel_format_set (isp , ch );
415423 if (err )
416424 return err ;
417425
418- err = isp_cmd_ch_ae_stability_set (isp , ch , 32 );
426+ err = isp_cmd_ch_ae_frame_rate_max_set (isp , ch , ISP_FRAME_RATE_DEN );
419427 if (err )
420428 return err ;
421429
422- err = isp_cmd_ch_ae_stability_to_stable_set (isp , ch , 20 );
430+ err = isp_cmd_ch_ae_frame_rate_min_set (isp , ch , ISP_FRAME_RATE_DEN2 );
423431 if (err )
424432 return err ;
425433
426- err = isp_cmd_ch_sif_pixel_format_set (isp , ch );
434+ err = isp_cmd_apple_ch_temporal_filter_start (isp , ch , isp -> temporal_filter );
427435 if (err )
428436 return err ;
429437
430- err = isp_cmd_ch_ae_frame_rate_max_set (isp , ch , ISP_FRAME_RATE_DEN );
438+ err = isp_cmd_apple_ch_motion_history_start (isp , ch );
431439 if (err )
432440 return err ;
433441
434- err = isp_cmd_ch_ae_frame_rate_min_set (isp , ch , ISP_FRAME_RATE_DEN );
442+ err = isp_cmd_apple_ch_temporal_filter_enable (isp , ch );
435443 if (err )
436444 return err ;
437445
0 commit comments