srds_api_enum.h (4156B)
1 /****************************************************************************** 2 ****************************************************************************** 3 * Revision : * 4 * * 5 * Description : Enum types used by Serdes API functions * 6 * * 7 * This license is set out in https://raw.githubusercontent.com/Broadcom-Network-Switching-Software/OpenBCM/master/Legal/LICENSE file. 8 * 9 * Copyright 2007-2019 Broadcom Inc. All rights reserved. * 10 * No portions of this material may be reproduced in any form without * 11 * the written permission of: * 12 * Broadcom Corporation * 13 * 5300 California Avenue * 14 * Irvine, CA 92617 * 15 * * 16 * All information contained in this document is Broadcom Corporation * 17 * company private proprietary, and trade secret. * 18 */ 19 20 /** @file srds_api_enum.h 21 * Enum types used by Serdes API functions 22 This file contains Enum's which are common to all serdes cores 23 */ 24 25 #ifndef SRDS_API_ENUM_H 26 #define SRDS_API_ENUM_H 27 28 /** PRBS Polynomial Enum */ 29 enum srds_prbs_polynomial_enum { 30 PRBS_7 = 0, 31 PRBS_9 = 1, 32 PRBS_11 = 2, 33 PRBS_15 = 3, 34 PRBS_23 = 4, 35 PRBS_31 = 5, 36 PRBS_58 = 6 37 }; 38 39 40 /** PRBS Checker Mode Enum */ 41 enum srds_prbs_checker_mode_enum { 42 PRBS_SELF_SYNC_HYSTERESIS = 0, 43 PRBS_INITIAL_SEED_HYSTERESIS = 1, 44 PRBS_INITIAL_SEED_NO_HYSTERESIS = 2 45 }; 46 47 48 /** TX_PI Fixed Frequency and Jitter Generation Modes Enum */ 49 enum srds_tx_pi_freq_jit_gen_enum { 50 TX_PI_FIXED_FREQ = 0, 51 TX_PI_SSC_LOW_FREQ = 1, 52 TX_PI_SSC_HIGH_FREQ = 2, 53 TX_PI_SJ = 3 54 }; 55 56 /** RX AFE Settings Enum */ 57 enum srds_rx_afe_settings_enum { 58 RX_AFE_PF, 59 RX_AFE_PF2, 60 RX_AFE_VGA, 61 RX_AFE_DFE1, 62 RX_AFE_DFE2, 63 RX_AFE_DFE3, 64 RX_AFE_DFE4, 65 RX_AFE_DFE5, 66 RX_AFE_DFE6, 67 RX_AFE_DFE7, 68 RX_AFE_DFE8, 69 RX_AFE_DFE9, 70 RX_AFE_DFE10, 71 RX_AFE_DFE11, 72 RX_AFE_DFE12, 73 RX_AFE_DFE13, 74 RX_AFE_DFE14, 75 RX_AFE_PF3, 76 RX_FFE_1, 77 RX_FFE_2 78 }; 79 80 /** Repeater Mode Enum */ 81 enum srds_rptr_mode_enum { 82 DATA_IN_SIDE, 83 DIG_LPBK_SIDE, 84 RMT_LPBK_SIDE 85 }; 86 87 /** Core Powerdown Modes Enum */ 88 enum srds_core_pwrdn_mode_enum { 89 PWR_ON, 90 PWRDN, 91 PWRDN_DEEP, 92 PWRDN_TX, 93 PWRDN_RX 94 }; 95 96 /** Eye Scan Direction Enum */ 97 enum srds_eye_scan_dir_enum { 98 EYE_SCAN_HORIZ = 0, 99 EYE_SCAN_VERTICAL = 1, 100 EYE_SCAN_SLICE = 2 101 }; 102 103 /* Used by #serdes_display_diag_data to select diag_level */ 104 /* example: */ 105 /* diag_level = SRDS_DIAG_LANE | SRDS_DIAG_CORE | SRDS_DIAG_EVENT */ 106 enum srds_diag_level_enum { 107 SRDS_DIAG_LANE = 1, 108 SRDS_DIAG_CORE = 1<<1, 109 SRDS_DIAG_EVENT = 1<<2, 110 SRDS_DIAG_EYE = 1<<3, 111 SRDS_DIAG_REG_CORE = 1<<4, 112 SRDS_DIAG_REG_LANE = 1<<5, 113 SRDS_DIAG_UC_CORE = 1<<6, 114 SRDS_DIAG_UC_LANE = 1<<7, 115 SRDS_DIAG_LANE_DEBUG = 1<<8, 116 SRDS_DIAG_BER_VERT = 1<<9, 117 SRDS_DIAG_BER_HORZ = 1<<10, 118 SRDS_DIAG_EVENT_SAFE = 1<<11 119 }; 120 121 /* Used by #serdes_diag_access to select type of access */ 122 enum srds_diag_access_enum { 123 SRDS_REG_READ, 124 SRDS_REG_RMW, 125 SRDS_CORE_RAM_READ_BYTE, 126 SRDS_CORE_RAM_RMW_BYTE, 127 SRDS_CORE_RAM_READ_WORD, 128 SRDS_CORE_RAM_RMW_WORD, 129 SRDS_LANE_RAM_READ_BYTE, 130 SRDS_LANE_RAM_RMW_BYTE, 131 SRDS_LANE_RAM_READ_WORD, 132 SRDS_LANE_RAM_RMW_WORD, 133 SRDS_GLOB_RAM_READ_BYTE, 134 SRDS_GLOB_RAM_RMW_BYTE, 135 SRDS_GLOB_RAM_READ_WORD, 136 SRDS_GLOB_RAM_RMW_WORD, 137 SRDS_PROG_RAM_READ_BYTE, 138 SRDS_PROG_RAM_READ_WORD, 139 SRDS_UC_CMD, 140 SRDS_EN_BREAKPOINT, 141 SRDS_GOTO_BREAKPOINT, 142 SRDS_RD_BREAKPOINT, 143 SRDS_DIS_BREAKPOINT, 144 SRDS_BER_PROJ_DATA 145 }; 146 147 #endif