Files | Data Structures | Typedefs | Functions
DSS Video Port CSL FL

Files

file  csl_dssVideoPort.h
 DSS Video Port CSL FL interface file.
 

Data Structures

struct  CSL_DssVpGammaCfg
 Gamma Correction configuration for DSS Video Port Output. More...
 
struct  CSL_DssVpLcdTdmCfg
 LCD Configuration for Time Division Multiplexing. More...
 
struct  CSL_DssVpLcdSignalPolarityCfg
 Polarity of Active Video, Pixel Clock, HSync and VSync signals for the LCD. More...
 
struct  CSL_DssVpLcdAdvSignalCfg
 Advance Signal Configuration for the LCD. More...
 
struct  CSL_DssVpLcdOpTimingCfg
 Timing configuration for the LCD output. More...
 
struct  CSL_DssVpLcdBlankTimingCfg
 Blanking Timing parameters for the LCD. More...
 

Typedefs

typedef CSL_dss_vp1Regs CSL_dss_vpRegs
 DSS Video Port Registers. More...
 

Functions

void CSL_dssVpEnable (CSL_dss_vpRegs *vpRegs, uint32_t enable)
 Enable the DSS Video Port. More...
 
void CSL_dssVpSetGoBit (CSL_dss_vpRegs *vpRegs)
 GO Command for the VP output. It is used to synchronize the pipelines associated with the VP output. More...
 
void CSL_dssVpSetLcdTdmConfig (CSL_dss_vpRegs *vpRegs, const CSL_DssVpLcdTdmCfg *lcdTdmCfg)
 Configure the LCD TDM(Time division multiplexing) parameters. More...
 
void CSL_dssVpSetLcdLineNum (CSL_dss_vpRegs *vpRegs, uint32_t lineNum)
 Set the Line Number at which the interrupt should be generated. More...
 
uint32_t CSL_dssVpGetLcdLineNum (const CSL_dss_vpRegs *vpRegs)
 Get the number of line currently displayed. More...
 
int32_t CSL_dssVpSetLcdOpTimingConfig (CSL_dss_vpRegs *vpRegs, const CSL_DssVpLcdOpTimingCfg *lcdCfg)
 Configure the LCD Timing parameters. More...
 
int32_t CSL_dssVpSetLcdBlankTiming (CSL_dss_vpRegs *vpRegs, const CSL_DssVpLcdBlankTimingCfg *blankCfg, uint32_t dvoFormat, uint32_t scanFormat, uint32_t isCustomTiming)
 Configure the LCD Blank Timing parameters. More...
 
void CSL_dssVpSetLcdAdvSignalConfig (CSL_dss_vpRegs *vpRegs, const CSL_DssVpLcdAdvSignalCfg *advSignalCfg)
 Configure the advance LCD Signal parameters. More...
 
void CSL_dssVpSetLcdSignalPolarityConfig (CSL_dss_vpRegs *vpRegs, const CSL_DssVpLcdSignalPolarityCfg *polarityCfg)
 Configure the Polarity of LCD signals(HSYNC, VSYNC, PCLK, Data) More...
 
void CSL_dssVpEnableTvGamma (CSL_dss_vpRegs *vpRegs, const CSL_DssVpGammaCfg *gammaCfg)
 Enable/Bypass TV Gamma Table. More...
 
void CSL_dssVpSetCSCCoeff (CSL_dss_vpRegs *vpRegs, const CSL_DssCscCoeff *cscCoeff, uint32_t cscPos, uint32_t cscEnable)
 Configure the coefficients for Color Space Conversion. More...
 
void CSL_dssVpSetSafetySignSeedVal (CSL_dss_vpRegs *vpRegs, uint32_t signSeedVal)
 Set the seed value for the signature calculation. More...
 
void CSL_dssVpSetSafetyReferenceSign (CSL_dss_vpRegs *vpRegs, uint32_t referenceSign, uint32_t regionId)
 Set the reference safety signature for data correctness check. More...
 
void CSL_dssVpSetSafetyChkConfig (CSL_dss_vpRegs *vpRegs, const CSL_DssSafetyChkCfg *safetyCfg, uint32_t regionId)
 Configure the Safety Check parameters. More...
 
uint32_t CSL_dssVpGetSafetySign (const CSL_dss_vpRegs *vpRegs, uint32_t regionId)
 Get the Safety Signature of the sub region. More...
 
void CSL_dssVpStallModeEnable (CSL_dss_vpRegs *vpRegs, uint32_t enable, uint32_t stallModeType)
 Enable/disable the Video Port stall mode. More...
 
static void CSL_dssVpGammaCfgInit (CSL_DssVpGammaCfg *gammaCfg)
 CSL_DssVpGammaCfg structure init function. More...
 
static void CSL_dssVpLcdTdmCfgInit (CSL_DssVpLcdTdmCfg *tdmCfg)
 CSL_DssVpLcdTdmCfg structure init function. More...
 
static void CSL_dssVpLcdSignalPolarityCfgInit (CSL_DssVpLcdSignalPolarityCfg *polarityCfg)
 CSL_DssVpLcdSignalPolarityCfg structure init function. More...
 
static void CSL_dssVpLcdAdvSignalCfgInit (CSL_DssVpLcdAdvSignalCfg *advSignalCfg)
 CSL_DssVpLcdAdvSignalCfg structure init function. More...
 
static void CSL_dssVpLcdOpTimingCfgInit (CSL_DssVpLcdOpTimingCfg *lcdCfg)
 CSL_DssVpLcdOpTimingCfg structure init function. More...
 
static void CSL_dssVpLcdBlankTimingCfgInit (CSL_DssVpLcdBlankTimingCfg *blankCfg)
 CSL_DssVpLcdBlankTimingCfg structure init function. More...
 

Video Port CSC Position

DSS Video Port Color Space Conversion block position wrt Gamma block

#define CSL_DSS_VP_CSC_POS_AFTER_GAMMA   ((uint32_t) CSL_DSS_VP1_CONFIG_COLORCONVPOS_VAL_AFTERGAMMA)
 CSC block is after GAMMA correction.
 
#define CSL_DSS_VP_CSC_POS_BEFORE_GAMMA   ((uint32_t) CSL_DSS_VP1_CONFIG_COLORCONVPOS_VAL_BEFOREGAMMA)
 CSC block is before GAMMA correction.
 

TDM Mode Unused Bits Level

State of unused bits in TDM mode for the VP output

#define CSL_DSS_VP_TDM_UNUSED_BITS_LEVEL_LOW   ((uint32_t) CSL_DSS_VP1_CONTROL_TDMUNUSEDBITS_VAL_LOWLEVEL)
 Low level.
 
#define CSL_DSS_VP_TDM_UNUSED_BITS_LEVEL_HIGH   ((uint32_t) CSL_DSS_VP1_CONTROL_TDMUNUSEDBITS_VAL_HIGHLEVEL)
 High level.
 
#define CSL_DSS_VP_TDM_UNUSED_BITS_LEVEL_UNCHANGED   ((uint32_t) CSL_DSS_VP1_CONTROL_TDMUNUSEDBITS_VAL_UNCHANGED)
 Unchanged level.
 

TDM Cycle format

#define CSL_DSS_VP_TDM_CYCLE_1PERPIXEL   ((uint32_t) CSL_DSS_VP1_CONTROL_TDMCYCLEFORMAT_VAL_1CYCPERPIX)
 1 cycle per pixel
 
#define CSL_DSS_VP_TDM_CYCLE_2PERPIXEL   ((uint32_t) CSL_DSS_VP1_CONTROL_TDMCYCLEFORMAT_VAL_2CYCPERPIX)
 2 cycles per pixel
 
#define CSL_DSS_VP_TDM_CYCLE_3PERPIXEL   ((uint32_t) CSL_DSS_VP1_CONTROL_TDMCYCLEFORMAT_VAL_3CYCPERPIX)
 3 cycles per pixel
 
#define CSL_DSS_VP_TDM_CYCLE_3PER2PIXEL   ((uint32_t) CSL_DSS_VP1_CONTROL_TDMCYCLEFORMAT_VAL_3CYCPER2PIX)
 3 cycles per 2 pixels
 

Output interface width in TDM mode

#define CSL_DSS_VP_TDM_PARALLEL_OUTPUT_8BIT   ((uint32_t) CSL_DSS_VP1_CONTROL_TDMPARALLELMODE_VAL_8BPARAINT)
 8-bit parallel output interface selected
 
#define CSL_DSS_VP_TDM_PARALLEL_OUTPUT_9BIT   ((uint32_t) CSL_DSS_VP1_CONTROL_TDMPARALLELMODE_VAL_9BPARAINT)
 9-bit parallel output interface selected
 
#define CSL_DSS_VP_TDM_PARALLEL_OUTPUT_12BIT   ((uint32_t) CSL_DSS_VP1_CONTROL_TDMPARALLELMODE_VAL_12BPARAINT)
 12-bit parallel output interface selected
 
#define CSL_DSS_VP_TDM_PARALLEL_OUTPUT_16BIT   ((uint32_t) CSL_DSS_VP1_CONTROL_TDMPARALLELMODE_VAL_16BPARAINT)
 16-bit parallel output interface selected
 

LCD HSync VSync Alignment

#define CSL_DSS_VP_HVSYNC_NOT_ALIGNED   ((uint32_t) CSL_DSS_VP1_POL_FREQ_ALIGN_VAL_NOTALIGNED)
 HSYNC and VSYNC are not aligned.
 
#define CSL_DSS_VP_HVSYNC_ALIGNED   ((uint32_t) CSL_DSS_VP1_POL_FREQ_ALIGN_VAL_ALIGNED)
 HSYNC and VSYNC assertions are aligned.
 

LCD HSYNC/VSYNC pixel clock control

#define CSL_DSS_VP_HVCLK_CONTROL_OFF   ((uint32_t) CSL_DSS_VP1_POL_FREQ_ONOFF_VAL_DOPEDPCK)
 HSYNC and VSYNC are driven on opposite edges of the pixel clock than pixel data.
 
#define CSL_DSS_VP_HVCLK_CONTROL_ON   ((uint32_t) CSL_DSS_VP1_POL_FREQ_ONOFF_VAL_DBIT16)
 HSYNC and VSYNC are driven according to hVClkRiseFall value.
 

Delta Lines Per Panel

Delta size value of the odd field compared to the even field

#define CSL_DSS_VP_LPP_DELTA_ZERO   ((uint32_t) CSL_DSS_VP1_SIZE_SCREEN_DELTA_LPP_VAL_SAME)
 Odd field has same size as even.
 
#define CSL_DSS_VP_LPP_DELTA_PLUSONE   ((uint32_t) CSL_DSS_VP1_SIZE_SCREEN_DELTA_LPP_VAL_PLUSONE)
 Odd field is equal to even field + 1.
 
#define CSL_DSS_VP_LPP_DELTA_MINUSONE   ((uint32_t) CSL_DSS_VP1_SIZE_SCREEN_DELTA_LPP_VAL_MINUSONE)
 Odd field is equal to even field - 1.
 

Video Port First Field

First Field to Video Port output in case of interlace mode

#define CSL_DSS_VP_FID_FIRST_EVEN   ((uint32_t) CSL_DSS_VP1_CONFIG_FIDFIRST_VAL_EVEN)
 First field is even.
 
#define CSL_DSS_VP_FID_FIRST_ODD   ((uint32_t) CSL_DSS_VP1_CONFIG_FIDFIRST_VAL_ODD)
 First field is odd.
 

Video Port Stall Mode

The type of transfer in Stall mode

#define CSL_DSS_VP_STALL_MODE_COMMAND   ((uint32_t) CSL_DSS_VP1_CONTROL_STALLMODETYPE_VAL_COMMANDMODE)
 Stall mode is command.
 
#define CSL_DSS_VP_STALL_MODE_VIDEO   ((uint32_t) CSL_DSS_VP1_CONTROL_STALLMODETYPE_VAL_VIDEOMODE)
 Stall mode is video.
 

Detailed Description

Typedef Documentation

typedef CSL_dss_vp1Regs CSL_dss_vpRegs

DSS Video Port Registers.

DSS7 UL has two identical VP blocks, hence define a generic structure to have common APIs

Function Documentation

void CSL_dssVpEnable ( CSL_dss_vpRegs vpRegs,
uint32_t  enable 
)

Enable the DSS Video Port.

Parameters
vpRegsPointer to a CSL_dss_vpRegs structure containing the video port configuration
enableEnable or disable the Video Port TRUE: Enable FALSE: Disable
Returns
None
void CSL_dssVpEnableTvGamma ( CSL_dss_vpRegs vpRegs,
const CSL_DssVpGammaCfg gammaCfg 
)

Enable/Bypass TV Gamma Table.

Parameters
vpRegsPointer to a CSL_dss_vpRegs structure containing the video port configuration
gammaCfgPointer to CSL_DssVpGammaCfg structure. This parameter should not be NULL
Returns
None
static void CSL_dssVpGammaCfgInit ( CSL_DssVpGammaCfg gammaCfg)
inlinestatic

CSL_DssVpGammaCfg structure init function.

Parameters
gammaCfgPointer to CSL_DssVpGammaCfg structure
Returns
None
uint32_t CSL_dssVpGetLcdLineNum ( const CSL_dss_vpRegs vpRegs)

Get the number of line currently displayed.

Parameters
vpRegsPointer to a CSL_dss_vpRegs structure containing the video port configuration
Returns
Current line number
uint32_t CSL_dssVpGetSafetySign ( const CSL_dss_vpRegs vpRegs,
uint32_t  regionId 
)

Get the Safety Signature of the sub region.

Parameters
vpRegsPointer to a CSL_dss_vpRegs structure containing the video port configuration
regionIdRegion for which safety check should be done. Refer CSL_DssSafetyRegionId for values
Returns
Signature Value
static void CSL_dssVpLcdAdvSignalCfgInit ( CSL_DssVpLcdAdvSignalCfg advSignalCfg)
inlinestatic

CSL_DssVpLcdAdvSignalCfg structure init function.

Parameters
advSignalCfgPointer to CSL_DssVpLcdAdvSignalCfg structure
Returns
None
static void CSL_dssVpLcdBlankTimingCfgInit ( CSL_DssVpLcdBlankTimingCfg blankCfg)
inlinestatic

CSL_DssVpLcdBlankTimingCfg structure init function.

Parameters
blankCfgPointer to CSL_DssVpLcdBlankTimingCfg structure
Returns
None
static void CSL_dssVpLcdOpTimingCfgInit ( CSL_DssVpLcdOpTimingCfg lcdCfg)
inlinestatic

CSL_DssVpLcdOpTimingCfg structure init function.

Parameters
lcdCfgPointer to CSL_DssVpLcdOpTimingCfg structure
Returns
None
static void CSL_dssVpLcdSignalPolarityCfgInit ( CSL_DssVpLcdSignalPolarityCfg polarityCfg)
inlinestatic

CSL_DssVpLcdSignalPolarityCfg structure init function.

Parameters
polarityCfgPointer to CSL_DssVpLcdSignalPolarityCfg structure
Returns
None
static void CSL_dssVpLcdTdmCfgInit ( CSL_DssVpLcdTdmCfg tdmCfg)
inlinestatic

CSL_DssVpLcdTdmCfg structure init function.

Parameters
tdmCfgPointer to CSL_DssVpLcdTdmCfg structure
Returns
None
void CSL_dssVpSetCSCCoeff ( CSL_dss_vpRegs vpRegs,
const CSL_DssCscCoeff cscCoeff,
uint32_t  cscPos,
uint32_t  cscEnable 
)

Configure the coefficients for Color Space Conversion.

Parameters
vpRegsPointer to a CSL_dss_vpRegs structure containing the video port configuration
cscCoeffPointer to CSL_DssCscCoeff structure. This parameter should not be NULL
cscPosPosition of CSC block wrt GAMMA module. Refer CSL_DssVpCscPos for values
cscEnableCSC Enable TRUE: Enable CSC FALSE: Disable CSC
Returns
None
void CSL_dssVpSetGoBit ( CSL_dss_vpRegs vpRegs)

GO Command for the VP output. It is used to synchronize the pipelines associated with the VP output.

Parameters
vpRegsPointer to a CSL_dss_vpRegs structure containing the video port configuration
Returns
None
void CSL_dssVpSetLcdAdvSignalConfig ( CSL_dss_vpRegs vpRegs,
const CSL_DssVpLcdAdvSignalCfg advSignalCfg 
)

Configure the advance LCD Signal parameters.

Parameters
vpRegsPointer to a CSL_dss_vpRegs structure containing the video port configuration
advSignalCfgPointer to CSL_DssVpLcdAdvSignalCfg structure. This parameter should not be NULL
Returns
None
int32_t CSL_dssVpSetLcdBlankTiming ( CSL_dss_vpRegs vpRegs,
const CSL_DssVpLcdBlankTimingCfg blankCfg,
uint32_t  dvoFormat,
uint32_t  scanFormat,
uint32_t  isCustomTiming 
)

Configure the LCD Blank Timing parameters.

Parameters
vpRegsPointer to a CSL_dss_vpRegs structure containing the video port configuration
blankCfgPointer to the CSL_DssVpLcdBlankTimingCfg structure. This parameter should not be NULL
dvoFormatDigital output format. For valid values see Fvid2_DVFormat
scanFormatScan format. For valid values see Fvid2_ScanFormat
isCustomTimingVariable to determine whether custom timing is used. It should always be set to TRUE when this API is called by application.
Returns
CSL_ErrType_t
void CSL_dssVpSetLcdLineNum ( CSL_dss_vpRegs vpRegs,
uint32_t  lineNum 
)

Set the Line Number at which the interrupt should be generated.

Parameters
vpRegsPointer to a CSL_dss_vpRegs structure containing the video port configuration
lineNumLine Number that should be programmed in the register
Returns
None
int32_t CSL_dssVpSetLcdOpTimingConfig ( CSL_dss_vpRegs vpRegs,
const CSL_DssVpLcdOpTimingCfg lcdCfg 
)

Configure the LCD Timing parameters.

Parameters
vpRegsPointer to a CSL_dss_vpRegs structure containing the video port configuration
lcdCfgPointer to the CSL_DssVpLcdOpTimingCfg structure. This parameter should not be NULL
Returns
CSL_ErrType_t
void CSL_dssVpSetLcdSignalPolarityConfig ( CSL_dss_vpRegs vpRegs,
const CSL_DssVpLcdSignalPolarityCfg polarityCfg 
)

Configure the Polarity of LCD signals(HSYNC, VSYNC, PCLK, Data)

Parameters
vpRegsPointer to a CSL_dss_vpRegs structure containing the video port configuration
polarityCfgPointer to CSL_DssVpLcdSignalPolarityCfg structure. This parameter should not be NULL
Returns
None
void CSL_dssVpSetLcdTdmConfig ( CSL_dss_vpRegs vpRegs,
const CSL_DssVpLcdTdmCfg lcdTdmCfg 
)

Configure the LCD TDM(Time division multiplexing) parameters.

Parameters
vpRegsPointer to a CSL_dss_vpRegs structure containing the video port configuration
lcdTdmCfgPointer to the CSL_DssVpLcdTdmCfg structure. This parameter should not be NULL
Returns
None
void CSL_dssVpSetSafetyChkConfig ( CSL_dss_vpRegs vpRegs,
const CSL_DssSafetyChkCfg safetyCfg,
uint32_t  regionId 
)

Configure the Safety Check parameters.

Parameters
vpRegsPointer to a CSL_dss_vpRegs structure containing the video port configuration
safetyCfgPointer to CSL_DssSafetyChkCfg structure. This parameter should not be NULL
regionIdRegion for which safety check should be done. Refer CSL_DssSafetyRegionId for values
Returns
None
void CSL_dssVpSetSafetyReferenceSign ( CSL_dss_vpRegs vpRegs,
uint32_t  referenceSign,
uint32_t  regionId 
)

Set the reference safety signature for data correctness check.

Parameters
vpRegsPointer to a CSL_dss_vpRegs structure containing the video port configuration
referenceSignReference Safety Signature
regionIdRegion for which safety check should be done. Refer CSL_DssSafetyRegionId for values
Returns
None
void CSL_dssVpSetSafetySignSeedVal ( CSL_dss_vpRegs vpRegs,
uint32_t  signSeedVal 
)

Set the seed value for the signature calculation.

Parameters
vpRegsPointer to a CSL_dss_vpRegs structure containing the video port configuration
signSeedValSignature Seed Value to be Set
Returns
None
void CSL_dssVpStallModeEnable ( CSL_dss_vpRegs vpRegs,
uint32_t  enable,
uint32_t  stallModeType 
)

Enable/disable the Video Port stall mode.

Parameters
vpRegsPointer to a CSL_dss_vpRegs structure containing the video port configuration
enableEnable or disable the stall mode of Video Port TRUE: Enable FALSE: Disable
stallModeTypeStall Mode Type Refer CSL_DssVpStallMode for values
Returns
None

Copyright 2018, Texas Instruments Incorporated