![]() |
PDK API Guide for J721E
|
============================================================================
This is the top level SERDES API with enumerations for various supported reference clocks, link rates, lane control rates across different modules.
============================================================================
Data Structures | |
struct | CSL_SerdesTxCoeff |
struct | CSL_SerdesRxCoeff |
struct | CSL_SerdesTapOffsets |
struct | CSL_SerdesTbusDump |
struct | CSL_SerdesTxTerm |
struct | CSL_SerdesLaneEnableParams |
Functions | |
void | CSL_serdesCycleDelay (uint64_t count) |
void | CSL_serdesDisablePllAndLanes (uint32_t baseAddr, uint32_t numLanes, uint8_t laneMask) |
void | CSL_serdesInvertLaneTXPolarity (uint32_t baseAddr, uint32_t laneNum) |
void | CSL_serdesInvertLaneRXPolarity (uint32_t baseAddr, uint32_t laneNum) |
void | CSL_serdesPorReset (uint32_t baseAddr) |
void | CSL_serdesDisablePLL (uint32_t baseAddr, CSL_SerdesPhyType phyType) |
void | CSL_serdesDisableLanes (uint32_t baseAddr, uint32_t laneNum, uint8_t laneMask) |
void | CSL_serdesEnableLanes (uint32_t baseAddr, uint32_t laneNum, CSL_SerdesPhyType phyType, CSL_SerdesInstance instance) |
void | CSL_serdesFastSimEnable (uint32_t baseAddr, uint32_t numLanes, CSL_SerdesPhyType phyType) |
void | CSL_serdesSetCMUWaitVal (uint32_t baseAddr, uint32_t val) |
void | CSL_serdesSetPhanVal (uint32_t baseAddr) |
void | CSL_serdesWrite32Mask (uint32_t baseAddr, uint32_t maskVal, uint32_t setVal) |
void | CSL_serdesSetLoopback (uint32_t baseAddr, uint32_t laneNum, CSL_SerdesLoopback loopbackMode, CSL_SerdesInstance serdesInstance, CSL_SerdesPhyType phyType) |
void | CSL_serdesReleaseReset (uint32_t baseAddr) |
CSL_SerdesStatus | CSL_serdesGetPLLStatus (uint32_t baseAddr, uint32_t laneMask, CSL_SerdesInstance serdesInstance) |
CSL_SerdesStatus | CSL_serdesGetSigDetStatus (uint32_t baseAddr, uint32_t numLanes, uint8_t laneMask, CSL_SerdesPhyType phyType) |
CSL_SerdesStatus | CSL_serdesGetLaneStatus (uint32_t baseAddr, uint32_t numLanes, uint8_t laneMask, CSL_SerdesPhyType phyType) |
CSL_SerdesStatus | CSL_serdesConfigStatus (uint32_t baseAddr) |
CSL_SerdesLaneEnableStatus | CSL_serdesLaneEnable (CSL_SerdesLaneEnableParams *serdesLaneEnableParams) |
CSL_SerdesResult | CSL_serdesRefclkSel (uint32_t mainCtrlMMRbaseAddr, uint32_t baseAddr, CSL_SerdesRefClock refClk, CSL_SerdesRefClockSrc refClkSrc, CSL_SerdesInstance serdesInstance, CSL_SerdesPhyType phyType) |
void | CSL_serdesIPSelect (uint32_t mainCtrlMMRbaseAddr, CSL_SerdesPhyType phyType, uint32_t phyInstanceNum, CSL_SerdesInstance serdesInstance, uint32_t serdeslaneNum) |
void | CSL_serdesPCIeModeSelect (uint32_t baseAddr, CSL_SerdesPCIeGenType pcieGenType, uint32_t laneNum) |
void | CSL_serdesOutClkEn (uint32_t baseAddr, CSL_SerdesRefClock refClock, CSL_SerdesPhyType phyType) |
Typedefs | |
typedef uint32_t | CSL_SerdesInstance |
typedef uint32_t | CSL_SerdesRefClock |
typedef uint32_t | CSL_SerdesRefClockSrc |
typedef uint32_t | CSL_SerdesSSCMode |
typedef uint32_t | CSL_SerdesMultilink |
typedef uint32_t | CSL_SerdesLinkRate |
typedef uint32_t | CSL_SerdesLoopback |
typedef uint32_t | CSL_SerdesStatus |
typedef uint32_t | CSL_SerdesResult |
typedef uint32_t | CSL_SerdesLaneCtrlRate |
typedef uint32_t | CSL_SerdesLaneEnableStatus |
typedef uint32_t | CSL_SerdesPhyType |
typedef uint32_t | CSL_SerdesPCIeGenType |
typedef uint32_t | CSL_SerdesForceAttBoost |
typedef uint32_t | CSL_SerdesLaneEnableIterationMode |
typedef uint32_t | CSL_SerdesOperatingMode |
typedef uint32_t | CSL_SerdesEnableRefClkOut |
typedef uint32_t | CSL_SerdesInvertTXPolarity |
typedef uint32_t | CSL_SerdesInvertRXPolarity |
#define CSL_SERDES_MAX_LANES 4 |
#define CSL_SERDES_MAX_LANES_SIERRA 2 |
#define CSL_SERDES_MAX_LANES_TORRENT 4 |
#define CSL_SERDES_MAX_TAPS 5 |
#define CSL_SERDES_MAX_COMPARATORS 5 |
#define CSL_SERDES_TBUS_SIZE 440 |
#define CSL_SIERRA_SERDES0 (0U) |
#define CSL_SIERRA_SERDES1 (1U) |
#define CSL_SIERRA_SERDES2 (2U) |
#define CSL_SIERRA_SERDES3 (3U) |
#define CSL_TORRENT_SERDES0 (4U) |
#define CSL_SERDES_REF_CLOCK_19p2M (0U) |
#define CSL_SERDES_REF_CLOCK_20M (1U) |
#define CSL_SERDES_REF_CLOCK_24M (2U) |
#define CSL_SERDES_REF_CLOCK_25M (3U) |
#define CSL_SERDES_REF_CLOCK_26M (4U) |
#define CSL_SERDES_REF_CLOCK_27M (5U) |
#define CSL_SERDES_REF_CLOCK_60M (6U) |
#define CSL_SERDES_REF_CLOCK_100M (7U) |
#define CSL_SERDES_REF_CLOCK_122p88M (8U) |
#define CSL_SERDES_REF_CLOCK_125M (9U) |
#define CSL_SERDES_REF_CLOCK_153p6M (10U) |
#define CSL_SERDES_REF_CLOCK_156p25M (11U) |
#define CSL_SERDES_REF_CLOCK_312p5M (12U) |
#define CSL_SERDES_REF_CLOCK_INT (0U) |
#define CSL_SERDES_REF_CLOCK_EXT_NO_SSC (1U) |
#define CSL_SERDES_REF_CLOCK_EXT_SSC (2U) |
#define CSL_SERDES_NO_SSC (0U) |
#define CSL_SERDES_INTERNAL_SSC (1U) |
#define CSL_SERDES_EXTERNAL_SSC (2U) |
#define CSL_SERDES_XAUI_SGMII_MULTILINK (0U) |
#define CSL_SERDES_XAUI_QSGMII_MULTILINK (1U) |
#define CSL_SERDES_QSGMII_SGMII_MULTILINK (2U) |
#define CSL_SERDES_QSGMII_USB_MULTILINK (3U) |
#define CSL_SERDES_PCIe_USB_MULTILINK (4U) |
#define CSL_SERDES_PCIe_XAUI_MULTILINK (5U) |
#define CSL_SERDES_PCIe_QSGMII_MULTILINK (6U) |
#define CSL_SERDES_LINK_RATE_1p25G (0U) |
#define CSL_SERDES_LINK_RATE_2p7G (1U) |
#define CSL_SERDES_LINK_RATE_3p125G (2U) |
#define CSL_SERDES_LINK_RATE_4p9152G (3U) |
#define CSL_SERDES_LINK_RATE_5G (4U) |
#define CSL_SERDES_LINK_RATE_5p15625G (5U) |
#define CSL_SERDES_LINK_RATE_5p4G (6U) |
#define CSL_SERDES_LINK_RATE_6p144G (7U) |
#define CSL_SERDES_LINK_RATE_6p25G (8U) |
#define CSL_SERDES_LINK_RATE_7p3728G (9U) |
#define CSL_SERDES_LINK_RATE_8G (10U) |
#define CSL_SERDES_LINK_RATE_8p1G (11U) |
#define CSL_SERDES_LINK_RATE_9p8304G (12U) |
#define CSL_SERDES_LINK_RATE_10G (13U) |
#define CSL_SERDES_LINK_RATE_10p3125G (14U) |
#define CSL_SERDES_LINK_RATE_12p5G (15U) |
#define CSL_SERDES_LINK_RATE_16G (16U) |
#define CSL_SERDES_LOOPBACK_DISABLED (0U) |
#define CSL_SERDES_LOOPBACK_LINE (1U) |
#define CSL_SERDES_LOOPBACK_SER (2U) |
#define CSL_SERDES_LOOPBACK_NEPAR (3U) |
#define CSL_SERDES_LOOPBACK_FEPAR (4U) |
#define CSL_SERDES_LOOPBACK_RECOVEREDCLOCK (5U) |
#define CSL_SERDES_LOOPBACK_TXONLY (6U) |
#define CSL_SERDES_LOOPBACK_PCS (7U) |
#define CSL_SERDES_STATUS_PLL_NOT_LOCKED (0U) |
#define CSL_SERDES_STATUS_PLL_LOCKED (1U) |
#define CSL_SERDES_NO_ERR (0U) |
#define CSL_SERDES_INVALID_REF_CLOCK (1U) |
#define CSL_SERDES_INVALID_LANE_RATE (2U) |
#define CSL_SERDES_INVALID_NUM_LANES (3U) |
#define CSL_SERDES_INVALID_PHY_TYPE (4U) |
#define CSL_SERDES_LANE_FULL_RATE (0U) |
#define CSL_SERDES_LANE_HALF_RATE (1U) |
#define CSL_SERDES_LANE_QUARTER_RATE (2U) |
#define CSL_SERDES_LANE_ENABLE_NO_ERR (0U) |
#define CSL_SERDES_LANE_ENABLE_INVALID_RATE (1U) |
#define CSL_SERDES_LANE_ENABLE_PERIPHERAL_BASE_NOT_SET (2U) |
#define CSL_SERDES_LANE_ENABLE_ITERATION_MODE_NOT_SET (3U) |
#define CSL_SERDES_LANE_ENABLE_SIG_UNDETECTED (4U) |
#define CSL_SERDES_PHY_TYPE_PCIe (0U) |
#define CSL_SERDES_PHY_TYPE_SGMII (1U) |
#define CSL_SERDES_PHY_TYPE_SGMII_ICSSG (2U) |
#define CSL_SERDES_PHY_TYPE_QSGMII (3U) |
#define CSL_SERDES_PHY_TYPE_USB (4U) |
#define CSL_SERDES_PHY_TYPE_eDP (5U) |
#define CSL_SERDES_PHY_TYPE_XFI (6U) |
#define CSL_SERDES_PHY_TYPE_XAUI (7U) |
#define CSL_SERDES_PCIE_GEN1 (0U) |
#define CSL_SERDES_PCIE_GEN2 (1U) |
#define CSL_SERDES_PCIE_GEN3 (2U) |
#define CSL_SERDES_PCIE_GEN4 (3U) |
#define CSL_SERDES_FORCE_ATT_BOOST_DISABLED (0U) |
#define CSL_SERDES_FORCE_ATT_BOOST_ENABLED (1U) |
#define CSL_SERDES_LANE_ENABLE_COMMON_INIT (1U) |
#define CSL_SERDES_LANE_ENABLE_LANE_INIT (2U) |
#define CSL_SERDES_LANE_ENABLE_LANE_INIT_NO_WAIT (3U) |
#define CSL_SERDES_FUNCTIONAL_MODE (0U) |
#define CSL_SERDES_FUNCTIONAL_MODE_QT (1U) |
#define CSL_SERDES_FUNCTIONAL_MODE_FAST_SIM (2U) |
#define CSL_SERDES_DIAGNOSTIC_MODE (3U) |
#define CSL_SERDES_DIAGNOSTIC_MODE_QT (4U) |
#define CSL_SERDES_DIAGNOSTIC_MODE_FAST_SIM (5U) |
#define CSL_SERDES_REFCLK_OUT_DIS (0U) |
#define CSL_SERDES_REFCLK_OUT_EN (1U) |
#define CSL_SERDES_INV_TX_POLARITY_DIS (0U) |
#define CSL_SERDES_INV_TX_POLARITY_EN (1U) |
#define CSL_SERDES_INV_RX_POLARITY_DIS (0U) |
#define CSL_SERDES_INV_RX_POLARITY_EN (1U) |
typedef uint32_t CSL_SerdesInstance |
typedef uint32_t CSL_SerdesRefClock |
typedef uint32_t CSL_SerdesRefClockSrc |
typedef uint32_t CSL_SerdesSSCMode |
typedef uint32_t CSL_SerdesMultilink |
typedef uint32_t CSL_SerdesLinkRate |
typedef uint32_t CSL_SerdesLoopback |
typedef uint32_t CSL_SerdesStatus |
typedef uint32_t CSL_SerdesResult |
typedef uint32_t CSL_SerdesLaneCtrlRate |
typedef uint32_t CSL_SerdesLaneEnableStatus |
typedef uint32_t CSL_SerdesPhyType |
typedef uint32_t CSL_SerdesPCIeGenType |
typedef uint32_t CSL_SerdesForceAttBoost |
typedef uint32_t CSL_SerdesLaneEnableIterationMode |
typedef uint32_t CSL_SerdesOperatingMode |
typedef uint32_t CSL_SerdesEnableRefClkOut |
typedef uint32_t CSL_SerdesInvertTXPolarity |
typedef uint32_t CSL_SerdesInvertRXPolarity |
void CSL_serdesCycleDelay | ( | uint64_t | count | ) |
void CSL_serdesDisablePllAndLanes | ( | uint32_t | baseAddr, |
uint32_t | numLanes, | ||
uint8_t | laneMask | ||
) |
void CSL_serdesInvertLaneTXPolarity | ( | uint32_t | baseAddr, |
uint32_t | laneNum | ||
) |
void CSL_serdesInvertLaneRXPolarity | ( | uint32_t | baseAddr, |
uint32_t | laneNum | ||
) |
void CSL_serdesPorReset | ( | uint32_t | baseAddr | ) |
void CSL_serdesDisablePLL | ( | uint32_t | baseAddr, |
CSL_SerdesPhyType | phyType | ||
) |
void CSL_serdesDisableLanes | ( | uint32_t | baseAddr, |
uint32_t | laneNum, | ||
uint8_t | laneMask | ||
) |
void CSL_serdesEnableLanes | ( | uint32_t | baseAddr, |
uint32_t | laneNum, | ||
CSL_SerdesPhyType | phyType, | ||
CSL_SerdesInstance | instance | ||
) |
void CSL_serdesFastSimEnable | ( | uint32_t | baseAddr, |
uint32_t | numLanes, | ||
CSL_SerdesPhyType | phyType | ||
) |
void CSL_serdesSetCMUWaitVal | ( | uint32_t | baseAddr, |
uint32_t | val | ||
) |
void CSL_serdesSetPhanVal | ( | uint32_t | baseAddr | ) |
void CSL_serdesWrite32Mask | ( | uint32_t | baseAddr, |
uint32_t | maskVal, | ||
uint32_t | setVal | ||
) |
void CSL_serdesSetLoopback | ( | uint32_t | baseAddr, |
uint32_t | laneNum, | ||
CSL_SerdesLoopback | loopbackMode, | ||
CSL_SerdesInstance | serdesInstance, | ||
CSL_SerdesPhyType | phyType | ||
) |
void CSL_serdesReleaseReset | ( | uint32_t | baseAddr | ) |
CSL_SerdesStatus CSL_serdesGetPLLStatus | ( | uint32_t | baseAddr, |
uint32_t | laneMask, | ||
CSL_SerdesInstance | serdesInstance | ||
) |
CSL_SerdesStatus CSL_serdesGetSigDetStatus | ( | uint32_t | baseAddr, |
uint32_t | numLanes, | ||
uint8_t | laneMask, | ||
CSL_SerdesPhyType | phyType | ||
) |
CSL_SerdesStatus CSL_serdesGetLaneStatus | ( | uint32_t | baseAddr, |
uint32_t | numLanes, | ||
uint8_t | laneMask, | ||
CSL_SerdesPhyType | phyType | ||
) |
CSL_SerdesStatus CSL_serdesConfigStatus | ( | uint32_t | baseAddr | ) |
CSL_SerdesLaneEnableStatus CSL_serdesLaneEnable | ( | CSL_SerdesLaneEnableParams * | serdesLaneEnableParams | ) |
CSL_SerdesResult CSL_serdesRefclkSel | ( | uint32_t | mainCtrlMMRbaseAddr, |
uint32_t | baseAddr, | ||
CSL_SerdesRefClock | refClk, | ||
CSL_SerdesRefClockSrc | refClkSrc, | ||
CSL_SerdesInstance | serdesInstance, | ||
CSL_SerdesPhyType | phyType | ||
) |
void CSL_serdesIPSelect | ( | uint32_t | mainCtrlMMRbaseAddr, |
CSL_SerdesPhyType | phyType, | ||
uint32_t | phyInstanceNum, | ||
CSL_SerdesInstance | serdesInstance, | ||
uint32_t | serdeslaneNum | ||
) |
void CSL_serdesPCIeModeSelect | ( | uint32_t | baseAddr, |
CSL_SerdesPCIeGenType | pcieGenType, | ||
uint32_t | laneNum | ||
) |
void CSL_serdesOutClkEn | ( | uint32_t | baseAddr, |
CSL_SerdesRefClock | refClock, | ||
CSL_SerdesPhyType | phyType | ||
) |