Lines Matching refs:isp
51 typedef void (*c3_isp_block_handler)(struct c3_isp_device *isp,
64 static void c3_isp_params_cfg_awb_gains(struct c3_isp_device *isp, in c3_isp_params_cfg_awb_gains() argument
70 c3_isp_update_bits(isp, ISP_TOP_BEO_CTRL, in c3_isp_params_cfg_awb_gains()
76 c3_isp_update_bits(isp, ISP_LSWB_WB_GAIN0, in c3_isp_params_cfg_awb_gains()
79 c3_isp_update_bits(isp, ISP_LSWB_WB_GAIN0, in c3_isp_params_cfg_awb_gains()
82 c3_isp_update_bits(isp, ISP_LSWB_WB_GAIN1, in c3_isp_params_cfg_awb_gains()
85 c3_isp_update_bits(isp, ISP_LSWB_WB_GAIN1, in c3_isp_params_cfg_awb_gains()
88 c3_isp_update_bits(isp, ISP_LSWB_WB_GAIN2, in c3_isp_params_cfg_awb_gains()
93 c3_isp_update_bits(isp, ISP_TOP_BEO_CTRL, in c3_isp_params_cfg_awb_gains()
98 static void c3_isp_params_awb_wt(struct c3_isp_device *isp, in c3_isp_params_awb_wt() argument
107 c3_isp_write(isp, ISP_AWB_BLK_WT_ADDR, 0); in c3_isp_params_awb_wt()
122 c3_isp_write(isp, ISP_AWB_BLK_WT_DATA, data); in c3_isp_params_awb_wt()
134 c3_isp_write(isp, ISP_AWB_BLK_WT_DATA, data); in c3_isp_params_awb_wt()
137 static void c3_isp_params_awb_cood(struct c3_isp_device *isp, in c3_isp_params_awb_cood() argument
146 c3_isp_write(isp, ISP_AWB_IDX_ADDR, 0); in c3_isp_params_awb_cood()
149 c3_isp_write(isp, ISP_AWB_IDX_DATA, in c3_isp_params_awb_cood()
154 static void c3_isp_params_cfg_awb_config(struct c3_isp_device *isp, in c3_isp_params_cfg_awb_config() argument
160 c3_isp_update_bits(isp, ISP_TOP_3A_STAT_CRTL, in c3_isp_params_cfg_awb_config()
166 c3_isp_update_bits(isp, ISP_TOP_3A_STAT_CRTL, in c3_isp_params_cfg_awb_config()
170 c3_isp_update_bits(isp, ISP_AWB_STAT_CTRL2, in c3_isp_params_cfg_awb_config()
174 c3_isp_update_bits(isp, ISP_AWB_HV_BLKNUM, in c3_isp_params_cfg_awb_config()
177 c3_isp_update_bits(isp, ISP_AWB_HV_BLKNUM, in c3_isp_params_cfg_awb_config()
181 c3_isp_update_bits(isp, ISP_AWB_STAT_RG, ISP_AWB_STAT_RG_MIN_VALUE_MASK, in c3_isp_params_cfg_awb_config()
183 c3_isp_update_bits(isp, ISP_AWB_STAT_RG, ISP_AWB_STAT_RG_MAX_VALUE_MASK, in c3_isp_params_cfg_awb_config()
186 c3_isp_update_bits(isp, ISP_AWB_STAT_BG, ISP_AWB_STAT_BG_MIN_VALUE_MASK, in c3_isp_params_cfg_awb_config()
188 c3_isp_update_bits(isp, ISP_AWB_STAT_BG, ISP_AWB_STAT_BG_MAX_VALUE_MASK, in c3_isp_params_cfg_awb_config()
191 c3_isp_update_bits(isp, ISP_AWB_STAT_RG_HL, in c3_isp_params_cfg_awb_config()
194 c3_isp_update_bits(isp, ISP_AWB_STAT_RG_HL, in c3_isp_params_cfg_awb_config()
198 c3_isp_update_bits(isp, ISP_AWB_STAT_BG_HL, in c3_isp_params_cfg_awb_config()
201 c3_isp_update_bits(isp, ISP_AWB_STAT_BG_HL, in c3_isp_params_cfg_awb_config()
205 c3_isp_params_awb_wt(isp, awb_cfg); in c3_isp_params_cfg_awb_config()
206 c3_isp_params_awb_cood(isp, awb_cfg); in c3_isp_params_cfg_awb_config()
209 c3_isp_update_bits(isp, ISP_TOP_3A_STAT_CRTL, in c3_isp_params_cfg_awb_config()
214 static void c3_isp_params_ae_wt(struct c3_isp_device *isp, in c3_isp_params_ae_wt() argument
223 c3_isp_write(isp, ISP_AE_BLK_WT_ADDR, 0); in c3_isp_params_ae_wt()
238 c3_isp_write(isp, ISP_AE_BLK_WT_DATA, data); in c3_isp_params_ae_wt()
251 c3_isp_write(isp, ISP_AE_BLK_WT_DATA, data); in c3_isp_params_ae_wt()
254 static void c3_isp_params_ae_cood(struct c3_isp_device *isp, in c3_isp_params_ae_cood() argument
263 c3_isp_write(isp, ISP_AE_IDX_ADDR, 0); in c3_isp_params_ae_cood()
266 c3_isp_write(isp, ISP_AE_IDX_DATA, in c3_isp_params_ae_cood()
271 static void c3_isp_params_cfg_ae_config(struct c3_isp_device *isp, in c3_isp_params_cfg_ae_config() argument
277 c3_isp_update_bits(isp, ISP_TOP_3A_STAT_CRTL, in c3_isp_params_cfg_ae_config()
283 c3_isp_update_bits(isp, ISP_TOP_3A_STAT_CRTL, in c3_isp_params_cfg_ae_config()
288 c3_isp_update_bits(isp, ISP_AE_CTRL, in c3_isp_params_cfg_ae_config()
292 c3_isp_update_bits(isp, ISP_AE_CTRL, in c3_isp_params_cfg_ae_config()
296 c3_isp_update_bits(isp, ISP_AE_HV_BLKNUM, in c3_isp_params_cfg_ae_config()
299 c3_isp_update_bits(isp, ISP_AE_HV_BLKNUM, in c3_isp_params_cfg_ae_config()
303 c3_isp_params_ae_wt(isp, ae_cfg); in c3_isp_params_cfg_ae_config()
304 c3_isp_params_ae_cood(isp, ae_cfg); in c3_isp_params_cfg_ae_config()
307 c3_isp_update_bits(isp, ISP_TOP_3A_STAT_CRTL, in c3_isp_params_cfg_ae_config()
312 static void c3_isp_params_af_cood(struct c3_isp_device *isp, in c3_isp_params_af_cood() argument
321 c3_isp_write(isp, ISP_AF_IDX_ADDR, 0); in c3_isp_params_af_cood()
324 c3_isp_write(isp, ISP_AF_IDX_DATA, in c3_isp_params_af_cood()
329 static void c3_isp_params_cfg_af_config(struct c3_isp_device *isp, in c3_isp_params_cfg_af_config() argument
335 c3_isp_update_bits(isp, ISP_TOP_3A_STAT_CRTL, in c3_isp_params_cfg_af_config()
341 c3_isp_update_bits(isp, ISP_TOP_3A_STAT_CRTL, in c3_isp_params_cfg_af_config()
345 c3_isp_update_bits(isp, ISP_AF_HV_BLKNUM, in c3_isp_params_cfg_af_config()
348 c3_isp_update_bits(isp, ISP_AF_HV_BLKNUM, in c3_isp_params_cfg_af_config()
352 c3_isp_params_af_cood(isp, af_cfg); in c3_isp_params_cfg_af_config()
355 c3_isp_update_bits(isp, ISP_TOP_3A_STAT_CRTL, in c3_isp_params_cfg_af_config()
360 static void c3_isp_params_cfg_pst_gamma(struct c3_isp_device *isp, in c3_isp_params_cfg_pst_gamma() argument
368 c3_isp_update_bits(isp, ISP_TOP_BED_CTRL, in c3_isp_params_cfg_pst_gamma()
377 c3_isp_write(isp, ISP_PST_GAMMA_LUT_ADDR, in c3_isp_params_cfg_pst_gamma()
383 c3_isp_write(isp, ISP_PST_GAMMA_LUT_DATA, in c3_isp_params_cfg_pst_gamma()
391 c3_isp_write(isp, ISP_PST_GAMMA_LUT_DATA, in c3_isp_params_cfg_pst_gamma()
397 c3_isp_update_bits(isp, ISP_TOP_BED_CTRL, in c3_isp_params_cfg_pst_gamma()
403 static void c3_isp_params_cfg_ccm(struct c3_isp_device *isp, in c3_isp_params_cfg_ccm() argument
409 c3_isp_update_bits(isp, ISP_TOP_BED_CTRL, in c3_isp_params_cfg_ccm()
415 c3_isp_update_bits(isp, ISP_CCM_MTX_00_01, in c3_isp_params_cfg_ccm()
418 c3_isp_update_bits(isp, ISP_CCM_MTX_00_01, in c3_isp_params_cfg_ccm()
421 c3_isp_update_bits(isp, ISP_CCM_MTX_02_03, in c3_isp_params_cfg_ccm()
425 c3_isp_update_bits(isp, ISP_CCM_MTX_10_11, in c3_isp_params_cfg_ccm()
428 c3_isp_update_bits(isp, ISP_CCM_MTX_10_11, in c3_isp_params_cfg_ccm()
431 c3_isp_update_bits(isp, ISP_CCM_MTX_12_13, in c3_isp_params_cfg_ccm()
435 c3_isp_update_bits(isp, ISP_CCM_MTX_20_21, in c3_isp_params_cfg_ccm()
438 c3_isp_update_bits(isp, ISP_CCM_MTX_20_21, in c3_isp_params_cfg_ccm()
441 c3_isp_update_bits(isp, ISP_CCM_MTX_22_23_RS, in c3_isp_params_cfg_ccm()
446 c3_isp_update_bits(isp, ISP_TOP_BED_CTRL, in c3_isp_params_cfg_ccm()
452 static void c3_isp_params_cfg_csc(struct c3_isp_device *isp, in c3_isp_params_cfg_csc() argument
458 c3_isp_update_bits(isp, ISP_TOP_BED_CTRL, in c3_isp_params_cfg_csc()
464 c3_isp_update_bits(isp, ISP_CM0_COEF00_01, in c3_isp_params_cfg_csc()
467 c3_isp_update_bits(isp, ISP_CM0_COEF00_01, in c3_isp_params_cfg_csc()
470 c3_isp_update_bits(isp, ISP_CM0_COEF02_10, in c3_isp_params_cfg_csc()
474 c3_isp_update_bits(isp, ISP_CM0_COEF02_10, in c3_isp_params_cfg_csc()
477 c3_isp_update_bits(isp, ISP_CM0_COEF11_12, in c3_isp_params_cfg_csc()
480 c3_isp_update_bits(isp, ISP_CM0_COEF11_12, in c3_isp_params_cfg_csc()
484 c3_isp_update_bits(isp, ISP_CM0_COEF20_21, in c3_isp_params_cfg_csc()
487 c3_isp_update_bits(isp, ISP_CM0_COEF20_21, in c3_isp_params_cfg_csc()
490 c3_isp_update_bits(isp, ISP_CM0_COEF22_OUP_OFST0, in c3_isp_params_cfg_csc()
495 c3_isp_update_bits(isp, ISP_TOP_BED_CTRL, in c3_isp_params_cfg_csc()
501 static void c3_isp_params_cfg_blc(struct c3_isp_device *isp, in c3_isp_params_cfg_blc() argument
507 c3_isp_update_bits(isp, ISP_TOP_BEO_CTRL, in c3_isp_params_cfg_blc()
513 c3_isp_write(isp, ISP_LSWB_BLC_OFST0, in c3_isp_params_cfg_blc()
516 c3_isp_write(isp, ISP_LSWB_BLC_OFST1, in c3_isp_params_cfg_blc()
521 c3_isp_update_bits(isp, ISP_TOP_BEO_CTRL, in c3_isp_params_cfg_blc()
578 block_handler->handler(params->isp, block); in c3_isp_params_cfg_blocks()
584 void c3_isp_params_pre_cfg(struct c3_isp_device *isp) in c3_isp_params_pre_cfg() argument
586 struct c3_isp_params *params = &isp->params; in c3_isp_params_pre_cfg()
589 c3_isp_update_bits(isp, ISP_TOP_FEO_CTRL0, in c3_isp_params_pre_cfg()
593 c3_isp_update_bits(isp, ISP_TOP_FEO_CTRL1_0, in c3_isp_params_pre_cfg()
596 c3_isp_update_bits(isp, ISP_TOP_FEO_CTRL1_0, in c3_isp_params_pre_cfg()
600 c3_isp_update_bits(isp, ISP_TOP_FED_CTRL, ISP_TOP_FED_CTRL_PDPC_EN_MASK, in c3_isp_params_pre_cfg()
602 c3_isp_update_bits(isp, ISP_TOP_FED_CTRL, in c3_isp_params_pre_cfg()
605 c3_isp_update_bits(isp, ISP_TOP_FED_CTRL, ISP_TOP_FED_CTRL_SNR1_EN_MASK, in c3_isp_params_pre_cfg()
607 c3_isp_update_bits(isp, ISP_TOP_FED_CTRL, ISP_TOP_FED_CTRL_TNR0_EN_MASK, in c3_isp_params_pre_cfg()
609 c3_isp_update_bits(isp, ISP_TOP_FED_CTRL, in c3_isp_params_pre_cfg()
612 c3_isp_update_bits(isp, ISP_TOP_FED_CTRL, ISP_TOP_FED_CTRL_SQRT_EN_MASK, in c3_isp_params_pre_cfg()
614 c3_isp_update_bits(isp, ISP_TOP_FED_CTRL, in c3_isp_params_pre_cfg()
618 c3_isp_update_bits(isp, ISP_TOP_BEO_CTRL, in c3_isp_params_pre_cfg()
621 c3_isp_update_bits(isp, ISP_TOP_BEO_CTRL, ISP_TOP_BEO_CTRL_EOTF_EN_MASK, in c3_isp_params_pre_cfg()
624 c3_isp_update_bits(isp, ISP_TOP_BED_CTRL, in c3_isp_params_pre_cfg()
627 c3_isp_update_bits(isp, ISP_TOP_BED_CTRL, in c3_isp_params_pre_cfg()
630 c3_isp_update_bits(isp, ISP_TOP_BED_CTRL, in c3_isp_params_pre_cfg()
633 c3_isp_update_bits(isp, ISP_TOP_BED_CTRL, ISP_TOP_BED_CTRL_BSC_EN_MASK, in c3_isp_params_pre_cfg()
635 c3_isp_update_bits(isp, ISP_TOP_BED_CTRL, ISP_TOP_BED_CTRL_CNR2_EN_MASK, in c3_isp_params_pre_cfg()
637 c3_isp_update_bits(isp, ISP_TOP_BED_CTRL, ISP_TOP_BED_CTRL_CM1_EN_MASK, in c3_isp_params_pre_cfg()
639 c3_isp_update_bits(isp, ISP_TOP_BED_CTRL, in c3_isp_params_pre_cfg()
642 c3_isp_update_bits(isp, ISP_TOP_BED_CTRL, in c3_isp_params_pre_cfg()
645 c3_isp_update_bits(isp, ISP_TOP_BED_CTRL, ISP_TOP_BED_CTRL_AMCM_EN_MASK, in c3_isp_params_pre_cfg()
652 c3_isp_update_bits(isp, ISP_TOP_3A_STAT_CRTL, in c3_isp_params_pre_cfg()
655 c3_isp_update_bits(isp, ISP_TOP_3A_STAT_CRTL, in c3_isp_params_pre_cfg()
658 c3_isp_update_bits(isp, ISP_TOP_3A_STAT_CRTL, in c3_isp_params_pre_cfg()
662 c3_isp_write(isp, ISP_LSWB_WB_LIMIT0, in c3_isp_params_pre_cfg()
665 c3_isp_write(isp, ISP_LSWB_WB_LIMIT1, in c3_isp_params_pre_cfg()
783 dev_dbg(params->isp->dev, in c3_isp_params_vb2_buf_prepare()
790 dev_dbg(params->isp->dev, in c3_isp_params_vb2_buf_prepare()
803 dev_dbg(params->isp->dev, in c3_isp_params_vb2_buf_prepare()
811 dev_dbg(params->isp->dev, in c3_isp_params_vb2_buf_prepare()
827 dev_dbg(params->isp->dev, in c3_isp_params_vb2_buf_prepare()
833 dev_dbg(params->isp->dev, in c3_isp_params_vb2_buf_prepare()
842 dev_dbg(params->isp->dev, in c3_isp_params_vb2_buf_prepare()
849 dev_dbg(params->isp->dev, in c3_isp_params_vb2_buf_prepare()
859 dev_dbg(params->isp->dev, in c3_isp_params_vb2_buf_prepare()
913 int c3_isp_params_register(struct c3_isp_device *isp) in c3_isp_params_register() argument
915 struct c3_isp_params *params = &isp->params; in c3_isp_params_register()
923 params->isp = isp; in c3_isp_params_register()
931 vdev->v4l2_dev = &isp->v4l2_dev; in c3_isp_params_register()
947 vb2_q->dev = isp->dev; in c3_isp_params_register()
962 dev_err(isp->dev, in c3_isp_params_register()
978 void c3_isp_params_unregister(struct c3_isp_device *isp) in c3_isp_params_unregister() argument
980 struct c3_isp_params *params = &isp->params; in c3_isp_params_unregister()
988 void c3_isp_params_isr(struct c3_isp_device *isp) in c3_isp_params_isr() argument
990 struct c3_isp_params *params = &isp->params; in c3_isp_params_isr()
1004 params->buff->vb.sequence = params->isp->frm_sequence; in c3_isp_params_isr()