![]() |
![]() |
Functions | |
CSL_IDEF_INLINE CSL_SERDES_RESULT | CSL_AIF2SerdesInitB8 (uint32_t base_addr, CSL_SERDES_REF_CLOCK ref_clock, CSL_SERDES_LINK_RATE rate) |
CSL_IDEF_INLINE CSL_SERDES_RESULT | CSL_AIF2SerdesInitB4 (uint32_t base_addr, CSL_SERDES_REF_CLOCK ref_clock, CSL_SERDES_LINK_RATE rate) |
CSL_IDEF_INLINE void | CSL_AIF2SerdesLaneConfig (uint32_t base_addr, CSL_SERDES_REF_CLOCK ref_clock, CSL_SERDES_LINK_RATE rate, uint32_t lane_num) |
CSL_IDEF_INLINE void | CSL_AIF2SerdesComEnable (uint32_t base_addr) |
CSL_IDEF_INLINE void | CSL_AIF2SerdesPllEnableB8 (uint32_t aif2_ctrl_base_addr, uint32_t aif2_serdes_base_addr) |
CSL_IDEF_INLINE void | CSL_AIF2SerdesPllEnableB4 (uint32_t aif2_ctrl_base_addr, uint32_t aif2_serdes_base_addr) |
CSL_IDEF_INLINE void | CSL_AIF2LinkClkEnable (uint32_t base_addr, uint32_t link_num) |
CSL_IDEF_INLINE void | CSL_AIF2LinkClkDisable (uint32_t base_addr, uint32_t link_num) |
CSL_IDEF_INLINE void | CSL_AIF2SerdesLaneDisable (uint32_t base_addr, uint32_t lane_num) |
CSL_IDEF_INLINE void | CSL_AIF2SerdesLaneReset (uint32_t base_addr, uint32_t lane_num) |
CSL_IDEF_INLINE CSL_SERDES_STATUS | CSL_AIF2SerdesGetStatusB8 (uint32_t base_addr) |
CSL_IDEF_INLINE CSL_SERDES_STATUS | CSL_AIF2SerdesGetStatusB4 (uint32_t base_addr) |
CSL_IDEF_INLINE void | CSL_AIF2SerdesLaneEnable (uint32_t aif2_ctrl_base_addr, uint32_t aif2_serdes_base_addr, uint32_t lane_num, uint32_t link_rate) |
CSL_IDEF_INLINE void | CSL_AIF2SerdesLoopbackEnable (uint32_t base_addr, uint32_t lane_num, CSL_SERDES_LOOPBACK loopback_mode) |
CSL_IDEF_INLINE void | CSL_AIF2SerdesClkSelB4 (uint32_t base_addr) |
CSL_IDEF_INLINE void | CSL_AIF2SerdesShutdown (uint32_t base_addr) |
CSL_IDEF_INLINE uint32_t | CSL_AIF2SerdesIsReset (uint32_t base_addr) |
============================================================================
This module deals with setting up SERDES configuration for AIF2. The API flow should be as follows:
CSL_AIF2SerdesInitB8 (base_addr, ref_clock, rate); or/and CSL_AIF2SerdesInitB4 (base_addr, ref_clock, rate);
CSL_AIF2SerdesLaneConfig (base_addr, ref_clock, rate, lane_num);
CSL_AIF2SerdesComEnable (base_addr);
CSL_AIF2SerdesLaneEnable (base_addr, lane_num, link_rate);
CSL_AIF2SerdesLoopbackEnable (base_addr, lane_num, loopback_mode);
CSL_AIF2SerdesPllEnableB8 (base_addr); or/and CSL_AIF2SerdesPllEnableB4 (base_addr);
CSL_AIF2SerdesGetStatusB8/B4 (base_addr); or/and CSL_AIF2SerdesGetStatusB4 (base_addr);
============================================================================
CSL_IDEF_INLINE void CSL_AIF2LinkClkDisable | ( | uint32_t | base_addr, |
uint32_t | link_num | ||
) |
============================================================================
CSL_AIF2LinkClkDisable
Description
This API disables the Serdes Link Clocks
Arguments base_addr, link_num
Return Value None
Pre Condition
None
Post Condition
None
Reads
None
Usage Constraints:
None
Example
CSL_AIF2LinkClkDisable(CSL_AIF2_CONTROL_REGS, 0);
===========================================================================
CSL_IDEF_INLINE void CSL_AIF2LinkClkEnable | ( | uint32_t | base_addr, |
uint32_t | link_num | ||
) |
============================================================================
CSL_AIF2LinkClkEnable
Description
This API enables the Serdes Link Clocks
Arguments base_addr, link_num
Return Value None
Pre Condition
None
Post Condition
None
Reads
None
Usage Constraints:
None
Example
CSL_AIF2LinkClkEnable(CSL_AIF2_CONTROL_REGS, 0);
===========================================================================
CSL_IDEF_INLINE void CSL_AIF2SerdesClkSelB4 | ( | uint32_t | base_addr | ) |
============================================================================
CSL_AIF2SerdesClkSelB4
Description
This API selects the Serdes Link Clock for B4 PLL
Arguments base_addr
Return Value None
Pre Condition
None
Post Condition
None
Reads
None
Usage Constraints:
None
Example
CSL_AIF2SerdesClkSelB4(CSL_AIF2_CONTROL_REGS);
===========================================================================
CSL_IDEF_INLINE void CSL_AIF2SerdesComEnable | ( | uint32_t | base_addr | ) |
============================================================================
CSL_AIF2SerdesComEnable
Description
This API is deprecated and retained for backwards compatibility. This feature is currently integrated into the CSL_AIF2SerdesInitB8/B4 API.
Arguments base_addr
Return Value None
Pre Condition
None
Post Condition
None
Reads
None
Usage Constraints:
None
Example
CSL_AIF2SerdesComEnable(CSL_AIF2_SERDES_B8_CFG_REGS);
===========================================================================
CSL_IDEF_INLINE CSL_SERDES_STATUS CSL_AIF2SerdesGetStatusB4 | ( | uint32_t | base_addr | ) |
============================================================================
CSL_AIF2SerdesGetStatusB4
Description
This API returns the status of the B4 PLL lock
Arguments base_addr
Return Value CSL_SERDES_STATUS
Pre Condition
None
Post Condition
None
Reads
None
Usage Constraints:
None
Example
CSL_AIF2SerdesGetStatusB4(CSL_AIF2_CONTROL_REGS);
===========================================================================
CSL_IDEF_INLINE CSL_SERDES_STATUS CSL_AIF2SerdesGetStatusB8 | ( | uint32_t | base_addr | ) |
============================================================================
CSL_AIF2SerdesGetStatusB8
Description
This API returns the status of the B8 PLL lock
Arguments base_addr
Return Value CSL_SERDES_STATUS
Pre Condition
None
Post Condition
None
Reads
None
Usage Constraints:
None
Example
CSL_AIF2SerdesGetStatusB8(CSL_AIF2_CONTROL_REGS);
===========================================================================
CSL_IDEF_INLINE CSL_SERDES_RESULT CSL_AIF2SerdesInitB4 | ( | uint32_t | base_addr, |
CSL_SERDES_REF_CLOCK | ref_clock, | ||
CSL_SERDES_LINK_RATE | rate | ||
) |
============================================================================
CSL_AIF2SerdesInitB4
Description
This API initializes the Serdes CMU and COMLANE registers for B4 PLL.
Arguments base_addr, ref_clock, rate
Return Value CSL_SERDES_RESULT
Pre Condition
None
Post Condition
None
Reads
None
Usage Constraints:
None
Example
csl_retval = CSL_AIF2SerdesInitB4(CSL_AIF2_SERDES_B4_CFG_REGS, CSL_SERDES_REF_CLOCK_122p88M, CSL_SERDES_LINK_RATE_6p144G);
===========================================================================
CSL_IDEF_INLINE CSL_SERDES_RESULT CSL_AIF2SerdesInitB8 | ( | uint32_t | base_addr, |
CSL_SERDES_REF_CLOCK | ref_clock, | ||
CSL_SERDES_LINK_RATE | rate | ||
) |
============================================================================
CSL_AIF2SerdesInitB8
Description
This API initializes the Serdes CMU and COMLANE registers for B8 PLL.
Arguments base_addr, ref_clock, rate
Return Value CSL_SERDES_RESULT
Pre Condition
None
Post Condition
None
Reads
None
Usage Constraints:
None
Example
csl_retval = CSL_AIF2SerdesInitB8(CSL_AIF2_SERDES_B8_CFG_REGS, CSL_SERDES_REF_CLOCK_122p88M, CSL_SERDES_LINK_RATE_6p144G);
===========================================================================
CSL_IDEF_INLINE uint32_t CSL_AIF2SerdesIsReset | ( | uint32_t | base_addr | ) |
============================================================================
CSL_AIF2SerdesIsReset
Description
This API returns a flag indicating whether the SerDes is in reset (1), or whether a previous configuration was applied to the SerDes
Arguments base_addr
Return Value None
Pre Condition
None
Post Condition
None
Reads
None
Usage Constraints:
None
Example
uint32_t serdesIsReset; serdesIsReset = CSL_AIF2SerdesIsReset(CSL_AIF2_SERDES_B8_CFG_REGS);
===========================================================================
CSL_IDEF_INLINE void CSL_AIF2SerdesLaneConfig | ( | uint32_t | base_addr, |
CSL_SERDES_REF_CLOCK | ref_clock, | ||
CSL_SERDES_LINK_RATE | rate, | ||
uint32_t | lane_num | ||
) |
============================================================================
CSL_AIF2SerdesLaneConfig
Description
This API is deprecated and retained for backwards compatibility. This feature is currently integrated into the CSL_AIF2SerdesInitB8/B4 API.
Arguments base_addr, ref_clock, rate, lane_num
Return Value None
Pre Condition
None
Post Condition
None
Reads
None
Usage Constraints:
None
Example
CSL_AIF2SerdesLaneConfig(CSL_AIF2_SERDES_B8_CFG_REGS, CSL_SERDES_REF_CLOCK_122p88M, CSL_SERDES_LINK_RATE_4p9152G, 1);
===========================================================================
CSL_IDEF_INLINE void CSL_AIF2SerdesLaneDisable | ( | uint32_t | base_addr, |
uint32_t | lane_num | ||
) |
============================================================================
CSL_AIF2SerdesLaneDisable
Description
This API disables the Serdes Lanes
Arguments base_addr, lane_num
Return Value None
Pre Condition
None
Post Condition
None
Reads
None
Usage Constraints:
None
Example
CSL_AIF2SerdesLaneDisable(CSL_AIF2_CONTROL_REGS, 0);
===========================================================================
CSL_IDEF_INLINE void CSL_AIF2SerdesLaneEnable | ( | uint32_t | aif2_ctrl_base_addr, |
uint32_t | aif2_serdes_base_addr, | ||
uint32_t | lane_num, | ||
uint32_t | link_rate | ||
) |
============================================================================
CSL_AIF2SerdesLaneEnable
Description
This API enables the Serdes CMU and COMLANE
Arguments base_addr, lane_num, link_rate
Return Value None
Pre Condition
None
Post Condition
None
Reads
None
Usage Constraints:
None
Example
CSL_AIF2SerdesLaneEnable(CSL_AIF2_CONTROL_REGS, 0, CSL_AIF2_LINK_RATE_8x);
===========================================================================
CSL_IDEF_INLINE void CSL_AIF2SerdesLaneReset | ( | uint32_t | base_addr, |
uint32_t | lane_num | ||
) |
============================================================================
CSL_AIF2SerdesLaneReset
Description
This API is deprecated since CSL_AIF2SerdesLaneDisable is performing the same operation
Arguments base_addr, lane_num
Return Value None
Pre Condition
None
Post Condition
None
Reads
None
Usage Constraints:
None
Example
CSL_AIF2SerdesLaneReset(CSL_AIF2_SERDES_B8_CFG_REGS, 0);
===========================================================================
CSL_IDEF_INLINE void CSL_AIF2SerdesLoopbackEnable | ( | uint32_t | base_addr, |
uint32_t | lane_num, | ||
CSL_SERDES_LOOPBACK | loopback_mode | ||
) |
============================================================================
CSL_AIF2SerdesLoopbackEnable
Description
This API enables the Serdes internal loopback
Arguments base_addr, lane_num, loopback_mode
Return Value None
Pre Condition
None
Post Condition
None
Reads
None
Usage Constraints:
None
Example
CSL_AIF2SerdesLoopbackEnable(CSL_AIF2_SERDES_B8_CFG_REGS, 0, CSL_SERDES_LOOPBACK_ENABLED);
===========================================================================
CSL_IDEF_INLINE void CSL_AIF2SerdesPllEnableB4 | ( | uint32_t | aif2_ctrl_base_addr, |
uint32_t | aif2_serdes_base_addr | ||
) |
============================================================================
CSL_AIF2SerdesPllEnableB4
Description
This API enables the Serdes B4 PLL
Arguments base_addr
Return Value None
Pre Condition
None
Post Condition
None
Reads
None
Usage Constraints:
None
Example
CSL_AIF2SerdesPllEnableB4(CSL_AIF2_CONTROL_REGS);
===========================================================================
CSL_IDEF_INLINE void CSL_AIF2SerdesPllEnableB8 | ( | uint32_t | aif2_ctrl_base_addr, |
uint32_t | aif2_serdes_base_addr | ||
) |
============================================================================
CSL_AIF2SerdesPllEnableB8
Description
This API enables the Serdes B8 PLL
Arguments base_addr
Return Value None
Pre Condition
None
Post Condition
None
Reads
None
Usage Constraints:
None
Example
CSL_AIF2SerdesPllEnableB8(CSL_AIF2_CONTROL_REGS);
===========================================================================
CSL_IDEF_INLINE void CSL_AIF2SerdesShutdown | ( | uint32_t | base_addr | ) |
============================================================================
CSL_AIF2SerdesShutdown
Description
This API shuts down the Serdes by Disabling and Resetting the Serdes
Arguments base_addr
Return Value None
Pre Condition
None
Post Condition
None
Reads
None
Usage Constraints:
None
Example
CSL_AIF2SerdesShutdown(CSL_AIF2_SERDES_B8_CFG_REGS);
===========================================================================