linux/drivers/mxc/ipu3/ipu_disp.c File Reference

IPU display submodule API functions. More...

Functions

void _ipu_dp_set_csc_coefficients (struct ipu_soc *ipu, ipu_channel_t channel, int32_t param[][3])
void adapt_panel_to_ipu_restricitions (struct ipu_soc *ipu, uint16_t *v_start_width, uint16_t *v_sync_width, uint16_t *v_end_width)
int32_t ipu_init_sync_panel (struct ipu_soc *ipu, int disp, uint32_t pixel_clk, uint16_t width, uint16_t height, uint32_t pixel_fmt, uint16_t h_start_width, uint16_t h_sync_width, uint16_t h_end_width, uint16_t v_start_width, uint16_t v_sync_width, uint16_t v_end_width, uint32_t v_to_h_sync, ipu_di_signal_cfg_t sig)
int32_t ipu_disp_set_global_alpha (struct ipu_soc *ipu, ipu_channel_t channel, bool enable, uint8_t alpha)
int32_t ipu_disp_set_color_key (struct ipu_soc *ipu, ipu_channel_t channel, bool enable, uint32_t color_key)
int32_t ipu_disp_set_gamma_correction (struct ipu_soc *ipu, ipu_channel_t channel, bool enable, int constk[], int slopek[])
int32_t _ipu_disp_set_window_pos (struct ipu_soc *ipu, ipu_channel_t channel, int16_t x_pos, int16_t y_pos)

Detailed Description

IPU display submodule API functions.


Function Documentation

int32_t _ipu_disp_set_window_pos ( struct ipu_soc *  ipu,
ipu_channel_t  channel,
int16_t  x_pos,
int16_t  y_pos 
)

This function sets the window position of the foreground or background plane. modes.

Parameters:
ipu ipu handler
channel Input parameter for the logical channel ID.
x_pos The X coordinate position to place window at. The position is relative to the top left corner.
y_pos The Y coordinate position to place window at. The position is relative to the top left corner.
Returns:
Returns 0 on success or negative error code on fail
void _ipu_dp_set_csc_coefficients ( struct ipu_soc *  ipu,
ipu_channel_t  channel,
int32_t  param[][3] 
)

This function sets the colorspace for of dp. modes.

Parameters:
ipu ipu handler
channel Input parameter for the logical channel ID.
param If it's not NULL, update the csc table with this parameter.
Returns:
N/A
void adapt_panel_to_ipu_restricitions ( struct ipu_soc *  ipu,
uint16_t *  v_start_width,
uint16_t *  v_sync_width,
uint16_t *  v_end_width 
)

This function is called to adapt synchronous LCD panel to IPU restriction.

Referenced by ipu_init_sync_panel().

int32_t ipu_disp_set_color_key ( struct ipu_soc *  ipu,
ipu_channel_t  channel,
bool  enable,
uint32_t  color_key 
)

This function sets the transparent color key for SDC graphic plane.

Parameters:
ipu ipu handler
channel Input parameter for the logical channel ID.
enable Boolean to enable or disable color key
colorKey 24-bit RGB color for transparent color key.
Returns:
Returns 0 on success or negative error code on fail
int32_t ipu_disp_set_gamma_correction ( struct ipu_soc *  ipu,
ipu_channel_t  channel,
bool  enable,
int  constk[],
int  slopek[] 
)

This function sets the gamma correction for DP output.

Parameters:
ipu ipu handler
channel Input parameter for the logical channel ID.
enable Boolean to enable or disable gamma correction.
constk Gamma piecewise linear approximation constk coeff.
slopek Gamma piecewise linear approximation slopek coeff.
Returns:
Returns 0 on success or negative error code on fail
int32_t ipu_disp_set_global_alpha ( struct ipu_soc *  ipu,
ipu_channel_t  channel,
bool  enable,
uint8_t  alpha 
)

This function sets the foreground and background plane global alpha blending modes. This function also sets the DP graphic plane according to the parameter of IPUv3 DP channel.

Parameters:
ipu ipu handler
channel IPUv3 DP channel
enable Boolean to enable or disable global alpha blending. If disabled, local blending is used.
alpha Global alpha value.
Returns:
Returns 0 on success or negative error code on fail
int32_t ipu_init_sync_panel ( struct ipu_soc *  ipu,
int  disp,
uint32_t  pixel_clk,
uint16_t  width,
uint16_t  height,
uint32_t  pixel_fmt,
uint16_t  h_start_width,
uint16_t  h_sync_width,
uint16_t  h_end_width,
uint16_t  v_start_width,
uint16_t  v_sync_width,
uint16_t  v_end_width,
uint32_t  v_to_h_sync,
ipu_di_signal_cfg_t  sig 
)

This function is called to initialize a synchronous LCD panel.

Parameters:
ipu ipu handler
disp The DI the panel is attached to.
pixel_clk Desired pixel clock frequency in Hz.
pixel_fmt Input parameter for pixel format of buffer. Pixel format is a FOURCC ASCII code.
width The width of panel in pixels.
height The height of panel in pixels.
hStartWidth The number of pixel clocks between the HSYNC signal pulse and the start of valid data.
hSyncWidth The width of the HSYNC signal in units of pixel clocks.
hEndWidth The number of pixel clocks between the end of valid data and the HSYNC signal for next line.
vStartWidth The number of lines between the VSYNC signal pulse and the start of valid data.
vSyncWidth The width of the VSYNC signal in units of lines
vEndWidth The number of lines between the end of valid data and the VSYNC signal for next frame.
sig Bitfield of signal polarities for LCD interface.
Returns:
This function returns 0 on success or negative error code on fail.

References adapt_panel_to_ipu_restricitions().

footer
©  Freescale Semiconductor, Inc., 2007.  All rights reserved.
Freescale Confidential Proprietary
NDA Required
doxygen