@@ -431,6 +431,42 @@ static int video_mcux_csi_set_signal(const struct device *dev, enum video_endpoi
431
431
}
432
432
#endif
433
433
434
+ static int video_mcux_csi_set_frmival (const struct device * dev , enum video_endpoint_id ep ,
435
+ struct video_frmival * frmival )
436
+ {
437
+ const struct video_mcux_csi_config * config = dev -> config ;
438
+
439
+ return video_set_frmival (config -> source_dev , ep , frmival );
440
+ }
441
+
442
+ static int video_mcux_csi_get_frmival (const struct device * dev , enum video_endpoint_id ep ,
443
+ struct video_frmival * frmival )
444
+ {
445
+ const struct video_mcux_csi_config * config = dev -> config ;
446
+
447
+ return video_get_frmival (config -> source_dev , ep , frmival );
448
+ }
449
+
450
+ static int video_mcux_csi_enum_frmival (const struct device * dev , enum video_endpoint_id ep ,
451
+ struct video_frmival_enum * fie )
452
+ {
453
+ const struct video_mcux_csi_config * config = dev -> config ;
454
+ const struct video_format * fie_fmt = fie -> format ;
455
+ int ret ;
456
+
457
+ #if defined(CONFIG_VIDEO_MCUX_MIPI_CSI2RX )
458
+ struct video_format converted_fmt = * fie -> format ;
459
+
460
+ video_pix_fmt_convert (& converted_fmt , false);
461
+ fie -> format = & converted_fmt ;
462
+ #endif
463
+
464
+ ret = video_enum_frmival (config -> source_dev , ep , fie );
465
+ fie -> format = fie_fmt ;
466
+
467
+ return ret ;
468
+ }
469
+
434
470
static const struct video_driver_api video_mcux_csi_driver_api = {
435
471
.set_format = video_mcux_csi_set_fmt ,
436
472
.get_format = video_mcux_csi_get_fmt ,
@@ -442,6 +478,9 @@ static const struct video_driver_api video_mcux_csi_driver_api = {
442
478
.set_ctrl = video_mcux_csi_set_ctrl ,
443
479
.get_ctrl = video_mcux_csi_get_ctrl ,
444
480
.get_caps = video_mcux_csi_get_caps ,
481
+ .set_frmival = video_mcux_csi_set_frmival ,
482
+ .get_frmival = video_mcux_csi_get_frmival ,
483
+ .enum_frmival = video_mcux_csi_enum_frmival ,
445
484
#ifdef CONFIG_POLL
446
485
.set_signal = video_mcux_csi_set_signal ,
447
486
#endif
0 commit comments