feat(isp): added isp demosaic driver

This commit is contained in:
Armando
2024-08-27 16:53:36 +08:00
parent 079df0282a
commit 02b2f9a4c4
13 changed files with 338 additions and 6 deletions

View File

@@ -168,6 +168,27 @@ bool isp_hal_ccm_set_matrix(const isp_hal_context_t *hal, bool saturation, const
return true;
}
/*---------------------------------------------------------------
Demosaic
---------------------------------------------------------------*/
void isp_hal_demosaic_config(isp_hal_context_t *hal, isp_hal_demosaic_cfg_t *config)
{
if (config) {
isp_ll_demosaic_set_grad_ratio(hal->hw, config->grad_ratio);
isp_ll_demosaic_set_padding_mode(hal->hw, config->padding_mode);
isp_ll_demosaic_set_padding_data(hal->hw, config->padding_data);
isp_ll_demosaic_set_padding_line_tail_valid_start_pixel(hal->hw, config->padding_line_tail_valid_start_pixel);
isp_ll_demosaic_set_padding_line_tail_valid_end_pixel(hal->hw, config->padding_line_tail_valid_end_pixel);
} else {
isp_demosaic_grad_ratio_t grad_ratio = {};
isp_ll_demosaic_set_grad_ratio(hal->hw, grad_ratio);
isp_ll_demosaic_set_padding_mode(hal->hw, 0);
isp_ll_demosaic_set_padding_data(hal->hw, 0);
isp_ll_demosaic_set_padding_line_tail_valid_start_pixel(hal->hw, 0);
isp_ll_demosaic_set_padding_line_tail_valid_end_pixel(hal->hw, 0);
}
}
/*---------------------------------------------------------------
Histogram
---------------------------------------------------------------*/
@@ -202,7 +223,7 @@ void isp_hal_sharpen_config(isp_hal_context_t *hal, isp_hal_sharpen_cfg_t *confi
isp_ll_sharp_set_low_thresh(hal->hw, 0);
isp_ll_sharp_set_high_thresh(hal->hw, 0);
isp_sharpen_m_freq_coeff m_freq = {};
isp_sharpen_h_freq_coeff h_freq = {};
isp_sharpen_h_freq_coeff_t h_freq = {};
isp_ll_sharp_set_medium_freq_coeff(hal->hw, m_freq);
isp_ll_sharp_set_high_freq_coeff(hal->hw, h_freq);
isp_ll_sharp_set_padding_mode(hal->hw, 0);