diff options
Diffstat (limited to 'src/usr')
-rw-r--r-- | src/usr/fapi2/test/fapi2GetChildrenTest.H | 104 | ||||
-rw-r--r-- | src/usr/fapi2/test/fapi2TestUtils.H | 3 | ||||
-rw-r--r-- | src/usr/hwas/common/pgLogic.C | 22 | ||||
-rw-r--r-- | src/usr/hwas/hwasPlat.C | 5 | ||||
-rw-r--r-- | src/usr/hwas/test/hwas1test.H | 8 | ||||
-rw-r--r-- | src/usr/isteps/istep15/host_start_stop_engine.C | 2 | ||||
-rw-r--r-- | src/usr/targeting/common/Targets.pm | 2 | ||||
-rw-r--r-- | src/usr/targeting/common/xmltohb/simics_AXONE.system.xml | 471 | ||||
-rw-r--r-- | src/usr/targeting/common/xmltohb/simics_CUMULUS.system.xml | 132 | ||||
-rw-r--r-- | src/usr/targeting/common/xmltohb/simics_CUMULUS_CDIMM.system.xml | 128 | ||||
-rw-r--r-- | src/usr/targeting/common/xmltohb/target_types.xml | 21 |
11 files changed, 562 insertions, 336 deletions
diff --git a/src/usr/fapi2/test/fapi2GetChildrenTest.H b/src/usr/fapi2/test/fapi2GetChildrenTest.H index 2617648aa..9eb595dcd 100644 --- a/src/usr/fapi2/test/fapi2GetChildrenTest.H +++ b/src/usr/fapi2/test/fapi2GetChildrenTest.H @@ -66,7 +66,6 @@ void test_fapi2GetChildren() uint32_t l_targetHuid = 0xFFFFFFFF; uint32_t l_actualSize = 0; uint32_t l_expectedSize = 0; - errlHndl_t l_err = nullptr; int numTests = 0; int numFails = 0; @@ -611,17 +610,25 @@ void test_fapi2GetChildren() TARGET_STATE_PRESENT).size(); } }, // CAPP pervasive has 1 CAPP child - {PERV_CAPP_CUMULUS_CHILDREN, + {PERV_CAPP_AXONE_CHILDREN, [](TARGETING::ATTR_CHIP_UNIT_type i_unit) { return ((i_unit == CAPP0_RANGE) || (i_unit == CAPP1_RANGE));}, [](Target<fapi2::TARGET_TYPE_PERV>& i_perv) { return i_perv.getChildren<fapi2::TARGET_TYPE_CAPP>( TARGET_STATE_PRESENT).size(); } }, - // OBUS pervasive has 3 OBUS BRICK children - {PERV_OBUS_BRICK_CHILDREN, + // OBUS0,3 pervasive has 2 OBUS BRICK children + {PERV_OBUS_BRICK03_AXONE_CHILDREN, [](TARGETING::ATTR_CHIP_UNIT_type i_unit) - { return ((i_unit >= OBUS_LOW) && (i_unit <= OBUS_HIGH)); }, + { return ((i_unit == OBUS_LOW+0) || (i_unit == OBUS_LOW+3)); }, + [](Target<fapi2::TARGET_TYPE_PERV>& i_perv) + { return i_perv.getChildren<fapi2::TARGET_TYPE_OBUS_BRICK>( + TARGET_STATE_PRESENT).size(); } }, + + // OBUS1,2 pervasive has 1 OBUS BRICK child + {PERV_OBUS_BRICK12_AXONE_CHILDREN, + [](TARGETING::ATTR_CHIP_UNIT_type i_unit) + { return ((i_unit == OBUS_LOW+1) || (i_unit == OBUS_LOW+2)); }, [](Target<fapi2::TARGET_TYPE_PERV>& i_perv) { return i_perv.getChildren<fapi2::TARGET_TYPE_OBUS_BRICK>( TARGET_STATE_PRESENT).size(); } }, @@ -750,9 +757,9 @@ void test_fapi2GetChildren() if(candidateTarget == nullptr) { - TS_FAIL("test_fapi2GetChildren:: candidateTarget not found"); + TS_FAIL("test_fapi2GetChildren:: candidateTarget not found - test %d", i); numFails++; - break; + continue; } l_targetHuid = TARGETING::get_huid(candidateTarget); @@ -764,9 +771,9 @@ void test_fapi2GetChildren() if(l_actualSize != l_expectedSize) { - TS_FAIL("test_fapi2GetChildren:: children of pervasive mismatch"); + TS_FAIL("test_fapi2GetChildren:: children of pervasive mismatch for %.8X (exp=%d,act=%d)", + l_targetHuid,l_expectedSize,l_actualSize); numFails++; - break; } } @@ -780,31 +787,6 @@ void test_fapi2GetChildren() }while(0); - if(l_actualSize != l_expectedSize) - { - /*@ - * @errortype ERRORLOG::ERRL_SEV_UNRECOVERABLE - * @moduleid fapi2::MOD_FAPI2_PLAT_GET_CHILDREN_TEST - * @reasoncode fapi2::RC_INVALID_CHILD_COUNT - * @userdata1[0:31] Expected Child Count - * @userdata1[32:63] Actual Child Count - * @userdata2 Parent HUID - * @devdesc Invalid amount of child cores found - * on a proc - */ - l_err = new ERRORLOG::ErrlEntry(ERRORLOG::ERRL_SEV_UNRECOVERABLE, - fapi2::MOD_FAPI2_PLAT_GET_CHILDREN_TEST, - fapi2::RC_INVALID_CHILD_COUNT, - TWO_UINT32_TO_UINT64( - TO_UINT32( - l_expectedSize), - TO_UINT32( - l_actualSize)), - l_targetHuid, - true/*SW Error*/); - errlCommit(l_err,HWPF_COMP_ID); - TS_FAIL("test_fapi2GetChildren Fail, for HUID: %d , expected %d children , found %d ", l_targetHuid,l_expectedSize,l_actualSize ); - } FAPI_INF("fapi2GetChildrenTest:: Test Complete. %d/%d fails", numFails , numTests); } @@ -818,7 +800,6 @@ void test_fapi2GetChildrenFilter() uint32_t l_targetHuid = 0xFFFFFFFF; uint32_t l_actualSize = 0; uint32_t l_expectedSize = 0; - errlHndl_t l_err = nullptr; TARGETING::Target * l_proc = nullptr; TARGETING::TargetHandleList l_chipList; do @@ -835,7 +816,7 @@ void test_fapi2GetChildrenFilter() } else { - TS_FAIL("test_fapi2GetChildren Fail: could not find any proc, skipping tests"); + TS_FAIL("test_fapi2GetChildrenFilter Fail: could not find any proc, skipping tests"); numFails++; break; } @@ -876,7 +857,7 @@ void test_fapi2GetChildrenFilter() if(l_actualSize != l_expectedSize) { numFails++; - break; + TS_FAIL("test_fapi2GetChildrenFilter Fail on PERV/ALL_CORES, for HUID: 0x%.8X , expected %d children , found %d ", l_targetHuid,l_expectedSize,l_actualSize ); } // PERV - TARGET_FILTER_CORE1 @@ -890,7 +871,7 @@ void test_fapi2GetChildrenFilter() if(l_actualSize != l_expectedSize) { numFails++; - break; + TS_FAIL("test_fapi2GetChildrenFilter Fail on PERV/CORE1, for HUID: 0x%.8X , expected %d children , found %d ", l_targetHuid,l_expectedSize,l_actualSize ); } if (isHwValid(l_proc, MY_MC)) @@ -906,13 +887,26 @@ void test_fapi2GetChildrenFilter() if(l_actualSize != l_expectedSize) { numFails++; - break; + TS_FAIL("test_fapi2GetChildrenFilter Fail on PERV/ALL_MC, for HUID: 0x%.8X , expected %d children , found %d ", l_targetHuid,l_expectedSize,l_actualSize ); } } // PERV - SYNC_MODE_ALL_IO_EXCEPT_NEST - // NOTE: 2 of 4 OBUS are Cumulus only, so expect 8 instead of 10 returned - l_expectedSize = 8; + l_expectedSize = 0; + TARGETING::ATTR_MODEL_type l_model = l_proc->getAttr<TARGETING::ATTR_MODEL>(); + if (l_model == TARGETING::MODEL_NIMBUS) + { + // NOTE: 2 of 4 OBUS are Cumulus only, so expect 8 instead of 10 returned + l_expectedSize = 8; + } + else if (l_model == TARGETING::MODEL_CUMULUS) + { + l_expectedSize = 10; + } + else if (l_model == TARGETING::MODEL_AXONE) + { + l_expectedSize = 10; + } l_childPERVs = fapi2_procTarget.getChildren<fapi2::TARGET_TYPE_PERV>( TARGET_FILTER_SYNC_MODE_ALL_IO_EXCEPT_NEST, TARGET_STATE_PRESENT); @@ -922,37 +916,11 @@ void test_fapi2GetChildrenFilter() if(l_actualSize != l_expectedSize) { numFails++; - break; + TS_FAIL("test_fapi2GetChildrenFilter Fail on PERV/ALL_IO_EXCEPT_NEST, for HUID: 0x%.8X , expected %d children , found %d ", l_targetHuid,l_expectedSize,l_actualSize ); } }while(0); - if(l_actualSize != l_expectedSize) - { - /*@ - * @errortype ERRORLOG::ERRL_SEV_UNRECOVERABLE - * @moduleid fapi2::MOD_FAPI2_PLAT_GET_CHILDREN_FILTER_TEST - * @reasoncode fapi2::RC_INVALID_CHILD_COUNT - * @userdata1[0:31] Expected Child Count - * @userdata1[32:63] Actual Child Count - * @userdata2 Parent HUID - * @devdesc Invalid amount of child cores found - * on a proc - */ - l_err = new ERRORLOG::ErrlEntry(ERRORLOG::ERRL_SEV_UNRECOVERABLE, - fapi2::MOD_FAPI2_PLAT_GET_CHILDREN_FILTER_TEST, - fapi2::RC_INVALID_CHILD_COUNT, - TWO_UINT32_TO_UINT64( - TO_UINT32( - l_expectedSize), - TO_UINT32( - l_actualSize)), - l_targetHuid, - true/*SW Error*/); - errlCommit(l_err,HWPF_COMP_ID); - TS_FAIL("test_fapi2GetChildrenFilter Fail, for HUID: 0x%X , expected %d children , found %d ", l_targetHuid,l_expectedSize,l_actualSize ); - } - FAPI_INF("test_fapi2GetChildrenFilter: Test Complete. %d/%d fails", numFails , numTests); } diff --git a/src/usr/fapi2/test/fapi2TestUtils.H b/src/usr/fapi2/test/fapi2TestUtils.H index 7b724a094..011538c63 100644 --- a/src/usr/fapi2/test/fapi2TestUtils.H +++ b/src/usr/fapi2/test/fapi2TestUtils.H @@ -225,7 +225,10 @@ enum PERVASIVE_CHILDREN { PERV_OBUS_CHILDREN = 1, PERV_CAPP_NIMBUS_CHILDREN = 1, PERV_CAPP_CUMULUS_CHILDREN = 2, + PERV_CAPP_AXONE_CHILDREN = 1, PERV_OBUS_BRICK_CHILDREN = 3, + PERV_OBUS_BRICK03_AXONE_CHILDREN = 2, + PERV_OBUS_BRICK12_AXONE_CHILDREN = 1, PERV_MCBIST_CHILDREN = 1, PERV_MCS_CHILDREN = 2, PERV_MCA_CHILDREN = 4, diff --git a/src/usr/hwas/common/pgLogic.C b/src/usr/hwas/common/pgLogic.C index edcb41b9a..cd0aa9b19 100644 --- a/src/usr/hwas/common/pgLogic.C +++ b/src/usr/hwas/common/pgLogic.C @@ -31,6 +31,7 @@ #include <hwas/common/hwasError.H> using namespace HWAS::COMMON; +using namespace HWAS; //needed for trace macros namespace PARTIAL_GOOD { @@ -258,6 +259,9 @@ namespace PARTIAL_GOOD if (rulesIterator == pgRules_map.end()) { + HWAS_ERR( "No rules found for type %d", + i_target->getAttr<TARGETING::ATTR_TYPE>() ); + // Target is missing from the table. This is an error, so break // out of this section of code and return the appropriate error // below. @@ -345,6 +349,12 @@ namespace PARTIAL_GOOD // the following error if applicable. if ((l_errl == nullptr) && (o_targetPgLogic.size() == 0)) { + HWAS_ERR( "No rule found for Target %.8X of type %d", + get_huid(i_target), + i_target->getAttr<TARGETING::ATTR_TYPE>() ); + uint64_t userdata1 = static_cast<uint64_t>(i_target->getAttr<TARGETING::ATTR_TYPE>()); + userdata1 <<= 32; + userdata1 |= static_cast<uint64_t>(get_huid(i_target)); /*@ * @errortype * @severity ERRL_SEV_UNRECOVERABLE @@ -359,15 +369,16 @@ namespace PARTIAL_GOOD * * @custdesc A problem occured during IPL of the system: * Internal Firmware Error - * @userdata1 target type attribute - * @userdata2 HUID of the target + * @userdata1[00:31] target type attribute + * @userdata1[32:63] HUID of the target + * @userdata2 Number of rules for this target type */ l_errl = hwasError( ERRL_SEV_UNRECOVERABLE, HWAS::MOD_FIND_RULES_FOR_TARGET, HWAS::RC_NO_PG_LOGIC, - i_target->getAttr<TARGETING::ATTR_TYPE>(), - get_huid(i_target)); + userdata1, + pgRules_map.size()); } return l_errl; @@ -482,8 +493,7 @@ namespace PARTIAL_GOOD != TARGETING::OPTICS_CONFIG_MODE_SMP) && ((i_pgData[N3_PG_INDEX] & NPU_R1_PG_MASK) != ALL_OFF_AG_MASK)) { - TRACFCOMP(HWAS::g_trac_imp_hwas, - "pDesc 0x%.8X - OBUS_BRICK pgData[%d]: " + HWAS_INF( "pDesc 0x%.8X - OBUS_BRICK pgData[%d]: " "actual 0x%04X, expected 0x%04X - bad", i_desc->getAttr<TARGETING::ATTR_HUID>(), N3_PG_INDEX, diff --git a/src/usr/hwas/hwasPlat.C b/src/usr/hwas/hwasPlat.C index 1fc6f939d..0fd519cdb 100644 --- a/src/usr/hwas/hwasPlat.C +++ b/src/usr/hwas/hwasPlat.C @@ -1202,7 +1202,10 @@ errlHndl_t platPresenceDetect(TargetHandleList &io_targets) DEVICE_CACHE_EEPROM_ADDRESS(present, EEPROM::VPD_PRIMARY)); errl = deviceRead(pTarget, &present, presentSize, DEVICE_CACHE_EEPROM_ADDRESS(present, EEPROM::VPD_PRIMARY)); - errlCommit(errl, HWAS_COMP_ID); + if( errl ) + { + errlCommit(errl, HWAS_COMP_ID); + } // errl is now null, move on to next target } #endif diff --git a/src/usr/hwas/test/hwas1test.H b/src/usr/hwas/test/hwas1test.H index 759ad7ad7..306fea006 100644 --- a/src/usr/hwas/test/hwas1test.H +++ b/src/usr/hwas/test/hwas1test.H @@ -2354,6 +2354,7 @@ public: break; case TYPE_OBUS_BRICK: { +#ifndef CONFIG_AXONE //@todo-RTC:208518 - Add Axone OBUS_BRICK rules //Two cases here: //OBUS==SMP --> Target should be present regardless // of PG @@ -2385,7 +2386,7 @@ public: TS_FAIL("testHWAS" "checkPartialGoodForDescendants> " "functional = 0x%x, should be true " - "because" + "because " "OBUS_BRICK is SMP: PG = 0x%04x. " "pDesc HUID 0x%.8x", checkPartialGoodForDescendants( @@ -2410,7 +2411,7 @@ public: TS_FAIL("testHWAS" "checkPartialGoodForDescendants> " "functional = 0x%x, should be " - "false because" + "false because " "OBUS_BRICK is NVLINK: PG = " "0x%04x. " "pDesc HUID 0x%.8x", @@ -2426,10 +2427,12 @@ public: pgData[VPD_CP00_PG_N3_INDEX] = (uint16_t)VPD_CP00_PG_N3_GOOD; +#endif break; } case TYPE_NPU: +#ifndef CONFIG_AXONE //@todo-RTC:208518 - Add Axone NPU rules TS_INFO( "testHWAScheckPartialGoodForDescendants: " "NPU is not functional"); pgData[VPD_CP00_PG_N3_INDEX] |= @@ -2449,6 +2452,7 @@ public: pgData[VPD_CP00_PG_N3_INDEX] = (uint16_t)VPD_CP00_PG_N3_GOOD; +#endif break; case TYPE_PERV: diff --git a/src/usr/isteps/istep15/host_start_stop_engine.C b/src/usr/isteps/istep15/host_start_stop_engine.C index a3b2e21f4..b89804fe3 100644 --- a/src/usr/isteps/istep15/host_start_stop_engine.C +++ b/src/usr/isteps/istep15/host_start_stop_engine.C @@ -55,7 +55,7 @@ void* host_start_stop_engine (void *io_pArgs) { TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, "call_host_start_stop_engine entry" ); ISTEP_ERROR::IStepError l_StepError; - errlHndl_t l_errl = NULL; + errlHndl_t l_errl __attribute__((unused)) = NULL; // Cast to void just to get around unused var warning if #ifdef's dont work // out to actually use the l_errl variable diff --git a/src/usr/targeting/common/Targets.pm b/src/usr/targeting/common/Targets.pm index 2c60ae3eb..d903a8f5c 100644 --- a/src/usr/targeting/common/Targets.pm +++ b/src/usr/targeting/common/Targets.pm @@ -1328,6 +1328,7 @@ sub setCommonAttrForChiplet } elsif ($tgt_type eq "OBUS_BRICK") { + #todo-RTC:209409-Handle Axone layout $unit_pos = $pos%3; } elsif ($tgt_type eq "SMPGROUP") @@ -1528,6 +1529,7 @@ sub getPervasiveForUnit my $offset = 0; for my $obrick (0..$maxInstance{"OBUS_BRICK"}-1) { + #todo-RTC:209409-Handle Axone layout $offset += (($obrick%3 == 0) && ($obrick != 0)) ? 1 : 0; $unitToPervasive{"OBUS_BRICK$obrick"} = PERVASIVE_PARENT_OBUS_OFFSET + $offset; diff --git a/src/usr/targeting/common/xmltohb/simics_AXONE.system.xml b/src/usr/targeting/common/xmltohb/simics_AXONE.system.xml index 011d02371..51db0299c 100644 --- a/src/usr/targeting/common/xmltohb/simics_AXONE.system.xml +++ b/src/usr/targeting/common/xmltohb/simics_AXONE.system.xml @@ -53,13 +53,19 @@ * PEC 2 has 3 PHBs * Each Axone has 1 XBUS chiplet (1 XBUS Chiplet translates to multiple xbus units) * Each Axone has 4 OBUS (OB0 to OB3) - * Each OBUS has 3 OBUS_BRICK + * Each OBUS has up to 2 OBUS_BRICKs + * OBUS0 has 2 OBUS_BRICKs + * OBUS1 has 1 OBUS_BRICK + * OBUS2 has 1 OBUS_BRICK + * OBUS3 has 2 OBUS_BRICKs + * Each Axone has 3 NPU units, each associated with 2 OBUS_BRICKs + * NPU0 is associated with OBUS0, used for NVLINK ( 4 x4 links). + * NPU1 is associated with OBUS1/2, used for OpenCAPI ( 1 x8 link). + * NPU2 is associated with OBUS3, used for NVLINK ( 4 x4 links). * Each Axone has 21 PPE units (including the SBE): * 1 SBE, 1 Powerbus/Fabric PPE, 4 GPEs, 12 CMEs, and 3 IO PPEs. * Each chiplet existing in an Axone has 1 equivalent PERV unit - * Each Axone has 2 CAPP units ##TBD## has 2 sys0node0proc0capp0 units - * with same target ID...input MRW has capp0 and capp1...something - * wrong in the processMrw.pl (same observed for Witherspoon) + * Each Axone has 1 CAPP unit * Each Axone has 1 OCC unit - p9Proc0(axone chip) @@ -3487,11 +3493,11 @@ </targetInstance> <targetInstance> - <id>sys0node0proc0obus0obus_brick2</id> + <id>sys0node0proc0obus1obus_brick0</id> <type>unit-obus-brick-axone</type> <attribute> <id>AFFINITY_PATH</id> - <default>affinity:sys-0/node-0/proc-0/obus-0/obus_brick-2</default> + <default>affinity:sys-0/node-0/proc-0/obus-1/obus_brick-0</default> </attribute> <attribute> <id>CHIP_UNIT</id> @@ -3499,7 +3505,7 @@ </attribute> <attribute> <id>CHIPLET_ID</id> - <default>0x09</default> + <default>0x0A</default> </attribute> <attribute> <id>FAPI_NAME</id> @@ -3519,24 +3525,24 @@ </attribute> <attribute> <id>PARENT_PERVASIVE</id> - <default>physical:sys-0/node-0/proc-0/perv-9</default> + <default>physical:sys-0/node-0/proc-0/perv-10</default> </attribute> <attribute> <id>PHYS_PATH</id> - <default>physical:sys-0/node-0/proc-0/obus-0/obus_brick-2</default> + <default>physical:sys-0/node-0/proc-0/obus-1/obus_brick-0</default> </attribute> <attribute> <id>REL_POS</id> - <default>2</default> + <default>0</default> </attribute> </targetInstance> <targetInstance> - <id>sys0node0proc0obus1obus_brick0</id> + <id>sys0node0proc0obus2obus_brick0</id> <type>unit-obus-brick-axone</type> <attribute> <id>AFFINITY_PATH</id> - <default>affinity:sys-0/node-0/proc-0/obus-1/obus_brick-0</default> + <default>affinity:sys-0/node-0/proc-0/obus-2/obus_brick-0</default> </attribute> <attribute> <id>CHIP_UNIT</id> @@ -3544,15 +3550,15 @@ </attribute> <attribute> <id>CHIPLET_ID</id> - <default>0x0A</default> + <default>0x0B</default> </attribute> <attribute> <id>FAPI_NAME</id> - <default>pu.obus_brick:k0:n0:s0:p00:c3</default> + <default>pu.obus_brick:k0:n0:s0:p00:c4</default> </attribute> <attribute> <id>HUID</id> - <default>0x00420003</default> + <default>0x00420004</default> </attribute> <attribute> <id>OBUS_SLOT_INDEX</id> @@ -3564,11 +3570,11 @@ </attribute> <attribute> <id>PARENT_PERVASIVE</id> - <default>physical:sys-0/node-0/proc-0/perv-10</default> + <default>physical:sys-0/node-0/proc-0/perv-11</default> </attribute> <attribute> <id>PHYS_PATH</id> - <default>physical:sys-0/node-0/proc-0/obus-1/obus_brick-0</default> + <default>physical:sys-0/node-0/proc-0/obus-2/obus_brick-0</default> </attribute> <attribute> <id>REL_POS</id> @@ -3577,11 +3583,11 @@ </targetInstance> <targetInstance> - <id>sys0node0proc0obus1obus_brick1</id> + <id>sys0node0proc0obus3obus_brick0</id> <type>unit-obus-brick-axone</type> <attribute> <id>AFFINITY_PATH</id> - <default>affinity:sys-0/node-0/proc-0/obus-1/obus_brick-1</default> + <default>affinity:sys-0/node-0/proc-0/obus-3/obus_brick-0</default> </attribute> <attribute> <id>CHIP_UNIT</id> @@ -3589,15 +3595,15 @@ </attribute> <attribute> <id>CHIPLET_ID</id> - <default>0x0A</default> + <default>0x0C</default> </attribute> <attribute> <id>FAPI_NAME</id> - <default>pu.obus_brick:k0:n0:s0:p00:c4</default> + <default>pu.obus_brick:k0:n0:s0:p00:c6</default> </attribute> <attribute> <id>HUID</id> - <default>0x00420004</default> + <default>0x00420006</default> </attribute> <attribute> <id>OBUS_SLOT_INDEX</id> @@ -3609,24 +3615,24 @@ </attribute> <attribute> <id>PARENT_PERVASIVE</id> - <default>physical:sys-0/node-0/proc-0/perv-10</default> + <default>physical:sys-0/node-0/proc-0/perv-12</default> </attribute> <attribute> <id>PHYS_PATH</id> - <default>physical:sys-0/node-0/proc-0/obus-1/obus_brick-1</default> + <default>physical:sys-0/node-0/proc-0/obus-3/obus_brick-0</default> </attribute> <attribute> <id>REL_POS</id> - <default>1</default> + <default>0</default> </attribute> </targetInstance> <targetInstance> - <id>sys0node0proc0obus1obus_brick2</id> + <id>sys0node0proc0obus3obus_brick1</id> <type>unit-obus-brick-axone</type> <attribute> <id>AFFINITY_PATH</id> - <default>affinity:sys-0/node-0/proc-0/obus-1/obus_brick-2</default> + <default>affinity:sys-0/node-0/proc-0/obus-3/obus_brick-1</default> </attribute> <attribute> <id>CHIP_UNIT</id> @@ -3634,7 +3640,7 @@ </attribute> <attribute> <id>CHIPLET_ID</id> - <default>0x0A</default> + <default>0x0C</default> </attribute> <attribute> <id>FAPI_NAME</id> @@ -3642,7 +3648,7 @@ </attribute> <attribute> <id>HUID</id> - <default>0x00420005</default> + <default>0x00420007</default> </attribute> <attribute> <id>OBUS_SLOT_INDEX</id> @@ -3654,56 +3660,53 @@ </attribute> <attribute> <id>PARENT_PERVASIVE</id> - <default>physical:sys-0/node-0/proc-0/perv-10</default> + <default>physical:sys-0/node-0/proc-0/perv-12</default> </attribute> <attribute> <id>PHYS_PATH</id> - <default>physical:sys-0/node-0/proc-0/obus-1/obus_brick-2</default> + <default>physical:sys-0/node-0/proc-0/obus-3/obus_brick-1</default> </attribute> <attribute> <id>REL_POS</id> - <default>3</default> + <default>1</default> </attribute> </targetInstance> + +<!-- ===================================================================== --> +<!-- NPU Units for node 0 --> +<!-- ===================================================================== --> <targetInstance> - <id>sys0node0proc0obus2obus_brick0</id> - <type>unit-obus-brick-axone</type> + <!-- Note : NPU0 covers OBUS0 --> + <id>sys0node0proc0npu0</id> + <type>unit-npu-axone</type> <attribute> <id>AFFINITY_PATH</id> - <default>affinity:sys-0/node-0/proc-0/obus-2/obus_brick-0</default> + <default>affinity:sys-0/node-0/proc-0/npu-0</default> </attribute> <attribute> <id>CHIP_UNIT</id> - <default>6</default> + <default>0</default> </attribute> <attribute> <id>CHIPLET_ID</id> - <default>0x0B</default> - </attribute> - <attribute> - <id>FAPI_NAME</id> - <default>pu.obus_brick:k0:n0:s0:p00:c6</default> + <default>0x05</default> </attribute> <attribute> <id>HUID</id> - <default>0x00420006</default> - </attribute> - <attribute> - <id>OBUS_SLOT_INDEX</id> - <default>0xFF</default> + <default>0x00430000</default> </attribute> <attribute> <id>ORDINAL_ID</id> - <default>6</default> + <default>0</default> </attribute> <attribute> <id>PARENT_PERVASIVE</id> - <default>physical:sys-0/node-0/proc-0/perv-11</default> + <default>physical:sys-0/node-0/proc-0/perv-5</default> </attribute> <attribute> <id>PHYS_PATH</id> - <default>physical:sys-0/node-0/proc-0/obus-2/obus_brick-0</default> + <default>physical:sys-0/node-0/proc-0/npu-0</default> </attribute> <attribute> <id>REL_POS</id> @@ -3712,228 +3715,114 @@ </targetInstance> <targetInstance> - <id>sys0node0proc0obus2obus_brick1</id> - <type>unit-obus-brick-axone</type> + <!-- Note : NPU1 covers OBUS1 and OBUS2, but OBUS2 isn't wired out --> + <!-- on the Swift configuration --> + <id>sys0node0proc0npu1</id> + <type>unit-npu-axone</type> <attribute> <id>AFFINITY_PATH</id> - <default>affinity:sys-0/node-0/proc-0/obus-2/obus_brick-1</default> + <default>affinity:sys-0/node-0/proc-0/npu-1</default> </attribute> <attribute> <id>CHIP_UNIT</id> - <default>7</default> - </attribute> - <attribute> - <id>CHIPLET_ID</id> - <default>0x0B</default> - </attribute> - <attribute> - <id>FAPI_NAME</id> - <default>pu.obus_brick:k0:n0:s0:p00:c7</default> - </attribute> - <attribute> - <id>HUID</id> - <default>0x00420007</default> - </attribute> - <attribute> - <id>OBUS_SLOT_INDEX</id> - <default>0xFF</default> - </attribute> - <attribute> - <id>ORDINAL_ID</id> - <default>7</default> - </attribute> - <attribute> - <id>PARENT_PERVASIVE</id> - <default>physical:sys-0/node-0/proc-0/perv-11</default> - </attribute> - <attribute> - <id>PHYS_PATH</id> - <default>physical:sys-0/node-0/proc-0/obus-2/obus_brick-1</default> - </attribute> - <attribute> - <id>REL_POS</id> <default>1</default> </attribute> -</targetInstance> - -<targetInstance> - <id>sys0node0proc0obus2obus_brick2</id> - <type>unit-obus-brick-axone</type> - <attribute> - <id>AFFINITY_PATH</id> - <default>affinity:sys-0/node-0/proc-0/obus-2/obus_brick-2</default> - </attribute> - <attribute> - <id>CHIP_UNIT</id> - <default>8</default> - </attribute> <attribute> <id>CHIPLET_ID</id> - <default>0x0B</default> + <default>0x05</default> </attribute> <attribute> - <id>FAPI_NAME</id> - <default>pu.obus_brick:k0:n0:s0:p00:c8</default> + <id>CLASS</id> + <default>UNIT</default> </attribute> <attribute> <id>HUID</id> - <default>0x00420008</default> - </attribute> - <attribute> - <id>OBUS_SLOT_INDEX</id> - <default>0xFF</default> + <default>0x00430001</default> </attribute> <attribute> <id>ORDINAL_ID</id> - <default>8</default> + <default>1</default> </attribute> <attribute> <id>PARENT_PERVASIVE</id> - <default>physical:sys-0/node-0/proc-0/perv-11</default> + <default>physical:sys-0/node-0/proc-0/perv-5</default> </attribute> <attribute> <id>PHYS_PATH</id> - <default>physical:sys-0/node-0/proc-0/obus-2/obus_brick-2</default> + <default>physical:sys-0/node-0/proc-0/npu-1</default> </attribute> <attribute> - <id>REL_POS</id> - <default>2</default> - </attribute> -</targetInstance> - -<targetInstance> - <id>sys0node0proc0obus3obus_brick0</id> - <type>unit-obus-brick-axone</type> - <attribute> - <id>AFFINITY_PATH</id> - <default>affinity:sys-0/node-0/proc-0/obus-3/obus_brick-0</default> - </attribute> - <attribute> - <id>CHIP_UNIT</id> - <default>9</default> - </attribute> - <attribute> - <id>CHIPLET_ID</id> - <default>0x0C</default> - </attribute> - <attribute> - <id>FAPI_NAME</id> - <default>pu.obus_brick:k0:n0:s0:p00:c9</default> - </attribute> - <attribute> - <id>HUID</id> - <default>0x00420009</default> - </attribute> - <attribute> - <id>OBUS_SLOT_INDEX</id> - <default>0xFF</default> - </attribute> - <attribute> - <id>ORDINAL_ID</id> - <default>9</default> - </attribute> - <attribute> - <id>PARENT_PERVASIVE</id> - <default>physical:sys-0/node-0/proc-0/perv-12</default> + <id>PRIMARY_CAPABILITIES</id> + <default> + <field><id>reserved</id><value>0</value></field> + <field><id>supportsFsiScom</id><value>1</value></field> + <field><id>supportsInbandScom</id><value>0</value></field> + <field><id>supportsXscom</id><value>1</value></field> + </default> </attribute> <attribute> - <id>PHYS_PATH</id> - <default>physical:sys-0/node-0/proc-0/obus-3/obus_brick-0</default> + <id>REL_POS</id> + <default>1</default> </attribute> <attribute> - <id>REL_POS</id> - <default>0</default> + <id>TYPE</id> + <default>NPU</default> </attribute> </targetInstance> <targetInstance> - <id>sys0node0proc0obus3obus_brick1</id> - <type>unit-obus-brick-axone</type> + <!-- Note : NPU2 covers OBUS3 --> + <id>sys0node0proc0npu2</id> + <type>unit-npu-axone</type> <attribute> <id>AFFINITY_PATH</id> - <default>affinity:sys-0/node-0/proc-0/obus-3/obus_brick-1</default> + <default>affinity:sys-0/node-0/proc-0/npu-2</default> </attribute> <attribute> <id>CHIP_UNIT</id> - <default>10</default> + <default>2</default> </attribute> <attribute> <id>CHIPLET_ID</id> - <default>0x0C</default> + <default>0x03</default> </attribute> <attribute> - <id>FAPI_NAME</id> - <default>pu.obus_brick:k0:n0:s0:p00:c10</default> + <id>CLASS</id> + <default>UNIT</default> </attribute> <attribute> <id>HUID</id> - <default>0x0042000A</default> - </attribute> - <attribute> - <id>OBUS_SLOT_INDEX</id> - <default>0xFF</default> + <default>0x00430002</default> </attribute> <attribute> <id>ORDINAL_ID</id> - <default>10</default> + <default>2</default> </attribute> <attribute> <id>PARENT_PERVASIVE</id> - <default>physical:sys-0/node-0/proc-0/perv-12</default> + <default>physical:sys-0/node-0/proc-0/perv-3</default> </attribute> <attribute> <id>PHYS_PATH</id> - <default>physical:sys-0/node-0/proc-0/obus-3/obus_brick-1</default> - </attribute> - <attribute> - <id>REL_POS</id> - <default>1</default> - </attribute> -</targetInstance> - -<targetInstance> - <id>sys0node0proc0obus3obus_brick2</id> - <type>unit-obus-brick-axone</type> - <attribute> - <id>AFFINITY_PATH</id> - <default>affinity:sys-0/node-0/proc-0/obus-3/obus_brick-2</default> - </attribute> - <attribute> - <id>CHIP_UNIT</id> - <default>11</default> - </attribute> - <attribute> - <id>CHIPLET_ID</id> - <default>0x0C</default> - </attribute> - <attribute> - <id>FAPI_NAME</id> - <default>pu.obus_brick:k0:n0:s0:p00:c11</default> - </attribute> - <attribute> - <id>HUID</id> - <default>0x0042000B</default> - </attribute> - <attribute> - <id>OBUS_SLOT_INDEX</id> - <default>0xFF</default> + <default>physical:sys-0/node-0/proc-0/npu-2</default> </attribute> <attribute> - <id>ORDINAL_ID</id> - <default>11</default> - </attribute> - <attribute> - <id>PARENT_PERVASIVE</id> - <default>physical:sys-0/node-0/proc-0/perv-12</default> - </attribute> - <attribute> - <id>PHYS_PATH</id> - <default>physical:sys-0/node-0/proc-0/obus-3/obus_brick-2</default> + <id>PRIMARY_CAPABILITIES</id> + <default> + <field><id>reserved</id><value>0</value></field> + <field><id>supportsFsiScom</id><value>1</value></field> + <field><id>supportsInbandScom</id><value>0</value></field> + <field><id>supportsXscom</id><value>1</value></field> + </default> </attribute> <attribute> <id>REL_POS</id> <default>2</default> </attribute> + <attribute> + <id>TYPE</id> + <default>NPU</default> + </attribute> </targetInstance> <!-- ===================================================================== --> @@ -4069,54 +3958,6 @@ </attribute> </targetInstance> -<targetInstance> - <id>sys0node0proc0capp1</id> - <type>unit-capp-axone</type> - <attribute> - <id>AFFINITY_PATH</id> - <default>affinity:sys-0/node-0/proc-0/capp-1</default> - </attribute> - <attribute> - <id>CHIP_UNIT</id> - <default>1</default> - </attribute> - <attribute> - <id>CHIPLET_ID</id> - <default>4</default> - </attribute> - <attribute> - <id>FAPI_NAME</id> - <default>pu.capp:k0:n0:s0:p00:c1</default> - </attribute> - <attribute> - <id>FAPI_POS</id> - <default>1</default> - </attribute> - <attribute> - <id>HUID</id> - <default>0x00210001</default> - </attribute> - <attribute> - <id>MRU_ID</id> - <default>0x02090001</default> - </attribute> - <attribute> - <id>ORDINAL_ID</id> - <default>1</default> - </attribute> - <attribute> - <id>PARENT_PERVASIVE</id> - <default>physical:sys-0/node-0/proc-0/perv-2</default> - </attribute> - <attribute> - <id>PHYS_PATH</id> - <default>physical:sys-0/node-0/proc-0/capp-1</default> - </attribute> - <attribute> - <id>REL_POS</id> - <default>1</default> - </attribute> -</targetInstance> <!-- ===================================================================== --> <!-- OCC Units --> @@ -12584,6 +12425,122 @@ </targetInstance> <targetInstance> + <id>sys0node0proc0perv10</id> + <type>unit-perv-axone</type> + <attribute> + <id>AFFINITY_PATH</id> + <default>affinity:sys-0/node-0/proc-0/perv-10</default> + </attribute> + <attribute> + <id>CHIP_UNIT</id> + <default>10</default> + </attribute> + <attribute> + <id>CHIPLET_ID</id> + <default>10</default> + </attribute> + <attribute> + <id>CLASS</id> + <default>UNIT</default> + </attribute> + <attribute> + <id>FAPI_NAME</id> + <default>pu.perv:k0:n0:s0:p00:c10</default> + </attribute> + <attribute> + <id>FAPI_POS</id> + <default>10</default> + </attribute> + <attribute> + <id>HUID</id> + <default>0x002C000A</default> + </attribute> + <attribute> + <id>ORDINAL_ID</id> + <default>10</default> + </attribute> + <attribute> + <id>PHYS_PATH</id> + <default>physical:sys-0/node-0/proc-0/perv-10</default> + </attribute> + <attribute> + <id>PRIMARY_CAPABILITIES</id> + <default> + <field><id>reserved</id><value>0</value></field> + <field><id>supportsFsiScom</id><value>1</value></field> + <field><id>supportsInbandScom</id><value>0</value></field> + <field><id>supportsXscom</id><value>1</value></field> + </default> + </attribute> + <attribute> + <id>REL_POS</id> + <default>10</default> + </attribute> + <attribute> + <id>TYPE</id> + <default>PERV</default> + </attribute> +</targetInstance> + +<targetInstance> + <id>sys0node0proc0perv11</id> + <type>unit-perv-axone</type> + <attribute> + <id>AFFINITY_PATH</id> + <default>affinity:sys-0/node-0/proc-0/perv-11</default> + </attribute> + <attribute> + <id>CHIP_UNIT</id> + <default>11</default> + </attribute> + <attribute> + <id>CHIPLET_ID</id> + <default>11</default> + </attribute> + <attribute> + <id>CLASS</id> + <default>UNIT</default> + </attribute> + <attribute> + <id>FAPI_NAME</id> + <default>pu.perv:k0:n0:s0:p00:c11</default> + </attribute> + <attribute> + <id>FAPI_POS</id> + <default>11</default> + </attribute> + <attribute> + <id>HUID</id> + <default>0x002C000B</default> + </attribute> + <attribute> + <id>ORDINAL_ID</id> + <default>11</default> + </attribute> + <attribute> + <id>PHYS_PATH</id> + <default>physical:sys-0/node-0/proc-0/perv-11</default> + </attribute> + <attribute> + <id>PRIMARY_CAPABILITIES</id> + <default> + <field><id>reserved</id><value>0</value></field> + <field><id>supportsFsiScom</id><value>1</value></field> + <field><id>supportsInbandScom</id><value>0</value></field> + <field><id>supportsXscom</id><value>1</value></field> + </default> + </attribute> + <attribute> + <id>REL_POS</id> + <default>11</default> + </attribute> + <attribute> + <id>TYPE</id> + <default>PERV</default> + </attribute> +</targetInstance> + +<targetInstance> <id>sys0node0proc0perv12</id> <type>unit-perv-axone</type> <attribute> diff --git a/src/usr/targeting/common/xmltohb/simics_CUMULUS.system.xml b/src/usr/targeting/common/xmltohb/simics_CUMULUS.system.xml index 0fbb351c3..17aee231d 100644 --- a/src/usr/targeting/common/xmltohb/simics_CUMULUS.system.xml +++ b/src/usr/targeting/common/xmltohb/simics_CUMULUS.system.xml @@ -8955,6 +8955,138 @@ <default>PERV</default> </attribute> </targetInstance> + +<targetInstance> + <id>sys0node0proc0perv10</id> + <type>unit-perv-cumulus</type> + <attribute> + <id>AFFINITY_PATH</id> + <default>affinity:sys-0/node-0/proc-0/perv-10</default> + </attribute> + + + <attribute> + <id>CHIP_UNIT</id> + <default>10</default> + </attribute> + <attribute> + <id>CHIPLET_ID</id> + <default>10</default> + </attribute> + <attribute> + <id>CLASS</id> + <default>UNIT</default> + </attribute> + <attribute> + <id>FAPI_NAME</id> + <default>pu.perv:k0:n0:s0:p00:c10</default> + </attribute> + <attribute> + <id>FAPI_POS</id> + <default>10</default> + </attribute> + <attribute> + <id>HUID</id> + <default>0x002C000A</default> + </attribute> + + + + + + <attribute> + <id>ORDINAL_ID</id> + <default>10</default> + </attribute> + <attribute> + <id>PHYS_PATH</id> + <default>physical:sys-0/node-0/proc-0/perv-10</default> + </attribute> + <attribute> + <id>PRIMARY_CAPABILITIES</id> + <default> + <field><id>reserved</id><value>0</value></field> + <field><id>supportsFsiScom</id><value>1</value></field> + <field><id>supportsInbandScom</id><value>0</value></field> + <field><id>supportsXscom</id><value>1</value></field> + </default> + </attribute> + <attribute> + <id>REL_POS</id> + <default>10</default> + </attribute> + <attribute> + <id>RESOURCE_IS_CRITICAL</id> + <default>0</default> + </attribute> + <attribute> + <id>TYPE</id> + <default>PERV</default> + </attribute> +</targetInstance> + +<targetInstance> + <id>sys0node0proc0perv11</id> + <type>unit-perv-cumulus</type> + <attribute> + <id>AFFINITY_PATH</id> + <default>affinity:sys-0/node-0/proc-0/perv-11</default> + </attribute> + <attribute> + <id>CHIP_UNIT</id> + <default>11</default> + </attribute> + <attribute> + <id>CHIPLET_ID</id> + <default>11</default> + </attribute> + <attribute> + <id>CLASS</id> + <default>UNIT</default> + </attribute> + <attribute> + <id>FAPI_NAME</id> + <default>pu.perv:k0:n0:s0:p00:c11</default> + </attribute> + <attribute> + <id>FAPI_POS</id> + <default>11</default> + </attribute> + <attribute> + <id>HUID</id> + <default>0x002C000B</default> + </attribute> + <attribute> + <id>ORDINAL_ID</id> + <default>11</default> + </attribute> + <attribute> + <id>PHYS_PATH</id> + <default>physical:sys-0/node-0/proc-0/perv-11</default> + </attribute> + <attribute> + <id>PRIMARY_CAPABILITIES</id> + <default> + <field><id>reserved</id><value>0</value></field> + <field><id>supportsFsiScom</id><value>1</value></field> + <field><id>supportsInbandScom</id><value>0</value></field> + <field><id>supportsXscom</id><value>1</value></field> + </default> + </attribute> + <attribute> + <id>REL_POS</id> + <default>11</default> + </attribute> + <attribute> + <id>RESOURCE_IS_CRITICAL</id> + <default>0</default> + </attribute> + <attribute> + <id>TYPE</id> + <default>PERV</default> + </attribute> +</targetInstance> + <targetInstance> <id>sys0node0proc0perv12</id> <type>unit-perv-cumulus</type> diff --git a/src/usr/targeting/common/xmltohb/simics_CUMULUS_CDIMM.system.xml b/src/usr/targeting/common/xmltohb/simics_CUMULUS_CDIMM.system.xml index d7f4cfa10..6e0177ea2 100644 --- a/src/usr/targeting/common/xmltohb/simics_CUMULUS_CDIMM.system.xml +++ b/src/usr/targeting/common/xmltohb/simics_CUMULUS_CDIMM.system.xml @@ -8947,6 +8947,134 @@ <default>PERV</default> </attribute> </targetInstance> + + +<targetInstance> + <id>sys0node0proc0perv10</id> + <type>unit-perv-cumulus</type> + <attribute> + <id>AFFINITY_PATH</id> + <default>affinity:sys-0/node-0/proc-0/perv-10</default> + </attribute> + + + <attribute> + <id>CHIP_UNIT</id> + <default>10</default> + </attribute> + <attribute> + <id>CHIPLET_ID</id> + <default>10</default> + </attribute> + <attribute> + <id>CLASS</id> + <default>UNIT</default> + </attribute> + <attribute> + <id>FAPI_NAME</id> + <default>pu.perv:k0:n0:s0:p00:c10</default> + </attribute> + <attribute> + <id>FAPI_POS</id> + <default>10</default> + </attribute> + <attribute> + <id>HUID</id> + <default>0x002C000A</default> + </attribute> + <attribute> + <id>ORDINAL_ID</id> + <default>10</default> + </attribute> + <attribute> + <id>PHYS_PATH</id> + <default>physical:sys-0/node-0/proc-0/perv-10</default> + </attribute> + <attribute> + <id>PRIMARY_CAPABILITIES</id> + <default> + <field><id>reserved</id><value>0</value></field> + <field><id>supportsFsiScom</id><value>1</value></field> + <field><id>supportsInbandScom</id><value>0</value></field> + <field><id>supportsXscom</id><value>1</value></field> + </default> + </attribute> + <attribute> + <id>REL_POS</id> + <default>10</default> + </attribute> + <attribute> + <id>RESOURCE_IS_CRITICAL</id> + <default>0</default> + </attribute> + <attribute> + <id>TYPE</id> + <default>PERV</default> + </attribute> +</targetInstance> + +<targetInstance> + <id>sys0node0proc0perv11</id> + <type>unit-perv-cumulus</type> + <attribute> + <id>AFFINITY_PATH</id> + <default>affinity:sys-0/node-0/proc-0/perv-11</default> + </attribute> + <attribute> + <id>CHIP_UNIT</id> + <default>11</default> + </attribute> + <attribute> + <id>CHIPLET_ID</id> + <default>11</default> + </attribute> + <attribute> + <id>CLASS</id> + <default>UNIT</default> + </attribute> + <attribute> + <id>FAPI_NAME</id> + <default>pu.perv:k0:n0:s0:p00:c11</default> + </attribute> + <attribute> + <id>FAPI_POS</id> + <default>11</default> + </attribute> + <attribute> + <id>HUID</id> + <default>0x002C000B</default> + </attribute> + <attribute> + <id>ORDINAL_ID</id> + <default>11</default> + </attribute> + <attribute> + <id>PHYS_PATH</id> + <default>physical:sys-0/node-0/proc-0/perv-11</default> + </attribute> + <attribute> + <id>PRIMARY_CAPABILITIES</id> + <default> + <field><id>reserved</id><value>0</value></field> + <field><id>supportsFsiScom</id><value>1</value></field> + <field><id>supportsInbandScom</id><value>0</value></field> + <field><id>supportsXscom</id><value>1</value></field> + </default> + </attribute> + <attribute> + <id>REL_POS</id> + <default>11</default> + </attribute> + <attribute> + <id>RESOURCE_IS_CRITICAL</id> + <default>0</default> + </attribute> + <attribute> + <id>TYPE</id> + <default>PERV</default> + </attribute> +</targetInstance> + <targetInstance> <id>sys0node0proc0perv12</id> <type>unit-perv-cumulus</type> diff --git a/src/usr/targeting/common/xmltohb/target_types.xml b/src/usr/targeting/common/xmltohb/target_types.xml index 190ea86fc..3ebc3b5c7 100644 --- a/src/usr/targeting/common/xmltohb/target_types.xml +++ b/src/usr/targeting/common/xmltohb/target_types.xml @@ -3111,6 +3111,7 @@ </attribute> </targetType> + <!-- Three NPUs per proc --> <targetType> <id>unit-npu-axone</id> <parent>unit-npu-power9</parent> @@ -3118,8 +3119,26 @@ <id>MODEL</id> <default>AXONE</default> </attribute> + <attribute> + <default> + <field> + <id>childRollupAllowed</id> + <value>1</value> + </field> + <field> + <id>deconfigureParent</id> + <value>1</value> + </field> + <field> + <id>valid</id> + <value>1</value> + </field> + </default> + <id>PARENT_DECONFIG_RULES</id> + </attribute> </targetType> + <!-- One NPU per proc --> <targetType> <id>unit-npu-cumulus</id> <parent>unit-npu-power9</parent> @@ -3129,6 +3148,7 @@ </attribute> </targetType> + <!-- One NPU per proc --> <targetType> <id>unit-npu-nimbus</id> <parent>unit-npu-power9</parent> @@ -3138,7 +3158,6 @@ </attribute> </targetType> - <!-- One NPU per proc --> <targetType> <id>unit-npu-power9</id> <parent>unit</parent> |