From 9869ca82dbbc3864add480051bbcdf6f7de60b6f Mon Sep 17 00:00:00 2001 From: Ben Gass Date: Fri, 24 May 2019 12:40:28 -0400 Subject: Update npu initfiles for Axone Change-Id: Ie33a3b4dc17f4c4ebd49b6799b9032a2b3aaab09 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/77847 Tested-by: FSP CI Jenkins Tested-by: Jenkins Server Tested-by: PPE CI Tested-by: Hostboot CI Tested-by: HWSV CI Reviewed-by: NICHOLAS J. OLLERICH Reviewed-by: Thi N. Tran Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/77890 Tested-by: Jenkins OP Build CI Tested-by: Jenkins OP HW Reviewed-by: Daniel M. Crowell --- .../p9/procedures/hwp/initfiles/p9_npu_scom.C | 231 +++++++++++++++++++-- .../xml/attribute_info/chip_ec_attributes.xml | 16 ++ 2 files changed, 228 insertions(+), 19 deletions(-) (limited to 'src/import') 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 e36053acd..b8ee5a22d 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 @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2016,2018 */ +/* Contributors Listed Below - COPYRIGHT 2016,2019 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -44,6 +44,7 @@ constexpr uint64_t literal_0x200 = 0x200; constexpr uint64_t literal_0x300 = 0x300; constexpr uint64_t literal_0xFFF = 0xFFF; constexpr uint64_t literal_0x8 = 0x8; +constexpr uint64_t literal_0x7E = 0x7E; constexpr uint64_t literal_0x0 = 0x0; constexpr uint64_t literal_0xE000000000000000 = 0xE000000000000000; constexpr uint64_t literal_0x0000740000000000 = 0x0000740000000000; @@ -70,7 +71,6 @@ constexpr uint64_t literal_0x66 = 0x66; constexpr uint64_t literal_0b01 = 0b01; constexpr uint64_t literal_0x67 = 0x67; constexpr uint64_t literal_0x4B = 0x4B; -constexpr uint64_t literal_0x7E = 0x7E; constexpr uint64_t literal_0x009A48180F63FFFF = 0x009A48180F63FFFF; constexpr uint64_t literal_0x009A48180F03FFFF = 0x009A48180F03FFFF; constexpr uint64_t literal_0x8005000200100000 = 0x8005000200100000; @@ -131,6 +131,16 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<3, 1, 63, uint64_t>(literal_0b0 ); + if ((l_def_NVLINK_ACTIVE == literal_1)) + { + l_scom_buffer.insert<26, 1, 63, uint64_t>(literal_0x1 ); + } + + if (literal_1) + { + l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); + } + if ((l_def_NVLINK_ACTIVE == literal_1)) { l_scom_buffer.insert<32, 1, 63, uint64_t>(literal_0x1 ); @@ -216,6 +226,16 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<3, 1, 63, uint64_t>(literal_0b0 ); + if ((l_def_NVLINK_ACTIVE == literal_1)) + { + l_scom_buffer.insert<26, 1, 63, uint64_t>(literal_0x1 ); + } + + if (literal_1) + { + l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); + } + if ((l_def_NVLINK_ACTIVE == literal_1)) { l_scom_buffer.insert<32, 1, 63, uint64_t>(literal_0x1 ); @@ -301,6 +321,16 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<3, 1, 63, uint64_t>(literal_0b0 ); + if ((l_def_NVLINK_ACTIVE == literal_1)) + { + l_scom_buffer.insert<26, 1, 63, uint64_t>(literal_0x1 ); + } + + if (literal_1) + { + l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); + } + if ((l_def_NVLINK_ACTIVE == literal_1)) { l_scom_buffer.insert<32, 1, 63, uint64_t>(literal_0x1 ); @@ -386,6 +416,16 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<3, 1, 63, uint64_t>(literal_0b0 ); + if ((l_def_NVLINK_ACTIVE == literal_1)) + { + l_scom_buffer.insert<26, 1, 63, uint64_t>(literal_0x1 ); + } + + if (literal_1) + { + l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); + } + if ((l_def_NVLINK_ACTIVE == literal_1)) { l_scom_buffer.insert<32, 1, 63, uint64_t>(literal_0x1 ); @@ -555,6 +595,32 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x3011da7ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x7) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x3011e2aull, l_scom_buffer )); + + if ((l_def_NVLINK_ACTIVE == literal_1)) + { + l_scom_buffer.insert<32, 8, 56, uint64_t>(literal_0x7E ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x3011e2aull, l_scom_buffer)); + } + } + { + if (((l_chip_id == 0x7) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x3011e5aull, l_scom_buffer )); + + if ((l_def_NVLINK_ACTIVE == literal_1)) + { + l_scom_buffer.insert<32, 8, 56, uint64_t>(literal_0x7E ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x3011e5aull, l_scom_buffer)); + } + } { if (((l_chip_id == 0x7) && (l_chip_ec == 0x10)) ) { @@ -874,6 +940,19 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<3, 1, 63, uint64_t>(literal_0b0 ); } + if (((l_chip_id == 0x7) && (l_chip_ec == 0x10)) ) + { + if ((l_def_NVLINK_ACTIVE == literal_1)) + { + l_scom_buffer.insert<26, 1, 63, uint64_t>(literal_0x1 ); + } + + if (literal_1) + { + l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); + } + } + if (((l_chip_id == 0x7) && (l_chip_ec == 0x10)) ) { if ((l_def_NVLINK_ACTIVE == literal_1)) @@ -1858,6 +1937,19 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<3, 1, 63, uint64_t>(literal_0b0 ); } + if (((l_chip_id == 0x7) && (l_chip_ec == 0x10)) ) + { + if ((l_def_NVLINK_ACTIVE == literal_1)) + { + l_scom_buffer.insert<26, 1, 63, uint64_t>(literal_0x1 ); + } + + if (literal_1) + { + l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); + } + } + if (((l_chip_id == 0x7) && (l_chip_ec == 0x10)) ) { if ((l_def_NVLINK_ACTIVE == literal_1)) @@ -2586,6 +2678,19 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<3, 1, 63, uint64_t>(literal_0b0 ); } + if (((l_chip_id == 0x7) && (l_chip_ec == 0x10)) ) + { + if ((l_def_NVLINK_ACTIVE == literal_1)) + { + l_scom_buffer.insert<26, 1, 63, uint64_t>(literal_0x1 ); + } + + if (literal_1) + { + l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); + } + } + if (((l_chip_id == 0x7) && (l_chip_ec == 0x10)) ) { if ((l_def_NVLINK_ACTIVE == literal_1)) @@ -2951,6 +3056,19 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<3, 1, 63, uint64_t>(literal_0b0 ); } + if (((l_chip_id == 0x7) && (l_chip_ec == 0x10)) ) + { + if ((l_def_NVLINK_ACTIVE == literal_1)) + { + l_scom_buffer.insert<26, 1, 63, uint64_t>(literal_0x1 ); + } + + if (literal_1) + { + l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); + } + } + if (((l_chip_id == 0x7) && (l_chip_ec == 0x10)) ) { if ((l_def_NVLINK_ACTIVE == literal_1)) @@ -5526,22 +5644,22 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& { FAPI_TRY(fapi2::getScom( TGT0, 0x501138aull, l_scom_buffer )); - if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) + 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 == 0x5) && (l_chip_ec == 0x23)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) + || ((l_chip_id == 0x6) && (l_chip_ec == 0x11)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x12)) || ((l_chip_id == 0x6) + && (l_chip_ec == 0x13)) ) { if ((l_def_NVLINK_ACTIVE == literal_1)) { - l_scom_buffer.insert<0, 64, 0, uint64_t>(literal_0x7F60B04500AC0000 ); + l_scom_buffer.insert<32, 8, 56, uint64_t>(literal_0x7E ); } } - 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 == 0x5) && (l_chip_ec == 0x23)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) - || ((l_chip_id == 0x6) && (l_chip_ec == 0x11)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x12)) || ((l_chip_id == 0x6) - && (l_chip_ec == 0x13)) ) + if (((l_chip_id == 0x5) && (l_chip_ec == 0x10)) ) { if ((l_def_NVLINK_ACTIVE == literal_1)) { - l_scom_buffer.insert<32, 8, 56, uint64_t>(literal_0x7E ); + l_scom_buffer.insert<0, 64, 0, uint64_t>(literal_0x7F60B04500AC0000 ); } } @@ -5666,6 +5784,19 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<3, 1, 63, uint64_t>(literal_0b0 ); } + if (((l_chip_id == 0x7) && (l_chip_ec == 0x10)) ) + { + if ((l_def_NVLINK_ACTIVE == literal_1)) + { + l_scom_buffer.insert<26, 1, 63, uint64_t>(literal_0x1 ); + } + + if (literal_1) + { + l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); + } + } + if (((l_chip_id == 0x7) && (l_chip_ec == 0x10)) ) { if ((l_def_NVLINK_ACTIVE == literal_1)) @@ -6374,6 +6505,19 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<3, 1, 63, uint64_t>(literal_0b0 ); } + if (((l_chip_id == 0x7) && (l_chip_ec == 0x10)) ) + { + if ((l_def_NVLINK_ACTIVE == literal_1)) + { + l_scom_buffer.insert<26, 1, 63, uint64_t>(literal_0x1 ); + } + + if (literal_1) + { + l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); + } + } + if (((l_chip_id == 0x7) && (l_chip_ec == 0x10)) ) { if ((l_def_NVLINK_ACTIVE == literal_1)) @@ -6966,6 +7110,19 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<3, 1, 63, uint64_t>(literal_0b0 ); } + if (((l_chip_id == 0x7) && (l_chip_ec == 0x10)) ) + { + if ((l_def_NVLINK_ACTIVE == literal_1)) + { + l_scom_buffer.insert<26, 1, 63, uint64_t>(literal_0x1 ); + } + + if (literal_1) + { + l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); + } + } + if (((l_chip_id == 0x7) && (l_chip_ec == 0x10)) ) { if ((l_def_NVLINK_ACTIVE == literal_1)) @@ -7088,6 +7245,16 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& l_scom_buffer.insert<3, 1, 63, uint64_t>(literal_0b0 ); + if ((l_def_NVLINK_ACTIVE == literal_1)) + { + l_scom_buffer.insert<26, 1, 63, uint64_t>(literal_0x1 ); + } + + if (literal_1) + { + l_scom_buffer.insert<6, 1, 63, uint64_t>(literal_0x1 ); + } + if ((l_def_NVLINK_ACTIVE == literal_1)) { l_scom_buffer.insert<32, 1, 63, uint64_t>(literal_0x1 ); @@ -7230,11 +7397,14 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& { FAPI_TRY(fapi2::getScom( TGT0, 0x501158aull, l_scom_buffer )); - if (((l_chip_id == 0x7) && (l_chip_ec == 0x10)) ) + 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 == 0x5) && (l_chip_ec == 0x23)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) + || ((l_chip_id == 0x6) && (l_chip_ec == 0x11)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x12)) || ((l_chip_id == 0x6) + && (l_chip_ec == 0x13)) ) { if ((l_def_NVLINK_ACTIVE == literal_1)) { - l_scom_buffer.insert<1, 3, 61, uint64_t>(literal_0x4 ); + l_scom_buffer.insert<32, 8, 56, uint64_t>(literal_0x7E ); } } @@ -7242,7 +7412,7 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& { if ((l_def_NVLINK_ACTIVE == literal_1)) { - l_scom_buffer.insert<4, 10, 54, uint64_t>(literal_0x100 ); + l_scom_buffer.insert<1, 3, 61, uint64_t>(literal_0x4 ); } } @@ -7250,7 +7420,7 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& { if ((l_def_NVLINK_ACTIVE == literal_1)) { - l_scom_buffer.insert<14, 10, 54, uint64_t>(literal_0x200 ); + l_scom_buffer.insert<4, 10, 54, uint64_t>(literal_0x100 ); } } @@ -7258,18 +7428,15 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& { if ((l_def_NVLINK_ACTIVE == literal_1)) { - l_scom_buffer.insert<24, 10, 54, uint64_t>(literal_0x300 ); + l_scom_buffer.insert<14, 10, 54, uint64_t>(literal_0x200 ); } } - 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 == 0x5) && (l_chip_ec == 0x23)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) - || ((l_chip_id == 0x6) && (l_chip_ec == 0x11)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x12)) || ((l_chip_id == 0x6) - && (l_chip_ec == 0x13)) ) + if (((l_chip_id == 0x7) && (l_chip_ec == 0x10)) ) { if ((l_def_NVLINK_ACTIVE == literal_1)) { - l_scom_buffer.insert<32, 8, 56, uint64_t>(literal_0x7E ); + l_scom_buffer.insert<24, 10, 54, uint64_t>(literal_0x300 ); } } @@ -7299,6 +7466,19 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x50115a7ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x7) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x501162aull, l_scom_buffer )); + + if ((l_def_NVLINK_ACTIVE == literal_1)) + { + l_scom_buffer.insert<32, 8, 56, uint64_t>(literal_0x7E ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x501162aull, 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 == 0x5) && (l_chip_ec == 0x23)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) @@ -7320,6 +7500,19 @@ fapi2::ReturnCode p9_npu_scom(const fapi2::Target& FAPI_TRY(fapi2::putScom(TGT0, 0x5011645ull, l_scom_buffer)); } } + { + if (((l_chip_id == 0x7) && (l_chip_ec == 0x10)) ) + { + FAPI_TRY(fapi2::getScom( TGT0, 0x501165aull, l_scom_buffer )); + + if ((l_def_NVLINK_ACTIVE == literal_1)) + { + l_scom_buffer.insert<32, 8, 56, uint64_t>(literal_0x7E ); + } + + FAPI_TRY(fapi2::putScom(TGT0, 0x501165aull, 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 == 0x5) && (l_chip_ec == 0x23)) || ((l_chip_id == 0x6) && (l_chip_ec == 0x10)) diff --git a/src/import/chips/p9/procedures/xml/attribute_info/chip_ec_attributes.xml b/src/import/chips/p9/procedures/xml/attribute_info/chip_ec_attributes.xml index 50f2c1a36..181bfee4a 100644 --- a/src/import/chips/p9/procedures/xml/attribute_info/chip_ec_attributes.xml +++ b/src/import/chips/p9/procedures/xml/attribute_info/chip_ec_attributes.xml @@ -8884,4 +8884,20 @@ + + ATTR_CHIP_EC_FEATURE_HW476692 + TARGET_TYPE_PROC_CHIP + + HW476692 + + + + ENUM_ATTR_NAME_AXONE + + 0x10 + GREATER_THAN_OR_EQUAL + + + + -- cgit v1.2.3