mirror of
https://github.com/espressif/esp-idf.git
synced 2026-10-02 03:00:34 +03:00
feat(isp): added isp dvp driver
This commit is contained in:
@@ -751,10 +751,18 @@ config SOC_ISP_BF_SUPPORTED
|
||||
bool
|
||||
default y
|
||||
|
||||
config SOC_ISP_DVP_SUPPORTED
|
||||
bool
|
||||
default y
|
||||
|
||||
config SOC_ISP_NUMS
|
||||
int
|
||||
default 1
|
||||
|
||||
config SOC_ISP_DVP_CTLR_NUMS
|
||||
int
|
||||
default 1
|
||||
|
||||
config SOC_ISP_AF_CTLR_NUMS
|
||||
int
|
||||
default 1
|
||||
@@ -775,6 +783,10 @@ config SOC_ISP_BF_TEMPLATE_Y_NUMS
|
||||
int
|
||||
default 3
|
||||
|
||||
config SOC_ISP_DVP_DATA_WIDTH_MAX
|
||||
int
|
||||
default 16
|
||||
|
||||
config SOC_LEDC_SUPPORT_PLL_DIV_CLOCK
|
||||
bool
|
||||
default y
|
||||
|
||||
@@ -312,13 +312,16 @@
|
||||
|
||||
/*-------------------------- ISP CAPS ----------------------------------------*/
|
||||
#define SOC_ISP_BF_SUPPORTED 1
|
||||
#define SOC_ISP_DVP_SUPPORTED 1
|
||||
|
||||
#define SOC_ISP_NUMS 1U
|
||||
#define SOC_ISP_DVP_CTLR_NUMS 1U
|
||||
#define SOC_ISP_AF_CTLR_NUMS 1U
|
||||
#define SOC_ISP_AF_WINDOW_NUMS 3
|
||||
#define SOC_ISP_SHARE_CSI_BRG 1
|
||||
#define SOC_ISP_BF_TEMPLATE_X_NUMS 3
|
||||
#define SOC_ISP_BF_TEMPLATE_Y_NUMS 3
|
||||
#define SOC_ISP_DVP_DATA_WIDTH_MAX 16
|
||||
|
||||
/*-------------------------- LEDC CAPS ---------------------------------------*/
|
||||
#define SOC_LEDC_SUPPORT_PLL_DIV_CLOCK (1)
|
||||
|
||||
@@ -16,6 +16,32 @@ const isp_info_t isp_hw_info = {
|
||||
[0] = {
|
||||
.irq = ETS_ISP_INTR_SOURCE,
|
||||
}
|
||||
},
|
||||
.dvp_ctlr = {
|
||||
[0] = {
|
||||
.dvp_pclk_sig = CAM_PCLK_PAD_IN_IDX,
|
||||
.dvp_hsync_sig = CAM_H_SYNC_PAD_IN_IDX,
|
||||
.dvp_vsync_sig = CAM_V_SYNC_PAD_IN_IDX,
|
||||
.dvp_de_sig = CAM_H_ENABLE_PAD_IN_IDX,
|
||||
.dvp_data_sig = {
|
||||
CAM_DATA_IN_PAD_IN0_IDX,
|
||||
CAM_DATA_IN_PAD_IN1_IDX,
|
||||
CAM_DATA_IN_PAD_IN2_IDX,
|
||||
CAM_DATA_IN_PAD_IN3_IDX,
|
||||
CAM_DATA_IN_PAD_IN4_IDX,
|
||||
CAM_DATA_IN_PAD_IN5_IDX,
|
||||
CAM_DATA_IN_PAD_IN6_IDX,
|
||||
CAM_DATA_IN_PAD_IN7_IDX,
|
||||
CAM_DATA_IN_PAD_IN8_IDX,
|
||||
CAM_DATA_IN_PAD_IN9_IDX,
|
||||
CAM_DATA_IN_PAD_IN10_IDX,
|
||||
CAM_DATA_IN_PAD_IN11_IDX,
|
||||
CAM_DATA_IN_PAD_IN12_IDX,
|
||||
CAM_DATA_IN_PAD_IN13_IDX,
|
||||
CAM_DATA_IN_PAD_IN14_IDX,
|
||||
CAM_DATA_IN_PAD_IN15_IDX
|
||||
},
|
||||
},
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
#include <stdint.h>
|
||||
#include "soc/soc_caps.h"
|
||||
#include "soc/periph_defs.h"
|
||||
#include "soc/gpio_sig_map.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
@@ -19,6 +20,13 @@ typedef struct {
|
||||
struct {
|
||||
const uint32_t irq;
|
||||
} instances[SOC_ISP_NUMS];
|
||||
struct {
|
||||
const uint32_t dvp_pclk_sig;
|
||||
const uint32_t dvp_hsync_sig;
|
||||
const uint32_t dvp_vsync_sig;
|
||||
const uint32_t dvp_de_sig;
|
||||
const uint32_t dvp_data_sig[SOC_ISP_DVP_DATA_WIDTH_MAX];
|
||||
} dvp_ctlr[SOC_ISP_DVP_CTLR_NUMS];
|
||||
} isp_info_t;
|
||||
|
||||
extern const isp_info_t isp_hw_info;
|
||||
|
||||
Reference in New Issue
Block a user