@@ -8375,70 +8375,6 @@ int bf_qsfp_get_cdr_support (int port,
83758375 return 0 ;
83768376}
83778377
8378- /* TF1, by tsihang 2023-05-10. */
8379- int bf_qsfp_get_rx_cdr_ctrl_support (int port ,
8380- bool * rx_cdr_ctrl_support )
8381- {
8382- int rc ;
8383- uint8_t readval [3 ];
8384-
8385- if (port > bf_plt_max_qsfp ) {
8386- return 0 ;
8387- }
8388-
8389- if (bf_qsfp_is_passive_cu (port )) {
8390- * rx_cdr_ctrl_support = false;
8391- return 0 ;
8392- }
8393-
8394- if (bf_qsfp_is_sff8636 (port )) {
8395- rc = bf_qsfp_field_read_onebank (
8396- port , OPTIONS , 0 , 0 , sizeof (readval ),
8397- readval );
8398- if (rc == 0 ) {
8399- * rx_cdr_ctrl_support = (readval [1 ] >> 6 ) & 0x1 ;
8400- } else {
8401- return -1 ;
8402- }
8403- } else {
8404- * rx_cdr_ctrl_support = false;
8405- }
8406-
8407- return 0 ;
8408- }
8409-
8410- /* TF1, by tsihang 2023-05-10. */
8411- int bf_qsfp_get_tx_cdr_ctrl_support (int port ,
8412- bool * tx_cdr_ctrl_support )
8413- {
8414- int rc ;
8415- uint8_t readval [3 ];
8416-
8417- if (port > bf_plt_max_qsfp ) {
8418- return 0 ;
8419- }
8420-
8421- if (bf_qsfp_is_passive_cu (port )) {
8422- * tx_cdr_ctrl_support = false;
8423- return 0 ;
8424- }
8425-
8426- if (bf_qsfp_is_sff8636 (port )) {
8427- rc = bf_qsfp_field_read_onebank (
8428- port , OPTIONS , 0 , 0 , sizeof (readval ),
8429- readval );
8430- if (rc == 0 ) {
8431- * tx_cdr_ctrl_support = (readval [1 ] >> 7 ) & 0x1 ;
8432- } else {
8433- return -1 ;
8434- }
8435- } else {
8436- * tx_cdr_ctrl_support = false;
8437- }
8438-
8439- return 0 ;
8440- }
8441-
84428378/* SFF-8636 only, by tsihang 2023-05-10. */
84438379int bf_qsfp_get_rxtx_cdr_ctrl_state (int port ,
84448380 uint8_t * cdr_ctrl_state )
@@ -8472,67 +8408,6 @@ int bf_qsfp_get_rxtx_cdr_ctrl_state (int port,
84728408 return 0 ;
84738409}
84748410
8475- /* TF1, by tsihang 2023-05-10. */
8476- int bf_qsfp_get_rx_cdr_lol_support (int port ,
8477- bool * rx_cdr_lol_support )
8478- {
8479- int rc ;
8480- uint8_t readval [3 ];
8481-
8482- if (port > bf_plt_max_qsfp ) {
8483- return 0 ;
8484- }
8485-
8486- if (bf_qsfp_is_passive_cu (port )) {
8487- * rx_cdr_lol_support = false;
8488- return 0 ;
8489- }
8490-
8491- if (bf_qsfp_is_sff8636 (port )) {
8492- rc = bf_qsfp_field_read_onebank (
8493- port , OPTIONS , 0 , 0 , sizeof (readval ),
8494- readval );
8495- if (rc == 0 ) {
8496- * rx_cdr_lol_support = (readval [1 ] >> 4 ) & 0x1 ;
8497- } else {
8498- return -1 ;
8499- }
8500- } else {
8501- * rx_cdr_lol_support = false;
8502- }
8503- return 0 ;
8504- }
8505- /* TF1, by tsihang 2023-05-10. */
8506- int bf_qsfp_get_tx_cdr_lol_support (int port ,
8507- bool * tx_cdr_lol_support )
8508- {
8509- int rc ;
8510- uint8_t readval [3 ];
8511-
8512- if (port > bf_plt_max_qsfp ) {
8513- return 0 ;
8514- }
8515-
8516- if (bf_qsfp_is_passive_cu (port )) {
8517- * tx_cdr_lol_support = false;
8518- return 0 ;
8519- }
8520-
8521- if (bf_qsfp_is_sff8636 (port )) {
8522- rc = bf_qsfp_field_read_onebank (
8523- port , OPTIONS , 0 , 0 , sizeof (readval ),
8524- readval );
8525- if (rc == 0 ) {
8526- * tx_cdr_lol_support = (readval [1 ] >> 5 ) & 0x1 ;
8527- } else {
8528- return -1 ;
8529- }
8530- } else {
8531- * tx_cdr_lol_support = false;
8532- }
8533- return 0 ;
8534- }
8535-
85368411int bf_qsfp_is_cdr_required (int port , bool * rx_cdr_required , bool * tx_cdr_required ) {
85378412 if (port > bf_plt_max_qsfp ) {
85388413 return 0 ;
0 commit comments