Skip to content

Commit ade15c7

Browse files
hoshinolinajannau
authored andcommitted
media: apple: isp: Minor changes to cam flow
Signed-off-by: Asahi Lina <lina@asahilina.net>
1 parent 346c5d1 commit ade15c7

2 files changed

Lines changed: 23 additions & 14 deletions

File tree

drivers/media/platform/apple/isp/isp-cam.c

Lines changed: 22 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -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

drivers/media/platform/apple/isp/isp-cam.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88

99
#define ISP_FRAME_RATE_NUM 256
1010
#define ISP_FRAME_RATE_DEN 7680
11+
#define ISP_FRAME_RATE_DEN2 3840
1112

1213
int apple_isp_detect_camera(struct apple_isp *isp);
1314

0 commit comments

Comments
 (0)