From 76e411eca06f7f56ad36fc71daf3a05ab85f86f7 Mon Sep 17 00:00:00 2001 From: SPRESENSE <41312067+SPRESENSE@users.noreply.github.com> Date: Mon, 31 Oct 2022 20:27:06 +0900 Subject: [PATCH] boards: cxd56xx: Add CXD56_CAMERA_LATE_INITIALIZE config This CXD56_CAMERA_LATE_INITIALIZE enables to initialize camera device drivers in the application side code. --- boards/arm/cxd56xx/spresense/Kconfig | 8 ++++++++ boards/arm/cxd56xx/spresense/src/cxd56_bringup.c | 8 +++++--- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/boards/arm/cxd56xx/spresense/Kconfig b/boards/arm/cxd56xx/spresense/Kconfig index 872b400409..46cded7dac 100644 --- a/boards/arm/cxd56xx/spresense/Kconfig +++ b/boards/arm/cxd56xx/spresense/Kconfig @@ -765,4 +765,12 @@ config CXD56_BINARY Create nuttx.spk binary format used on spresense board and boards based on cxd56xx arch. +config CXD56_CAMERA_LATE_INITIALIZE + bool "Camera drivers late initialization" + default n + depends on CXD56_CISIF + ---help--- + The camera drivers can be initialized on an application code after system booted up + by enabling this configuration switch. + endif diff --git a/boards/arm/cxd56xx/spresense/src/cxd56_bringup.c b/boards/arm/cxd56xx/spresense/src/cxd56_bringup.c index 0c5d25c22a..fa01f4860c 100644 --- a/boards/arm/cxd56xx/spresense/src/cxd56_bringup.c +++ b/boards/arm/cxd56xx/spresense/src/cxd56_bringup.c @@ -378,13 +378,14 @@ int cxd56_bringup(void) } #endif +#ifndef CONFIG_CXD56_CAMERA_LATE_INITIALIZE #ifdef CONFIG_VIDEO_ISX019 ret = isx019_initialize(); if (ret < 0) { _err("ERROR: Failed to initialize ISX019 board. %d\n", errno); } -#endif +#endif /* CONFIG_VIDEO_ISX019 */ #ifdef CONFIG_VIDEO_ISX012 ret = isx012_initialize(); @@ -392,7 +393,7 @@ int cxd56_bringup(void) { _err("ERROR: Failed to initialize ISX012 board. %d\n", errno); } -#endif +#endif /* CONFIG_VIDEO_ISX012 */ #ifdef CONFIG_CXD56_CISIF ret = cxd56_cisif_initialize(); @@ -401,7 +402,8 @@ int cxd56_bringup(void) _err("ERROR: Failed to initialize CISIF. %d\n", errno); ret = ERROR; } -#endif +#endif /* CONFIG_CXD56_CISIF */ +#endif /* CONFIG_CXD56_CAMERA_LATE_INITIALIZE */ #if defined(CONFIG_CXD56_SDIO) /* In order to prevent Hi-Z from being input to the SD Card controller,