IPU capture dase functions. More...
Functions | |
int | _ipu_csi_mclk_set (struct ipu_soc *ipu, uint32_t pixel_clk, uint32_t csi) |
int32_t | ipu_csi_init_interface (struct ipu_soc *ipu, uint16_t width, uint16_t height, uint32_t pixel_fmt, ipu_csi_signal_cfg_t cfg_param) |
int32_t | ipu_csi_get_sensor_protocol (struct ipu_soc *ipu, uint32_t csi) |
int | ipu_csi_enable_mclk (struct ipu_soc *ipu, int csi, bool flag, bool wait) |
void | ipu_csi_get_window_size (struct ipu_soc *ipu, uint32_t *width, uint32_t *height, uint32_t csi) |
void | ipu_csi_set_window_size (struct ipu_soc *ipu, uint32_t width, uint32_t height, uint32_t csi) |
void | ipu_csi_set_window_pos (struct ipu_soc *ipu, uint32_t left, uint32_t top, uint32_t csi) |
void | _ipu_csi_horizontal_downsize_enable (struct ipu_soc *ipu, uint32_t csi) |
void | _ipu_csi_horizontal_downsize_disable (struct ipu_soc *ipu, uint32_t csi) |
void | _ipu_csi_vertical_downsize_enable (struct ipu_soc *ipu, uint32_t csi) |
void | _ipu_csi_vertical_downsize_disable (struct ipu_soc *ipu, uint32_t csi) |
void | _ipu_csi_set_test_generator (struct ipu_soc *ipu, bool active, uint32_t r_value, uint32_t g_value, uint32_t b_value, uint32_t pix_clk, uint32_t csi) |
void | _ipu_csi_ccir_err_detection_enable (struct ipu_soc *ipu, uint32_t csi) |
void | _ipu_csi_ccir_err_detection_disable (struct ipu_soc *ipu, uint32_t csi) |
int | _ipu_csi_set_mipi_di (struct ipu_soc *ipu, uint32_t num, uint32_t di_val, uint32_t csi) |
int | _ipu_csi_set_skip_isp (struct ipu_soc *ipu, uint32_t skip, uint32_t max_ratio, uint32_t csi) |
int | _ipu_csi_set_skip_smfc (struct ipu_soc *ipu, uint32_t skip, uint32_t max_ratio, uint32_t id, uint32_t csi) |
void | _ipu_smfc_init (struct ipu_soc *ipu, ipu_channel_t channel, uint32_t mipi_id, uint32_t csi) |
void | _ipu_smfc_set_wmc (struct ipu_soc *ipu, ipu_channel_t channel, bool set, uint32_t level) |
void | _ipu_smfc_set_burst_size (struct ipu_soc *ipu, ipu_channel_t channel, uint32_t bs) |
int | _ipu_csi_init (struct ipu_soc *ipu, ipu_channel_t channel, uint32_t csi) |
static irqreturn_t | csi_irq_handler (int irq, void *dev_id) |
void | _ipu_csi_wait4eof (struct ipu_soc *ipu, ipu_channel_t channel) |
IPU capture dase functions.
void _ipu_csi_ccir_err_detection_disable | ( | struct ipu_soc * | ipu, | |
uint32_t | csi | |||
) |
_ipu_csi_ccir_err_detection_disable Disable error detection and correction for CCIR interlaced mode with protection bit.
ipu | ipu handler | |
csi | csi 0 or csi 1 |
Referenced by ipu_csi_init_interface().
void _ipu_csi_ccir_err_detection_enable | ( | struct ipu_soc * | ipu, | |
uint32_t | csi | |||
) |
_ipu_csi_ccir_err_detection_en Enable error detection and correction for CCIR interlaced mode with protection bit.
ipu | ipu handler | |
csi | csi 0 or csi 1 |
Referenced by ipu_csi_init_interface().
void _ipu_csi_horizontal_downsize_disable | ( | struct ipu_soc * | ipu, | |
uint32_t | csi | |||
) |
_ipu_csi_horizontal_downsize_disable Disable horizontal downsizing(decimation) by 2.
ipu | ipu handler | |
csi | csi 0 or csi 1 |
void _ipu_csi_horizontal_downsize_enable | ( | struct ipu_soc * | ipu, | |
uint32_t | csi | |||
) |
_ipu_csi_horizontal_downsize_enable Enable horizontal downsizing(decimation) by 2.
ipu | ipu handler | |
csi | csi 0 or csi 1 |
int _ipu_csi_init | ( | struct ipu_soc * | ipu, | |
ipu_channel_t | channel, | |||
uint32_t | csi | |||
) |
_ipu_csi_init
ipu | ipu handler | |
channel | IDMAC channel | |
csi | csi 0 or csi 1 |
int _ipu_csi_mclk_set | ( | struct ipu_soc * | ipu, | |
uint32_t | pixel_clk, | |||
uint32_t | csi | |||
) |
_ipu_csi_mclk_set
ipu | ipu handler | |
pixel_clk | desired pixel clock frequency in Hz | |
csi | csi 0 or csi 1 |
Referenced by _ipu_csi_set_test_generator().
int _ipu_csi_set_mipi_di | ( | struct ipu_soc * | ipu, | |
uint32_t | num, | |||
uint32_t | di_val, | |||
uint32_t | csi | |||
) |
_ipu_csi_set_mipi_di
ipu | ipu handler | |
num | MIPI data identifier 0-3 handled by CSI | |
di_val | data identifier value | |
csi | csi 0 or csi 1 |
int _ipu_csi_set_skip_isp | ( | struct ipu_soc * | ipu, | |
uint32_t | skip, | |||
uint32_t | max_ratio, | |||
uint32_t | csi | |||
) |
_ipu_csi_set_skip_isp
ipu | ipu handler | |
skip | select frames to be skipped and set the correspond bits to 1 | |
max_ratio | number of frames in a skipping set and the maximum value of max_ratio is 5 | |
csi | csi 0 or csi 1 |
int _ipu_csi_set_skip_smfc | ( | struct ipu_soc * | ipu, | |
uint32_t | skip, | |||
uint32_t | max_ratio, | |||
uint32_t | id, | |||
uint32_t | csi | |||
) |
_ipu_csi_set_skip_smfc
ipu | ipu handler | |
skip | select frames to be skipped and set the correspond bits to 1 | |
max_ratio | number of frames in a skipping set and the maximum value of max_ratio is 5 | |
id | csi to smfc skipping id | |
csi | csi 0 or csi 1 |
void _ipu_csi_set_test_generator | ( | struct ipu_soc * | ipu, | |
bool | active, | |||
uint32_t | r_value, | |||
uint32_t | g_value, | |||
uint32_t | b_value, | |||
uint32_t | pix_clk, | |||
uint32_t | csi | |||
) |
_ipu_csi_set_test_generator
ipu | ipu handler | |
active | 1 for active and 0 for inactive | |
r_value | red value for the generated pattern of even pixel | |
g_value | green value for the generated pattern of even pixel | |
b_value | blue value for the generated pattern of even pixel | |
pixel_clk | desired pixel clock frequency in Hz | |
csi | csi 0 or csi 1 |
References _ipu_csi_mclk_set().
void _ipu_csi_vertical_downsize_disable | ( | struct ipu_soc * | ipu, | |
uint32_t | csi | |||
) |
_ipu_csi_vertical_downsize_disable Disable vertical downsizing(decimation) by 2.
ipu | ipu handler | |
csi | csi 0 or csi 1 |
void _ipu_csi_vertical_downsize_enable | ( | struct ipu_soc * | ipu, | |
uint32_t | csi | |||
) |
_ipu_csi_vertical_downsize_enable Enable vertical downsizing(decimation) by 2.
ipu | ipu handler | |
csi | csi 0 or csi 1 |
void _ipu_csi_wait4eof | ( | struct ipu_soc * | ipu, | |
ipu_channel_t | channel | |||
) |
void _ipu_smfc_init | ( | struct ipu_soc * | ipu, | |
ipu_channel_t | channel, | |||
uint32_t | mipi_id, | |||
uint32_t | csi | |||
) |
_ipu_smfc_init Map CSI frames to IDMAC channels.
ipu | ipu handler | |
channel | IDMAC channel 0-3 | |
mipi_id | mipi id number 0-3 | |
csi | csi0 or csi1 |
void _ipu_smfc_set_burst_size | ( | struct ipu_soc * | ipu, | |
ipu_channel_t | channel, | |||
uint32_t | bs | |||
) |
_ipu_smfc_set_burst_size
ipu | ipu handler | |
channel | IDMAC channel 0-3 | |
bs | burst size of IDMAC channel, the value programmed here shoud be BURST_SIZE-1 |
void _ipu_smfc_set_wmc | ( | struct ipu_soc * | ipu, | |
ipu_channel_t | channel, | |||
bool | set, | |||
uint32_t | level | |||
) |
_ipu_smfc_set_wmc Caution: The number of required channels, the enabled channels and the FIFO size per channel are configured restrictedly.
ipu | ipu handler | |
channel | IDMAC channel 0-3 | |
set | set 1 or clear 0 | |
level | water mark level when FIFO is on the relative size |
static irqreturn_t csi_irq_handler | ( | int | irq, | |
void * | dev_id | |||
) | [static] |
csi_irq_handler
irq | interrupt id | |
dev_id | pointer to ipu handler |
References IRQ_HANDLED.
Referenced by _ipu_csi_wait4eof().
int ipu_csi_enable_mclk | ( | struct ipu_soc * | ipu, | |
int | csi, | |||
bool | flag, | |||
bool | wait | |||
) |
ipu_csi_enable_mclk
ipu | ipu handler | |
csi | csi 0 or csi 1 | |
flag | true to enable mclk, false to disable mclk | |
wait | true to wait 100ms make clock stable, false not wait |
int32_t ipu_csi_get_sensor_protocol | ( | struct ipu_soc * | ipu, | |
uint32_t | csi | |||
) |
ipu_csi_get_sensor_protocol
ipu | ipu handler | |
csi | csi 0 or csi 1 |
void ipu_csi_get_window_size | ( | struct ipu_soc * | ipu, | |
uint32_t * | width, | |||
uint32_t * | height, | |||
uint32_t | csi | |||
) |
ipu_csi_get_window_size
ipu | ipu handler | |
width | pointer to window width | |
height | pointer to window height | |
csi | csi 0 or csi 1 |
int32_t ipu_csi_init_interface | ( | struct ipu_soc * | ipu, | |
uint16_t | width, | |||
uint16_t | height, | |||
uint32_t | pixel_fmt, | |||
ipu_csi_signal_cfg_t | cfg_param | |||
) |
ipu_csi_init_interface Sets initial values for the CSI registers. The width and height of the sensor and the actual frame size will be set to the same values.
ipu | ipu handler | |
width | Sensor width | |
height | Sensor height | |
pixel_fmt | pixel format | |
cfg_param | ipu_csi_signal_cfg_t structure | |
csi | csi 0 or csi 1 |
References _ipu_csi_ccir_err_detection_disable(), and _ipu_csi_ccir_err_detection_enable().
void ipu_csi_set_window_pos | ( | struct ipu_soc * | ipu, | |
uint32_t | left, | |||
uint32_t | top, | |||
uint32_t | csi | |||
) |
ipu_csi_set_window_pos
ipu | ipu handler | |
left | uint32 window x start | |
top | uint32 window y start | |
csi | csi 0 or csi 1 |
void ipu_csi_set_window_size | ( | struct ipu_soc * | ipu, | |
uint32_t | width, | |||
uint32_t | height, | |||
uint32_t | csi | |||
) |
ipu_csi_set_window_size
ipu | ipu handler | |
width | window width | |
height | window height | |
csi | csi 0 or csi 1 |
© Freescale Semiconductor, Inc., 2007.
All rights reserved. Freescale Confidential Proprietary NDA Required |
![]() |