diff options
author | CamVan Nguyen <ctnguyen@us.ibm.com> | 2012-12-05 10:59:57 -0600 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2012-12-08 00:37:33 -0600 |
commit | 01483b0a1d95eebcdc41948309123de3e82dedd9 (patch) | |
tree | ad30d87de3b7d46f7cdc35ef56b6a8af2fb35a92 | |
parent | 33504d264b9b34674af2cc61790eb4df58a123e0 (diff) | |
download | talos-hostboot-01483b0a1d95eebcdc41948309123de3e82dedd9.tar.gz talos-hostboot-01483b0a1d95eebcdc41948309123de3e82dedd9.zip |
Additional tweaks to MPIPL attributes.
Change-Id: I43f9f9dd38d2cfe90a0f2df6984e4f715a822157
Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/2560
Tested-by: Jenkins Server
Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
-rw-r--r-- | src/usr/fsi/fsidd.C | 4 | ||||
-rw-r--r-- | src/usr/hwpf/hwp/system_attributes.xml | 2 | ||||
-rw-r--r-- | src/usr/initservice/istepdispatcher/istepdispatcher.C | 2 | ||||
-rw-r--r-- | src/usr/targeting/common/xmltohb/attribute_types_hb.xml (renamed from src/usr/targeting/xmltohb/attribute_types_hb.xml) | 8 | ||||
-rw-r--r-- | src/usr/targeting/common/xmltohb/target_types_hb.xml (renamed from src/usr/targeting/xmltohb/target_types_hb.xml) | 2 | ||||
-rwxr-xr-x | src/usr/targeting/common/xmltohb/xmltohb.pl | 45 | ||||
-rw-r--r-- | src/usr/targeting/xmltohb/makefile | 4 |
7 files changed, 24 insertions, 43 deletions
diff --git a/src/usr/fsi/fsidd.C b/src/usr/fsi/fsidd.C index 43eba0a5b..e7acb52d9 100644 --- a/src/usr/fsi/fsidd.C +++ b/src/usr/fsi/fsidd.C @@ -1231,7 +1231,7 @@ errlHndl_t FsiDD::initPort(FsiChipInfo_t i_fsiInfo, // Do not do any hardware initialization in mpipl uint8_t is_mpipl = 0; if( sys - && sys->tryGetAttr<TARGETING::ATTR_IS_MPIPL>(is_mpipl) + && sys->tryGetAttr<TARGETING::ATTR_IS_MPIPL_HB>(is_mpipl) && is_mpipl ) { TRACFCOMP( g_trac_fsi, "FsiDD::initPort> Skipping Slave Init in MPIPL" ); @@ -1362,7 +1362,7 @@ errlHndl_t FsiDD::initMasterControl(TARGETING::Target* i_master, // Do not do any hardware initialization in mpipl uint8_t is_mpipl = 0; if( sys - && sys->tryGetAttr<TARGETING::ATTR_IS_MPIPL>(is_mpipl) + && sys->tryGetAttr<TARGETING::ATTR_IS_MPIPL_HB>(is_mpipl) && is_mpipl ) { TRACFCOMP( g_trac_fsi, "FsiDD::initMasterControl> Skipping Master Init in MPIPL" ); diff --git a/src/usr/hwpf/hwp/system_attributes.xml b/src/usr/hwpf/hwp/system_attributes.xml index 0e4086307..bd91c398f 100644 --- a/src/usr/hwpf/hwp/system_attributes.xml +++ b/src/usr/hwpf/hwp/system_attributes.xml @@ -52,7 +52,7 @@ </attribute> <!-- ********************************************************************* --> <attribute> - <id>ATTR_IS_MPIPL</id> + <id>ATTR_IS_MPIPL_HB</id> <targetType>TARGET_TYPE_SYSTEM</targetType> <description>1 = in Memory Preserving IPL mode. 0 = in normal IPL mode.</description> <valueType>uint8</valueType> diff --git a/src/usr/initservice/istepdispatcher/istepdispatcher.C b/src/usr/initservice/istepdispatcher/istepdispatcher.C index f52cc1db7..c73041280 100644 --- a/src/usr/initservice/istepdispatcher/istepdispatcher.C +++ b/src/usr/initservice/istepdispatcher/istepdispatcher.C @@ -946,7 +946,7 @@ bool IStepDispatcher::checkMpiplMode( ) const } else { - l_isMpiplMode = l_pTopLevel->getAttr<ATTR_IS_MPIPL> (); + l_isMpiplMode = l_pTopLevel->getAttr<ATTR_IS_MPIPL_HB> (); } return l_isMpiplMode; diff --git a/src/usr/targeting/xmltohb/attribute_types_hb.xml b/src/usr/targeting/common/xmltohb/attribute_types_hb.xml index 8d4bbd8c9..c64a2506a 100644 --- a/src/usr/targeting/xmltohb/attribute_types_hb.xml +++ b/src/usr/targeting/common/xmltohb/attribute_types_hb.xml @@ -30,7 +30,7 @@ ================================================================= --> <attribute> - <id>IS_MPIPL</id> + <id>IS_MPIPL_HB</id> <description>1 = in Memory Preserving IPL mode. 0 = in normal IPL mode.</description> <simpleType> <uint8_t> @@ -41,9 +41,10 @@ <readable/> <writeable/> <hwpfToHbAttrMap> - <id>ATTR_IS_MPIPL</id> + <id>ATTR_IS_MPIPL_HB</id> <macro>DIRECT</macro> </hwpfToHbAttrMap> + <hbOnly/> </attribute> <attribute> @@ -171,6 +172,7 @@ <persistency>volatile-zeroed</persistency> <readable/> <writeable/> + <hbOnly/> </attribute> <attribute> @@ -185,6 +187,7 @@ <persistency>volatile-zeroed</persistency> <readable/> <writeable/> + <hbOnly/> </attribute> <attribute> @@ -198,6 +201,7 @@ <persistency>volatile-zeroed</persistency> <readable/> <writeable/> + <hbOnly/> </attribute> </attributes> diff --git a/src/usr/targeting/xmltohb/target_types_hb.xml b/src/usr/targeting/common/xmltohb/target_types_hb.xml index 4604bbb75..9d7d2b04f 100644 --- a/src/usr/targeting/xmltohb/target_types_hb.xml +++ b/src/usr/targeting/common/xmltohb/target_types_hb.xml @@ -31,7 +31,7 @@ <targetTypeExtension> <id>sys-sys-power8</id> - <attribute><id>IS_MPIPL</id></attribute> + <attribute><id>IS_MPIPL_HB</id></attribute> <attribute><id>HB_MUTEX_TEST_LOCK</id></attribute> </targetTypeExtension> diff --git a/src/usr/targeting/common/xmltohb/xmltohb.pl b/src/usr/targeting/common/xmltohb/xmltohb.pl index 6e3c36676..98392becc 100755 --- a/src/usr/targeting/common/xmltohb/xmltohb.pl +++ b/src/usr/targeting/common/xmltohb/xmltohb.pl @@ -70,7 +70,6 @@ my $cfgVerbose = 0; my $cfgShortEnums = 0; my $cfgBigEndian = 1; my $cfgIncludeFspAttributes = 0; -my $cfgIncludeHbAttributes = 0; GetOptions("hb-xml-file:s" => \$cfgHbXmlFile, "src-output-dir:s" => \$cfgSrcOutputDir, @@ -81,7 +80,6 @@ GetOptions("hb-xml-file:s" => \$cfgHbXmlFile, "short-enums!" => \$cfgShortEnums, "big-endian!" => \$cfgBigEndian, "include-fsp-attributes!" => \$cfgIncludeFspAttributes, - "include-hb-attributes!" => \$cfgIncludeHbAttributes, "help" => \$cfgHelp, "man" => \$cfgMan, "verbose" => \$cfgVerbose ) || pod2usage(-verbose => 0); @@ -110,7 +108,6 @@ if($cfgVerbose) print STDOUT "Short enums = $cfgShortEnums\n"; print STDOUT "Big endian = $cfgBigEndian\n"; print STDOUT "include-fsp-attributes = $cfgIncludeFspAttributes\n", - print STDOUT "include-hb-attributes = $cfgIncludeHbAttributes\n", } ################################################################################ @@ -3374,20 +3371,16 @@ sub generateTargetingImage { my $pnorRwBaseAddress = $pnorRoBaseAddress + $vmmSectionOffset; my $heapPnorInitBaseAddr = $pnorRwBaseAddress + $vmmSectionOffset; my $heapZeroInitBaseAddr = $heapPnorInitBaseAddr + $vmmSectionOffset; - - #We will either have additional FSP sections or Hostboot section but not both + my $hbHeapZeroInitBaseAddr = $heapZeroInitBaseAddr + $vmmSectionOffset; # Split "fsp" into additional sections - my $fspP0DefaultedFromZeroBaseAddr = $heapZeroInitBaseAddr + $vmmSectionOffset; + my $fspP0DefaultedFromZeroBaseAddr = $hbHeapZeroInitBaseAddr + $vmmSectionOffset; my $fspP0DefaultedFromP3BaseAddr = $fspP0DefaultedFromZeroBaseAddr + $vmmSectionOffset; my $fspP3RoBaseAddr = $fspP0DefaultedFromP3BaseAddr + $vmmSectionOffset; my $fspP3RwBaseAddr = $fspP3RoBaseAddr + $vmmSectionOffset; my $fspP1DefaultedFromZeroBaseAddr = $fspP3RwBaseAddr + $vmmSectionOffset; my $fspP1DefaultedFromP3BaseAddr = $fspP1DefaultedFromZeroBaseAddr + $vmmSectionOffset; - # Hostboot specific section - my $hbHeapZeroInitBaseAddr = $heapZeroInitBaseAddr + $vmmSectionOffset; - # Reserve 256 bytes for the header, then keep track of PNOR RO offset my $headerSize = 256; my $offset = $headerSize; @@ -3927,6 +3920,14 @@ sub generateTargetingImage { $sectionHoH{ heapZeroInit }{ size } = sizeBlockAligned($heapZeroInitOffset,$blockSize,1); + # zeroInitSection occupies no space in the binary, so set the + # Hostboot section address to that of the zeroInitSection + $sectionHoH{ hbHeapZeroInit }{ offset } = + $sectionHoH{heapZeroInit}{ offset }; + $sectionHoH{ hbHeapZeroInit }{ type } = 10; + $sectionHoH{ hbHeapZeroInit }{ size } = + sizeBlockAligned($hbHeapZeroInitOffset,$blockSize,1); + # Split "fsp" into additional sections if($cfgIncludeFspAttributes) { @@ -3971,16 +3972,6 @@ sub generateTargetingImage { $sectionHoH{ fspP1DefaultedFromP3 }{ size } = sizeBlockAligned($fspP1DefaultedFromP3Offset,$blockSize,1); } - elsif($cfgIncludeHbAttributes) - { - # zeroInitSection occupies no space in the binary, so set the - # Hostboot section address to that of the zeroInitSection - $sectionHoH{ hbHeapZeroInit }{ offset } = - $sectionHoH{heapZeroInit}{ offset }; - $sectionHoH{ hbHeapZeroInit }{ type } = 10; - $sectionHoH{ hbHeapZeroInit }{ size } = - sizeBlockAligned($hbHeapZeroInitOffset,$blockSize,1); - } my $numSections = keys %sectionHoH; @@ -4000,7 +3991,7 @@ sub generateTargetingImage { $headerBinData .= pack4byte($offsetToSections); # Split "fsp" into additional sections - my @sections = ("pnorRo","pnorRw","heapPnorInit","heapZeroInit"); + my @sections = ("pnorRo","pnorRw","heapPnorInit","heapZeroInit", "hbHeapZeroInit"); if($cfgIncludeFspAttributes) { push(@sections,"fspP0DefaultedFromZero"); @@ -4010,10 +4001,6 @@ sub generateTargetingImage { push(@sections,"fspP1DefaultedFromZero"); push(@sections,"fspP1DefaultedFromP3"); } - elsif($cfgIncludeHbAttributes) - { - push(@sections,"hbHeapZeroInit"); - } foreach my $section (@sections) { @@ -4174,16 +4161,6 @@ generated code. Omits FSP specific attributes and targets from the generated binaries and generated code. This is the default behavior. -=item B<--include-hb-attributes> - -Emits Hostboot specific attributes and targets into the generated binaries and -generated code. - -=item B<--noinclude-hb-attributes> - -Omits Hostboot specific attributes and targets from the generated binaries and -generated code. This is the default behavior. - =item B<--verbose> Prints out some internal workings diff --git a/src/usr/targeting/xmltohb/makefile b/src/usr/targeting/xmltohb/makefile index 5a38c02fc..2cc853475 100644 --- a/src/usr/targeting/xmltohb/makefile +++ b/src/usr/targeting/xmltohb/makefile @@ -110,7 +110,7 @@ ${EXTRA_PARTS}: ${IMGDIR}/% : ${GENDIR}/% # create merged target xml ${GENDIR}/${XMLTOHB_MERGED_COMMON_TARGET_SOURCES}: \ ${XMLTOHB_TARGET_MERGE_SCRIPT} ${XMLTOHB_COMMON_TARGET_SOURCES} ${XMLTOHB_HB_TARGET_SOURCES} - ./${XMLTOHB_TARGET_MERGE_SCRIPT} $(addprefix --hb=,${XMLTOHB_HB_TARGET_SOURCES}) \ + ./${XMLTOHB_TARGET_MERGE_SCRIPT} $(addprefix --hb=,${COMMON_TARGETING_REL_PATH}/${XMLTOHB_HB_TARGET_SOURCES}) \ $(addprefix --common=,${COMMON_TARGETING_REL_PATH}/${XMLTOHB_COMMON_TARGET_SOURCES}) > $@ # generic XML is created from the generic sources only @@ -144,5 +144,5 @@ ${GENDIR}/%_targeting.bin: ${XMLTOHB_COMPILER_SCRIPT} ${GENDIR}/%.hb.xml \ $(addprefix --fapi-attributes-xml-file=,${GENDIR}/${XMLTOHB_FAPI_XML}) \ --src-output-dir=none --img-output-dir=$(dir $@) \ --img-output-file=$(notdir $@) \ - --vmm-consts-file=$(VMM_CONSTS_FILE) --noshort-enums --include-hb-attributes + --vmm-consts-file=$(VMM_CONSTS_FILE) --noshort-enums |