From f21a18e501c28d932ee24f11a7a3ffaa93228735 Mon Sep 17 00:00:00 2001 From: Joe McGill Date: Thu, 14 Sep 2017 15:48:22 -0500 Subject: updates for NPU errata p9.chip.gtpr.scan.initfile add clock gate disable for HW407330 p9.npu.scom.initfile add workarounds for HW398156, HW364887, HW372457, HW376377, HW398156 Change-Id: I48443e7c8288cfce665dbd8b00518c3e19e7116e Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/46237 Tested-by: Jenkins Server Tested-by: HWSV CI Tested-by: Hostboot CI Tested-by: FSP CI Jenkins Reviewed-by: RYAN BLACK Reviewed-by: Thi N. Tran Reviewed-by: Jennifer A. Stofer Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/46242 Tested-by: Jenkins OP Build CI Tested-by: Jenkins OP HW Reviewed-by: Daniel M. Crowell --- .../p9/procedures/hwp/initfiles/p9_npu_scom.C | 1214 +++++++++++++++++++- 1 file changed, 1162 insertions(+), 52 deletions(-) (limited to 'src/import/chips/p9/procedures/hwp/initfiles/p9_npu_scom.C') diff --git a/src/import/chips/p9/procedures/hwp/initfiles/p9_npu_scom.C b/src/import/chips/p9/procedures/hwp/initfiles/p9_npu_scom.C index cc8701c27..acaaa4b68 100644 --- a/src/import/chips/p9/procedures/hwp/initfiles/p9_npu_scom.C +++ b/src/import/chips/p9/procedures/hwp/initfiles/p9_npu_scom.C @@ -35,7 +35,11 @@ constexpr uint64_t literal_3 = 3; constexpr uint64_t literal_2 = 2; constexpr uint64_t literal_0 = 0; constexpr uint64_t literal_0x1 = 0x1; +constexpr uint64_t literal_0xF = 0xF; +constexpr uint64_t literal_0b001000 = 0b001000; constexpr uint64_t literal_0b1 = 0b1; +constexpr uint64_t literal_0b01 = 0b01; +constexpr uint64_t literal_0x67 = 0x67; constexpr uint64_t literal_0x04 = 0x04; constexpr uint64_t literal_0x0C = 0x0C; constexpr uint64_t literal_0x4 = 0x4; @@ -49,11 +53,12 @@ constexpr uint64_t literal_0x0000740000000000 = 0x0000740000000000; constexpr uint64_t literal_0x7F60B04500AC0000 = 0x7F60B04500AC0000; constexpr uint64_t literal_0xAAA70A55F0000000 = 0xAAA70A55F0000000; constexpr uint64_t literal_0x5550740000000000 = 0x5550740000000000; +constexpr uint64_t literal_0x009A48180F61FFFF = 0x009A48180F61FFFF; constexpr uint64_t literal_0x009A48180F01FFFF = 0x009A48180F01FFFF; constexpr uint64_t literal_0xFFFFFFFFFFFFFFFF = 0xFFFFFFFFFFFFFFFF; constexpr uint64_t literal_0x0000000000000000 = 0x0000000000000000; constexpr uint64_t literal_0x7F60B04500AE0000 = 0x7F60B04500AE0000; -constexpr uint64_t literal_0x8005000200500000 = 0x8005000200500000; +constexpr uint64_t literal_0x8005000200100000 = 0x8005000200100000; constexpr uint64_t literal_0xFF65B04700FE0000 = 0xFF65B04700FE0000; constexpr uint64_t literal_0x5550F40000000003 = 0x5550F40000000003; constexpr uint64_t literal_0x0000F40000000003 = 0x0000F40000000003; @@ -78,6 +83,12 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& || (l_TGT0_ATTR_PROC_FABRIC_OPTICS_CONFIG_MODE[literal_1] == fapi2::ENUM_ATTR_PROC_FABRIC_OPTICS_CONFIG_MODE_NV)) || (l_TGT0_ATTR_PROC_FABRIC_OPTICS_CONFIG_MODE[literal_2] == fapi2::ENUM_ATTR_PROC_FABRIC_OPTICS_CONFIG_MODE_NV)) || (l_TGT0_ATTR_PROC_FABRIC_OPTICS_CONFIG_MODE[literal_3] == fapi2::ENUM_ATTR_PROC_FABRIC_OPTICS_CONFIG_MODE_NV)); + fapi2::ATTR_CHIP_EC_FEATURE_HW372457_Type l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457; + FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_CHIP_EC_FEATURE_HW372457, TGT0, l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457)); + fapi2::ATTR_CHIP_EC_FEATURE_HW410625_Type l_TGT0_ATTR_CHIP_EC_FEATURE_HW410625; + FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_CHIP_EC_FEATURE_HW410625, TGT0, l_TGT0_ATTR_CHIP_EC_FEATURE_HW410625)); + fapi2::ATTR_CHIP_EC_FEATURE_HW364887_Type l_TGT0_ATTR_CHIP_EC_FEATURE_HW364887; + FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_CHIP_EC_FEATURE_HW364887, TGT0, l_TGT0_ATTR_CHIP_EC_FEATURE_HW364887)); fapi2::ATTR_PROC_EPS_READ_CYCLES_T0_Type l_TGT1_ATTR_PROC_EPS_READ_CYCLES_T0; FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_PROC_EPS_READ_CYCLES_T0, TGT1, l_TGT1_ATTR_PROC_EPS_READ_CYCLES_T0)); fapi2::ATTR_PROC_EPS_READ_CYCLES_T1_Type l_TGT1_ATTR_PROC_EPS_READ_CYCLES_T1; @@ -103,7 +114,12 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<38, 1, 63, uint64_t>(literal_0x1 ); } - if (literal_1) + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<50, 1, 63, uint64_t>(literal_0b0 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW410625 != literal_0)) { l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); } @@ -125,6 +141,16 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011000ull, l_scom_buffer)); } + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011001ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW364887 != literal_0)) + { + l_scom_buffer.insert<12, 4, 60, uint64_t>(literal_0xF ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011001ull, l_scom_buffer)); + } { FAPI_TRY(fapi2::getScom( TGT0, 0x5011002ull, l_scom_buffer )); @@ -155,6 +181,16 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011002ull, l_scom_buffer)); } + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011003ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<26, 6, 58, uint64_t>(literal_0b001000 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011003ull, l_scom_buffer)); + } { FAPI_TRY(fapi2::getScom( TGT0, 0x5011008ull, l_scom_buffer )); @@ -165,6 +201,21 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011008ull, l_scom_buffer)); } + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011010ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<4, 2, 62, uint64_t>(literal_0b01 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<8, 8, 56, uint64_t>(literal_0x67 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011010ull, l_scom_buffer)); + } { FAPI_TRY(fapi2::getScom( TGT0, 0x501101bull, l_scom_buffer )); @@ -183,7 +234,12 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<38, 1, 63, uint64_t>(literal_0x1 ); } - if (literal_1) + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<50, 1, 63, uint64_t>(literal_0b0 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW410625 != literal_0)) { l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); } @@ -206,6 +262,19 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011020ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011021ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW364887 != literal_0)) + { + l_scom_buffer.insert<12, 4, 60, uint64_t>(literal_0xF ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011021ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) { @@ -239,6 +308,19 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011022ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011023ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<26, 6, 58, uint64_t>(literal_0b001000 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011023ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) { @@ -253,39 +335,87 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& } } { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011030ull, l_scom_buffer )); + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) { - FAPI_TRY(fapi2::getScom( TGT0, 0x5011030ull, l_scom_buffer )); - l_scom_buffer.insert<4, 1, 63, uint64_t>(literal_0b0 ); + } + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { if ((l_def_NVLINK_ACTIVE == literal_1)) { l_scom_buffer.insert<38, 1, 63, uint64_t>(literal_0x1 ); } - if (literal_1) + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<50, 1, 63, uint64_t>(literal_0b0 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW410625 != literal_0)) { l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); } + } + + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<4, 2, 62, uint64_t>(literal_0b01 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<8, 8, 56, uint64_t>(literal_0x67 ); + } + } + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { if ((l_def_NVLINK_ACTIVE == literal_1)) { l_scom_buffer.insert<52, 1, 63, uint64_t>(literal_0x1 ); } + } + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { if ((l_def_NVLINK_ACTIVE == literal_1)) { l_scom_buffer.insert<53, 1, 63, uint64_t>(literal_0x1 ); } + } + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { if ((l_def_NVLINK_ACTIVE == literal_1)) { l_scom_buffer.insert<54, 1, 63, uint64_t>(literal_0x1 ); } + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011030ull, l_scom_buffer)); + } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011031ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW364887 != literal_0)) + { + l_scom_buffer.insert<12, 4, 60, uint64_t>(literal_0xF ); + } - FAPI_TRY(fapi2::putScom(TGT0, 0x5011030ull, l_scom_buffer)); + FAPI_TRY(fapi2::putScom(TGT0, 0x5011031ull, l_scom_buffer)); } } { @@ -322,6 +452,20 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011032ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011033ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<26, 6, 58, uint64_t>(literal_0b001000 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011033ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) @@ -346,38 +490,82 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& } } { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011040ull, l_scom_buffer )); + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) { - FAPI_TRY(fapi2::getScom( TGT0, 0x5011040ull, l_scom_buffer )); - l_scom_buffer.insert<4, 1, 63, uint64_t>(literal_0b0 ); + } + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { if ((l_def_NVLINK_ACTIVE == literal_1)) { l_scom_buffer.insert<38, 1, 63, uint64_t>(literal_0x1 ); } - if (literal_1) + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<50, 1, 63, uint64_t>(literal_0b0 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW410625 != literal_0)) { l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); } + } + + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<4, 2, 62, uint64_t>(literal_0b01 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<8, 8, 56, uint64_t>(literal_0x67 ); + } + } + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { if ((l_def_NVLINK_ACTIVE == literal_1)) { l_scom_buffer.insert<52, 1, 63, uint64_t>(literal_0x1 ); } + } + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { if ((l_def_NVLINK_ACTIVE == literal_1)) { l_scom_buffer.insert<53, 1, 63, uint64_t>(literal_0x1 ); } + } + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { if ((l_def_NVLINK_ACTIVE == literal_1)) { l_scom_buffer.insert<54, 1, 63, uint64_t>(literal_0x1 ); } + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011040ull, l_scom_buffer)); + } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011041ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW364887 != literal_0)) + { + l_scom_buffer.insert<12, 4, 60, uint64_t>(literal_0xF ); + } - FAPI_TRY(fapi2::putScom(TGT0, 0x5011040ull, l_scom_buffer)); + FAPI_TRY(fapi2::putScom(TGT0, 0x5011041ull, l_scom_buffer)); } } { @@ -413,6 +601,19 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011042ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011043ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<26, 6, 58, uint64_t>(literal_0b001000 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011043ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) { @@ -436,6 +637,24 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x501104bull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011050ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<4, 2, 62, uint64_t>(literal_0b01 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<8, 8, 56, uint64_t>(literal_0x67 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011050ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) { @@ -455,7 +674,12 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<38, 1, 63, uint64_t>(literal_0x1 ); } - if (literal_1) + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<50, 1, 63, uint64_t>(literal_0b0 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW410625 != literal_0)) { l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); } @@ -477,6 +701,16 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011060ull, l_scom_buffer)); } + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011061ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW364887 != literal_0)) + { + l_scom_buffer.insert<12, 4, 60, uint64_t>(literal_0xF ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011061ull, l_scom_buffer)); + } { FAPI_TRY(fapi2::getScom( TGT0, 0x5011062ull, l_scom_buffer )); @@ -507,6 +741,16 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011062ull, l_scom_buffer)); } + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011063ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<26, 6, 58, uint64_t>(literal_0b001000 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011063ull, l_scom_buffer)); + } { FAPI_TRY(fapi2::getScom( TGT0, 0x5011068ull, l_scom_buffer )); @@ -517,6 +761,21 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011068ull, l_scom_buffer)); } + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011070ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<4, 2, 62, uint64_t>(literal_0b01 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<8, 8, 56, uint64_t>(literal_0x67 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011070ull, l_scom_buffer)); + } { FAPI_TRY(fapi2::getScom( TGT0, 0x501107bull, l_scom_buffer )); @@ -612,7 +871,12 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<38, 1, 63, uint64_t>(literal_0x1 ); } - if (literal_1) + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<50, 1, 63, uint64_t>(literal_0b0 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW410625 != literal_0)) { l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); } @@ -647,6 +911,20 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011090ull, l_scom_buffer)); } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011091ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW364887 != literal_0)) + { + l_scom_buffer.insert<12, 4, 60, uint64_t>(literal_0xF ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011091ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) @@ -681,6 +959,20 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011092ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011093ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<26, 6, 58, uint64_t>(literal_0b001000 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011093ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) @@ -695,6 +987,25 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011098ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x50110a0ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<4, 2, 62, uint64_t>(literal_0b01 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<8, 8, 56, uint64_t>(literal_0x67 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x50110a0ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) @@ -787,7 +1098,12 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<38, 1, 63, uint64_t>(literal_0x1 ); } - if (literal_1) + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<50, 1, 63, uint64_t>(literal_0b0 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW410625 != literal_0)) { l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); } @@ -810,6 +1126,19 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011100ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011101ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW364887 != literal_0)) + { + l_scom_buffer.insert<12, 4, 60, uint64_t>(literal_0xF ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011101ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) { @@ -843,6 +1172,19 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011102ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011103ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<26, 6, 58, uint64_t>(literal_0b001000 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011103ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) { @@ -856,6 +1198,24 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011108ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011110ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<4, 2, 62, uint64_t>(literal_0b01 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<8, 8, 56, uint64_t>(literal_0x67 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011110ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) { @@ -877,7 +1237,12 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<38, 1, 63, uint64_t>(literal_0x1 ); } - if (literal_1) + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<50, 1, 63, uint64_t>(literal_0b0 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW410625 != literal_0)) { l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); } @@ -903,16 +1268,29 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& { if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) { - FAPI_TRY(fapi2::getScom( TGT0, 0x5011122ull, l_scom_buffer )); - - if ((l_def_NVLINK_ACTIVE == literal_1)) - { - l_scom_buffer.insert<28, 12, 52, uint64_t>(l_TGT1_ATTR_PROC_EPS_READ_CYCLES_T0 ); - } + FAPI_TRY(fapi2::getScom( TGT0, 0x5011121ull, l_scom_buffer )); - if ((l_def_NVLINK_ACTIVE == literal_1)) + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW364887 != literal_0)) { - l_scom_buffer.insert<40, 12, 52, uint64_t>(l_TGT1_ATTR_PROC_EPS_READ_CYCLES_T1 ); + l_scom_buffer.insert<12, 4, 60, uint64_t>(literal_0xF ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011121ull, l_scom_buffer)); + } + } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011122ull, l_scom_buffer )); + + if ((l_def_NVLINK_ACTIVE == literal_1)) + { + l_scom_buffer.insert<28, 12, 52, uint64_t>(l_TGT1_ATTR_PROC_EPS_READ_CYCLES_T0 ); + } + + if ((l_def_NVLINK_ACTIVE == literal_1)) + { + l_scom_buffer.insert<40, 12, 52, uint64_t>(l_TGT1_ATTR_PROC_EPS_READ_CYCLES_T1 ); } if ((l_def_NVLINK_ACTIVE == literal_1)) @@ -933,6 +1311,19 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011122ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011123ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<26, 6, 58, uint64_t>(literal_0b001000 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011123ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) { @@ -946,6 +1337,24 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011128ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011130ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<4, 2, 62, uint64_t>(literal_0b01 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<8, 8, 56, uint64_t>(literal_0x67 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011130ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) { @@ -967,7 +1376,12 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<38, 1, 63, uint64_t>(literal_0x1 ); } - if (literal_1) + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<50, 1, 63, uint64_t>(literal_0b0 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW410625 != literal_0)) { l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); } @@ -990,6 +1404,19 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011140ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011141ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW364887 != literal_0)) + { + l_scom_buffer.insert<12, 4, 60, uint64_t>(literal_0xF ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011141ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) { @@ -1023,6 +1450,19 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011142ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011143ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<26, 6, 58, uint64_t>(literal_0b001000 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011143ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) { @@ -1036,6 +1476,24 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011148ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011150ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<4, 2, 62, uint64_t>(literal_0b01 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<8, 8, 56, uint64_t>(literal_0x67 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011150ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) { @@ -1057,7 +1515,12 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<38, 1, 63, uint64_t>(literal_0x1 ); } - if (literal_1) + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<50, 1, 63, uint64_t>(literal_0b0 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW410625 != literal_0)) { l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); } @@ -1080,6 +1543,19 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011160ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011161ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW364887 != literal_0)) + { + l_scom_buffer.insert<12, 4, 60, uint64_t>(literal_0xF ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011161ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) { @@ -1113,6 +1589,19 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011162ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011163ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<26, 6, 58, uint64_t>(literal_0b001000 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011163ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) { @@ -1126,6 +1615,24 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011168ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011170ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<4, 2, 62, uint64_t>(literal_0b01 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<8, 8, 56, uint64_t>(literal_0x67 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011170ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) { @@ -1216,7 +1723,12 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<38, 1, 63, uint64_t>(literal_0x1 ); } - if (literal_1) + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<50, 1, 63, uint64_t>(literal_0b0 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW410625 != literal_0)) { l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); } @@ -1229,7 +1741,12 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<38, 1, 63, uint64_t>(literal_0x1 ); } - if (literal_1) + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<50, 1, 63, uint64_t>(literal_0b0 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW410625 != literal_0)) { l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); } @@ -1252,6 +1769,28 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011200ull, l_scom_buffer)); } + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011201ull, l_scom_buffer )); + + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW364887 != literal_0)) + { + l_scom_buffer.insert<12, 4, 60, uint64_t>(literal_0xF ); + } + } + + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW364887 != literal_0)) + { + l_scom_buffer.insert<12, 4, 60, uint64_t>(literal_0xF ); + } + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011201ull, l_scom_buffer)); + } { FAPI_TRY(fapi2::getScom( TGT0, 0x5011202ull, l_scom_buffer )); @@ -1282,6 +1821,28 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011202ull, l_scom_buffer)); } + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011203ull, l_scom_buffer )); + + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<26, 6, 58, uint64_t>(literal_0b001000 ); + } + } + + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<26, 6, 58, uint64_t>(literal_0b001000 ); + } + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011203ull, l_scom_buffer)); + } { FAPI_TRY(fapi2::getScom( TGT0, 0x5011208ull, l_scom_buffer )); @@ -1292,6 +1853,38 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011208ull, l_scom_buffer)); } + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011210ull, l_scom_buffer )); + + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<4, 2, 62, uint64_t>(literal_0b01 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<8, 8, 56, uint64_t>(literal_0x67 ); + } + } + + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<4, 2, 62, uint64_t>(literal_0b01 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<8, 8, 56, uint64_t>(literal_0x67 ); + } + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011210ull, l_scom_buffer)); + } { FAPI_TRY(fapi2::getScom( TGT0, 0x501121bull, l_scom_buffer )); @@ -1310,7 +1903,12 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<38, 1, 63, uint64_t>(literal_0x1 ); } - if (literal_1) + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<50, 1, 63, uint64_t>(literal_0b0 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW410625 != literal_0)) { l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); } @@ -1333,6 +1931,19 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011220ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011221ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW364887 != literal_0)) + { + l_scom_buffer.insert<12, 4, 60, uint64_t>(literal_0xF ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011221ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) { @@ -1366,6 +1977,19 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011222ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011223ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<26, 6, 58, uint64_t>(literal_0b001000 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011223ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) { @@ -1380,39 +2004,87 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& } } { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011230ull, l_scom_buffer )); + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) { - FAPI_TRY(fapi2::getScom( TGT0, 0x5011230ull, l_scom_buffer )); - l_scom_buffer.insert<4, 1, 63, uint64_t>(literal_0b0 ); + } + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { if ((l_def_NVLINK_ACTIVE == literal_1)) { l_scom_buffer.insert<38, 1, 63, uint64_t>(literal_0x1 ); } - if (literal_1) + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<50, 1, 63, uint64_t>(literal_0b0 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW410625 != literal_0)) { l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); } + } + + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<4, 2, 62, uint64_t>(literal_0b01 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<8, 8, 56, uint64_t>(literal_0x67 ); + } + } + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { if ((l_def_NVLINK_ACTIVE == literal_1)) { l_scom_buffer.insert<52, 1, 63, uint64_t>(literal_0x1 ); } + } + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { if ((l_def_NVLINK_ACTIVE == literal_1)) { l_scom_buffer.insert<53, 1, 63, uint64_t>(literal_0x1 ); } + } + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { if ((l_def_NVLINK_ACTIVE == literal_1)) { l_scom_buffer.insert<54, 1, 63, uint64_t>(literal_0x1 ); } + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011230ull, l_scom_buffer)); + } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011231ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW364887 != literal_0)) + { + l_scom_buffer.insert<12, 4, 60, uint64_t>(literal_0xF ); + } - FAPI_TRY(fapi2::putScom(TGT0, 0x5011230ull, l_scom_buffer)); + FAPI_TRY(fapi2::putScom(TGT0, 0x5011231ull, l_scom_buffer)); } } { @@ -1449,6 +2121,20 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011232ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011233ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<26, 6, 58, uint64_t>(literal_0b001000 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011233ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) @@ -1473,38 +2159,82 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& } } { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011240ull, l_scom_buffer )); + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) { - FAPI_TRY(fapi2::getScom( TGT0, 0x5011240ull, l_scom_buffer )); - l_scom_buffer.insert<4, 1, 63, uint64_t>(literal_0b0 ); + } + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { if ((l_def_NVLINK_ACTIVE == literal_1)) { l_scom_buffer.insert<38, 1, 63, uint64_t>(literal_0x1 ); } - if (literal_1) + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<50, 1, 63, uint64_t>(literal_0b0 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW410625 != literal_0)) { l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); } + } + + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<4, 2, 62, uint64_t>(literal_0b01 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<8, 8, 56, uint64_t>(literal_0x67 ); + } + } + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { if ((l_def_NVLINK_ACTIVE == literal_1)) { l_scom_buffer.insert<52, 1, 63, uint64_t>(literal_0x1 ); } + } + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { if ((l_def_NVLINK_ACTIVE == literal_1)) { l_scom_buffer.insert<53, 1, 63, uint64_t>(literal_0x1 ); } + } + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { if ((l_def_NVLINK_ACTIVE == literal_1)) { l_scom_buffer.insert<54, 1, 63, uint64_t>(literal_0x1 ); } + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011240ull, l_scom_buffer)); + } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011241ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW364887 != literal_0)) + { + l_scom_buffer.insert<12, 4, 60, uint64_t>(literal_0xF ); + } - FAPI_TRY(fapi2::putScom(TGT0, 0x5011240ull, l_scom_buffer)); + FAPI_TRY(fapi2::putScom(TGT0, 0x5011241ull, l_scom_buffer)); } } { @@ -1540,6 +2270,19 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011242ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011243ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<26, 6, 58, uint64_t>(literal_0b001000 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011243ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) { @@ -1559,8 +2302,26 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& { FAPI_TRY(fapi2::getScom( TGT0, 0x501124bull, l_scom_buffer )); - l_scom_buffer.insert<0, 1, 63, uint64_t>(literal_1 ); - FAPI_TRY(fapi2::putScom(TGT0, 0x501124bull, l_scom_buffer)); + l_scom_buffer.insert<0, 1, 63, uint64_t>(literal_1 ); + FAPI_TRY(fapi2::putScom(TGT0, 0x501124bull, l_scom_buffer)); + } + } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011250ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<4, 2, 62, uint64_t>(literal_0b01 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<8, 8, 56, uint64_t>(literal_0x67 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011250ull, l_scom_buffer)); } } { @@ -1585,7 +2346,12 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<38, 1, 63, uint64_t>(literal_0x1 ); } - if (literal_1) + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<50, 1, 63, uint64_t>(literal_0b0 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW410625 != literal_0)) { l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); } @@ -1598,7 +2364,12 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<38, 1, 63, uint64_t>(literal_0x1 ); } - if (literal_1) + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<50, 1, 63, uint64_t>(literal_0b0 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW410625 != literal_0)) { l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); } @@ -1621,6 +2392,28 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011260ull, l_scom_buffer)); } + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011261ull, l_scom_buffer )); + + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW364887 != literal_0)) + { + l_scom_buffer.insert<12, 4, 60, uint64_t>(literal_0xF ); + } + } + + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW364887 != literal_0)) + { + l_scom_buffer.insert<12, 4, 60, uint64_t>(literal_0xF ); + } + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011261ull, l_scom_buffer)); + } { FAPI_TRY(fapi2::getScom( TGT0, 0x5011262ull, l_scom_buffer )); @@ -1651,6 +2444,28 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011262ull, l_scom_buffer)); } + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011263ull, l_scom_buffer )); + + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<26, 6, 58, uint64_t>(literal_0b001000 ); + } + } + + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<26, 6, 58, uint64_t>(literal_0b001000 ); + } + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011263ull, l_scom_buffer)); + } { FAPI_TRY(fapi2::getScom( TGT0, 0x5011268ull, l_scom_buffer )); @@ -1661,6 +2476,38 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011268ull, l_scom_buffer)); } + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011270ull, l_scom_buffer )); + + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<4, 2, 62, uint64_t>(literal_0b01 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<8, 8, 56, uint64_t>(literal_0x67 ); + } + } + + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + { + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<4, 2, 62, uint64_t>(literal_0b01 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<8, 8, 56, uint64_t>(literal_0x67 ); + } + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011270ull, l_scom_buffer)); + } { FAPI_TRY(fapi2::getScom( TGT0, 0x501127bull, l_scom_buffer )); @@ -1756,7 +2603,12 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<38, 1, 63, uint64_t>(literal_0x1 ); } - if (literal_1) + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<50, 1, 63, uint64_t>(literal_0b0 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW410625 != literal_0)) { l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); } @@ -1791,6 +2643,20 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011290ull, l_scom_buffer)); } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011291ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW364887 != literal_0)) + { + l_scom_buffer.insert<12, 4, 60, uint64_t>(literal_0xF ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011291ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) @@ -1825,6 +2691,20 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011292ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011293ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<26, 6, 58, uint64_t>(literal_0b001000 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011293ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) @@ -1839,6 +2719,25 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011298ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x50112a0ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<4, 2, 62, uint64_t>(literal_0b01 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<8, 8, 56, uint64_t>(literal_0x67 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x50112a0ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) @@ -2038,7 +2937,12 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<38, 1, 63, uint64_t>(literal_0x1 ); } - if (literal_1) + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<50, 1, 63, uint64_t>(literal_0b0 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW410625 != literal_0)) { l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); } @@ -2061,6 +2965,20 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011400ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011401ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW364887 != literal_0)) + { + l_scom_buffer.insert<12, 4, 60, uint64_t>(literal_0xF ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011401ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) @@ -2096,11 +3014,15 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& } } { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011403ull, l_scom_buffer )); + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) { - FAPI_TRY(fapi2::getScom( TGT0, 0x5011403ull, l_scom_buffer )); - - if ((l_def_NVLINK_ACTIVE == literal_1)) + if (((l_def_NVLINK_ACTIVE == literal_1) && (l_def_ENABLE_NPU_FREEZE == literal_0))) + { + l_scom_buffer.insert<0, 64, 0, uint64_t>(literal_0x009A48180F61FFFF ); + } + else if (((l_def_NVLINK_ACTIVE == literal_1) && (l_def_ENABLE_NPU_FREEZE == literal_1))) { l_scom_buffer.insert<0, 64, 0, uint64_t>(literal_0x009A48180F01FFFF ); } @@ -2108,9 +3030,18 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& { l_scom_buffer.insert<0, 64, 0, uint64_t>(literal_0xFFFFFFFFFFFFFFFF ); } + } - FAPI_TRY(fapi2::putScom(TGT0, 0x5011403ull, l_scom_buffer)); + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<26, 6, 58, uint64_t>(literal_0b001000 ); + } } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011403ull, l_scom_buffer)); } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) @@ -2136,7 +3067,7 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& if (((l_def_NVLINK_ACTIVE == literal_1) && (l_def_ENABLE_NPU_FREEZE == literal_0))) { - l_scom_buffer.insert<0, 64, 0, uint64_t>(literal_0x8005000200500000 ); + l_scom_buffer.insert<0, 64, 0, uint64_t>(literal_0x8005000200100000 ); } else if (((l_def_NVLINK_ACTIVE == literal_1) && (l_def_ENABLE_NPU_FREEZE == literal_1))) { @@ -2160,6 +3091,25 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011408ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011410ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<4, 2, 62, uint64_t>(literal_0b01 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<8, 8, 56, uint64_t>(literal_0x67 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011410ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) @@ -2183,7 +3133,12 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<38, 1, 63, uint64_t>(literal_0x1 ); } - if (literal_1) + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<50, 1, 63, uint64_t>(literal_0b0 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW410625 != literal_0)) { l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); } @@ -2206,6 +3161,20 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011430ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011431ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW364887 != literal_0)) + { + l_scom_buffer.insert<12, 4, 60, uint64_t>(literal_0xF ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011431ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) @@ -2240,6 +3209,20 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011432ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011433ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<26, 6, 58, uint64_t>(literal_0b001000 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011433ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) @@ -2254,6 +3237,25 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011438ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011440ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<4, 2, 62, uint64_t>(literal_0b01 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<8, 8, 56, uint64_t>(literal_0x67 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011440ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) { @@ -2332,7 +3334,12 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<38, 1, 63, uint64_t>(literal_0x1 ); } - if (literal_1) + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<50, 1, 63, uint64_t>(literal_0b0 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW410625 != literal_0)) { l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); } @@ -2355,6 +3362,20 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011460ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011461ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW364887 != literal_0)) + { + l_scom_buffer.insert<12, 4, 60, uint64_t>(literal_0xF ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011461ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) @@ -2389,6 +3410,20 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011462ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011463ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<26, 6, 58, uint64_t>(literal_0b001000 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011463ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) @@ -2403,6 +3438,25 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011468ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011470ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<4, 2, 62, uint64_t>(literal_0b01 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<8, 8, 56, uint64_t>(literal_0x67 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011470ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) @@ -2426,7 +3480,12 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<38, 1, 63, uint64_t>(literal_0x1 ); } - if (literal_1) + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<50, 1, 63, uint64_t>(literal_0b0 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW410625 != literal_0)) { l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); } @@ -2449,6 +3508,20 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011490ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011491ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW364887 != literal_0)) + { + l_scom_buffer.insert<12, 4, 60, uint64_t>(literal_0xF ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011491ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) @@ -2483,6 +3556,20 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011492ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x5011493ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<26, 6, 58, uint64_t>(literal_0b001000 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x5011493ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) @@ -2497,6 +3584,25 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011498ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) + && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x50114a0ull, l_scom_buffer )); + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<4, 2, 62, uint64_t>(literal_0b01 ); + } + + if ((l_TGT0_ATTR_CHIP_EC_FEATURE_HW372457 != literal_0)) + { + l_scom_buffer.insert<8, 8, 56, uint64_t>(literal_0x67 ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x50114a0ull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x22)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) ) @@ -2696,7 +3802,11 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& { FAPI_TRY(fapi2::getScom( TGT0, 0x5013c03ull, l_scom_buffer )); - if ((l_def_NVLINK_ACTIVE == literal_1)) + if (((l_def_NVLINK_ACTIVE == literal_1) && (l_def_ENABLE_NPU_FREEZE == literal_0))) + { + l_scom_buffer.insert<0, 64, 0, uint64_t>(literal_0x009A48180F61FFFF ); + } + else if (((l_def_NVLINK_ACTIVE == literal_1) && (l_def_ENABLE_NPU_FREEZE == literal_1))) { l_scom_buffer.insert<0, 64, 0, uint64_t>(literal_0x009A48180F01FFFF ); } @@ -2734,7 +3844,7 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& if (((l_def_NVLINK_ACTIVE == literal_1) && (l_def_ENABLE_NPU_FREEZE == literal_0))) { - l_scom_buffer.insert<0, 64, 0, uint64_t>(literal_0x8005000200500000 ); + l_scom_buffer.insert<0, 64, 0, uint64_t>(literal_0x8005000200100000 ); } else if (((l_def_NVLINK_ACTIVE == literal_1) && (l_def_ENABLE_NPU_FREEZE == literal_1))) { -- cgit v1.2.1