Microchip® Advanced Software Framework

isi.c File Reference

SAM Image Sensor Interface (ISI) driver.

Copyright (c) 2015-2018 Microchip Technology Inc. and its subsidiaries.

#include "isi.h"

Functions

static uint32_t _isi_get_CFG2_workaround (void)
 Workaround for ISI CFG2 register read. More...
 
void isi_gs_configue (Isi *p_isi, uint8_t mode)
 Input image is assumed to be grayscale-coded. More...
 
void isi_init (Isi *p_isi, struct isi_config_t *isi_cfg)
 Initialize the ISI module. More...
 
void isi_rgb_configue (Isi *p_isi, uint8_t patten, uint8_t swap)
 Configue RGB swap mode and RGB pattern when RGB_MODE is set to 1. More...
 
void isi_set_dma_codec_path (Isi *p_isi, uint8_t full_mode, uint8_t discr, uint32_t base_buf_desc, uint32_t dma_ctrl, uint32_t frame_buf_start_addr)
 Configure DMA for codec path. More...
 
void isi_set_dma_preview_path (Isi *p_isi, uint8_t frate, uint32_t base_buf_desc, uint32_t dma_ctrl, uint32_t frame_buf_start_addr)
 Configure DMA for preview path. More...
 
void isi_set_matrix_rgb2yuv (Isi *p_isi, isi_R2Y *rgb2yuv)
 ISI set matrix for RGB to YUV color space for codec path. More...
 
void isi_set_matrix_yuv2rgb (Isi *p_isi, isi_Y2R *yuv2rgb)
 ISI set matrix for YUV to RGB color space for preview path. More...
 
void isi_size_configure (Isi *p_isi, uint32_t image_hsize, uint32_t image_vsize, uint32_t preview_hsize, uint32_t preview_vsize)
 Set image and preview size, then calculate scaler factor automatically. More...
 
void isi_yuv_configue (Isi *p_isi, uint8_t swap)
 Defines YCrCb swap format. More...
 

static uint32_t _isi_get_CFG2_workaround ( void  )
inlinestatic

Workaround for ISI CFG2 register read.

Note
The ISI_CFG2[31:27] can be written correctly, because the input writing data are assigned directly to the internal control bits as specified, the mismatch only happens in reading operation. [31:28] are shift right 1 bit, so [31:27] can be read from [30:27].

Referenced by isi_gs_configue(), isi_init(), isi_rgb_configue(), isi_size_configure(), and isi_yuv_configue().