SAM Image Sensor Interface (ISI) driver.
Copyright (c) 2015-2018 Microchip Technology Inc. and its subsidiaries.
Data Structures | |
struct | isi_config_t |
ISI configuration structure. More... | |
struct | isi_frame_buffer_descriptors |
Frame buffer descriptors. More... | |
struct | isi_R2Y |
ISI Matrix Color Space Conversion RGB to YCrCb. More... | |
struct | isi_Y2R |
ISI Matrix Color Space Conversion YCrCb to RGB. More... | |
Enumerations | |
enum | isi_input_image_format { ISI_INPUT_YUV = 0, ISI_INPUT_RGB565 = 1, ISI_INPUT_RGB888 = 2, ISI_INPUT_GS_12BIT = 3, ISI_INPUT_GS_8BIT = 4 } |
Enum for the possible image format for the ISI module. More... | |
Functions | |
static void | isi_capture (Isi *p_isi) |
Enable the codec datapath and capture a full resolution frame. More... | |
static void | isi_disable (Isi *p_isi) |
Disable ISI. More... | |
static void | isi_disable_interrupt (Isi *p_isi, uint32_t flag) |
Disable ISI interrupt. More... | |
static void | isi_dma_channel_disable (Isi *p_isi, uint32_t channel) |
Disable ISI Dma channel. More... | |
static void | isi_dma_channel_enable (Isi *p_isi, uint32_t channel) |
Enable ISI Dma channel. More... | |
static void | isi_enable (Isi *p_isi) |
Enable ISI. More... | |
static void | isi_enable_interrupt (Isi *p_isi, uint32_t flag) |
Enable ISI interrupt. More... | |
static uint32_t | isi_get_status (Isi *p_isi) |
Return ISI status register. More... | |
static uint32_t | isi_get_writeprotect_status (Isi *p_isi) |
Indicate write protect status. 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... | |
static void | isi_reset (Isi *p_isi) |
Reset ISI. 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... | |
static void | isi_set_writeprotect (Isi *p_isi, const bool is_enable) |
Enable or disable write protection of ADC registers. 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... | |