Branch data Line data Source code
1 : : /* SPDX-License-Identifier: BSD-3-Clause 2 : : * Copyright(C) 2022 Marvell. 3 : : */ 4 : : #ifndef _ROC_ERRATA_H_ 5 : : #define _ROC_ERRATA_H_ 6 : : 7 : : #include "roc_model.h" 8 : : 9 : : /* Errata IPBUNIXRX-40129, IPBUNIXRX-40179 */ 10 : : static inline bool 11 : : roc_errata_nix_has_no_drop_re(void) 12 : : { 13 [ # # # # ]: 0 : return (roc_model_is_cn10ka_a0() || roc_model_is_cnf10ka_a0() || 14 [ # # # # : 0 : roc_model_is_cnf10kb_a0() || roc_model_is_cn10ka_a1()); # # ] 15 : : } 16 : : 17 : : /* Errata NIX-34873 */ 18 : : static inline bool 19 : : roc_errata_nix_has_cq_min_size_4k(void) 20 : : { 21 [ # # # # : 0 : return (roc_model_is_cn96_a0() || roc_model_is_cn95_a0()); # # # # # # # # ] 22 : : } 23 : : 24 : : /* Errata IPBUNPA-37480 */ 25 : : static inline bool 26 : : roc_errata_npa_has_no_fc_stype_ststp(void) 27 : : { 28 [ # # # # : 0 : return roc_model_is_cn10ka_a0() || roc_model_is_cn10ka_a1() || roc_model_is_cnf10ka_a0() || # # # # # # ] 29 : : roc_model_is_cnf10kb_a0(); 30 : : } 31 : : 32 : : /* Errata IPBUNIXTX-39337 */ 33 : : static inline bool 34 : : roc_errata_nix_has_no_drop_aging(void) 35 : : { 36 : : return (roc_model_is_cn10ka_a0() || roc_model_is_cnf10ka_a0()); 37 : : } 38 : : 39 : : /* Errata IPBUNIXRX-40130 */ 40 : : static inline bool 41 : : roc_errata_nix_has_no_vwqe_flush_op(void) 42 : : { 43 : : return (roc_model_is_cn10ka_a0() || roc_model_is_cnf10ka_a0() || 44 : : roc_model_is_cnf10kb_a0() || roc_model_is_cn10ka_a1() || roc_model_is_cn10ka_b0() || 45 : : roc_model_is_cn10kb_a0()); 46 : : } 47 : : 48 : : /* Errata IPBURVUM-38481 */ 49 : : static inline bool 50 : : roc_errata_ruvm_has_no_interrupt_with_msixen(void) 51 : : { 52 : : return true; 53 : : } 54 : : 55 : : /* Errata IPBUCPT-38551 */ 56 : : static inline bool 57 : : roc_errata_cpt_has_use_incorrect_ldwb(void) 58 : : { 59 : : return true; 60 : : } 61 : : 62 : : /* Errata IPBUNIXTX-39322 */ 63 : : static inline bool 64 : : roc_errata_nix_has_overwrite_incorrect_sq_intr(void) 65 : : { 66 : : return (roc_model_is_cn10ka_a0() || roc_model_is_cnf10ka_a0() || 67 : : roc_model_is_cnf10kb_a0() || roc_model_is_cn10ka_a1()); 68 : : } 69 : : 70 : : /* Errata IPBUNIXTX-39248 */ 71 : : static inline bool 72 : : roc_errata_nix_has_perf_issue_on_stats_update(void) 73 : : { 74 : : return (roc_model_is_cn10ka_a0() || roc_model_is_cnf10ka_a0() || 75 : : roc_model_is_cnf10kb_a0() || roc_model_is_cn10ka_a1()); 76 : : } 77 : : 78 : : /* Errata IPBUCPT-38736, IPBUCPT-38737 */ 79 : : static inline bool 80 : : roc_errata_cpt_hang_on_x2p_bp(void) 81 : : { 82 [ # # # # : 0 : return roc_model_is_cn10ka_a0() || roc_model_is_cn10ka_a1(); # # ] 83 : : } 84 : : 85 : : /* Errata IPBUCPT-38756 */ 86 : : static inline bool 87 : : roc_errata_cpt_has_ctx_fetch_issue(void) 88 : : { 89 : : return roc_model_is_cn10kb(); 90 : : } 91 : : 92 : : /* IPBUNIXRX-40400 */ 93 : : static inline bool 94 : : roc_errata_nix_no_meta_aura(void) 95 : : { 96 : : return roc_model_is_cn10ka_a0(); 97 : : } 98 : : 99 : : /* Errata IPBUNIXTX-35039 */ 100 : : static inline bool 101 : : roc_errata_nix_sdp_send_has_mtu_size_16k(void) 102 : : { 103 [ # # # # ]: 0 : return (roc_model_is_cnf95xxn_a0() || roc_model_is_cnf95xxo_a0() || 104 [ # # # # : 0 : roc_model_is_cn96_a0() || roc_model_is_cn96_b0()); # # ] 105 : : } 106 : : 107 : : /* Errata IPBUCPT-38753 */ 108 : : static inline bool 109 : : roc_errata_cpt_hang_on_mixed_ctx_val(void) 110 : : { 111 [ # # # # : 0 : return roc_model_is_cn10ka_a0() || roc_model_is_cn10ka_a1(); # # # # # # # # # # # # # # # # # # # # # # # # # # ] 112 : : } 113 : : 114 : : /* Errata IPBUNIXTX-39300 */ 115 : : static inline bool 116 : : roc_errata_nix_assign_incorrect_qint(void) 117 : : { 118 [ # # # # : 0 : return (roc_model_is_cn10ka_a0() || roc_model_is_cnf10ka_a0() || # # # # ] 119 [ # # # # : 0 : roc_model_is_cnf10kb_a0() || roc_model_is_cn10ka_a1()); # # # # # # # # ] 120 : : } 121 : : 122 : : #endif /* _ROC_ERRATA_H_ */