// --------------------------------------
// CoreABC SERDES Initialization Sequence
// --------------------------------------

// SYSTEM_CONFIG_PHY_MODE_1
APBWRT DAT 0 0xa028 0x80F
// LANE3_PHY_RESET_OVERRIDE
APBWRT DAT 0 0x9d98 0x30
// LANE3_CR0
APBWRT DAT 0 0x9c00 0x80
// LANE3_ERRCNT_DEC
APBWRT DAT 0 0x9c04 0x20
// LANE3_RXIDLE_MAX_ERRCNT_THR
APBWRT DAT 0 0x9c08 0xF8
// LANE3_IMPED_RATIO
APBWRT DAT 0 0x9c0c 0x80
// LANE3_PLL_M_N
APBWRT DAT 0 0x9c14 0x29
// LANE3_CNT250NS_MAX
APBWRT DAT 0 0x9c18 0x20
// LANE3_TX_AMP_RATIO
APBWRT DAT 0 0x9c24 0x80
// LANE3_TX_PST_RATIO
APBWRT DAT 0 0x9c28 0x15
// LANE3_ENDCALIB_MAX
APBWRT DAT 0 0x9c30 0x10
// LANE3_CALIB_STABILITY_COUNT
APBWRT DAT 0 0x9c34 0x38
// LANE3_RX_OFFSET_COUNT
APBWRT DAT 0 0x9c3c 0x70
// LANE3_GEN1_TX_PLL_CCP
APBWRT DAT 0 0x9dd4 0x2
// LANE3_GEN1_RX_PLL_CCP
APBWRT DAT 0 0x9dd8 0x22
// LANE3_PHY_RESET_OVERRIDE
APBWRT DAT 0 0x9d98 0x0
// LANE3_UPDATE_SETTINGS
APBWRT DAT 0 0x9e00 0x1
// SYSTEM_CONFIG_PHY_MODE_1
APBWRT DAT 0 0xa028 0xF0F

// Set CONFIG1_DONE to '1'
APBWRT DAT 0 0x2000 0x1

// Wait for SDIF_RELEASE assertion
$WaitSdifRelease
APBREAD 0 0x2004
AND 0x02
JUMP IF ZERO $WaitSdifRelease

// Set CONFIG2_DONE to '1'
APBWRT DAT 0 0x2000 0x3

HALT
