From 606503c551de7b751c6a0b78df2b0c43bd9446cd Mon Sep 17 00:00:00 2001 From: Dan Crowell Date: Wed, 29 Feb 2012 18:57:50 -0600 Subject: Add support for MURANO simics config Update bbuild to released 1209 driver (b0229a_1209.760) RTC: 35596 Change-Id: Ifeb06070ac61943982509e88df6a1ca27c5e0aea Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/717 Tested-by: Jenkins Server Reviewed-by: Daniel M. Crowell Reviewed-by: A. Patrick Williams III --- src/build/citest/etc/bbuild | 2 +- src/build/citest/etc/workarounds.postsimsetup | 3 - src/build/citest/etc/workarounds.presimsetup | 22 +- src/build/tools/cpfiles.pl | 1 + src/usr/pnor/pnorrp.C | 6 + src/usr/targeting/xmltohb/attribute_types.xml | 3 + src/usr/targeting/xmltohb/makefile | 3 +- src/usr/targeting/xmltohb/simics_MURANO.mrw.xml | 22 + src/usr/targeting/xmltohb/simics_MURANO.system.xml | 5951 ++++++++++++++++++++ src/usr/targeting/xmltohb/simics_VENICE.system.xml | 10 +- src/usr/targeting/xmltohb/target_types.xml | 102 +- src/usr/targeting/xmltohb/xmltohb.pl | 410 +- 12 files changed, 6312 insertions(+), 223 deletions(-) create mode 100644 src/usr/targeting/xmltohb/simics_MURANO.mrw.xml create mode 100644 src/usr/targeting/xmltohb/simics_MURANO.system.xml (limited to 'src') diff --git a/src/build/citest/etc/bbuild b/src/build/citest/etc/bbuild index 06f34cdb3..a3dc4f4e1 100644 --- a/src/build/citest/etc/bbuild +++ b/src/build/citest/etc/bbuild @@ -1 +1 @@ -/esw/fips760/Builds/b0209a_1207.760 +/esw/fips760/Builds/b0229a_1209.760 diff --git a/src/build/citest/etc/workarounds.postsimsetup b/src/build/citest/etc/workarounds.postsimsetup index b4ee2e082..44eb1a37c 100755 --- a/src/build/citest/etc/workarounds.postsimsetup +++ b/src/build/citest/etc/workarounds.postsimsetup @@ -27,6 +27,3 @@ ## to setup the sandbox ## -echo "+++ Patch for PHYP flight recorder." -sed -i -e's/.*PHYPLEVEL.*//' $sb/../simics/.simics_flightrecorder -sed -i -e's/.*PHYP_PATCH_LEVEL.*//' $sb/../simics/.simics_flightrecorder diff --git a/src/build/citest/etc/workarounds.presimsetup b/src/build/citest/etc/workarounds.presimsetup index 6e10b8e81..8a7ea500c 100755 --- a/src/build/citest/etc/workarounds.presimsetup +++ b/src/build/citest/etc/workarounds.presimsetup @@ -41,9 +41,16 @@ sed -i -e's/SETENV GFW_P8_VENICE_L3_MB_SIZE.*/SETENV GFW_P8_VENICE_L3_MB_SIZE 8/ # Backing build already contains 910431. Leave this workaround here for future scomdef files #sed -i -e's/SETENV GFW_P8_VENICE_MODEL_EC.*/SETENV GFW_P8_VENICE_MODEL_EC 910431/' $sb/simu/configs/P8_VENICE.config +echo "+++ Copy desired MURANO config file to sandbox and modify L3 to 8MB." +mkdir -p $sb/simu/configs +cp --update $BACKING_BUILD/src/simu/configs/P8_MURANO.config $sb/simu/configs +sed -i -e's/SETENV GFW_P8_MURANO_L3_MB_SIZE.*/SETENV GFW_P8_MURANO_L3_MB_SIZE 8/' $sb/simu/configs/P8_MURANO.config +# Backing build already contains 910431. Leave this workaround here for future scomdef files +#sed -i -e's/SETENV GFW_P8_MURANO_MODEL_EC.*/SETENV GFW_P8_MURANO_MODEL_EC 910431/' $sb/simu/configs/P8_MURANO.config + #Note: Leave this here as an example -#echo "+++ Update to new simics build for ECCB support." +#echo "+++ Some message about why you need to do this." #mkdir -p $sb/simu/data #egrep -v "WSALIAS HOSTBOOT_LEVEL FIPSLEVEL|WSALIAS HOSTBOOT_LEVEL SIMICSLEVEL" $BACKING_BUILD/src/simu/data/simicsInfo > $sb/simu/data/simicsInfo #echo "WSALIAS HOSTBOOT_LEVEL FIPSLEVEL env/gfwb/simics-4.2.0/simics-4.2.83/fips/fld36/fi120201a700.42" >> $sb/simu/data/simicsInfo @@ -69,9 +76,10 @@ cp $HOSTBOOTROOT/src/build/citest/etc/patches/centaur.act $sb/simu/data/cec-chip #fixme -echo "+++ Update to new phyp and mambo level." -mkdir -p $sb/simu/data -cp --update $BACKING_BUILD/src/simu/data/simicsInfo $sb/simu/data/simicsInfo -sed -i -e's/^WSALIAS HOSTBOOT_LEVEL MAMBOLEVEL.*/WSALIAS HOSTBOOT_LEVEL MAMBOLEVEL env\/mamboa\/2011_11_10__4.2/' $sb/simu/data/simicsInfo -sed -i -e's/^WSALIAS HOSTBOOT_LEVEL PHYPLEVEL.*/WSALIAS HOSTBOOT_LEVEL PHYPLEVEL env\/phypa\/simics-4.2.0\/simics-4.2.83\/ph120201a700.42/' $sb/simu/data/simicsInfo -sed -i -e's/^WSALIAS HOSTBOOT_LEVEL PHYP_PATCH_LEVEL.*/WSALIAS HOSTBOOT_LEVEL PHYP_PATCH_LEVEL env\/phypa\/simics-4.2.0\/simics-4.2.82\/patches\/ph120201a700.42/' $sb/simu/data/simicsInfo +# Leaving this here as an example for the future +#echo "+++ Update to new phyp and mambo level." +#mkdir -p $sb/simu/data +#cp --update $BACKING_BUILD/src/simu/data/simicsInfo $sb/simu/data/simicsInfo +#sed -i -e's/^WSALIAS HOSTBOOT_LEVEL MAMBOLEVEL.*/WSALIAS HOSTBOOT_LEVEL MAMBOLEVEL env\/mamboa\/2011_11_10__4.2/' $sb/simu/data/simicsInfo +#sed -i -e's/^WSALIAS HOSTBOOT_LEVEL PHYPLEVEL.*/WSALIAS HOSTBOOT_LEVEL PHYPLEVEL env\/phypa\/simics-4.2.0\/simics-4.2.83\/ph120201a700.42/' $sb/simu/data/simicsInfo +#sed -i -e's/^WSALIAS HOSTBOOT_LEVEL PHYP_PATCH_LEVEL.*/WSALIAS HOSTBOOT_LEVEL PHYP_PATCH_LEVEL env\/phypa\/simics-4.2.0\/simics-4.2.82\/patches\/ph120201a700.42/' $sb/simu/data/simicsInfo diff --git a/src/build/tools/cpfiles.pl b/src/build/tools/cpfiles.pl index a0bd64806..3a7781b0f 100755 --- a/src/build/tools/cpfiles.pl +++ b/src/build/tools/cpfiles.pl @@ -86,6 +86,7 @@ my %files = ("src/build/tools/hb-parsedump.pl" => "rsv", "img/pnor.toc" => "rsv", "img/simics_SALERNO_targeting.bin" => "rs", "img/simics_VENICE_targeting.bin" => "rs", + "img/simics_MURANO_targeting.bin" => "rs", "img/vbu_targeting.bin" => "rv", "img/isteplist.csv" => "rsv", "src/usr/hwpf/hwp/fapiTestHwp.C" => "r", diff --git a/src/usr/pnor/pnorrp.C b/src/usr/pnor/pnorrp.C index 481653ac7..40ea0e453 100644 --- a/src/usr/pnor/pnorrp.C +++ b/src/usr/pnor/pnorrp.C @@ -347,6 +347,12 @@ errlHndl_t PnorRP::readTOC() //@todo - end fake data + //keep these traces here until PNOR is rock-solid + TRACFCOMP(g_trac_pnor, "TOC: size=0x%.8X flash=0x%.8X virt=0x%.16X", iv_TOC[PNOR::SIDE_A][PNOR::TOC].size, iv_TOC[PNOR::SIDE_A][PNOR::TOC].flashAddr, iv_TOC[PNOR::SIDE_A][PNOR::TOC].virtAddr ); + TRACFCOMP(g_trac_pnor, "EXT: size=0x%.8X flash=0x%.8X virt=0x%.16X", iv_TOC[PNOR::SIDE_A][PNOR::HB_EXT_CODE].size, iv_TOC[PNOR::SIDE_A][PNOR::HB_EXT_CODE].flashAddr, iv_TOC[PNOR::SIDE_A][PNOR::HB_EXT_CODE].virtAddr ); + TRACFCOMP(g_trac_pnor, "GLOBAL: size=0x%.8X flash=0x%.8X virt=0x%.16X", iv_TOC[PNOR::SIDE_A][PNOR::GLOBAL_DATA].size, iv_TOC[PNOR::SIDE_A][PNOR::GLOBAL_DATA].flashAddr, iv_TOC[PNOR::SIDE_A][PNOR::GLOBAL_DATA].virtAddr ); + TRACFCOMP(g_trac_pnor, "DATA: size=0x%.8X flash=0x%.8X virt=0x%.16X", iv_TOC[PNOR::SIDE_A][PNOR::HB_DATA].size, iv_TOC[PNOR::SIDE_A][PNOR::HB_DATA].flashAddr, iv_TOC[PNOR::SIDE_A][PNOR::HB_DATA].virtAddr ); + //@todo - load flash layout (how many chips) //@todo - read TOC on each chip/bank/whatever diff --git a/src/usr/targeting/xmltohb/attribute_types.xml b/src/usr/targeting/xmltohb/attribute_types.xml index 15b77b8aa..3b0cb4cb1 100644 --- a/src/usr/targeting/xmltohb/attribute_types.xml +++ b/src/usr/targeting/xmltohb/attribute_types.xml @@ -169,6 +169,9 @@ VENICE + + MURANO + CENTAUR 48 diff --git a/src/usr/targeting/xmltohb/makefile b/src/usr/targeting/xmltohb/makefile index 252460fc2..ebcbec44c 100644 --- a/src/usr/targeting/xmltohb/makefile +++ b/src/usr/targeting/xmltohb/makefile @@ -37,7 +37,8 @@ XMLTOHB_SOURCE_TARGETS = \ XMLTOHB_SYSTEM_BINARIES = \ vbu_targeting.bin \ simics_SALERNO_targeting.bin \ - simics_VENICE_targeting.bin + simics_VENICE_targeting.bin \ + simics_MURANO_targeting.bin XMLTOHB_TARGETS = \ ${XMLTOHB_HEADER_TARGETS} \ diff --git a/src/usr/targeting/xmltohb/simics_MURANO.mrw.xml b/src/usr/targeting/xmltohb/simics_MURANO.mrw.xml new file mode 100644 index 000000000..adeb2bce9 --- /dev/null +++ b/src/usr/targeting/xmltohb/simics_MURANO.mrw.xml @@ -0,0 +1,22 @@ + diff --git a/src/usr/targeting/xmltohb/simics_MURANO.system.xml b/src/usr/targeting/xmltohb/simics_MURANO.system.xml new file mode 100644 index 000000000..1b5edada4 --- /dev/null +++ b/src/usr/targeting/xmltohb/simics_MURANO.system.xml @@ -0,0 +1,5951 @@ + + + + + + + + + sys0 + sys-sys-power8 + + PHYS_PATH + physical:sys-0 + + + AFFINITY_PATH + affinity:sys-0 + + + PROC_EPS_TABLE_TYPE + EPS_TYPE_LE + + + PROC_FABRIC_PUMP_MODE + MODE1 + + + PROC_X_BUS_WIDTH + W8BYTE + + + ALL_MCS_IN_INTERLEAVING_GROUP + 1 + + + FREQ_PROC_REFCLOCK + 200 + + + FREQ_MEM_REFCLOCK + 266 + + + FREQ_CORE_FLOOR + 2500 + + + + + + + sys0node0 + enc-node-power8 + + PHYS_PATH + physical:sys-0/node-0 + + + AFFINITY_PATH + affinity:sys-0/node-0 + + + + + + + sys0node0proc0 + chip-processor-murano + POSITION0 + SCOM_SWITCHES + + useFsiScom0 + useXscom1 + useInbandScom0 + reserved0 + + + + XSCOM_CHIP_INFO + + nodeId0 + chipId0 + + + + PHYS_PATH + physical:sys-0/node-0/proc-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0 + + + + + + + + sys0node0proc0ex0 + unit-ex-murano + + PHYS_PATH + physical:sys-0/node-0/proc-0/ex-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/ex-0 + + + CHIP_UNIT + 0 + + + + + sys0node0proc0ex4 + unit-ex-murano + + PHYS_PATH + physical:sys-0/node-0/proc-0/ex-4 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/ex-4 + + + CHIP_UNIT + 4 + + + + + sys0node0proc0ex5 + unit-ex-murano + + PHYS_PATH + physical:sys-0/node-0/proc-0/ex-5 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/ex-5 + + + CHIP_UNIT + 5 + + + + + sys0node0proc0ex6 + unit-ex-murano + + PHYS_PATH + physical:sys-0/node-0/proc-0/ex-6 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/ex-6 + + + CHIP_UNIT + 6 + + + + + sys0node0proc0ex12 + unit-ex-murano + + PHYS_PATH + physical:sys-0/node-0/proc-0/ex-12 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/ex-12 + + + CHIP_UNIT + 12 + + + + + sys0node0proc0ex13 + unit-ex-murano + + PHYS_PATH + physical:sys-0/node-0/proc-0/ex-13 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/ex-13 + + + CHIP_UNIT + 13 + + + + + sys0node0proc0ex14 + unit-ex-murano + + PHYS_PATH + physical:sys-0/node-0/proc-0/ex-14 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/ex-14 + + + CHIP_UNIT + 14 + + + + + + + + sys0node0proc0ex0core0 + unit-core-murano + + PHYS_PATH + physical:sys-0/node-0/proc-0/ex-0/core-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/ex-0/core-0 + + + CHIP_UNIT + 0 + + + + + sys0node0proc0ex4core0 + unit-core-murano + + PHYS_PATH + physical:sys-0/node-0/proc-0/ex-4/core-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/ex-4/core-0 + + + CHIP_UNIT + 4 + + + + + sys0node0proc0ex5core0 + unit-core-murano + + PHYS_PATH + physical:sys-0/node-0/proc-0/ex-5/core-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/ex-5/core-0 + + + CHIP_UNIT + 5 + + + + + sys0node0proc0ex6core0 + unit-core-murano + + PHYS_PATH + physical:sys-0/node-0/proc-0/ex-6/core-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/ex-6/core-0 + + + CHIP_UNIT + 6 + + + + + sys0node0proc0ex12core0 + unit-core-murano + + PHYS_PATH + physical:sys-0/node-0/proc-0/ex-12/core-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/ex-12/core-0 + + + CHIP_UNIT + 12 + + + + + sys0node0proc0ex13core0 + unit-core-murano + + PHYS_PATH + physical:sys-0/node-0/proc-0/ex-13/core-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/ex-13/core-0 + + + CHIP_UNIT + 13 + + + + + sys0node0proc0ex14core0 + unit-core-murano + + PHYS_PATH + physical:sys-0/node-0/proc-0/ex-14/core-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/ex-14/core-0 + + + CHIP_UNIT + 14 + + + + + + + sys0node0proc0mcs4 + unit-mcs-murano + + PHYS_PATH + physical:sys-0/node-0/proc-0/mcs-4 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-4 + + + CHIP_UNIT + 4 + + + + + sys0node0proc0mcs5 + unit-mcs-murano + + PHYS_PATH + physical:sys-0/node-0/proc-0/mcs-5 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-5 + + + CHIP_UNIT + 5 + + + + + sys0node0proc0mcs6 + unit-mcs-murano + + PHYS_PATH + physical:sys-0/node-0/proc-0/mcs-6 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-6 + + + CHIP_UNIT + 6 + + + + + sys0node0proc0mcs7 + unit-mcs-murano + + PHYS_PATH + physical:sys-0/node-0/proc-0/mcs-7 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-7 + + + CHIP_UNIT + 7 + + + + + + + sys0node0proc0pervasive0 + unit-pervasive-murano + + PHYS_PATH + physical:sys-0/node-0/proc-0/pervasive-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/pervasive-0 + + + + + + + sys0node0proc0powerbus0 + unit-powerbus-murano + + PHYS_PATH + physical:sys-0/node-0/proc-0/powerbus-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/powerbus-0 + + + + + + + sys0node0proc0pci0 + unit-pci-murano + + PHYS_PATH + physical:sys-0/node-0/proc-0/pci-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/pci-0 + + + CHIP_UNIT + 0 + + + + + sys0node0proc0pci1 + unit-pci-murano + + PHYS_PATH + physical:sys-0/node-0/proc-0/pci-1 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/pci-1 + + + CHIP_UNIT + 1 + + + + + sys0node0proc0pci2 + unit-pci-murano + + PHYS_PATH + physical:sys-0/node-0/proc-0/pci-2 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/pci-2 + + + CHIP_UNIT + 2 + + + + + + + sys0node0proc1 + chip-processor-murano + POSITION1 + SCOM_SWITCHES + + useFsiScom1 + useXscom0 + useInbandScom0 + reserved0 + + + + XSCOM_CHIP_INFO + + nodeId0 + chipId0 + + + + PHYS_PATH + physical:sys-0/node-0/proc-1 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1 + + + + FSI_MASTER_CHIP + physical:sys-0/node-0/proc-0 + + + FSI_MASTER_TYPE + MFSI + + + FSI_MASTER_PORT + 0 + + + FSI_SLAVE_CASCADE + 0 + + + FSI_OPTION_FLAGS + 0 + + + + + + + sys0node0proc1ex4 + unit-ex-murano + + PHYS_PATH + physical:sys-0/node-0/proc-1/ex-4 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/ex-4 + + + CHIP_UNIT + 4 + + + + + sys0node0proc1ex5 + unit-ex-murano + + PHYS_PATH + physical:sys-0/node-0/proc-1/ex-5 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/ex-5 + + + CHIP_UNIT + 5 + + + + + sys0node0proc1ex6 + unit-ex-murano + + PHYS_PATH + physical:sys-0/node-0/proc-1/ex-6 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/ex-6 + + + CHIP_UNIT + 6 + + + + + sys0node0proc1ex12 + unit-ex-murano + + PHYS_PATH + physical:sys-0/node-0/proc-1/ex-12 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/ex-12 + + + CHIP_UNIT + 12 + + + + + sys0node0proc1ex13 + unit-ex-murano + + PHYS_PATH + physical:sys-0/node-0/proc-1/ex-13 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/ex-13 + + + CHIP_UNIT + 13 + + + + + sys0node0proc1ex14 + unit-ex-murano + + PHYS_PATH + physical:sys-0/node-0/proc-1/ex-14 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/ex-14 + + + CHIP_UNIT + 14 + + + + + + + + sys0node0proc1ex4core0 + unit-core-murano + + PHYS_PATH + physical:sys-0/node-0/proc-1/ex-4/core-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/ex-4/core-0 + + + CHIP_UNIT + 4 + + + + + sys0node0proc1ex5core0 + unit-core-murano + + PHYS_PATH + physical:sys-0/node-0/proc-1/ex-5/core-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/ex-5/core-0 + + + CHIP_UNIT + 5 + + + + + sys0node0proc1ex6core0 + unit-core-murano + + PHYS_PATH + physical:sys-0/node-0/proc-1/ex-6/core-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/ex-6/core-0 + + + CHIP_UNIT + 6 + + + + + sys0node0proc1ex12core0 + unit-core-murano + + PHYS_PATH + physical:sys-0/node-0/proc-1/ex-12/core-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/ex-12/core-0 + + + CHIP_UNIT + 12 + + + + + sys0node0proc1ex13core0 + unit-core-murano + + PHYS_PATH + physical:sys-0/node-0/proc-1/ex-13/core-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/ex-13/core-0 + + + CHIP_UNIT + 13 + + + + + sys0node0proc1ex14core0 + unit-core-murano + + PHYS_PATH + physical:sys-0/node-0/proc-1/ex-14/core-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/ex-14/core-0 + + + CHIP_UNIT + 14 + + + + + + + sys0node0proc1mcs4 + unit-mcs-murano + + PHYS_PATH + physical:sys-0/node-0/proc-1/mcs-4 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-4 + + + CHIP_UNIT + 4 + + + + + sys0node0proc1mcs5 + unit-mcs-murano + + PHYS_PATH + physical:sys-0/node-0/proc-1/mcs-5 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-5 + + + CHIP_UNIT + 5 + + + + + sys0node0proc1mcs6 + unit-mcs-murano + + PHYS_PATH + physical:sys-0/node-0/proc-1/mcs-6 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-6 + + + CHIP_UNIT + 6 + + + + + sys0node0proc1mcs7 + unit-mcs-murano + + PHYS_PATH + physical:sys-0/node-0/proc-1/mcs-7 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-7 + + + CHIP_UNIT + 7 + + + + + + + sys0node0proc1pervasive0 + unit-pervasive-murano + + PHYS_PATH + physical:sys-0/node-0/proc-1/pervasive-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/pervasive-0 + + + + + + + sys0node0proc1powerbus0 + unit-powerbus-murano + + PHYS_PATH + physical:sys-0/node-0/proc-1/powerbus-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/powerbus-0 + + + + + + + sys0node0proc1pci0 + unit-pci-murano + + PHYS_PATH + physical:sys-0/node-0/proc-1/pci-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/pci-0 + + + CHIP_UNIT + 0 + + + + + sys0node0proc1pci1 + unit-pci-murano + + PHYS_PATH + physical:sys-0/node-0/proc-1/pci-1 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/pci-1 + + + CHIP_UNIT + 1 + + + + + sys0node0proc1pci2 + unit-pci-murano + + PHYS_PATH + physical:sys-0/node-0/proc-1/pci-2 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/pci-2 + + + CHIP_UNIT + 2 + + + + + + + sys0node0proc2 + chip-processor-murano + POSITION2 + SCOM_SWITCHES + + useFsiScom1 + useXscom0 + useInbandScom0 + reserved0 + + + + XSCOM_CHIP_INFO + + nodeId0 + chipId0 + + + + PHYS_PATH + physical:sys-0/node-0/proc-2 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2 + + + + FSI_MASTER_CHIP + physical:sys-0/node-0/proc-0 + + + FSI_MASTER_TYPE + MFSI + + + FSI_MASTER_PORT + 1 + + + FSI_SLAVE_CASCADE + 0 + + + FSI_OPTION_FLAGS + 0 + + + + + + + sys0node0proc2ex4 + unit-ex-murano + + PHYS_PATH + physical:sys-0/node-0/proc-2/ex-4 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/ex-4 + + + CHIP_UNIT + 4 + + + + + sys0node0proc2ex5 + unit-ex-murano + + PHYS_PATH + physical:sys-0/node-0/proc-2/ex-5 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/ex-5 + + + CHIP_UNIT + 5 + + + + + sys0node0proc2ex6 + unit-ex-murano + + PHYS_PATH + physical:sys-0/node-0/proc-2/ex-6 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/ex-6 + + + CHIP_UNIT + 6 + + + + + sys0node0proc2ex12 + unit-ex-murano + + PHYS_PATH + physical:sys-0/node-0/proc-2/ex-12 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/ex-12 + + + CHIP_UNIT + 12 + + + + + sys0node0proc2ex13 + unit-ex-murano + + PHYS_PATH + physical:sys-0/node-0/proc-2/ex-13 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/ex-13 + + + CHIP_UNIT + 13 + + + + + sys0node0proc2ex14 + unit-ex-murano + + PHYS_PATH + physical:sys-0/node-0/proc-2/ex-14 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/ex-14 + + + CHIP_UNIT + 14 + + + + + + + + sys0node0proc2ex4core0 + unit-core-murano + + PHYS_PATH + physical:sys-0/node-0/proc-2/ex-4/core-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/ex-4/core-0 + + + CHIP_UNIT + 4 + + + + + sys0node0proc2ex5core0 + unit-core-murano + + PHYS_PATH + physical:sys-0/node-0/proc-2/ex-5/core-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/ex-5/core-0 + + + CHIP_UNIT + 5 + + + + + sys0node0proc2ex6core0 + unit-core-murano + + PHYS_PATH + physical:sys-0/node-0/proc-2/ex-6/core-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/ex-6/core-0 + + + CHIP_UNIT + 6 + + + + + sys0node0proc2ex12core0 + unit-core-murano + + PHYS_PATH + physical:sys-0/node-0/proc-2/ex-12/core-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/ex-12/core-0 + + + CHIP_UNIT + 12 + + + + + sys0node0proc2ex13core0 + unit-core-murano + + PHYS_PATH + physical:sys-0/node-0/proc-2/ex-13/core-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/ex-13/core-0 + + + CHIP_UNIT + 13 + + + + + sys0node0proc2ex14core0 + unit-core-murano + + PHYS_PATH + physical:sys-0/node-0/proc-2/ex-14/core-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/ex-14/core-0 + + + CHIP_UNIT + 14 + + + + + + + + sys0node0proc2mcs4 + unit-mcs-murano + + PHYS_PATH + physical:sys-0/node-0/proc-2/mcs-4 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-4 + + + CHIP_UNIT + 4 + + + + + sys0node0proc2mcs5 + unit-mcs-murano + + PHYS_PATH + physical:sys-0/node-0/proc-2/mcs-5 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-5 + + + CHIP_UNIT + 5 + + + + + sys0node0proc2mcs6 + unit-mcs-murano + + PHYS_PATH + physical:sys-0/node-0/proc-2/mcs-6 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-6 + + + CHIP_UNIT + 6 + + + + + sys0node0proc2mcs7 + unit-mcs-murano + + PHYS_PATH + physical:sys-0/node-0/proc-2/mcs-7 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-7 + + + CHIP_UNIT + 7 + + + + + + + sys0node0proc2pervasive0 + unit-pervasive-murano + + PHYS_PATH + physical:sys-0/node-0/proc-2/pervasive-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/pervasive-0 + + + + + + + sys0node0proc2powerbus0 + unit-powerbus-murano + + PHYS_PATH + physical:sys-0/node-0/proc-2/powerbus-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/powerbus-0 + + + + + + + sys0node0proc2pci0 + unit-pci-murano + + PHYS_PATH + physical:sys-0/node-0/proc-2/pci-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/pci-0 + + + CHIP_UNIT + 0 + + + + + sys0node0proc2pci1 + unit-pci-murano + + PHYS_PATH + physical:sys-0/node-0/proc-2/pci-1 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/pci-1 + + + CHIP_UNIT + 1 + + + + + sys0node0proc2pci2 + unit-pci-murano + + PHYS_PATH + physical:sys-0/node-0/proc-2/pci-2 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/pci-2 + + + CHIP_UNIT + 2 + + + + + + + sys0node0proc3 + chip-processor-murano + POSITION3 + SCOM_SWITCHES + + useFsiScom1 + useXscom0 + useInbandScom0 + reserved0 + + + + XSCOM_CHIP_INFO + + nodeId0 + chipId0 + + + + PHYS_PATH + physical:sys-0/node-0/proc-3 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3 + + + + FSI_MASTER_CHIP + physical:sys-0/node-0/proc-0 + + + FSI_MASTER_TYPE + MFSI + + + FSI_MASTER_PORT + 2 + + + FSI_SLAVE_CASCADE + 0 + + + FSI_OPTION_FLAGS + 0 + + + + + + + sys0node0proc3ex4 + unit-ex-murano + + PHYS_PATH + physical:sys-0/node-0/proc-3/ex-4 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/ex-4 + + + CHIP_UNIT + 4 + + + + + sys0node0proc3ex5 + unit-ex-murano + + PHYS_PATH + physical:sys-0/node-0/proc-3/ex-5 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/ex-5 + + + CHIP_UNIT + 5 + + + + + sys0node0proc3ex6 + unit-ex-murano + + PHYS_PATH + physical:sys-0/node-0/proc-3/ex-6 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/ex-6 + + + CHIP_UNIT + 6 + + + + + sys0node0proc3ex12 + unit-ex-murano + + PHYS_PATH + physical:sys-0/node-0/proc-3/ex-12 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/ex-12 + + + CHIP_UNIT + 12 + + + + + sys0node0proc3ex13 + unit-ex-murano + + PHYS_PATH + physical:sys-0/node-0/proc-3/ex-13 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/ex-13 + + + CHIP_UNIT + 13 + + + + + sys0node0proc3ex14 + unit-ex-murano + + PHYS_PATH + physical:sys-0/node-0/proc-3/ex-14 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/ex-14 + + + CHIP_UNIT + 14 + + + + + + + sys0node0proc3ex4core0 + unit-core-murano + + PHYS_PATH + physical:sys-0/node-0/proc-3/ex-4/core-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/ex-4/core-0 + + + CHIP_UNIT + 4 + + + + + sys0node0proc3ex5core0 + unit-core-murano + + PHYS_PATH + physical:sys-0/node-0/proc-3/ex-5/core-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/ex-5/core-0 + + + CHIP_UNIT + 5 + + + + + sys0node0proc3ex6core0 + unit-core-murano + + PHYS_PATH + physical:sys-0/node-0/proc-3/ex-6/core-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/ex-6/core-0 + + + CHIP_UNIT + 6 + + + + + sys0node0proc3ex12core0 + unit-core-murano + + PHYS_PATH + physical:sys-0/node-0/proc-3/ex-12/core-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/ex-12/core-0 + + + CHIP_UNIT + 12 + + + + + sys0node0proc3ex13core0 + unit-core-murano + + PHYS_PATH + physical:sys-0/node-0/proc-3/ex-13/core-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/ex-13/core-0 + + + CHIP_UNIT + 13 + + + + + sys0node0proc3ex14core0 + unit-core-murano + + PHYS_PATH + physical:sys-0/node-0/proc-3/ex-14/core-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/ex-14/core-0 + + + CHIP_UNIT + 14 + + + + + + + + sys0node0proc3mcs4 + unit-mcs-murano + + PHYS_PATH + physical:sys-0/node-0/proc-3/mcs-4 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-4 + + + CHIP_UNIT + 4 + + + + + sys0node0proc3mcs5 + unit-mcs-murano + + PHYS_PATH + physical:sys-0/node-0/proc-3/mcs-5 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-5 + + + CHIP_UNIT + 5 + + + + + sys0node0proc3mcs6 + unit-mcs-murano + + PHYS_PATH + physical:sys-0/node-0/proc-3/mcs-6 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-6 + + + CHIP_UNIT + 6 + + + + + sys0node0proc3mcs7 + unit-mcs-murano + + PHYS_PATH + physical:sys-0/node-0/proc-3/mcs-7 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-7 + + + CHIP_UNIT + 7 + + + + + + + sys0node0proc3pervasive0 + unit-pervasive-murano + + PHYS_PATH + physical:sys-0/node-0/proc-3/pervasive-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/pervasive-0 + + + + + + + sys0node0proc3powerbus0 + unit-powerbus-murano + + PHYS_PATH + physical:sys-0/node-0/proc-3/powerbus-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/powerbus-0 + + + + + + + sys0node0proc3pci0 + unit-pci-murano + + PHYS_PATH + physical:sys-0/node-0/proc-3/pci-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/pci-0 + + + CHIP_UNIT + 0 + + + + + sys0node0proc3pci1 + unit-pci-murano + + PHYS_PATH + physical:sys-0/node-0/proc-3/pci-1 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/pci-1 + + + CHIP_UNIT + 1 + + + + + sys0node0proc3pci2 + unit-pci-murano + + PHYS_PATH + physical:sys-0/node-0/proc-3/pci-2 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/pci-2 + + + CHIP_UNIT + 2 + + + + + + + + sys0node0membuf0 + chip-membuf-centaur + POSITION0 + + PHYS_PATH + physical:sys-0/node-0/membuf-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-4/membuf-0 + + + + + FSI_MASTER_CHIP + physical:sys-0/node-0/proc-0 + + + FSI_MASTER_TYPE + CMFSI + + + FSI_MASTER_PORT + 0 + + + FSI_SLAVE_CASCADE + 0 + + + FSI_OPTION_FLAGS + 0 + + + + + + + sys0node0membuf0mbs0 + unit-mbs-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-0/mbs-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-4/membuf-0/mbs-0 + + + + + + + sys0node0membuf0mbs0mba0 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-0/mbs-0/mba-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-4/membuf-0/mbs-0/mba-0 + + + CHIP_UNIT + 0 + + + + + sys0node0membuf0mbs0mba1 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-0/mbs-0/mba-1 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-4/membuf-0/mbs-0/mba-1 + + + CHIP_UNIT + 1 + + + + + + + + + + + sys0node0membuf1 + chip-membuf-centaur + POSITION1 + + PHYS_PATH + physical:sys-0/node-0/membuf-1 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-5/membuf-0 + + + + + FSI_MASTER_CHIP + physical:sys-0/node-0/proc-0 + + + FSI_MASTER_TYPE + CMFSI + + + FSI_MASTER_PORT + 1 + + + FSI_SLAVE_CASCADE + 0 + + + FSI_OPTION_FLAGS + 0 + + + + + + + sys0node0membuf1mbs0 + unit-mbs-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-1/mbs-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-5/membuf-0/mbs-0 + + + + + + + sys0node0membuf1mbs0mba0 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-1/mbs-0/mba-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-5/membuf-0/mbs-0/mba-0 + + + CHIP_UNIT + 0 + + + + + sys0node0membuf1mbs0mba1 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-1/mbs-0/mba-1 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-5/membuf-0/mbs-0/mba-1 + + + CHIP_UNIT + 1 + + + + + + + + + + + sys0node0membuf2 + chip-membuf-centaur + POSITION2 + + PHYS_PATH + physical:sys-0/node-0/membuf-2 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-6/membuf-0 + + + + + FSI_MASTER_CHIP + physical:sys-0/node-0/proc-0 + + + FSI_MASTER_TYPE + CMFSI + + + FSI_MASTER_PORT + 2 + + + FSI_SLAVE_CASCADE + 0 + + + FSI_OPTION_FLAGS + 0 + + + + + + + sys0node0membuf2mbs0 + unit-mbs-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-2/mbs-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-6/membuf-0/mbs-0 + + + + + + + sys0node0membuf2mbs0mba0 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-2/mbs-0/mba-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-6/membuf-0/mbs-0/mba-0 + + + CHIP_UNIT + 0 + + + + + sys0node0membuf2mbs0mba1 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-2/mbs-0/mba-1 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-6/membuf-0/mbs-0/mba-1 + + + CHIP_UNIT + 1 + + + + + + + + + + + sys0node0membuf3 + chip-membuf-centaur + POSITION3 + + PHYS_PATH + physical:sys-0/node-0/membuf-3 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-7/membuf-0 + + + + + FSI_MASTER_CHIP + physical:sys-0/node-0/proc-0 + + + FSI_MASTER_TYPE + CMFSI + + + FSI_MASTER_PORT + 3 + + + FSI_SLAVE_CASCADE + 0 + + + FSI_OPTION_FLAGS + 0 + + + + + + + sys0node0membuf3mbs0 + unit-mbs-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-3/mbs-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-7/membuf-0/mbs-0 + + + + + + + sys0node0membuf3mbs0mba0 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-3/mbs-0/mba-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-7/membuf-0/mbs-0/mba-0 + + + CHIP_UNIT + 0 + + + + + sys0node0membuf3mbs0mba1 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-3/mbs-0/mba-1 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-7/membuf-0/mbs-0/mba-1 + + + CHIP_UNIT + 1 + + + + + + + + + + sys0node0membuf8 + chip-membuf-centaur + POSITION8 + + PHYS_PATH + physical:sys-0/node-0/membuf-8 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-4/membuf-0 + + + + + FSI_MASTER_CHIP + physical:sys-0/node-0/proc-1 + + + FSI_MASTER_TYPE + CMFSI + + + FSI_MASTER_PORT + 0 + + + FSI_SLAVE_CASCADE + 0 + + + FSI_OPTION_FLAGS + 0 + + + + + + + sys0node0membuf8mbs0 + unit-mbs-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-8/mbs-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-4/membuf-0/mbs-0 + + + + + + + sys0node0membuf8mbs0mba0 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-8/mbs-0/mba-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-4/membuf-0/mbs-0/mba-0 + + + CHIP_UNIT + 0 + + + + + sys0node0membuf8mbs0mba1 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-8/mbs-0/mba-1 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-4/membuf-0/mbs-0/mba-1 + + + CHIP_UNIT + 1 + + + + + + + + + + + sys0node0membuf9 + chip-membuf-centaur + POSITION9 + + PHYS_PATH + physical:sys-0/node-0/membuf-9 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-5/membuf-0 + + + + + FSI_MASTER_CHIP + physical:sys-0/node-0/proc-1 + + + FSI_MASTER_TYPE + CMFSI + + + FSI_MASTER_PORT + 1 + + + FSI_SLAVE_CASCADE + 0 + + + FSI_OPTION_FLAGS + 0 + + + + + + + sys0node0membuf9mbs0 + unit-mbs-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-9/mbs-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-5/membuf-0/mbs-0 + + + + + + + sys0node0membuf9mbs0mba0 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-9/mbs-0/mba-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-5/membuf-0/mbs-0/mba-0 + + + CHIP_UNIT + 0 + + + + + sys0node0membuf9mbs0mba1 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-9/mbs-0/mba-1 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-5/membuf-0/mbs-0/mba-1 + + + CHIP_UNIT + 1 + + + + + + + + + + + sys0node0membuf10 + chip-membuf-centaur + POSITION10 + + PHYS_PATH + physical:sys-0/node-0/membuf-10 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-6/membuf-0 + + + + + FSI_MASTER_CHIP + physical:sys-0/node-0/proc-1 + + + FSI_MASTER_TYPE + CMFSI + + + FSI_MASTER_PORT + 2 + + + FSI_SLAVE_CASCADE + 0 + + + FSI_OPTION_FLAGS + 0 + + + + + + + sys0node0membuf10mbs0 + unit-mbs-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-10/mbs-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-6/membuf-0/mbs-0 + + + + + + + sys0node0membuf10mbs0mba0 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-10/mbs-0/mba-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-6/membuf-0/mbs-0/mba-0 + + + CHIP_UNIT + 0 + + + + + sys0node0membuf10mbs0mba1 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-10/mbs-0/mba-1 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-6/membuf-0/mbs-0/mba-1 + + + CHIP_UNIT + 1 + + + + + + + + + + + sys0node0membuf11 + chip-membuf-centaur + POSITION11 + + PHYS_PATH + physical:sys-0/node-0/membuf-11 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-7/membuf-0 + + + + + FSI_MASTER_CHIP + physical:sys-0/node-0/proc-1 + + + FSI_MASTER_TYPE + CMFSI + + + FSI_MASTER_PORT + 3 + + + FSI_SLAVE_CASCADE + 0 + + + FSI_OPTION_FLAGS + 0 + + + + + + + sys0node0membuf11mbs0 + unit-mbs-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-11/mbs-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-7/membuf-0/mbs-0 + + + + + + + sys0node0membuf11mbs0mba0 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-11/mbs-0/mba-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-7/membuf-0/mbs-0/mba-0 + + + CHIP_UNIT + 0 + + + + + sys0node0membuf11mbs0mba1 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-11/mbs-0/mba-1 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-7/membuf-0/mbs-0/mba-1 + + + CHIP_UNIT + 1 + + + + + + + + + + sys0node0membuf16 + chip-membuf-centaur + POSITION16 + + PHYS_PATH + physical:sys-0/node-0/membuf-16 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-4/membuf-0 + + + + + FSI_MASTER_CHIP + physical:sys-0/node-0/proc-2 + + + FSI_MASTER_TYPE + CMFSI + + + FSI_MASTER_PORT + 0 + + + FSI_SLAVE_CASCADE + 0 + + + FSI_OPTION_FLAGS + 0 + + + + + + + sys0node0membuf16mbs0 + unit-mbs-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-16/mbs-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-4/membuf-0/mbs-0 + + + + + + + sys0node0membuf16mbs0mba0 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-16/mbs-0/mba-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-4/membuf-0/mbs-0/mba-0 + + + CHIP_UNIT + 0 + + + + + sys0node0membuf16mbs0mba1 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-16/mbs-0/mba-1 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-4/membuf-0/mbs-0/mba-1 + + + CHIP_UNIT + 1 + + + + + + + + + + + sys0node0membuf17 + chip-membuf-centaur + POSITION17 + + PHYS_PATH + physical:sys-0/node-0/membuf-17 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-5/membuf-0 + + + + + FSI_MASTER_CHIP + physical:sys-0/node-0/proc-2 + + + FSI_MASTER_TYPE + CMFSI + + + FSI_MASTER_PORT + 1 + + + FSI_SLAVE_CASCADE + 0 + + + FSI_OPTION_FLAGS + 0 + + + + + + + sys0node0membuf17mbs0 + unit-mbs-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-17/mbs-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-5/membuf-0/mbs-0 + + + + + + + sys0node0membuf17mbs0mba0 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-17/mbs-0/mba-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-5/membuf-0/mbs-0/mba-0 + + + CHIP_UNIT + 0 + + + + + sys0node0membuf17mbs0mba1 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-17/mbs-0/mba-1 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-5/membuf-0/mbs-0/mba-1 + + + CHIP_UNIT + 1 + + + + + + + + + + + sys0node0membuf18 + chip-membuf-centaur + POSITION18 + + PHYS_PATH + physical:sys-0/node-0/membuf-18 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-6/membuf-0 + + + + + FSI_MASTER_CHIP + physical:sys-0/node-0/proc-2 + + + FSI_MASTER_TYPE + CMFSI + + + FSI_MASTER_PORT + 2 + + + FSI_SLAVE_CASCADE + 0 + + + FSI_OPTION_FLAGS + 0 + + + + + + + sys0node0membuf18mbs0 + unit-mbs-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-18/mbs-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-6/membuf-0/mbs-0 + + + + + + + sys0node0membuf18mbs0mba0 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-18/mbs-0/mba-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-6/membuf-0/mbs-0/mba-0 + + + CHIP_UNIT + 0 + + + + + sys0node0membuf18mbs0mba1 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-18/mbs-0/mba-1 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-6/membuf-0/mbs-0/mba-1 + + + CHIP_UNIT + 1 + + + + + + + + + + + sys0node0membuf19 + chip-membuf-centaur + POSITION19 + + PHYS_PATH + physical:sys-0/node-0/membuf-19 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-7/membuf-0 + + + + + FSI_MASTER_CHIP + physical:sys-0/node-0/proc-2 + + + FSI_MASTER_TYPE + CMFSI + + + FSI_MASTER_PORT + 3 + + + FSI_SLAVE_CASCADE + 0 + + + FSI_OPTION_FLAGS + 0 + + + + + + + sys0node0membuf19mbs0 + unit-mbs-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-19/mbs-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-7/membuf-0/mbs-0 + + + + + + + sys0node0membuf19mbs0mba0 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-19/mbs-0/mba-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-7/membuf-0/mbs-0/mba-0 + + + CHIP_UNIT + 0 + + + + + sys0node0membuf19mbs0mba1 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-19/mbs-0/mba-1 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-7/membuf-0/mbs-0/mba-1 + + + CHIP_UNIT + 1 + + + + + + + + + + sys0node0membuf24 + chip-membuf-centaur + POSITION24 + + PHYS_PATH + physical:sys-0/node-0/membuf-24 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-4/membuf-0 + + + + + FSI_MASTER_CHIP + physical:sys-0/node-0/proc-3 + + + FSI_MASTER_TYPE + CMFSI + + + FSI_MASTER_PORT + 0 + + + FSI_SLAVE_CASCADE + 0 + + + FSI_OPTION_FLAGS + 0 + + + + + + + sys0node0membuf24mbs0 + unit-mbs-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-24/mbs-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-4/membuf-0/mbs-0 + + + + + + + sys0node0membuf24mbs0mba0 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-24/mbs-0/mba-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-4/membuf-0/mbs-0/mba-0 + + + CHIP_UNIT + 0 + + + + + sys0node0membuf24mbs0mba1 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-24/mbs-0/mba-1 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-4/membuf-0/mbs-0/mba-1 + + + CHIP_UNIT + 1 + + + + + + + + + + + sys0node0membuf25 + chip-membuf-centaur + POSITION25 + + PHYS_PATH + physical:sys-0/node-0/membuf-25 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-5/membuf-0 + + + + + FSI_MASTER_CHIP + physical:sys-0/node-0/proc-3 + + + FSI_MASTER_TYPE + CMFSI + + + FSI_MASTER_PORT + 1 + + + FSI_SLAVE_CASCADE + 0 + + + FSI_OPTION_FLAGS + 0 + + + + + + + sys0node0membuf25mbs0 + unit-mbs-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-25/mbs-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-5/membuf-0/mbs-0 + + + + + + + sys0node0membuf25mbs0mba0 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-25/mbs-0/mba-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-5/membuf-0/mbs-0/mba-0 + + + CHIP_UNIT + 0 + + + + + sys0node0membuf25mbs0mba1 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-25/mbs-0/mba-1 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-5/membuf-0/mbs-0/mba-1 + + + CHIP_UNIT + 1 + + + + + + + + + + + sys0node0membuf26 + chip-membuf-centaur + POSITION26 + + PHYS_PATH + physical:sys-0/node-0/membuf-26 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-6/membuf-0 + + + + + FSI_MASTER_CHIP + physical:sys-0/node-0/proc-3 + + + FSI_MASTER_TYPE + CMFSI + + + FSI_MASTER_PORT + 2 + + + FSI_SLAVE_CASCADE + 0 + + + FSI_OPTION_FLAGS + 0 + + + + + + + sys0node0membuf26mbs0 + unit-mbs-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-26/mbs-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-6/membuf-0/mbs-0 + + + + + + + sys0node0membuf26mbs0mba0 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-26/mbs-0/mba-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-6/membuf-0/mbs-0/mba-0 + + + CHIP_UNIT + 0 + + + + + sys0node0membuf26mbs0mba1 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-26/mbs-0/mba-1 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-6/membuf-0/mbs-0/mba-1 + + + CHIP_UNIT + 1 + + + + + + + + + + + sys0node0membuf27 + chip-membuf-centaur + POSITION27 + + PHYS_PATH + physical:sys-0/node-0/membuf-27 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-7/membuf-0 + + + + + FSI_MASTER_CHIP + physical:sys-0/node-0/proc-3 + + + FSI_MASTER_TYPE + CMFSI + + + FSI_MASTER_PORT + 3 + + + FSI_SLAVE_CASCADE + 0 + + + FSI_OPTION_FLAGS + 0 + + + + + + + sys0node0membuf27mbs0 + unit-mbs-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-27/mbs-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-7/membuf-0/mbs-0 + + + + + + + sys0node0membuf27mbs0mba0 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-27/mbs-0/mba-0 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-7/membuf-0/mbs-0/mba-0 + + + CHIP_UNIT + 0 + + + + + sys0node0membuf27mbs0mba1 + unit-mba-centaur + + PHYS_PATH + physical:sys-0/node-0/membuf-27/mbs-0/mba-1 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-7/membuf-0/mbs-0/mba-1 + + + CHIP_UNIT + 1 + + + + + + + + + + + sys0node0dimm32 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-32 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-4/membuf-0/mbs-0/mba-0/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm33 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-33 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-4/membuf-0/mbs-0/mba-0/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm34 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-34 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-4/membuf-0/mbs-0/mba-0/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm35 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-35 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-4/membuf-0/mbs-0/mba-0/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm36 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-36 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-4/membuf-0/mbs-0/mba-1/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm37 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-37 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-4/membuf-0/mbs-0/mba-1/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm38 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-38 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-4/membuf-0/mbs-0/mba-1/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm39 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-39 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-4/membuf-0/mbs-0/mba-1/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm40 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-40 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-5/membuf-0/mbs-0/mba-0/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm41 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-41 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-5/membuf-0/mbs-0/mba-0/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm42 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-42 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-5/membuf-0/mbs-0/mba-0/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm43 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-43 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-5/membuf-0/mbs-0/mba-0/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm44 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-44 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-5/membuf-0/mbs-0/mba-1/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm45 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-45 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-5/membuf-0/mbs-0/mba-1/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm46 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-46 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-5/membuf-0/mbs-0/mba-1/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm47 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-47 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-5/membuf-0/mbs-0/mba-1/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm48 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-48 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-6/membuf-0/mbs-0/mba-0/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm49 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-49 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-6/membuf-0/mbs-0/mba-0/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm50 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-50 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-6/membuf-0/mbs-0/mba-0/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm51 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-51 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-6/membuf-0/mbs-0/mba-0/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm52 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-52 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-6/membuf-0/mbs-0/mba-1/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm53 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-53 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-6/membuf-0/mbs-0/mba-1/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm54 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-54 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-6/membuf-0/mbs-0/mba-1/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm55 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-55 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-6/membuf-0/mbs-0/mba-1/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm56 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-56 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-7/membuf-0/mbs-0/mba-0/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm57 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-57 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-7/membuf-0/mbs-0/mba-0/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm58 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-58 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-7/membuf-0/mbs-0/mba-0/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm59 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-59 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-7/membuf-0/mbs-0/mba-0/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm60 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-60 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-7/membuf-0/mbs-0/mba-1/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm61 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-61 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-7/membuf-0/mbs-0/mba-1/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm62 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-62 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-7/membuf-0/mbs-0/mba-1/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm63 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-63 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-0/mcs-7/membuf-0/mbs-0/mba-1/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm96 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-96 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-4/membuf-0/mbs-0/mba-0/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm97 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-97 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-4/membuf-0/mbs-0/mba-0/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm98 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-98 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-4/membuf-0/mbs-0/mba-0/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm99 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-99 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-4/membuf-0/mbs-0/mba-0/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm100 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-100 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-4/membuf-0/mbs-0/mba-1/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm101 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-101 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-4/membuf-0/mbs-0/mba-1/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm102 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-102 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-4/membuf-0/mbs-0/mba-1/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm103 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-103 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-4/membuf-0/mbs-0/mba-1/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm104 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-104 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-5/membuf-0/mbs-0/mba-0/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm105 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-105 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-5/membuf-0/mbs-0/mba-0/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm106 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-106 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-5/membuf-0/mbs-0/mba-0/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm107 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-107 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-5/membuf-0/mbs-0/mba-0/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm108 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-108 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-5/membuf-0/mbs-0/mba-1/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm109 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-109 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-5/membuf-0/mbs-0/mba-1/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm110 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-110 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-5/membuf-0/mbs-0/mba-1/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm111 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-111 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-5/membuf-0/mbs-0/mba-1/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm112 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-112 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-6/membuf-0/mbs-0/mba-0/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm113 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-113 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-6/membuf-0/mbs-0/mba-0/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm114 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-114 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-6/membuf-0/mbs-0/mba-0/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm115 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-115 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-6/membuf-0/mbs-0/mba-0/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm116 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-116 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-6/membuf-0/mbs-0/mba-1/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm117 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-117 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-6/membuf-0/mbs-0/mba-1/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm118 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-118 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-6/membuf-0/mbs-0/mba-1/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm119 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-119 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-6/membuf-0/mbs-0/mba-1/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm120 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-120 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-7/membuf-0/mbs-0/mba-0/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm121 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-121 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-7/membuf-0/mbs-0/mba-0/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm122 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-122 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-7/membuf-0/mbs-0/mba-0/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm123 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-123 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-7/membuf-0/mbs-0/mba-0/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm124 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-124 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-7/membuf-0/mbs-0/mba-1/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm125 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-125 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-7/membuf-0/mbs-0/mba-1/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm126 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-126 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-7/membuf-0/mbs-0/mba-1/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm127 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-127 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-1/mcs-7/membuf-0/mbs-0/mba-1/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm160 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-160 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-4/membuf-0/mbs-0/mba-0/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm161 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-161 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-4/membuf-0/mbs-0/mba-0/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm162 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-162 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-4/membuf-0/mbs-0/mba-0/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm163 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-163 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-4/membuf-0/mbs-0/mba-0/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm164 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-164 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-4/membuf-0/mbs-0/mba-1/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm165 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-165 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-4/membuf-0/mbs-0/mba-1/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm166 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-166 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-4/membuf-0/mbs-0/mba-1/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm167 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-167 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-4/membuf-0/mbs-0/mba-1/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm168 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-168 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-5/membuf-0/mbs-0/mba-0/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm169 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-169 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-5/membuf-0/mbs-0/mba-0/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm170 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-170 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-5/membuf-0/mbs-0/mba-0/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm171 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-171 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-5/membuf-0/mbs-0/mba-0/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm172 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-172 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-5/membuf-0/mbs-0/mba-1/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm173 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-173 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-5/membuf-0/mbs-0/mba-1/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm174 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-174 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-5/membuf-0/mbs-0/mba-1/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm175 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-175 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-5/membuf-0/mbs-0/mba-1/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm176 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-176 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-6/membuf-0/mbs-0/mba-0/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm177 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-177 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-6/membuf-0/mbs-0/mba-0/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm178 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-178 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-6/membuf-0/mbs-0/mba-0/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm179 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-179 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-6/membuf-0/mbs-0/mba-0/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm180 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-180 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-6/membuf-0/mbs-0/mba-1/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm181 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-181 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-6/membuf-0/mbs-0/mba-1/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm182 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-182 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-6/membuf-0/mbs-0/mba-1/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm183 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-183 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-6/membuf-0/mbs-0/mba-1/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm184 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-184 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-7/membuf-0/mbs-0/mba-0/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm185 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-185 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-7/membuf-0/mbs-0/mba-0/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm186 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-186 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-7/membuf-0/mbs-0/mba-0/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm187 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-187 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-7/membuf-0/mbs-0/mba-0/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm188 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-188 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-7/membuf-0/mbs-0/mba-1/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm189 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-189 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-7/membuf-0/mbs-0/mba-1/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm190 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-190 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-7/membuf-0/mbs-0/mba-1/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm191 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-191 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-2/mcs-7/membuf-0/mbs-0/mba-1/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm224 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-224 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-4/membuf-0/mbs-0/mba-0/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm225 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-225 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-4/membuf-0/mbs-0/mba-0/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm226 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-226 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-4/membuf-0/mbs-0/mba-0/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm227 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-227 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-4/membuf-0/mbs-0/mba-0/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm228 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-228 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-4/membuf-0/mbs-0/mba-1/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm229 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-229 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-4/membuf-0/mbs-0/mba-1/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm230 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-230 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-4/membuf-0/mbs-0/mba-1/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm231 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-231 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-4/membuf-0/mbs-0/mba-1/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm232 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-232 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-5/membuf-0/mbs-0/mba-0/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm233 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-233 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-5/membuf-0/mbs-0/mba-0/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm234 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-234 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-5/membuf-0/mbs-0/mba-0/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm235 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-235 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-5/membuf-0/mbs-0/mba-0/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm236 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-236 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-5/membuf-0/mbs-0/mba-1/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm237 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-237 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-5/membuf-0/mbs-0/mba-1/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm238 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-238 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-5/membuf-0/mbs-0/mba-1/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm239 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-239 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-5/membuf-0/mbs-0/mba-1/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm240 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-240 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-6/membuf-0/mbs-0/mba-0/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm241 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-241 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-6/membuf-0/mbs-0/mba-0/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm242 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-242 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-6/membuf-0/mbs-0/mba-0/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm243 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-243 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-6/membuf-0/mbs-0/mba-0/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm244 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-244 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-6/membuf-0/mbs-0/mba-1/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm245 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-245 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-6/membuf-0/mbs-0/mba-1/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm246 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-246 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-6/membuf-0/mbs-0/mba-1/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm247 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-247 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-6/membuf-0/mbs-0/mba-1/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm248 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-248 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-7/membuf-0/mbs-0/mba-0/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm249 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-249 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-7/membuf-0/mbs-0/mba-0/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm250 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-250 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-7/membuf-0/mbs-0/mba-0/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm251 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-251 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-7/membuf-0/mbs-0/mba-0/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + + sys0node0dimm252 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-252 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-7/membuf-0/mbs-0/mba-1/mem_port-0/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 0 + + + + + sys0node0dimm253 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-253 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-7/membuf-0/mbs-0/mba-1/mem_port-0/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 0 + + + + + sys0node0dimm254 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-254 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-7/membuf-0/mbs-0/mba-1/mem_port-1/dimm-0 + + + MBA_DIMM + 0 + + + MBA_PORT + 1 + + + + + sys0node0dimm255 + lcard-dimm-jedec + + PHYS_PATH + physical:sys-0/node-0/dimm-255 + + + AFFINITY_PATH + affinity:sys-0/node-0/proc-3/mcs-7/membuf-0/mbs-0/mba-1/mem_port-1/dimm-1 + + + MBA_DIMM + 1 + + + MBA_PORT + 1 + + + + diff --git a/src/usr/targeting/xmltohb/simics_VENICE.system.xml b/src/usr/targeting/xmltohb/simics_VENICE.system.xml index 4bfb2df83..9b3573cb1 100644 --- a/src/usr/targeting/xmltohb/simics_VENICE.system.xml +++ b/src/usr/targeting/xmltohb/simics_VENICE.system.xml @@ -28,11 +28,13 @@ configuration * MAXIMUM config has 8 Venice chips + * each Venice has 12 ex chiplets (1-6,9-14) + (@fixme : targets don't match this numbering RTC:38384) * each Venice has 8 MCS chiplets - * each MCS chiplet connects to 1 Centaur membuf chip - * each Centaur membuf chip has 2 MBA chiplets - * each MBA chiplet has 2 ports - * each MBA port connects to 2 dimms + * each MCS chiplet connects to 1 Centaur membuf chip + * each Centaur membuf chip has 2 MBA chiplets + * each MBA chiplet has 2 ports + * each MBA port connects to 2 dimms ================================================================= --> diff --git a/src/usr/targeting/xmltohb/target_types.xml b/src/usr/targeting/xmltohb/target_types.xml index ed6036ebf..206221a5e 100644 --- a/src/usr/targeting/xmltohb/target_types.xml +++ b/src/usr/targeting/xmltohb/target_types.xml @@ -249,6 +249,15 @@ + + chip-processor-murano + chip-processor-power8 + + MODEL + MURANO + + + unit base @@ -269,6 +278,10 @@ DECONFIG_GARDABLE 1 + + CHIP_UNIT + 0 + @@ -328,6 +341,16 @@ + + unit-ex-murano + unit-ex-power8 + + MODEL + MURANO + + + + unit-core-power8 unit @@ -355,6 +378,16 @@ + + unit-core-murano + unit-core-power8 + + MODEL + MURANO + + + + unit-pervasive-power8 unit @@ -382,6 +415,16 @@ + + unit-pervasive-murano + unit-pervasive-power8 + + MODEL + MURANO + + + + unit-pci-power8 unit @@ -409,6 +452,16 @@ + + unit-pci-murano + unit-pci-power8 + + MODEL + MURANO + + + + unit-powerbus-power8 unit @@ -436,6 +489,16 @@ + + unit-powerbus-murano + unit-powerbus-power8 + + MODEL + MURANO + + + + enc-node-power8 base @@ -576,7 +639,6 @@ MCS MSS_MEMSIZE - CHIP_UNIT @@ -586,7 +648,6 @@ MODEL VENICE - CHIP_UNIT @@ -596,7 +657,15 @@ MODEL SALERNO - CHIP_UNIT + + + + unit-mcs-murano + unit-mcs-power8 + + MODEL + MURANO + @@ -619,6 +688,15 @@ + + unit-mba-murano + unit-mba-venice + + MODEL + MURANO + + + unit-mbs-venice unit-mbs-power8 @@ -637,6 +715,15 @@ + + unit-mbs-murano + unit-mbs-venice + + MODEL + MURANO + + + unit-memport-salerno unit-memport-power8 @@ -655,6 +742,15 @@ + + unit-memport-murano + unit-memport-venice + + MODEL + MURANO + + + diff --git a/src/usr/targeting/xmltohb/xmltohb.pl b/src/usr/targeting/xmltohb/xmltohb.pl index 3f36269c9..48d5c260d 100755 --- a/src/usr/targeting/xmltohb/xmltohb.pl +++ b/src/usr/targeting/xmltohb/xmltohb.pl @@ -23,7 +23,7 @@ # IBM_PROLOG_END # -# Purpose: +# Purpose: # Author: Nick Bofferding # Last Updated: 09/09/2011 # @@ -39,7 +39,7 @@ use strict; # Use of the following packages ################################################################################ -use Getopt::Long; +use Getopt::Long; use Pod::Usage; use XML::Simple; use Text::Wrap; @@ -51,7 +51,7 @@ use POSIX; # bugs that result in XML parse errors that can be fixed by adjusting white- # space (i.e. parse errors that do not make sense). ################################################################################ -$XML::Simple::PREFERRED_PARSER = 'XML::Parser'; +$XML::Simple::PREFERRED_PARSER = 'XML::Parser'; ################################################################################ # Process command line parameters, issue help text if needed @@ -68,7 +68,7 @@ my $cfgHelp = 0; my $cfgMan = 0; my $cfgVerbose = 0; -GetOptions("hb-xml-file:s" => \$cfgHbXmlFile, +GetOptions("hb-xml-file:s" => \$cfgHbXmlFile, "src-output-dir:s" => \$cfgSrcOutputDir, "img-output-dir:s" => \$cfgImgOutputDir, "fapi-attributes-xml-file:s" => \$cfgFapiAttributesXmlFile, @@ -81,7 +81,7 @@ GetOptions("hb-xml-file:s" => \$cfgHbXmlFile, pod2usage(-verbose => 1) if $cfgHelp; pod2usage(-verbose => 2) if $cfgMan; -# Remove extraneous '/' from end of path names; use temporary version of $/ for +# Remove extraneous '/' from end of path names; use temporary version of $/ for # the chomp { local $/ = '/'; @@ -107,7 +107,7 @@ if($cfgVerbose) my $xml = new XML::Simple (KeyAttr=>[]); -# Until full machine parseable workbook parsing splits out all the input files, +# Until full machine parseable workbook parsing splits out all the input files, # use the intermediate representation containing the full host boot model. # Aborts application if file name not found. my $attributes = $xml->XMLin($cfgHbXmlFile, forcearray => ['enumerationType','attribute','hwpfToHbAttrMap']); @@ -121,7 +121,7 @@ validateTargetTypes($attributes); # Open the output files and write them if( !($cfgSrcOutputDir =~ "none") ) { - open(TRAIT_FILE,">$cfgSrcOutputDir"."attributetraits.H") + open(TRAIT_FILE,">$cfgSrcOutputDir"."attributetraits.H") or fatal ("Trait file: \"$cfgSrcOutputDir" . "attributetraits.H\" could not be opened."); my $traitFile = *TRAIT_FILE; @@ -197,7 +197,7 @@ if( !($cfgImgOutputDir =~ "none") ) exit(0); ################################################################################ -# Report a fatal error and quit +# Report a fatal error and quit ################################################################################ sub DEBUG_FUNCTIONS { } @@ -208,7 +208,7 @@ sub fatal { for(my $caller = 1; ; $caller++) { - my ($package, $filename, $callerLine, + my ($package, $filename, $callerLine, $subr, $has_args, $wantarray )= caller($caller); my $line = (caller($caller-1))[2]; if(!$line) { last; } @@ -227,14 +227,14 @@ sub VALIDATION_FUNCTIONS { } sub validateSubElements { my($name,$mustBeHash,$element,$criteria) = @_; - + if($mustBeHash && (ref($element) ne "HASH")) { fatal("$name must be in the form of a hash."); } # print keys %{$element} . "\n"; - + for my $subElementName (sort(keys %{$element})) { if(!exists $criteria->{$subElementName}) @@ -253,7 +253,7 @@ sub validateSubElements { . "\"$subElementName\"."); } - if(exists $element->{$subElementName} + if(exists $element->{$subElementName} && ($criteria->{$subElementName}{isscalar} == 1) && (ref ($element->{$subElementName}) eq "HASH")) { @@ -279,9 +279,9 @@ sub validateAttributes { $elements{"complexType"} = { required => 0, isscalar => 0}; $elements{"nativeType"} = { required => 0, isscalar => 0}; $elements{"writeable"} = { required => 0, isscalar => 0}; - $elements{"hasStringConversion"} + $elements{"hasStringConversion"} = { required => 0, isscalar => 0}; - $elements{"hwpfToHbAttrMap"} + $elements{"hwpfToHbAttrMap"} = { required => 0, isscalar => 0}; foreach my $attribute (@{$attributes->{attribute}}) @@ -318,7 +318,7 @@ sub validateTargetTypes { $elements{"id"} = { required => 1, isscalar => 1}; $elements{"parent"} = { required => 0, isscalar => 1}; $elements{"attribute"} = { required => 0, isscalar => 0}; - + foreach my $targetType (@{$attributes->{targetType}}) { validateSubElements("targetType",1,$targetType,\%elements); @@ -336,7 +336,7 @@ sub validateTargetInstances{ $elements{"id"} = { required => 1, isscalar => 1}; $elements{"type"} = { required => 1, isscalar => 1}; $elements{"attribute"} = { required => 0, isscalar => 0}; - + foreach my $targetInstance (@{$attributes->{targetInstance}}) { validateSubElements("targetInstance",1,$targetInstance,\%elements); @@ -360,7 +360,7 @@ sub writeFapiPlatAttrMacrosHeaderFileHeader { /** * \@file fapiplatattrmacros.H * - * \@brief FAPI -> HB attribute mappings. This file is autogenerated and + * \@brief FAPI -> HB attribute mappings. This file is autogenerated and * should not be altered. */ @@ -384,17 +384,17 @@ VERBATIM } ################################################################################ -# Writes the plat attribute macros +# Writes the plat attribute macros ################################################################################ -sub writeFapiPlatAttrMacrosHeaderFileContent { +sub writeFapiPlatAttrMacrosHeaderFileContent { my($attributes,$fapiAttributes,$outFile) = @_; my $macroSection = ""; my $attrSection = ""; foreach my $attribute (@{$attributes->{attribute}}) - { + { foreach my $hwpfToHbAttrMap (@{$attribute->{hwpfToHbAttrMap}}) { if( !exists $hwpfToHbAttrMap->{id} @@ -404,12 +404,12 @@ sub writeFapiPlatAttrMacrosHeaderFileContent { } my $fapiReadable = 0; - my $fapiWriteable = 0; + my $fapiWriteable = 0; my $instantiated = 0; foreach my $fapiAttr (@{$fapiAttributes->{attribute}}) { - if( (exists $fapiAttr->{id}) + if( (exists $fapiAttr->{id}) && ($fapiAttr->{id} eq $hwpfToHbAttrMap->{id}) ) { # Check that non-platInit attributes are in the @@ -421,16 +421,16 @@ sub writeFapiPlatAttrMacrosHeaderFileContent { fatal("FAPI non-platInit attr '$hwpfToHbAttrMap->{id}' is '$hwpfToHbAttrMap->{macro}', it must be DIRECT"); } - if ($attribute->{persistency} ne "volatile-zeroed") - { - fatal("FAPI non-platInit attr '$hwpfToHbAttrMap->{id}' is '$attribute->{persistency}', it must be volatile-zeroed"); + if ($attribute->{persistency} ne "volatile-zeroed") + { + fatal("FAPI non-platInit attr '$hwpfToHbAttrMap->{id}' is '$attribute->{persistency}', it must be volatile-zeroed"); } } # All FAPI attributes are readable $fapiReadable = 1; - + if(exists $fapiAttr->{writeable}) { $fapiWriteable = 1; @@ -444,9 +444,9 @@ sub writeFapiPlatAttrMacrosHeaderFileContent { { if(exists $attribute->{readable}) { - $macroSection .= ' #define ' . $hwpfToHbAttrMap->{id} . + $macroSection .= ' #define ' . $hwpfToHbAttrMap->{id} . "_GETMACRO(ID,PTARGET,VAL) \\\n" . - " FAPI_PLAT_ATTR_SVC_GETMACRO_" . + " FAPI_PLAT_ATTR_SVC_GETMACRO_" . $hwpfToHbAttrMap->{macro} . "(ID,PTARGET,VAL)\n"; $instantiated = 1; } @@ -461,9 +461,9 @@ sub writeFapiPlatAttrMacrosHeaderFileContent { { if(exists $attribute->{writeable}) { - $macroSection .= ' #define ' . $hwpfToHbAttrMap->{id} . + $macroSection .= ' #define ' . $hwpfToHbAttrMap->{id} . "_SETMACRO(ID,PTARGET,VAL) \\\n" . - " FAPI_PLAT_ATTR_SVC_SETMACRO_" . + " FAPI_PLAT_ATTR_SVC_SETMACRO_" . $hwpfToHbAttrMap->{macro} . "(ID,PTARGET,VAL)\n"; $instantiated = 1; } @@ -476,10 +476,10 @@ sub writeFapiPlatAttrMacrosHeaderFileContent { if($instantiated) { - $attrSection .= ' #define FAPI_PLAT_ATTR_SVC_MACRO_' . - $hwpfToHbAttrMap->{macro} . "_FAPI_" . + $attrSection .= ' #define FAPI_PLAT_ATTR_SVC_MACRO_' . + $hwpfToHbAttrMap->{macro} . "_FAPI_" . $hwpfToHbAttrMap->{id} . " \\\n" . - " TARGETING::ATTR_" . + " TARGETING::ATTR_" . $attribute->{id} . "\n"; } } @@ -510,7 +510,7 @@ VERBATIM } ################################################################################ -# Writes the pnor targeting header format file +# Writes the pnor targeting header format file ################################################################################ sub writeHeaderFormatHeaderFile { @@ -524,7 +524,7 @@ sub writeHeaderFormatHeaderFile { /** * \@file pnorheader.H * - * \@brief Definition for structure of targeting's PNOR image header. This + * \@brief Definition for structure of targeting's PNOR image header. This * file is autogenerated and should not be altered. */ @@ -549,8 +549,8 @@ namespace TARGETING enum SECTION_TYPE { // Targeting read-only section backed to PNOR. Always the 0th section. - SECTION_TYPE_PNOR_RO = 0x00, - + SECTION_TYPE_PNOR_RO = 0x00, + // Targeting read-write section backed to PNOR SECTION_TYPE_PNOR_RW = 0x01, @@ -592,8 +592,8 @@ namespace TARGETING const uint32_t headerSize; // Virtual memory offset from the virtual memory address of the previous - // section where the attribute resource provider must load the next - // section. If there is no previous section, it will represent the + // section where the attribute resource provider must load the next + // section. If there is no previous section, it will represent the // offset from the virtual memory base address (typically 0) const uint32_t vmmSectionOffset; @@ -605,25 +605,25 @@ namespace TARGETING const uint32_t sizeOfSection; // Number of TargetingSection records - const uint32_t numSections; - + const uint32_t numSections; + // Offset to the first TargetingSection record, from the end of this - // field + // field const uint32_t offsetToSections; // Pad, in bytes, given by "offsetToSections" - + // const TargetingSection sections[numSections]; } PACKED; - + } // End namespace TARGETING #endif // TARG_PNORHEADER_H VERBATIM -} +} ################################################################################ # Writes the string implementation file header @@ -662,9 +662,9 @@ VERBATIM # Writes string implementation ################################################################################ -sub writeStringImplementationFileStrings { +sub writeStringImplementationFileStrings { my($attributes,$outFile) = @_; - + foreach my $attribute (@{$attributes->{attribute}}) { if(exists $attribute->{simpleType}) @@ -688,12 +688,12 @@ sub writeStringImplementationFileStrings { print $outFile " switch(i_attrValue)\n"; print $outFile " {\n"; my $enumerationType = getEnumerationType($attributes,$enumeration->{id}); - + foreach my $enumerator (@{$enumerationType->{enumerator}}) { print $outFile " case ", $attribute->{id}, "_", $enumerator->{name},":\n"; - print $outFile " return \"", + print $outFile " return \"", $enumerator->{name},"\";\n"; } @@ -761,7 +761,7 @@ print $outFile <{attribute}}) - { + { if(exists $attribute->{complexType}) { my $complexType = $attribute->{complexType}; @@ -805,13 +805,13 @@ sub writeStructFileStructs { } print $outFile "/**\n"; - print $outFile wrapBrief($complexType->{description}); + print $outFile wrapBrief($complexType->{description}); print $outFile " */\n"; - print $outFile "struct ", + print $outFile "struct ", calculateStructName($attribute->{id}), "\n"; print $outFile "{\n"; - + my $complex = $attribute->{complexType}; foreach my $field (@{$complex->{field}}) { @@ -824,10 +824,10 @@ sub writeStructFileStructs { } print $outFile wrapComment($field->{description}); - print $outFile " ", $field->{type}, " ", $field->{name}, + print $outFile " ", $field->{type}, " ", $field->{name}, $bits, "; \n\n"; } - + print $outFile "} PACKED;\n\n"; } } @@ -864,7 +864,7 @@ print $outFile <{attribute}}) @@ -918,7 +918,7 @@ sub writeStringHeaderFileStrings { { my $simpleType = $attribute->{simpleType}; if(exists $simpleType->{enumeration}) - { + { my $enumeration = $simpleType->{enumeration}; print $outFile "/**\n"; print $outFile " * \@brief See " @@ -995,7 +995,7 @@ VERBATIM # Writes the enum file attribute enumeration ################################################################################ -sub writeEnumFileAttrIdEnum { +sub writeEnumFileAttrIdEnum { my($attributes,$outFile) = @_; print $outFile <{enumerationType}}) { print $outFile "/**\n"; @@ -1058,10 +1058,10 @@ sub writeEnumFileAttrEnums { foreach my $enumerator (@{$enumerationType->{enumerator}}) { - $enumHex = sprintf "0x%08X", + $enumHex = sprintf "0x%08X", enumNameToValue($enumerationType,$enumerator->{name}); $enumName = $enumerationType->{id} . "_" . $enumerator->{name}; - write; + write; } print $outFile "};\n\n"; @@ -1094,7 +1094,7 @@ print $outFile <{attribute}}) { - # Build boolean traits + # Build boolean traits my $traits = ""; foreach my $trait ("writeable","readable","hasStringConversion") @@ -1182,7 +1182,7 @@ sub writeTraitFileTraits { chop($traits); # Build value type - + my $type = ""; my $dimensions = ""; if(exists $attribute->{simpleType}) @@ -1190,10 +1190,10 @@ sub writeTraitFileTraits { my $simpleType = $attribute->{simpleType}; my $simpleTypeProperties = simpleTypeProperties(); for my $typeName (sort(keys %{$simpleType})) - { + { if(exists $simpleTypeProperties->{$typeName}) { - if( $simpleTypeProperties->{$typeName}{typeName} + if( $simpleTypeProperties->{$typeName}{typeName} eq "XMLTOHB_USE_PARENT_ATTR_ID") { $type = $attribute->{id}; @@ -1217,9 +1217,9 @@ sub writeTraitFileTraits { } if($type eq "") - { + { fatal("Unsupported simpleType child element for " - . "attribute $attribute->{id}. Keys are (" + . "attribute $attribute->{id}. Keys are (" . join(',',sort(keys %{$simpleType})) . ")"); } } @@ -1236,7 +1236,7 @@ sub writeTraitFileTraits { fatal("Could not determine attribute data type for attribute " . "$attribute->{id}."); } - + # Add traits definition to output print $outFile "template<>\n"; @@ -1246,7 +1246,7 @@ sub writeTraitFileTraits { print $outFile " enum {",$traits," };\n"; print $outFile " typedef ", $type, " Type$dimensions;\n"; print $outFile "};\n\n"; - + $typedefs .= "typedef " . $type . " $attribute->{id}" . "_ATTR" . $dimensions . ";\n"; }; @@ -1287,17 +1287,17 @@ sub getAttributeIdEnumeration { $enumeration->{default} = "NA"; $enumeration->{enumerator}->[0]->{name} = "NA"; $enumeration->{enumerator}->[0]->{value} = 0; - + foreach my $attribute (@{$attributes->{attribute}}) { $attributeValue++; - $enumeration->{enumerator}->[$attributeValue]->{name} + $enumeration->{enumerator}->[$attributeValue]->{name} = $attribute->{id}; - $enumeration->{enumerator}->[$attributeValue]->{value} + $enumeration->{enumerator}->[$attributeValue]->{value} = sprintf "%u",$attributeValue; } - return $enumeration; + return $enumeration; } ################################################################################ @@ -1319,14 +1319,14 @@ sub unhexify { sub packQuad{ my($quad) = @_; - + my $value = unhexify($quad); return pack("NN" , (($value >> 32) & 0xFFFFFFFF), ($value & 0xFFFFFFFF)); } ################################################################################ -# Get space required to store an enum, based on the max value +# Get space required to store an enum, based on the max value ################################################################################ sub enumSpace { @@ -1347,8 +1347,8 @@ sub enumSpace { sub sizeBlockAligned { my ($size,$blockSize,$oneBlockMinimum) = @_; - if( (!defined $size) - || (!defined $blockSize) + if( (!defined $size) + || (!defined $blockSize) || (!defined $oneBlockMinimum) ) { fatal("Caller must specify 'size', 'blockSize', 'oneBlockMinimum' " @@ -1364,7 +1364,7 @@ sub sizeBlockAligned { { $size += ($blockSize - ($size % $blockSize)); } - + return $size; } @@ -1374,8 +1374,8 @@ sub sizeBlockAligned { sub optWhiteSpace { my($text) = @_; - - # Remove leading, trailing white space, then collapse excess internal + + # Remove leading, trailing white space, then collapse excess internal # whitespace $text =~ s/^\s+|\s+$//g; $text =~ s/\s+/ /g; @@ -1391,18 +1391,18 @@ sub wrapBrief { my($text) = @_; my $brief_start = " * \@brief "; - my $brief_continue = " * "; + my $brief_continue = " * "; return wrap($brief_start,$brief_continue, optWhiteSpace($text))."\n"; } ################################################################################ -# Wrap text into a C++ style comment +# Wrap text into a C++ style comment ################################################################################ sub wrapComment { my($text) = @_; - + my $comment_start = " // "; my $comment_continue = " // "; @@ -1418,7 +1418,7 @@ sub calculateStructName { my $type = ""; - # Struct name is original ID with underscores removed and first letter of + # Struct name is original ID with underscores removed and first letter of # each word capitalized my @words = split(/_/,$id); foreach my $word (@words) @@ -1436,13 +1436,13 @@ sub calculateStructName { sub getInstantiatedTargetTypes { my($attributes) = @_; - my %seen = (); + my %seen = (); my @uniqueTargetTypes = (); foreach my $targetInstance (@{$attributes->{targetInstance}}) { - push (@uniqueTargetTypes, $targetInstance->{type}) - unless $seen{$targetInstance->{type}}++; + push (@uniqueTargetTypes, $targetInstance->{type}) + unless $seen{$targetInstance->{type}}++; } return @uniqueTargetTypes; @@ -1471,7 +1471,7 @@ sub defaultEnum { $attributes,$enumerationInstance->{id}); # print STDOUT "Attribute enumeration's " . - # "(\"$enumerationType->{id}\") default is: " . + # "(\"$enumerationType->{id}\") default is: " . # $enumerationType->{default} . "\n"; return $enumerationType->{default}; @@ -1512,9 +1512,9 @@ sub enforceHbMutex { sub simpleTypeProperties { my %typesHoH = (); - + # Intentionally didn't wrap these to 80 columns to keep them lined up and - # more readable/editable + # more readable/editable $typesHoH{"int8_t"} = { supportsArray => 1, canBeHex => 1, complexTypeSupport => 1, typeName => "int8_t" , bytes => 1, bits => 8 , default => \&defaultZero, alignment => 1, specialPolicies =>\&null, packfmt => "C" }; $typesHoH{"int16_t"} = { supportsArray => 1, canBeHex => 1, complexTypeSupport => 1, typeName => "int16_t" , bytes => 2, bits => 16, default => \&defaultZero, alignment => 1, specialPolicies =>\&null, packfmt => "n" }; $typesHoH{"int32_t"} = { supportsArray => 1, canBeHex => 1, complexTypeSupport => 1, typeName => "int32_t" , bytes => 4, bits => 32, default => \&defaultZero, alignment => 1, specialPolicies =>\&null, packfmt => "N" }; @@ -1526,7 +1526,7 @@ sub simpleTypeProperties { $typesHoH{"enumeration"} = { supportsArray => 1, canBeHex => 1, complexTypeSupport => 0, typeName => "XMLTOHB_USE_PARENT_ATTR_ID" , bytes => 0, bits => 0 , default => \&defaultEnum, alignment => 1, specialPolicies =>\&null, packfmt => "packEnumeration"}; $typesHoH{"hbmutex"} = { supportsArray => 1, canBeHex => 1, complexTypeSupport => 0, typeName => "mutex_t*" , bytes => 8, bits => 64, default => \&defaultZero, alignment => 8, specialPolicies =>\&enforceHbMutex, packfmt =>\&packQuad}; - return \%typesHoH; + return \%typesHoH; } ################################################################################ @@ -1544,7 +1544,7 @@ sub getAttributeDefault { if ($attribute->{id} eq $attributeId) { if(exists $attribute->{simpleType}) - { + { for my $type (sort(keys %{$simpleTypeProperties})) { # Note: must check for 'type' before 'default', otherwise @@ -1553,7 +1553,7 @@ sub getAttributeDefault { { if(exists $attribute->{simpleType}->{$type}->{default}) { - $default = + $default = $attribute->{simpleType}->{$type}->{default}; } else @@ -1575,17 +1575,17 @@ sub getAttributeDefault { $cplxDefault->{field}->[$i]->{value} = $field->{default}; $i++; } - return $cplxDefault; - } + return $cplxDefault; + } elsif(exists $attribute->{nativeType}) - { + { if( exists $attribute->{nativeType}->{name} && ($attribute->{nativeType}->{name} eq "EntityPath")) - { + { $default = "MustBeOverriddenByTargetInstance"; - } - else - { + } + else + { fatal("Cannot provide default for unsupported nativeType."); } } @@ -1593,7 +1593,7 @@ sub getAttributeDefault { { fatal("Unrecognized value type."); } - + last; } } @@ -1605,9 +1605,9 @@ sub getAttributeDefault { # Get target attributes ################################################################################ -sub getTargetAttributes { +sub getTargetAttributes { my($type,$attributes,$attrhasha) = @_; - + foreach my $targetType (@{$attributes->{targetType}}) { if($targetType->{id} eq $type) @@ -1617,7 +1617,7 @@ sub getTargetAttributes { getTargetAttributes($targetType->{parent}, $attributes,$attrhasha); } - + foreach my $attr (@{$targetType->{attribute}}) { $attrhasha->{ $attr->{id} } = $attr; @@ -1657,7 +1657,7 @@ sub maxEnumValue { } ################################################################################ -# Serialize an enumeration to data buffer +# Serialize an enumeration to data buffer ################################################################################ sub packEnumeration { @@ -1671,11 +1671,11 @@ sub packEnumeration { $value = unhexify($value); # Encode the value - for (my $count=$bytes-1; $count >= 0; $count--) + for (my $count=$bytes-1; $count >= 0; $count--) { $binaryData .= pack("C", (0xFF & ($value >> (8*$count))) ); } - + if( (length $binaryData) < 1) { fatal("Failed to write binary data for enumeration."); @@ -1692,17 +1692,17 @@ sub packEnumeration { ################################################################################ # Convert enumerator name into equivalent enumerator value for given enumeration ################################################################################ - + sub enumNameToValue { my ($enumeration,$enumeratorName) = @_; - - my $nextEnumeratorValue = 0; + + my $nextEnumeratorValue = 0; my $found = 0; my $enumeratorValue; - + foreach my $enumerator (@{$enumeration->{enumerator}}) { - my $currentEnumeratorValue; + my $currentEnumeratorValue; if(exists $enumerator->{value} ) { $nextEnumeratorValue = unhexify($enumerator->{value}) + 1; @@ -1721,11 +1721,13 @@ sub enumNameToValue { last; } } - + if(!$found) { + my $enumerationName = $enumeration->{id}; + fatal("Could not convert enumerator name \"$enumeratorName\"into " - . "enumerator value."); + . "enumerator value in \"$enumerationName\"."); } return $enumeratorValue; @@ -1734,9 +1736,9 @@ sub enumNameToValue { ################################################################################ # Object which accumulates/flushes bit field data ################################################################################ - + { - + package Accumulator; ################################################################################ @@ -1752,12 +1754,12 @@ sub new { } ################################################################################ -# Accumulate a new bit field +# Accumulate a new bit field ################################################################################ - + sub accumulate { my($self,$type,$bits,$value) = @_; - + my $binaryData; my $simpleTypeProperties = main::simpleTypeProperties(); @@ -1833,21 +1835,21 @@ sub releaseAndClear { } 1; - + } ################################################################################ # Pack a complex type into a binary data stream ################################################################################ - + sub packComplexType { my ($attributes,$complexType,$attributeDefault) = @_; - + my $binaryData; my $simpleTypeProperties = simpleTypeProperties(); - - my $accumulator = new Accumulator(); - + + my $accumulator = new Accumulator(); + # Build using each field foreach my $field (@{$complexType->{field}}) { @@ -1855,12 +1857,12 @@ sub packComplexType { # print STDERR "Default = ", $field->{default}, "\n"; # print STDERR "Bits = ", $field->{bits}, "\n"; # print STDERR "Type = ", $field->{type}, "\n"; - + my $found = 0; foreach my $default (@{$attributeDefault->{field}}) { if($default->{id} eq $field->{name}) - { + { $found = 1; if(exists $field->{bits}) { @@ -1868,11 +1870,11 @@ sub packComplexType { $field->{type},unhexify($field->{bits}), unhexify($default->{value})); } - # If non-bitfield + # If non-bitfield else { $binaryData .= $accumulator->releaseAndClear(); - + # If native "EntityPath" type, process accordingly if($field->{type} eq "EntityPath") { @@ -1901,7 +1903,7 @@ sub packComplexType { if(ref ($simpleTypeProperties->{$field->{type}} {packfmt}) eq "CODE") { - $binaryData .= + $binaryData .= $simpleTypeProperties->{$field->{type}} {packfmt}->($defaultValue); } @@ -1918,7 +1920,7 @@ sub packComplexType { . "complex type."); } } - + last; } } @@ -1931,7 +1933,7 @@ sub packComplexType { $binaryData .= $accumulator->releaseAndClear(); - return $binaryData; + return $binaryData; } ################################################################################ @@ -1968,8 +1970,8 @@ sub packEntityPath { { fatal("Path elements cannot be greater than $maxPathElements."); } - - $binaryData .= pack("C", (0xF0 & ($type << 4)) + + + $binaryData .= pack("C", (0xF0 & ($type << 4)) + (0x0F & (scalar @paths))); foreach my $pathElement (@paths) @@ -2042,7 +2044,7 @@ sub packSingleSimpleTypeAttribute { sub packAttribute { my($attributes,$attribute,$value) = @_; - + my $binaryData; my $alignment = 1; @@ -2052,7 +2054,7 @@ sub packAttribute { my $simpleTypeProperties = simpleTypeProperties(); for my $typeName (sort(keys %{$simpleType})) - { + { if(exists $simpleTypeProperties->{$typeName}) { $alignment = $simpleTypeProperties->{$typeName}{alignment}; @@ -2140,7 +2142,7 @@ sub packAttribute { { fatal("Serialization failed for attribute ID = $attribute->{id}."); } - + return ($binaryData,$alignment); } @@ -2152,7 +2154,7 @@ sub getPnorBaseAddress { my($vmmConstsFile) = @_; my $pnorBaseAddress = 0; - open(VMM_CONSTS_FILE,"<$vmmConstsFile") + open(VMM_CONSTS_FILE,"<$vmmConstsFile") or fatal ("VMM Constants file: \"$vmmConstsFile\" could not be opened."); foreach my $line () @@ -2170,12 +2172,12 @@ sub getPnorBaseAddress { { fatal("PNOR base address was zero!"); } - + return $pnorBaseAddress; } ################################################################################ -# Write the PNOR targeting image +# Write the PNOR targeting image ################################################################################ sub writeTargetingImage { @@ -2187,11 +2189,11 @@ sub writeTargetingImage { # Virtual memory addresses corresponding to the start of the targeting image # PNOR/heap sections - my $pnorRoBaseAddress = getPnorBaseAddress($vmmConstsFile); - my $pnorRwBaseAddress = $pnorRoBaseAddress + $vmmSectionOffset; - my $heapPnorInitBaseAddr = $pnorRwBaseAddress + $vmmSectionOffset; - my $heapZeroInitBaseAddr = $heapPnorInitBaseAddr + $vmmSectionOffset; - + my $pnorRoBaseAddress = getPnorBaseAddress($vmmConstsFile); + my $pnorRwBaseAddress = $pnorRoBaseAddress + $vmmSectionOffset; + my $heapPnorInitBaseAddr = $pnorRwBaseAddress + $vmmSectionOffset; + my $heapZeroInitBaseAddr = $heapPnorInitBaseAddr + $vmmSectionOffset; + # Reserve 256 bytes for the header, then keep track of PNOR RO offset my $headerSize = 256; my $offset = $headerSize; @@ -2206,7 +2208,7 @@ sub writeTargetingImage { ############################################################################ # Get an array of only the unique types of targets actually used by the - # aggregation of target instances. + # aggregation of target instances. my @targetTypes = getInstantiatedTargetTypes($attributes); my $attributeIdEnumeration = getAttributeIdEnumeration($attributes); @@ -2235,9 +2237,9 @@ sub writeTargetingImage { # Save offset of the attribute list, tied to the type $attributeListTypeHoH{$targetType}{offset} = $offset; $attributeListTypeHoH{$targetType}{elements} = scalar keys %attrhash; - $attributeListTypeHoH{$targetType}{size} = + $attributeListTypeHoH{$targetType}{size} = (length $perTargetTypeAttrBinData); - + #print "Target type: $targetType\n"; #print " elements: $attributeListTypeHoH{$targetType}{elements}\n"; #print " offset: $attributeListTypeHoH{$targetType}{offset}\n"; @@ -2251,12 +2253,12 @@ sub writeTargetingImage { } # For each target instance ... - + #@TODO Eventually we'll need criteria to order the attributes # for code update. At minimum, ensure that we always process at this level # in the given order my @targetsAoH = (); - my $numTargets = 0; + my $numTargets = 0; foreach my $targetInstance (@{$attributes->{targetInstance}}) { push(@targetsAoH, $targetInstance); @@ -2280,7 +2282,7 @@ sub writeTargetingImage { # Don't increment the offset; already accounted for $numTargetsPointer = $pnorRoBaseAddress + $offset; $numTargetsPointerBinData = packQuad($numTargetsPointer); - + my $numTargetsBinData = pack("N",$numTargets); $offset += (length $numTargetsBinData); @@ -2293,7 +2295,7 @@ sub writeTargetingImage { my $rwOffset = 0; my $attributePointerBinData; my $targetsBinData; - + # Ensure consistent ordering of target instances my $attrAddr = $pnorRoBaseAddress + $startOfAttributePointers; @@ -2311,20 +2313,20 @@ sub writeTargetingImage { $data .= pack('N', $attributeListTypeHoH{$targetInstance->{type}}{elements}); $data .= packQuad( - $attributeListTypeHoH{$targetInstance->{type}}{offset} + $attributeListTypeHoH{$targetInstance->{type}}{offset} + $pnorRoBaseAddress); $data .= packQuad($attrAddr); - $attrAddr += $attributeListTypeHoH{$targetInstance->{type}}{elements} + $attrAddr += $attributeListTypeHoH{$targetInstance->{type}}{elements} * (length packQuad(0)); # Increment the offset $offset += (length $data); - # Add it to the target sub-section + # Add it to the target sub-section $targetsBinData .= $data; } - my $pnorRoOffset = $offset; + my $pnorRoOffset = $offset; my $attributesWritten = 0; foreach my $targetInstance (@targetsAoH) @@ -2338,7 +2340,7 @@ sub writeTargetingImage { #@TODO Attributes must eventually be ordered correctly for code update getTargetAttributes($targetInstance->{type}, $attributes,\%attrhash); - # Update hash with any per-instance overrides, but only if that + # Update hash with any per-instance overrides, but only if that # attribute has already been defined foreach my $attr (@{$targetInstance->{attribute}}) { @@ -2384,22 +2386,22 @@ sub writeTargetingImage { { fatal("Persistency not supported."); } - + if($section eq "pnor-ro") { my ($rodata,$alignment) = packAttribute($attributes, $attributeDef, $attrhash{$attributeId}->{default}); - + # Align the data as necessary - my $pads = ($alignment - ($offset % $alignment)) + my $pads = ($alignment - ($offset % $alignment)) % $alignment; $roAttrBinData .= pack ("@".$pads); $offset += $pads; $attributePointerBinData .= packQuad( $offset + $pnorRoBaseAddress); - + $offset += (length $rodata); $roAttrBinData .= $rodata; @@ -2411,17 +2413,17 @@ sub writeTargetingImage { $attrhash{$attributeId}->{default}); #print "Wrote to pnor-rw value ",$attributeDef->{id}, ", - #", $attrhash{$attributeId}->{default}," \n"; - + #", $attrhash{$attributeId}->{default}," \n"; + # Align the data as necessary - my $pads = ($alignment - ($rwOffset % $alignment)) + my $pads = ($alignment - ($rwOffset % $alignment)) % $alignment; $rwAttrBinData .= pack ("@".$pads); $rwOffset += $pads; $attributePointerBinData .= packQuad( $rwOffset + $pnorRwBaseAddress); - + $rwOffset += (length $rwdata); $rwAttrBinData .= $rwdata; @@ -2432,16 +2434,16 @@ sub writeTargetingImage { my ($heapZeroInitData,$alignment) = packAttribute( $attributes, $attributeDef,$attrhash{$attributeId}->{default}); - + # Align the data as necessary - my $pads = ($alignment - ($heapZeroInitOffset + my $pads = ($alignment - ($heapZeroInitOffset % $alignment)) % $alignment; $heapZeroInitBinData .= pack ("@".$pads); $heapZeroInitOffset += $pads; $attributePointerBinData .= packQuad( $heapZeroInitOffset + $heapZeroInitBaseAddr); - + $heapZeroInitOffset += (length $heapZeroInitData); $heapZeroInitBinData .= $heapZeroInitData; @@ -2454,14 +2456,14 @@ sub writeTargetingImage { $attributeDef,$attrhash{$attributeId}->{default}); # Align the data as necessary - my $pads = ($alignment - ($heapPnorInitOffset + my $pads = ($alignment - ($heapPnorInitOffset % $alignment)) % $alignment; $heapPnorInitBinData .= pack ("@".$pads); $heapPnorInitOffset += $pads; - + $attributePointerBinData .= packQuad( $heapPnorInitOffset + $heapPnorInitBaseAddr); - + $heapPnorInitOffset += (length $heapPnorInitData); $heapPnorInitBinData .= $heapPnorInitData; @@ -2477,11 +2479,11 @@ sub writeTargetingImage { } } - + } # End attribute loop - + } # End target instance loop - + if($numAttributes != $attributesWritten) { fatal("Number of attributes expected, $numAttributes, does not match " @@ -2489,7 +2491,7 @@ sub writeTargetingImage { } # Build header data - + my $headerBinData; my $blockSize = 4*1024; @@ -2497,24 +2499,24 @@ sub writeTargetingImage { $sectionHoH{ pnorRo }{ offset } = 0; $sectionHoH{ pnorRo }{ type } = 0; $sectionHoH{ pnorRo }{ size } = sizeBlockAligned($offset,$blockSize,1); - - $sectionHoH{ pnorRw }{ offset } = + + $sectionHoH{ pnorRw }{ offset } = $sectionHoH{pnorRo}{offset} + $sectionHoH{pnorRo}{size}; $sectionHoH{ pnorRw }{ type } = 1; $sectionHoH{ pnorRw }{ size } = sizeBlockAligned($rwOffset,$blockSize,1); - - $sectionHoH{ heapPnorInit }{ offset } = + + $sectionHoH{ heapPnorInit }{ offset } = $sectionHoH{pnorRw}{offset} + $sectionHoH{pnorRw}{size}; $sectionHoH{ heapPnorInit }{ type } = 2; - $sectionHoH{ heapPnorInit }{ size } = + $sectionHoH{ heapPnorInit }{ size } = sizeBlockAligned($heapPnorInitOffset,$blockSize,1); - - $sectionHoH{ heapZeroInit }{ offset } = + + $sectionHoH{ heapZeroInit }{ offset } = $sectionHoH{heapPnorInit}{offset} + $sectionHoH{heapPnorInit}{size}; $sectionHoH{ heapZeroInit }{ type } = 3; - $sectionHoH{ heapZeroInit }{ size } = + $sectionHoH{ heapZeroInit }{ size } = sizeBlockAligned($heapZeroInitOffset,$blockSize,1); - + my $numSections = keys %sectionHoH; # Version 1.0 to start with @@ -2527,11 +2529,11 @@ sub writeTargetingImage { $headerBinData .= pack("N",$headerMajorMinorVersion); $headerBinData .= pack("N",$headerSize); $headerBinData .= pack("N",$vmmSectionOffset); - $headerBinData .= packQuad($pnorRoBaseAddress); + $headerBinData .= packQuad($pnorRoBaseAddress); $headerBinData .= pack("N",$sizeOfSection); $headerBinData .= pack("N",$numSections); $headerBinData .= pack("N",$offsetToSections); - + foreach my $section ("pnorRo","pnorRw","heapPnorInit","heapZeroInit") { $headerBinData .= pack("C" , $sectionHoH{$section}{type}); @@ -2540,7 +2542,7 @@ sub writeTargetingImage { } # Serialize PNOR RO section to multiple of 4k page size (pad if necessary) - + # First 256 bytes is RO header (pad if necessary) if((length $headerBinData) > $headerSize) { @@ -2548,7 +2550,7 @@ sub writeTargetingImage { . "than allocated amount of $headerSize."); } print $outFile $headerBinData; - my $padSize = sizeBlockAligned((length $headerBinData),$headerSize,1) + my $padSize = sizeBlockAligned((length $headerBinData),$headerSize,1) - (length $headerBinData); print $outFile pack ("@".$padSize); @@ -2560,7 +2562,7 @@ sub writeTargetingImage { print $outFile $targetsBinData; print $outFile $roAttrBinData; print $outFile pack ("@".($sectionHoH{pnorRo}{size} - $offset)); - + # Serialize PNOR RW section to multiple of 4k page size (pad if necessary) print $outFile $rwAttrBinData; print $outFile pack("@".($sectionHoH{pnorRw}{size} - $rwOffset)); @@ -2568,9 +2570,9 @@ sub writeTargetingImage { # Serialize PNOR initiated heap section to multiple of 4k page size (pad if # necessary) print $outFile $heapPnorInitBinData; - print $outFile pack("@".($sectionHoH{heapPnorInit}{size} + print $outFile pack("@".($sectionHoH{heapPnorInit}{size} - $heapPnorInitOffset)); -} +} __END__ @@ -2611,7 +2613,7 @@ directory) =item B<--img-output-dir>=DIRECTORY -Sets the output directory for generated binary files +Sets the output directory for generated binary files (default is the current directory) =item B<--img-output-file>=FILE @@ -2623,7 +2625,7 @@ Sets the file to receive the PNOR targeting image output (default Indicates the file containing the base virtual address of the attributes (default is src/include/usr/vmmconst.h). Only used when generating the PNOR -targeting image +targeting image =item B<--verbose> -- cgit v1.2.3