diff options
| author | Prachi Gupta <pragupta@us.ibm.com> | 2017-05-01 15:49:40 -0500 |
|---|---|---|
| committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2017-05-23 14:03:57 -0400 |
| commit | 6d153811271a104cd4471633e19d8b51c664fe5d (patch) | |
| tree | a534b2d375f16e5993e1c0814d8b79d9eee4ba08 /src/usr | |
| parent | 58a4a24d65473e5611db1fc11e2023a1370968d0 (diff) | |
| download | talos-hostboot-6d153811271a104cd4471633e19d8b51c664fe5d.tar.gz talos-hostboot-6d153811271a104cd4471633e19d8b51c664fe5d.zip | |
define TARGET_TYPE_NPU
Change-Id: I80d6b6ae23102018f2e86ec5b38282029e841e6c
RTC:171597
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/39913
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
Reviewed-by: Matthew A. Ploetz <maploetz@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr')
| -rw-r--r-- | src/usr/targeting/common/Targets.pm | 1 | ||||
| -rw-r--r-- | src/usr/targeting/common/entitypath.C | 2 | ||||
| -rwxr-xr-x | src/usr/targeting/common/genHwsvMrwXml.pl | 45 | ||||
| -rw-r--r-- | src/usr/targeting/common/xmltohb/attribute_types.xml | 8 | ||||
| -rw-r--r-- | src/usr/targeting/common/xmltohb/simics_NIMBUS.system.xml | 104 | ||||
| -rwxr-xr-x | src/usr/targeting/common/xmltohb/target_types.xml | 31 | ||||
| -rw-r--r-- | src/usr/targeting/common/xmltohb/vbu_NIMBUS.system.xml | 105 |
7 files changed, 294 insertions, 2 deletions
diff --git a/src/usr/targeting/common/Targets.pm b/src/usr/targeting/common/Targets.pm index 990a9c66f..2bdbedf06 100644 --- a/src/usr/targeting/common/Targets.pm +++ b/src/usr/targeting/common/Targets.pm @@ -64,6 +64,7 @@ my %maxInstance = ( "CAPP" => 2, "SBE" => 1, "OBUS_BRICK" => 12, + "NPU" => 1, "MI" => 4, "OCC" => 1, ); diff --git a/src/usr/targeting/common/entitypath.C b/src/usr/targeting/common/entitypath.C index 11b359c06..913a13a7f 100644 --- a/src/usr/targeting/common/entitypath.C +++ b/src/usr/targeting/common/entitypath.C @@ -418,6 +418,8 @@ const char* EntityPath::pathElementTypeAsString( return "NV"; case TYPE_OBUS_BRICK: return "OBUS_BRICK"; + case TYPE_NPU: + return "NPU"; case TYPE_SBE: return "SBE"; case TYPE_PPE: diff --git a/src/usr/targeting/common/genHwsvMrwXml.pl b/src/usr/targeting/common/genHwsvMrwXml.pl index b4b06311c..55cb75bc3 100755 --- a/src/usr/targeting/common/genHwsvMrwXml.pl +++ b/src/usr/targeting/common/genHwsvMrwXml.pl @@ -84,6 +84,7 @@ use constant MAX_MBA_PER_MEMBUF => 2, MAX_OBUS_PER_PROC => 4, MAX_OBUS_BRICK_PER_PROC => 12, + MAX_NPU_PER_PROC => 1, MAX_PPE_PER_PROC => 51, #Only 21, but they are sparsely populated MAX_PERV_PER_PROC => 56, #Only 42, but they are sparsely populated MAX_CAPP_PER_PROC => 2, @@ -117,6 +118,7 @@ use constant ARCH_LIMIT_MI_PER_PROC => MAX_MI_PER_PROC, ARCH_LIMIT_CAPP_PER_PROC => MAX_CAPP_PER_PROC, ARCH_LIMIT_DMI_PER_MI => 2, + ARCH_LIMIT_NPU_PER_PROC => MAX_NPU_PER_PROC, ARCH_LIMIT_OBUS_PER_PROC => MAX_OBUS_PER_PROC, ARCH_LIMIT_OBUS_BRICK_PER_OBUS => MAX_OBUS_BRICK_PER_PROC / MAX_OBUS_PER_PROC, ARCH_LIMIT_SBE_PER_PROC => MAX_SBE_PER_PROC, @@ -2215,6 +2217,7 @@ for (my $do_core = 0, my $i = 0; $i <= $#STargets; $i++) $proc_ordinal_id, \@fsi, \@altfsi, $fru_id, $hwTopology, \%fapiPosH,\%voltageRails ); + generate_npu($proc,0,0,$ipath); generate_occ($proc, $proc_ordinal_id); generate_nx($proc,$proc_ordinal_id,$node); @@ -5508,6 +5511,48 @@ sub generate_sbe "; } +sub generate_npu +{ + my ($proc, $npu, $ordinalId, $ipath) = @_; + my $uidstr = sprintf("0x%02X44%04X",${node},$proc*MAX_NPU_PER_PROC + $npu); + + my $fapi_name = "NA"; + my $path = "sys-$sys/node-$node/proc-$proc/npu-$npu"; + + print " +<targetInstance> + <id>sys${sys}node${node}proc${proc}npu$npu</id> + <type>unit-npu-power9</type> + <attribute><id>HUID</id><default>${uidstr}</default></attribute> + <attribute><id>FAPI_NAME</id><default>$fapi_name</default></attribute> + <attribute> + <id>PHYS_PATH</id> + <default>physical:$path</default> + </attribute> + <attribute> + <id>AFFINITY_PATH</id> + <default>affinity:$path</default> + </attribute> + <attribute> + <id>ORDINAL_ID</id> + <default>$ordinalId</default> + </attribute> + <compileAttribute> + <id>INSTANCE_PATH</id> + <default>instance:$ipath/npu$npu</default> + </compileAttribute> + <attribute> + <id>CHIP_UNIT</id> + <default>$npu</default> + </attribute> + <attribute> + <id>REL_POS</id> + <default>$npu</default> + </attribute> +</targetInstance> +"; +} + sub generate_obus_brick { my ($proc, $obus, $ipath) = @_; diff --git a/src/usr/targeting/common/xmltohb/attribute_types.xml b/src/usr/targeting/common/xmltohb/attribute_types.xml index a838d2c98..c777158a9 100644 --- a/src/usr/targeting/common/xmltohb/attribute_types.xml +++ b/src/usr/targeting/common/xmltohb/attribute_types.xml @@ -354,14 +354,18 @@ <name>OBUS_BRICK</name> <value>66</value> </enumerator> + <enumerator> + <name>NPU</name> + <value>67</value> + </enumerator> <!-- add any new types here, and increment TEST_FAIL and LAST_IN_RANGE --> <enumerator> <name>TEST_FAIL</name> - <value>67</value> + <value>68</value> </enumerator> <enumerator> <name>LAST_IN_RANGE</name> - <value>68</value> + <value>69</value> </enumerator> <default>NA</default> </enumerationType> diff --git a/src/usr/targeting/common/xmltohb/simics_NIMBUS.system.xml b/src/usr/targeting/common/xmltohb/simics_NIMBUS.system.xml index 61195d186..3a94aaf9c 100644 --- a/src/usr/targeting/common/xmltohb/simics_NIMBUS.system.xml +++ b/src/usr/targeting/common/xmltohb/simics_NIMBUS.system.xml @@ -3204,6 +3204,58 @@ </attribute> </targetInstance> +<targetInstance> + <id>sys0node0proc0npu0</id> + <type>unit-npu-nimbus</type> + <attribute> + <id>AFFINITY_PATH</id> + <default>affinity:sys-0/node-0/proc-0/npu-0</default> + </attribute> + <attribute> + <id>CHIPLET_ID</id> + <default>0x05</default> + </attribute> + <attribute> + <id>CHIP_UNIT</id> + <default>0</default> + </attribute> + <attribute> + <id>CLASS</id> + <default>UNIT</default> + </attribute> + <attribute> + <id>DECONFIG_GARDABLE</id> + <default>1</default> + </attribute> + <attribute> + <id>FAPI_NAME</id> + <default>NA</default> + </attribute> + <attribute> + <id>FAPI_POS</id> + <default>0</default> + </attribute> + <attribute> + <id>HUID</id> + <default>0x00440000</default> + </attribute> + <attribute> + <id>ORDINAL_ID</id> + <default>0</default> + </attribute> + <attribute> + <id>PARENT_PERVASIVE</id> + <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/npu-0</default> + </attribute> + <attribute> + <id>TYPE</id> + <default>NPU</default> + </attribute> +</targetInstance> <!-- Nimbus n0p0 obus-brick units --> <targetInstance> <id>sys0node0proc0obus0obus_brick0</id> @@ -8791,6 +8843,58 @@ </targetInstance> <targetInstance> + <id>sys0node0proc1npu0</id> + <type>unit-npu-nimbus</type> + <attribute> + <id>AFFINITY_PATH</id> + <default>affinity:sys-0/node-0/proc-1/npu-0</default> + </attribute> + <attribute> + <id>CHIPLET_ID</id> + <default>0x05</default> + </attribute> + <attribute> + <id>CHIP_UNIT</id> + <default>0</default> + </attribute> + <attribute> + <id>CLASS</id> + <default>UNIT</default> + </attribute> + <attribute> + <id>DECONFIG_GARDABLE</id> + <default>1</default> + </attribute> + <attribute> + <id>FAPI_NAME</id> + <default>NA</default> + </attribute> + <attribute> + <id>FAPI_POS</id> + <default>1</default> + </attribute> + <attribute> + <id>HUID</id> + <default>0x00440001</default> + </attribute> + <attribute> + <id>ORDINAL_ID</id> + <default>0</default> + </attribute> + <attribute> + <id>PARENT_PERVASIVE</id> + <default>physical:sys-0/node-0/proc-1/perv-5</default> + </attribute> + <attribute> + <id>PHYS_PATH</id> + <default>physical:sys-0/node-0/proc-1/npu-0</default> + </attribute> + <attribute> + <id>TYPE</id> + <default>NPU</default> + </attribute> +</targetInstance> +<targetInstance> <id>sys0node0proc1ppe0</id> <type>unit-ppe-power9</type> <attribute><id>HUID</id><default>0x002B0033</default></attribute> diff --git a/src/usr/targeting/common/xmltohb/target_types.xml b/src/usr/targeting/common/xmltohb/target_types.xml index b40960669..86ac8ed04 100755 --- a/src/usr/targeting/common/xmltohb/target_types.xml +++ b/src/usr/targeting/common/xmltohb/target_types.xml @@ -2264,6 +2264,37 @@ </attribute> </targetType> +<!-- One NPU per proc --> +<targetType> + <id>unit-npu-power9</id> + <parent>unit</parent> + <attribute> + <id>TYPE</id> + <default>NPU</default> + </attribute> + <attribute><id>DECONFIG_GARDABLE</id><default>1</default></attribute> + <attribute><id>HUID</id></attribute> + <attribute><id>PARENT_PERVASIVE</id></attribute> +</targetType> + +<targetType> + <id>unit-npu-nimbus</id> + <parent>unit-npu-power9</parent> + <attribute> + <id>MODEL</id> + <default>NIMBUS</default> + </attribute> +</targetType> + +<targetType> + <id>unit-npu-cumulus</id> + <parent>unit-npu-power9</parent> + <attribute> + <id>MODEL</id> + <default>CUMULUS</default> + </attribute> +</targetType> + <!-- PPE Nimbus : 21, including the SBE (1 SBE, 1 Powerbus/Fabric PPE, 4 GPEs, 12 CMEs, and 3 IO PPEs. diff --git a/src/usr/targeting/common/xmltohb/vbu_NIMBUS.system.xml b/src/usr/targeting/common/xmltohb/vbu_NIMBUS.system.xml index 9830fef4c..ac19f289a 100644 --- a/src/usr/targeting/common/xmltohb/vbu_NIMBUS.system.xml +++ b/src/usr/targeting/common/xmltohb/vbu_NIMBUS.system.xml @@ -3339,6 +3339,58 @@ </attribute> </targetInstance> +<targetInstance> + <id>sys0node0proc0npu0</id> + <type>unit-npu-nimbus</type> + <attribute> + <id>AFFINITY_PATH</id> + <default>affinity:sys-0/node-0/proc-0/npu-0</default> + </attribute> + <attribute> + <id>CHIPLET_ID</id> + <default>0x05</default> + </attribute> + <attribute> + <id>CHIP_UNIT</id> + <default>0</default> + </attribute> + <attribute> + <id>CLASS</id> + <default>UNIT</default> + </attribute> + <attribute> + <id>DECONFIG_GARDABLE</id> + <default>1</default> + </attribute> + <attribute> + <id>FAPI_NAME</id> + <default>NA</default> + </attribute> + <attribute> + <id>FAPI_POS</id> + <default>0</default> + </attribute> + <attribute> + <id>HUID</id> + <default>0x00440000</default> + </attribute> + <attribute> + <id>ORDINAL_ID</id> + <default>0</default> + </attribute> + <attribute> + <id>PARENT_PERVASIVE</id> + <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/npu-0</default> + </attribute> + <attribute> + <id>TYPE</id> + <default>NPU</default> + </attribute> +</targetInstance> <!-- Nimbus n0p0 PPE units Up to 18 PPEs per Nimbus, only create 2 in this config for now --> <targetInstance> @@ -8668,6 +8720,59 @@ </targetInstance> <targetInstance> + <id>sys0node0proc1npu0</id> + <type>unit-npu-nimbus</type> + <attribute> + <id>AFFINITY_PATH</id> + <default>affinity:sys-0/node-0/proc-1/npu-0</default> + </attribute> + <attribute> + <id>CHIPLET_ID</id> + <default>0x05</default> + </attribute> + <attribute> + <id>CHIP_UNIT</id> + <default>0</default> + </attribute> + <attribute> + <id>CLASS</id> + <default>UNIT</default> + </attribute> + <attribute> + <id>DECONFIG_GARDABLE</id> + <default>1</default> + </attribute> + <attribute> + <id>FAPI_NAME</id> + <default>NA</default> + </attribute> + <attribute> + <id>FAPI_POS</id> + <default>1</default> + </attribute> + <attribute> + <id>HUID</id> + <default>0x00440001</default> + </attribute> + <attribute> + <id>ORDINAL_ID</id> + <default>0</default> + </attribute> + <attribute> + <id>PARENT_PERVASIVE</id> + <default>physical:sys-0/node-0/proc-1/perv-5</default> + </attribute> + <attribute> + <id>PHYS_PATH</id> + <default>physical:sys-0/node-0/proc-1/npu-0</default> + </attribute> + <attribute> + <id>TYPE</id> + <default>NPU</default> + </attribute> +</targetInstance> + +<targetInstance> <id>sys0node0proc1ppe0</id> <type>unit-ppe-power9</type> <attribute><id>HUID</id><default>0x000B0015</default></attribute> |

