<?xml version="1.0" encoding="UTF-8"?>
<!--
  Copyright (c) 2016 OpenPOWER Foundation
  
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
  
-->
<section xmlns="http://docbook.org/ns/docbook" 
         xmlns:xi="http://www.w3.org/2001/XInclude"
         xmlns:xlink="http://www.w3.org/1999/xlink" 
         version="5.0"
         xml:id="dbdoclet.50569337_22801">

  <title>RTAS Error/Event Return Format</title>
  
  <para>This section describes in detail the return value retrieved by an
  RTAS call to either the 
  <emphasis>event-scan</emphasis> or 
  <emphasis>check-exception</emphasis> function.</para>
  
  <para>The return value consists of a fixed part and an optional Extended
  Error Report, described in the next section, which contains full details
  of the error. The fixed part is intended to allow reporting the most
  common problems in a simple way, which makes error detection and recovery
  simple for OSs that want to implement a very simple error handling
  strategy. At the same time, the mechanism is capable of providing full
  disclosure of the error syndrome information for OSs which have a more
  complete error handling strategy.</para>
  
  <para>RTAS can return at most one return code per invocation. If multiple
  conditions exist, RTAS returns them in descending order of severity on
  successive calls.</para>
  
  <section xml:id="dbdoclet.50569337_75663">
    <title>Reporting and Recovery Philosophy, and Description of
    Fields</title>
    
    <para>All firmware implementations use a common error and event reporting
    scheme, as described in detail below. It is not required that error
    recovery be present in firmware implementations, nor is it required that
    a high degree of error recovery or survival be undertaken by OSs. If such
    behavior is desired, then specific platform-dependent handlers can be
    loaded into the OS. However, this section defines return result codes and
    a philosophy which can be used if aggressive error handling is
    implemented in firmware. This section describes the fields of the Error
    Report format, and the philosophy which should be applied in generating
    return values from firmware or interpreting such return codes in an
    OS.</para>
    
    <para>In general, an OS would look at the Disposition field first to see
    if an error has been corrected already by firmware. If not corrected to
    the OS&#8217;s satisfaction, the OS would examine the Severity field.
    Based on that value, and optionally on any information it can use from
    the Type and other fields, the OS will make a determination of whether to
    continue or to halt operations. In either case, it may choose to log
    information regarding the error, using the remaining fields and optional
    Extended Error Log.</para>
    
    <para>The following sections describe the field values in 
    <xref linkend="dbdoclet.50569337_21249"/>.</para>
    
    <section>
      <title>Version</title>
      
      <para>This field is used only to distinguish among present and potential
      future formats for the remainder of the error report. This value will be
      incremented if extensions are made to the format described here. The
      primary function of this field is for future OSs to identify whether an
      error report may contain some (unknown at present) feature that was added
      after the initial version of this specification.</para>
      
    </section>
    
    <section>
      <title>Severity</title>
      
      <para>This field represents the value judgment of firmware of how serious
      the problem being reported should be considered by the OS.</para>
      
      <para>Errors which are believed to represent a permanent hardware failure
      affecting the entire system are considered &#8220;FATAL.&#8221; OSs would
      not attempt to continue normal operation after receiving notice of such
      an error. OSs may not even be able to perform an orderly shutdown in the
      presence of a Fatal error, though they may make a policy decision to
      try.</para>
      
      <para>Less serious errors, but still causing a loss of data or state, are
      considered &#8220;ERRORs.&#8221; In general, continuing after such an
      error is questionable, since details of what has failed may not be
      available, or if available, may not map nicely onto any ongoing activity
      with which the OS can associate it. However, OSs may make a policy
      decision (for example, based on the error Type, the Initiator, or the
      Target) to continue operation after an Error.</para>
      
      <para>There are some types of errors, such as parity errors in memory or
      a parity error on a transfer between CPU and memory, which occur
      synchronously with the current process execution context. Such errors are
      sometimes fatal only to the current thread of execution; that is, they
      affect only the current CPU state and possibly that of any memory
      locations being currently referenced. If that context of execution is not
      essential to the system&#8217;s operation (for example, if an error trap
      mechanism is available in the OS and can be triggered to recover the OS
      to a known state), recovery and continuation may be possible. Or at
      least, since the memory of the machine is in an undamaged state, the
      system may be able to be brought down in an orderly fashion. Such errors
      are reported as having Severity &#8220;ERROR_SYNC&#8221;. It is OS
      dependent whether recovery is possible after such an error, or whether
      the OS will treat it as a fatal problem.</para>
      
      <para>The &#8220;WARNING&#8221; return value indicates that a
      non-state-losing error, either fully recovered by firmware or not needing
      recovery, has occurred. No OS action is required, and full operation is
      expected to continue unhindered by the error. Examples include corrected
      ECC errors or bus transfer failures which were re-tried
      successfully.</para>
      
      <para>The &#8220;EVENT&#8221; return value is the mechanism firmware uses
      to communicate event information to the OS. The event may have been
      detected by polling using 
      <emphasis>event-scan</emphasis> or on the occurrence of an interrupt by
      calling 
      <emphasis>check-exception</emphasis>. In either case, the Error Return
      value indicates the event which has occurred in the Type field. See the
      Type description below for a description of specific events and their
      expected handling.</para>
      
      <para>The &#8220;NO_ERROR&#8221; return value indicates that no error was
      present. In this case, the remainder of the Error Return fields are not
      valid and should not be referenced.</para>
      
    </section>
    
    <section>
      <title>RTAS Disposition</title>
      
      <para>An aggressive firmware implementation may choose to attempt
      recovery for some classes of error so an OS can continue operation in the
      face of recoverable errors. If firmware detects an error for which it has
      recovery code, it attempts such action before it returns a value to the
      OS (that is, the mechanisms are linked in RTAS and cannot be separately
      accessed). Note that Disposition is nearly independent from Severity.
      Severity says how serious an error was, and Disposition says, regardless
      of severity, whether or not the OS has to even look at it. In general, an
      OS will first examine Disposition, then Severity.</para>
      
      <para>A return value of &#8220;FULLY RECOVERED&#8221; means that RTAS was
      able to completely recover the machine state after the error, and OS
      operation can continue unhindered. The severity of the problem in this
      case is irrelevant, though for consistency a &#8220;FATAL&#8221; error
      can never be &#8220;FULLY RECOVERED.&#8221;</para>
      
      <para>A return value of &#8220;LIMITED RECOVERY&#8221; means that RTAS
      was able to recover the state of the machine, but that some feature of
      the machine has been disabled or lost (for example, error checking), or
      performance may suffer (for example, a failing cache has been disabled).
      The RTAS implementation may return further information in the extended
      error log format regarding what action was done or what corrective action
      failed. In general, a conservative OS will treat this return the same as
      &#8220;NOT RECOVERED,&#8221; and initiate shutdown. A less conservative
      OS may choose to let the user decide whether to continue or to shut
      down.</para>
      
      <para>A value of &#8220;NOT RECOVERED&#8221; indicates that the RTAS
      either did not attempt recovery, or that it attempted recovery but was
      unsuccessful.</para>
      
    </section>
    
    <section>
      <title>Optional Part Presence</title>
      
      <para>This is a single flag, valid only if the 32-bit Error Return value
      is located in memory, which indicates whether or not an Extended Error
      Log Length field and the Extended Error Log follows it in memory. It will
      be set on an in-memory return result from RTAS if and only if the RTAS
      call indicated sufficient space to return the Extended Error Log, and the
      RTAS implementation supports the Extended Error Log.</para>
      
    </section>
    
    <section>
      <title>Initiator</title>
      
      <para>This field indicates, to the best ability of RTAS to determine it,
      the initiator of a failed transaction. (Note that in the
      &#8220;Initiator&#8221; field of 
      <xref linkend="dbdoclet.50569337_30773"/>, the value &#8220;I/O&#8221;
      indicates one of the defined I/O buses or IOAs. This field contains
      finer-grained details of which type of I/O bus failed, if known, and
      &#8220;UNKNOWN&#8221; if RTAS cannot tell.)</para>
      
      <para>In many of the newer LoPAR platforms, the platform error
      notification and handling flow is asynchronous to the OS and software
      execution flow, therefore the context of Initiator is not applicable to
      the platform firmware. In those cases, the value of &#8220;(0) Unknown or
      Not Applicable&#8221; is used for Initiator. In logs created with Version
      6 or later, more detailed information about the error is provided in the
      Platform Event log format.</para>
      
    </section>
    
    <section>
      <title>Target</title>
      
      <para>If RTAS can determine it, this field indicates the target of a
      failed transaction.</para>
      
      <para>In many of the newer LoPAR platforms, the platform error
      notification and handling flow is asynchronous to the OS and software
      execution flow, therefore the context of Target is not applicable to the
      platform firmware. In those cases, the value of &#8220;(0) Unknown or Not
      Applicable&#8221; is used for Target. In logs created with Version 6 or
      later, more detailed information about the error are provided in the
      Platform Event log format.</para>
      
    </section>
    
    <section>
      <title>Type</title>
      
      <para>This field identifies the general type of the error or event. In
      some cases (for example, INTERN_DEV_FAIL), multiple possible events are
      grouped together under a common return value. In such cases,
      platform-aware software may use the Extended Error Log to distinguish
      them. Non-platform-aware software will generally treat all errors of a
      given type the same, so it generally will not need to access the Extended
      Error Log information.</para>
      
      <para>In the table, the EPOW values are associated with a Severity of
      EVENT. All other values will be associated with Severity values of FATAL,
      ERROR, ERROR_SYNC, or WARNING, and may or may not be corrected by
      RTAS.</para>
      
      <para>EPOW is an event type which indicates the potential loss of power
      or environmental conditions outside the limits of safe operation of the
      platform. See 
      <xref linkend="dbdoclet.50569337_17513"/> for more information.</para>
      
      <para>The &#8220;Platform Error (224)&#8221;, introduced for Version 6,
      generalizes that the error is identified by the platform and the specific
      details are encoded in the Platform Event log format itself.</para>
      <para>The &#8220;ibm,io-events (225)&#8221; defines a set of event
      notifications which requires special handling by the OS. For this type of
      event notification, the Platform Event Log contains the &#8220;IO
      Events&#8221; section which identifies additional details associated with
      the event.</para>
      
      <para>The &#8220;Platform information event (226)&#8221; indicates the
      return log should be logged as &#8220;Information Log&#8221;. These logs
      indicate key platform events and can be used for reference
      purposes.</para>
      
      <para>The &#8220;Resource deallocation event (227)&#8221; indicates an
      event notification to the OS that a specific hardware resource has
      experienced recurring recoverable errors with a trend toward
      unrecoverable. The OS should take action to deallocate the resource from
      usage to prevent unrecoverable errors. For these types of event
      notification, the Platform Event Log contains the &#8220;Logical Resource
      Identification&#8221; section which identifies the &#8220;Logical
      Entity&#8221; by Resource Type and Resource ID, associated with the
      event.</para>
      
      <para>The &#8220;Dump notification event (228)&#8221; indicates that a
      dump file is present in the platform and is available for retrieval by
      the OS. For this type of event notification, the Platform Event Log
      contains the &#8220;Dump Locator&#8221; section which contains additional
      event specific information.</para>
      
      <para>Additional Type values will be added in future revisions of the
      specification. If an OS does not recognize a particular event type, it
      can examine the severity first, and then choose to ignore the event if it
      is not serious.</para>
      
    </section>
    
    <section>
      <title>Extended Event Log Length / Change Scope</title>
      
      <para>This optional 32-bit field is present in memory following the
      32-bit Event Return value if the Optional Part Presence flag is
      &#8220;PRESENT&#8221;, and it indicates the length in bytes of the
      Extended Event Log information which immediately follows it in memory.
      The length does not include this field or the Event Return field, so it
      may be zero. The field is also present for a resource change &#8220;Hot
      Plug&#8221; event, such as a PRRN event, and then represents the scope of
      a resource change.</para>
      
    </section>
    
    <section xml:id="dbdoclet.50569337_28848">
      <title>RTAS Event Return Format Fixed Part</title>
      
      <para>The summary portion of the error return is designed to fit into a
      single 32-bit integer. When used as a data return format in memory, an
      optional Length field and Extended Error Log data may follow the summary.
      The fixed part contains a &#8220;presence&#8221; flag which identifies
      whether an extended report is present.</para>
      
      <para>In the table below, the location of each field within the integer
      is included in parentheses after its name. Numerical field values are
      indicated in decimal unless noted otherwise.</para>

      <table frame="all" pgwide="1" xml:id="dbdoclet.50569337_21249">
        <title>RTAS Event Return Format (Fixed Part) 
        <emphasis>(Continued)</emphasis></title>
        <tgroup cols="2">
          <colspec colname="c1" colwidth="30*" />
          <colspec colname="c2" colwidth="70*" />
          <thead>
            <row>
              <entry>
                <para>
                  <emphasis role="bold">Bit Field Name (bit
                  number(s))</emphasis>
                </para>
              </entry>
              <entry>
                <para>
                  <emphasis role="bold">Description, Values (Described in 
                  <xref linkend="dbdoclet.50569337_75663"/>)</emphasis>
                </para>
              </entry>
            </row>
          </thead>
          <tbody>
            <row>
              <entry>
                <para>Version (0:7)</para>
              </entry>
              <entry>
                <para>A distinct value used to identify the architectural
                version of message.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>Severity (8:10)</para>
              </entry>
              <entry>
                <para>Severity level of error/event being reported:</para>
                <para>ALREADY_REPORTED (6)</para>
                <para>FATAL (5)</para>
                <para>ERROR (4)</para>
                <para>ERROR_SYNC (3)</para>
                <para>WARNING (2)</para>
                <para>EVENT (1)</para>
                <para>NO_ERROR (0)</para>
                <para>reserved for future use (7)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>RTAS Disposition (11:12)</para>
              </entry>
              <entry>
                <para>Degree of recovery which RTAS has performed prior to
                return after an error (value is FULLY_RECOVERED if no error is
                being reported):</para>
                <para>FULLY_RECOVERED(0)</para>
                <para><emphasis role="bold">Note:</emphasis> Cannot be used when Severity is
                &#8220;FATAL&#8221;.</para>
                <para>LIMITED_RECOVERY(1)</para>
                <para>NOT_RECOVERED(2)</para>
                <para>reserved for future use (3)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>Optional_Part_Presence (13)</para>
              </entry>
              <entry>
                <para>Indicates if an Extended Error Log Length and Extended
                Error Log follows this 32-bit quantity in memory:</para>
                <para>PRESENT (1): The optional Extended Error Log is
                present.</para>
                <para>NOT_PRESENT (0): The optional Extended Error Log is not
                present.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>Reserved (14:15)</para>
              </entry>
              <entry>
                <para>Reserved for future use (0:3)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>Initiator (16:19)</para>
              </entry>
              <entry>
                <para>Abstract entity that initiated the event or the failed
                operation:</para>
                <para>UNKNOWN (0): Unknown or Not Applicable</para>
                <para>CPU (1): A CPU failure (in an MP system, the specific CPU
                is not differentiated here)</para>
                <para>PCI (2): PCI host bridge or PCI IOA</para>
                <para>Reserved -- do not reuse (3)</para>
                <para>MEMORY (4): Memory subsystem, including any caches</para>
                <para>Reserved -- do not reuse (5)</para>
                <para>HOT PLUG (6)</para>
                <para>Reserved for future use (7-15)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>Target (20:23)</para>
              </entry>
              <entry>
                <para>Abstract entity that was apparent target of failed
                operation (UNKNOWN if Not Applicable): Same values as Initiator
                field</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>Type (24:31)</para>
              </entry>
              <entry>
                <para>General event or error type being reported:</para>
                <para>&#160;</para>
                <para>Internal Errors:</para>
                <para>RETRY (1): too many tries failed, and a retry count
                expired</para>
                <para>TCE_ERR (2): range or access type error in an access
                through a TCE</para>
                <para>INTERN_DEV_FAIL (3): some RTAS-abstracted device has
                failed (for example, TOD clock)</para>
                <para>TIMEOUT (4): intended target did not respond before a
                time-out occurred</para>
                <para>DATA_PARITY (5): Parity error on data</para>
                <para>ADDR_PARITY(6): Parity error on address</para>
                <para>CACHE_PARITY (7): Parity error on external cache</para>
                <para>ADDR_INVALID(8): access to reserved or undefined address,
                or access of an unacceptable</para>
                <para>type for an address</para>
                <para>ECC_UNCORR (9): uncorrectable ECC error</para>
                <para>ECC_CORR (10): corrected ECC error</para>
                <para>RESERVED (11-63): Reserved for future use</para>
                <para>Environmental and Power Warnings:</para>
                <para>EPOW(64): See Extended Error Log for sensor value</para>
                <para>RESERVED (65-95): Reserved for future use</para>
                <para>Reserved -- do not reuse (96-159)</para>
                <para>&#160;</para>
                <para>Platform Resource Reassignment (160) -- includes Change
                Scope in bits 32-63</para>
                <para>&#160;</para>
                <para>Reserved for future use (through-223)</para>
                <para>&#160;</para>
                <para>Platform Error (224) (for Version 6 or later)</para>
                <para>ibm,io-events (225) (for Version 6 or later)</para>
                <para>Platform information event (226) (for Version 6 or
                later)</para>
                <para>Resource deallocation event (227) (for Version 6 or
                later)</para>
                <para>Dump notification event (228) (for Version 6 or
                later)</para>
                <para>Hot-plug-events (229) (for Version 6 or later)</para>
                <para>&#160;</para>
                <para>Vendor-specific events(230-255): Non-architected</para>
                <para>&#160;</para>
                <para>Other (0): none of the above</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>Extended Event Log Length / Change Scope</para>
                <para>(32:63)</para>
              </entry>
              <entry>
                <para>Length in bytes of Extended Event Log information which
                follows (see 
                <xref linkend="dbdoclet.50569337_79682"/>) OR the scope
                parameter to be input the 
                <emphasis>ibm,update-nodes</emphasis> RTAS to retrieve the nodes
                that were changed by selected &#8220;Hot Plug&#8221;
                events.</para>
              </entry>
            </row>
          </tbody>
        </tgroup>
      </table>
      
      <para>Typically, most OSs care about, and have handlers for, only a few
      specific errors. Since coding of an error is unique in the above scheme,
      an OS can check for specific errors, then if nothing matches exactly,
      look at more generic parts of the error message. This permits generic
      error message generation for the user, providing the basic information
      that RTAS delivered to the OS. Platforms may provide more complete error
      diagnosis and reporting in RTAS, combined with off-line diagnostics which
      take advantage of the information reported from previous failures.</para>
      
    </section>

  </section>
  
  <section xml:id="dbdoclet.50569337_79682">
    <title>Version 6 Extensions of Event Log Format</title>

    <section xml:id="dbdoclet.50569337_59870">
      <title>RTAS General Extended Event Log Format, Version 6</title>
      
      <para>The following section defines new extensions to the event log
      format which are identified by a Version number 0x06 in the first byte in
      the returned buffer (byte 0 of the fixed-part information). The following
      tables define extended error log formats for Version 6, by which the RTAS
      can optionally return detailed information to the software about a
      hardware error condition. Other versions will be defined in following
      sections of this chapter. This format is also intended to be usable as
      residual error log data in NVRAM, so that the OS could alternatively
      retrieve error data after an error event which caused a reboot.</para>
      
      <para>Platforms indicate the maximum length of the error log buffer in
      the 
      <literal>&#8220;rtas-error-log-max&#8221;</literal> RTAS property in the
      OF device tree, so that the OS can allocate a buffer large enough to hold
      the extended error log data when calling the RTAS 
      <emphasis>event-scan</emphasis> or 
      <emphasis>check-exception</emphasis> functions. If the allocated buffer is
      not large enough to hold all the error log data, the data is truncated to
      the size of the buffer.</para>
      
      <para>Requirement 
      <xref linkend="dbdoclet.50569337_44999"/> and 
      <xref linkend="dbdoclet.50569337_85491"/> require that four bytes of the
      vendor-specific format contain a unique identifier for the company that
      has defined the format. The description of the &#8220;name&#8221; string
      in 
      <xref linkend="dbdoclet.50569387_45524"/> provides alternatives for
      defining this identifier. Examples of these unique identifiers include
      stock ticker labels and Organizationally Unique Identifiers (OUIs). Since
      the different options in IEEE 1275 provide different guarantees of
      uniqueness and different identifier lengths, the company should use its
      best judgement in selecting a unique identifier that fits the four
      character field. The length of this field is limited to 4 bytes to
      conserve available log data space. As an example, if Allied Information
      Monitoring (a fictional name for the purposes of this example) were to
      create a vendor-specific log format 12, then bytes 12-15 of such a log
      may contain &#8220;AIM&lt;NULL&gt;&#8221;.</para>
      
      <para>This identifier is intended to apply to the company that defines
      the specific format, and may be used by other companies that wish to be
      compatible with that format. For example, if another company wanted to
      take advantage of existing support in one of the OSs by using an
      AIM-specific error log format for logs generated on their own platform,
      their log would have to contain an identifier of
      &#8220;AIM&lt;NULL&gt;&#8221;.</para>
      
	    <variablelist>
	    
	    	<varlistentry xml:id="dbdoclet.50569337_44999">
	    		<term><emphasis role="bold">R1-<xref linkend="dbdoclet.50569337_59870" 
    			xrefstyle="select: labelnumber nopage"/>-1.</emphasis></term>
	    			<listitem>
				      <para>Platforms which
				      support Version 6 of the Extended Event Log Format must do so by
				      including a 0x06 value in the first byte of the RTAS Event Return Format
				      (Fixed Part) and using the formats described in 
				      <xref linkend="dbdoclet.50569337_79682"/> (and all subsections under that
				      section).</para>
				      <para>
				      
				      <emphasis role="bold">Software Implementation Note:</emphasis> OSs running on
				      platforms which support Version 6 of the Extended Event Log Format must
				      ensure that the length parameter passed in the 
				      <emphasis>event-scan</emphasis> RTAS call be at least 2 KB.</para>
				    </listitem>
	    	</varlistentry>
	    
	    	<varlistentry>
	    		<term><emphasis role="bold">R1-<xref linkend="dbdoclet.50569337_59870" 
    			xrefstyle="select: labelnumber nopage"/>-2.</emphasis></term>
	    			<listitem>
				      <para>If the length parameter on the RTAS 
				      <emphasis>event-scan</emphasis> call for returning data using Version 6 of
				      the Extended Event Log Format is insufficient to return all the data the
				      platform would otherwise make available, the platform must truncate the
				      data by eliminating optional sections entirely rather than truncating a
				      section.</para>
	    			</listitem>
	    	</varlistentry>
	    
	    	<varlistentry>
	    		<term><emphasis role="bold">R1-<xref linkend="dbdoclet.50569337_59870" 
    			xrefstyle="select: labelnumber nopage"/>-3.</emphasis></term>
	    			<listitem>
				      <para>All event logs returning a Version 6
				      Platform Event Log format must include the Main-A and Main-B Sections.
				      Other sections are optional depending on the specific event type as
				      specified in Requirement 
				      <xref linkend="dbdoclet.50569337_69083"/>.</para>
	    			</listitem>
	    	</varlistentry>
	    
	    	<varlistentry xml:id="dbdoclet.50569337_69083">
	    		<term><emphasis role="bold">R1-<xref linkend="dbdoclet.50569337_59870" 
    			xrefstyle="select: labelnumber nopage"/>-4.</emphasis></term>
	    			<listitem>
				      <para>The following
				      sections must be provided as indicated:</para>
				      
				      <orderedlist numeration="loweralpha">
							  <listitem>
						      <para>For the Platform error Type, the Primary Service Reference Code
						      (SRC) section must be provided.</para>
							  </listitem>

							  <listitem>
						      <para>For the ibm,io-events Type, the IO Events section must be
						      provided.</para>
							  </listitem>

							  <listitem>
						      <para>For the Resource deallocation event Type, the Logical Resource
						      Identification section must be provided.</para>
							  </listitem>

							  <listitem>
						      <para>For the Dump notification event Type, the Dump Locator section
						      must be provided.</para>
							  </listitem>

							  <listitem>
						      <para>For the EPOW Type, the EPOW section must be provided.</para>
							  </listitem>

							  <listitem>
						      <para>For the HOTPLUG Type, the Hotplug section must be provided.</para>
							  </listitem>
							</orderedlist>
					      
	    			</listitem>
	    	</varlistentry>
	    
	    </variablelist>
    
      <para>
      <emphasis role="bold">Software Implementation Note:</emphasis> All fields in the
      Platform Event Log marked &#8220;Platform specific information&#8221; or
      &#8220;Other platform specific information sections&#8221; contain
      information reserved for platform or platform Service Application use
      only. That information is not defined in this document. Information in
      these fields should be ignored by the OS.</para>
      
      <para>
      <emphasis role="bold">Software Implementation and Architecture Note:</emphasis> All
      fields currently marked &#8220;Reserved&#8221; are set to zero by RTAS
      and are ignored by the OS. The reserved values in the defined fields in
      the Platform Event Log may be defined in the future in this architecture
      document for platform specific usage without change to this
      architecture.</para>
      
      <table frame="all" pgwide="1" xml:id="dbdoclet.50569337_85491">
        <title>RTAS General Extended Event Log Format, Version 6</title>
        <tgroup cols="3">
          <colspec colname="c1" colwidth="10*" />
          <colspec colname="c2" colwidth="10*" />
          <colspec colname="c3" colwidth="80*" />
          <thead>
            <row>
              <entry>
                <para><emphasis role="bold">Byte</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Bit</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Description</emphasis></para>
              </entry>
            </row>
          </thead>
          <tbody>
            <row>
              <entry morerows="7">
                <para>0</para>
              </entry>
              <entry>
                <para>0</para>
              </entry>
              <entry>
                <para>1 = Log Valid</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>1 = Unrecoverable Error</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>1 = Recoverable (correctable or successfully retried)
                Error</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>3</para>
              </entry>
              <entry>
                <para>1 = Unrecoverable Error, Bypassed - Degraded operation
                (e.g. CPU/memory taken off-line, bad cache bypassed,
                etc.)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>4</para>
              </entry>
              <entry>
                <para>1 = Predictive Error - Error is recoverable, but
                indicates a trend toward unrecoverable failure (e.g.
                correctable ECC error threshold, etc.)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>5</para>
              </entry>
              <entry>
                <para>1 = &#8220;New&#8221; Log (always 1 for data returned
                from RTAS)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>6</para>
              </entry>
              <entry>
                <para>1 = Big-Endian</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>7</para>
              </entry>
              <entry>
                <para>Reserved</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>0:7</para>
              </entry>
              <entry>
                <para>Reserved</para>
              </entry>
            </row>
            <row>
              <entry morerows="2">
                <para>2</para>
              </entry>
              <entry>
                <para>0</para>
              </entry>
              <entry>
                <para>Set to 1 - (Indicating log is in PowerPC format)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>1:3</para>
              </entry>
              <entry>
                <para>Reserved</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>4:7</para>
              </entry>
              <entry>
                <para>Log format indicator, defined format used for byte
                12-2047:</para>
                <para>0-13, 15 Reserved</para>
                <para>14: Platform Event Log</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>3</para>
              </entry>
              <entry>
                <para>0:7</para>
              </entry>
              <entry>
                <para>Reserved</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>4-11</para>
              </entry>
              <entry>
                <para>&#160;</para>
              </entry>
              <entry>
                <para>Reserved</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>12-15</para>
              </entry>
              <entry>
                <para>&#160;</para>
              </entry>
              <entry>
                <para>Company identifier of the company that has defined the
                format for this vendor specific log type.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>16-2047</para>
              </entry>
              <entry>
                <para>&#160;</para>
              </entry>
              <entry>
                <para>Detail vendor specific log data. If byte 2, bits 4:7,
                above, are a value of 14 (Platform Event Log) and bytes 12-16
                are &#8220;IBM &#8221;, then see 
                <xref linkend="dbdoclet.50569337_97351"/> for the content of
                this field.</para>
              </entry>
            </row>
          </tbody>
        </tgroup>
      </table>
      
    </section>
    
    <section xml:id="dbdoclet.50569337_97351">
      <title>Platform Event Log Format, Version 6</title>
      
      <para>This format is used when byte 2, bits 4:7, of the RTAS General
      Extended Event Log Version 6 are a value of 14 (Platform Event
      Log).</para>
      
      <table frame="all" pgwide="1" xml:id="dbdoclet.50569337_74137">
        <title>Overview of Platform Event Log Format, Version
        6</title>
        <tgroup cols="3">
          <colspec colname="c1" colwidth="10*" />
          <colspec colname="c2" colwidth="10*" />
          <colspec colname="c3" colwidth="80*" />
          <thead>
            <row>
              <entry>
                <para><emphasis role="bold">Byte</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Length in Bytes</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Description</emphasis></para>
              </entry>
            </row>
          </thead>
          <tbody>
            <row>
              <entry>
                <para>12-15</para>
              </entry>
              <entry>
                <para>4</para>
              </entry>
              <entry>
                <para>Contains ASCII characters
                &#8220;IBM&lt;NULL&gt;&#8221;.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>16-63</para>
              </entry>
              <entry>
                <para>48</para>
              </entry>
              <entry>
                <para>Main-A section (ID = 'PH'). Required section. See 
                <xref linkend="dbdoclet.50569337_30523"/> for the
                format.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>64-87</para>
              </entry>
              <entry>
                <para>24</para>
              </entry>
              <entry>
                <para>Main-B section (ID = 'UH'). Required, always follow
                Main-A section. See 
                <xref linkend="dbdoclet.50569337_68192"/> for the
                format.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>88-103</para>
              </entry>
              <entry>
                <para>16</para>
              </entry>
              <entry>
                <para>Logical Resource Identification section (ID = 'LR').
                Optional, present only for Resource deallocation event
                notification. If present, this section always follows Main-B
                section. See 
                <xref linkend="dbdoclet.50569337_26787"/> for the
                format.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>104-</para>
              </entry>
              <entry>
                <para>80+</para>
                <para>optional FRU call out sub-section</para>
              </entry>
              <entry>
                <para>Primary SRC section (ID = 'PS'). Required for
                &#8220;Platform Error&#8221; event type, optional for other
                event types. If present, this section always follows Main-B
                section. See 
                <xref linkend="dbdoclet.50569337_17545"/> for the
                format.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>&#160;</para>
              </entry>
              <entry>
                <para>64</para>
              </entry>
              <entry>
                <para>Dump Locator section (ID = 'DH') Optional, present only
                for dump event notification. If present, this section follows
                Main-B or Primary SRC section. See 
                <xref linkend="dbdoclet.50569337_94114"/> for the
                format.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>&#160;</para>
              </entry>
              <entry>
                <para>20</para>
              </entry>
              <entry>
                <para>EPOW section (ID = 'EP'). Optional, present only for
                &#8220;EPOW&#8221; interrupt event notification. If present,
                this section follows Main-B section. See 
                <xref linkend="dbdoclet.50569337_81250"/> for the
                format.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>&#160;</para>
              </entry>
              <entry>
                <para>Variable</para>
              </entry>
              <entry>
                <para>IO Events section (ID = 'IE'). Optional, present only for
                &#8220;ibm,io-events&#8221; interrupt event notification. If
                present, this section follows Main-B section. See 
                <xref linkend="dbdoclet.50569337_74350"/> for the
                format.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>&#160;</para>
              </entry>
              <entry>
                <para>28</para>
              </entry>
              <entry>
                <para>Failing Enclosure MTMS section (ID = 'MT'). Required for
                errors only. If present, this section follows Main-B section or
                Primary SRC. See 
                <xref linkend="dbdoclet.50569337_16482"/> for the
                format.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>&#160;</para>
              </entry>
              <entry>
                <para>28</para>
              </entry>
              <entry>
                <para>Impacted partition description section (ID = 'LP'').
                Required for errors only. If present, this section follows
                Main-B section or Primary SRC</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>&#160;</para>
              </entry>
              <entry>
                <para>40</para>
              </entry>
              <entry>
                <para>Machine Check Interrupt section (ID = 'MC'). Optional for
                &#8220;Platform Error&#8221; event types with ERROR_SYNC
                severity caused by a machine check interrupt. If present, this
                section follows the Main-B. See 
                <xref linkend="dbdoclet.50569337_54366"/>.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>&#160;</para>
              </entry>
              <entry>
                <para>???</para>
              </entry>
              <entry>
                <para>Hotplug Section (ID = “HP”). Optional, present only for 
                Hotplug event notification. If present, this section follows 
                Main-B section. See <xref linkend="error.hotplug"/>.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>...- 2047</para>
              </entry>
              <entry>
                <para>Variable</para>
              </entry>
              <entry>
                <para>Other platform specific information sections.
                Optional.</para>
              </entry>
            </row>
          </tbody>
        </tgroup>
      </table>
      
    </section>
    
    <section xml:id="dbdoclet.50569337_30523">
      <title>Platform Event Log Format, Main-A Section</title>
      
      <table frame="all" pgwide="1">
        <title>Platform Event Log Format, Version 6, Main-A
        Section</title>
        <tgroup cols="3">
          <colspec colname="c1" colwidth="10*" />
          <colspec colname="c2" colwidth="10*" />
          <colspec colname="c3" colwidth="80*" />
          <thead>
            <row>
              <entry>
                <para><emphasis role="bold">Offset</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Length in Bytes</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Description</emphasis></para>
              </entry>
            </row>
          </thead>
          <tbody>
            <row>
              <entry>
                <para>0x00</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Section ID: A two-ASCII character field which uniquely
                identifies the type of section.</para>
                <para>value = 'PH'</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x02</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Section length: Length in bytes of the section, including
                the section ID.</para>
                <para>value = 48</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x04</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Section Version</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x05</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Section sub-type</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x06</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Creator Component ID</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x08</para>
              </entry>
              <entry>
                <para>4</para>
              </entry>
              <entry>
                <para>Log creation date in BCD format: YYYYMMDD, where YYYY =
                year, MM = month 01 - 12, DD = day 01 - 31.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x0C</para>
              </entry>
              <entry>
                <para>4</para>
              </entry>
              <entry>
                <para>Log creation time in BCD format: HHMMSS00, where HH =
                hour 00 - 23, MM = minutes 00 - 59, SS = s econds 00 -5 9, 00 =
                hundredth of seconds 00 - 99.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x10</para>
              </entry>
              <entry>
                <para>8</para>
              </entry>
              <entry>
                <para>Platform specific information</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x18</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Creator ID -- subsystem creating the log entry
                represented as a single ASCII character</para>
                <para>'E' = Service Processor</para>
                <para>'H' = Hypervisor,</para>
                <para>'W' = Power Control</para>
                <para>'L' = Partition Firmware</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x19</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Reserved</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x1B</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Section count -- number of sections comprising log entry,
                including this section</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x1C</para>
              </entry>
              <entry>
                <para>4</para>
              </entry>
              <entry>
                <para>Reserved</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x20</para>
              </entry>
              <entry>
                <para>8</para>
              </entry>
              <entry>
                <para>Platform specific information</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x28</para>
              </entry>
              <entry>
                <para>4</para>
              </entry>
              <entry>
                <para>Platform Log ID (PLID)</para>
                <para>Unique identifier for a single event. Note that it is
                possible for multiple log entries to be made for a single
                error/event. The entries are linked to the same event by using
                the same PLID.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x2C</para>
              </entry>
              <entry>
                <para>4</para>
              </entry>
              <entry>
                <para>Platform specific information</para>
              </entry>
            </row>
          </tbody>
        </tgroup>
      </table>
      
    </section>
    
    <section xml:id="dbdoclet.50569337_68192">
      <title>Platform Event Log Format, Main-B Section</title>
      
      <table frame="all" pgwide="1">
        <title>Platform Event Log Format, Version 6, Main-B
        Section</title>
        <tgroup cols="3">
          <colspec colname="c1" colwidth="10*" />
          <colspec colname="c2" colwidth="10*" />
          <colspec colname="c3" colwidth="80*" />
          <thead>
            <row>
              <entry>
                <para><emphasis role="bold">Byte</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Length in Bytes</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Description</emphasis></para>
              </entry>
            </row>
          </thead>
          <tbody>
            <row>
              <entry>
                <para>0x00</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Section ID: A two-ASCII character field which uniquely
                identifies the type of section.</para>
                <para>value = 'UH'</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x02</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Section length: Length in bytes of the section, including
                the section ID.</para>
                <para>value = 24</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x04</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Section Version</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x05</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Section subtype</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x06</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Creator Component ID</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x08</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Subsystem ID: For error events, this is the failing
                subsystem. For non-error events, this is the subsystem
                associated with the event.</para>
                <para>0x10 - 0x1F = Processor subsystem including internal
                cache</para>
                <para>0x20 - 0x2F = Memory subsystem including external
                cache</para>
                <para>0x30 - 0x3F = I/O subsystem (hub, bridge, bus)</para>
                <para>0x40 - 0x4F = I/O adapter, device and peripheral</para>
                <para>0x50 - 0x5F = CEC hardware</para>
                <para>0x60 - 0x6F = Power/Cooling subsystem</para>
                <para>0x70 - 0x79 = Others subsystem</para>
                <para>0x7A - 0x7F = Surveillance Error</para>
                <para>0x80 - 0x8F = Platform Firmware</para>
                <para>0x90 - 0x9F = Software</para>
                <para>0xA0 - 0xAF = External environment</para>
                <para>0xB0 - 0xFF = Reserved</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x09</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Platform specific information</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x0A</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Event/Error Severity (see additional description
                following the table)</para>
                <para>0x00 = Informational or non- error Event. This field must
                be 0x00 for non-error event. Use Event Sub-type field to
                specify unique event.</para>
                <para>0x1X = Recovered Error</para>
                <para>0x10 = Recovered Error, general</para>
                <para>0x14 = Recovered Error, spare capacity utilized</para>
                <para>0x15 = Recovered Error, loss of entitled capacity</para>
                <para>0x2X = Predictive Error</para>
                <para>0x20 = Predictive Error, general</para>
                <para>0x21 = Predictive Error, degraded performance</para>
                <para>0x22 = Predictive Error, fault may be corrected after
                platform re-boot</para>
                <para>0x23 = Predictive Error, fault may be corrected after
                boot, degraded performance</para>
                <para>0x24 = Predictive Error, loss of redundancy</para>
                <para>0x4X = Unrecoverable Error</para>
                <para>0x40 = Unrecoverable Error, general</para>
                <para>0x41 = Unrecoverable Error, bypassed with degraded
                performance</para>
                <para>0x44 = Unrecoverable Error, bypassed with loss of
                redundancy</para>
                <para>0x45 = Unrecoverable Error, bypassed with loss of
                redundancy and performance</para>
                <para>0x48 = Unrecoverable Error, bypassed with loss of
                function</para>
                <para>0x6X = Error on diagnostic test</para>
                <para>0x60 = Error on diagnostic test, general</para>
                <para>0x61 = Error on diagnostic test, resource may produce
                incorrect results</para>
                <para>All other values = reserved</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x0B</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Event Sub-Type (primarily used when Event Severity =
                0x00, see additional description following the table)</para>
                <para>0x00 = not applicable.</para>
                <para>0x01 = Miscellaneous, Information Only</para>
                <para>0x08 = Dump Notification (Dump may also be reported on
                Error event)</para>
                <para>0x10 = Previously reported error has been corrected by
                system</para>
                <para>0x20 = System resources manually deconfigured by
                user</para>
                <para>0x21 = System resources deconfigured by system due to
                prior error event</para>
                <para>0x22 = Resource deallocation event notification</para>
                <para>0x30 = Customer environmental problem has returned to
                normal</para>
                <para>(e.g. input power restored, ambient temperature back
                within limits)</para>
                <para>0x40 = Concurrent Maintenance Event</para>
                <para>0x60 = Capacity Upgrade Event</para>
                <para>0x70 = Resource Sparing Event</para>
                <para>0x80 = Dynamic Reconfiguration Event (generated by
                RTAS)</para>
                <para>0xD0 = Normal system/platform shutdown or powered
                off</para>
                <para>0xE0 = Platform powered off by user without normal
                shutdown (abnormal power off)</para>
                <para>All other values = reserved</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x0C</para>
              </entry>
              <entry>
                <para>4</para>
              </entry>
              <entry>
                <para>Platform specific information</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x10</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Reserved</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x12</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Error Action Flags (see additional description following
                the table)</para>
                <para>bit 0 (0x8000) = 1, Service Action (customer
                notification) Required</para>
                <para>bit 1 (0x4000) = 1, Hidden Error - exclusive with SA
                Required (bit 0)</para>
                <para>bit 2 (0x2000) = 1, Report Externally (send to HMC and
                hypervisor)</para>
                <para>bit 3 (0x1000) = 1, Don't report to hypervisor (only
                report to HMC)</para>
                <para>(only meaningful when (bit 2) Report Externally is
                set)</para>
                <para>bit 4 (0x0800) = 1, Call Home Required</para>
                <para>(only valid if (bit 0) SA Required is set)</para>
                <para>bit 5 (0x0400) = 1, Error Isolation Incomplete. Further
                analysis required.</para>
                <para>bit 6 (0x0200) = 1, Deprecated.</para>
                <para>bit 7 (0x0100) = 1, Reserved</para>
                <para>bit 8, 9 = Platform specific information</para>
                <para>bit 10-15 = Reserved</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x14</para>
              </entry>
              <entry>
                <para>4</para>
              </entry>
              <entry>
                <para>Reserved</para>
              </entry>
            </row>
          </tbody>
        </tgroup>
      </table>
      
	    <section>
	      <title>Error/Event Severity</title>
	      
	      <para>This field indicates the severity of the error event and the impact
	      of the error to the platform (if applicable).</para>
	      
	      <para><emphasis role="bold">Non-error or Informational Event:</emphasis> 
	      This value indicates an event
	      that is a non-error event. Informational or user action event log entries
	      must use this value. The Event Type field provides additional event
	      information.</para>
	      
	      <para><emphasis  role="bold">Recovered Error, general:</emphasis> 
	      This value indicates an error event that
	      has been automatically recovered or corrected by the platform hardware
	      and/or firmware, e.g. ECC, internal spare or redundancy, cache line
	      delete, boot time array repair, etc. No service action is required for
	      this type of error. In general, when this value is used, the Error Action
	      Flags has the value of &#8220;Hidden Error&#8221;. An event log with this
	      value is used primarily for error thresholding design and code debug or
	      as a record to indicate error frequency or trend.</para>
	      
	      <para>
	      <emphasis role="bold">Recovered Error, spare capacity utilized:</emphasis> 
	      This value
	      indicates that an error on a resource has been recovered by utilizing
	      another resource not currently assigned for use (spare). The failing
	      component is to be considered permanently in an error state. For example,
	      a faulty instruction on one processor may be checkpointed and loaded into
	      a spare processor, continuing the operations of the faulty one. In this
	      case the failing component is considered permanently in an error
	      state.</para>
	      
	      <para>
	      <emphasis role="bold">Recovered Error, loss of entitled capacity:</emphasis> 
	      This value indicates that an error on a resource has been recovered by
	      utilizing another resource already in use by the system. The failing
	      component is to be considered permanently in an error state. This results
	      in a loss of capacity in the partition that receives the error. For
	      example, a processor already in use may take over the operations of a
	      faulty one. Loss of the faulty processor in the system then results in
	      less capacity being available to the partition receiving the error event.
	      Typically this event would have an event sub-type of &#8220;Resource
	      deallocation event notification&#8221; and the revised amount of entitled
	      capacity would be found in the Logical Resource Identification Section,
	      Entitled Capacity field.</para>
	      
	      <para><emphasis role="bold">Predictive Error, general: </emphasis>
	      This value indicates an event that has
	      been automatically recovered or corrected by the platform hardware and/or
	      firmware. However, the frequency of the errors indicates a trend toward
	      (or potential) platform unrecoverable error. A deferred service or repair
	      action is required. The automatic platform recovery actions have no
	      impact to system performance (e.g. ECC, CRC, etc.), or the impact is
	      unknown.</para>
	      
	      <para><emphasis  role="bold">Predictive Error, degraded performance: </emphasis>
	      This value indicates an
	      error event that has been automatically recovered or corrected by the
	      platform hardware and/or firmware. However, the frequency of the errors
	      (i.e. over threshold) indicates a trend toward (or potential) platform
	      unrecoverable error. A deferred service or repair action is required. The
	      automatic platform recovery actions are impacting/degrading system
	      performance.</para>
	      
	      <para><emphasis  role="bold">Predictive Error, fault may be corrected after 
	      platform re-boot: </emphasis>
	      This value indicates an error event that has been automatically recovered
	      or corrected by the platform hardware and/or firmware. However, the
	      frequency of the errors (i.e. over threshold) indicates a trend toward
	      (or potential) platform unrecoverable error. A deferred service or repair
	      action is required. The hardware fault may be corrected after platform
	      re-boot as part of the repair action. If the fault cannot be corrected
	      after re-boot, then a part replacement is required. The automatic
	      platform recovery actions have no impact to system performance (e.g. ECC,
	      CRC, etc.), or the impact is unknown.</para>
	      
	      <para><emphasis  role="bold">Predictive Error, fault may be corrected 
	      after platform re-boot, degraded performance: </emphasis>
	      This value indicates an error event that has been
	      automatically recovered or corrected by the platform hardware and/or
	      firmware. However, the frequency of the errors (i.e. over threshold)
	      indicates a trend toward (or potential) platform unrecoverable error. A
	      deferred service or repair action is required. The hardware fault may be
	      corrected after platform re-boot as part of the repair action. If the
	      fault cannot be corrected after re-boot, then a part replacement is
	      required. The automatic platform recovery actions are impacting/degrading
	      the system performance.</para>
	      
	      <para><emphasis role="bold">Predictive Error, loss of redundancy: </emphasis>
	      This value indicates an error
	      event that has been automatically recovered or corrected by the platform
	      hardware and/or firmware. However, the frequency of the errors (i.e. over
	      threshold) caused a loss in hardware redundancy. Future error in this
	      subsystem may causes platform unrecoverable error. A deferred service or
	      repair action is required to restore redundancy. The loss of redundancy
	      may or may not impact system performance.</para>
	      
	      <para><emphasis role="bold">Unrecoverable Error, general: </emphasis>
	      This value indicates an error event
	      that is unrecoverable or uncorrectable by the platform hardware and/or
	      firmware. The hardware or platform resource with the error cannot be
	      deconfigured from the system. If the error is intermittent or soft, the
	      platform may be able to re-boot successfully and resume. A service or
	      repair action is required as soon as possible to correct the
	      error.</para>
	      
	      <para><emphasis role="bold">Unrecoverable Error, bypassed with degraded 
	      performance: </emphasis>This value
	      indicates an error event that is unrecoverable or uncorrectable by the
	      platform hardware and/or firmware. However, the hardware or platform
	      resource with the error has been deconfigured from the system. The
	      platform can be IPLed or re-IPLed with the error bypassed. System
	      performance is degraded due to the deconfigured platform resource(s) e.g.
	      processor, cache, memory, etc. A deferred service or repair action is
	      required.</para>
	      
	      <para><emphasis role="bold">Unrecoverable Error, bypassed with loss 
	      of redundancy: </emphasis>This value
	      indicates an error event that is unrecoverable or uncorrectable by the
	      platform hardware and/or firmware. However, the hardware or platform
	      resource with the error can be deconfigured from the system. The platform
	      can be IPLed or re-IPLed with the error bypassed. The deconfigured
	      platform resource(s) resulted in loss of redundancy (e.g. Redundant FSP
	      with static fail-over) with no loss of system performance. A deferred
	      service or repair action is required.</para>
	      
	      <para><emphasis role="bold">Unrecoverable Error, bypassed with loss 
	      of redundancy + performance: </emphasis>
	      This value indicates an error event that is unrecoverable or
	      uncorrectable by the platform hardware and/or firmware. However, the
	      hardware or platform resource with the error can be deconfigured from the
	      system. The platform can be IPLed or re-IPLed with the error bypassed.
	      The deconfigured platform resource(s) resulted in loss of redundancy and
	      system performance. A deferred service or repair action is
	      required.</para>
	      
	      <para><emphasis role="bold">Unrecoverable Error, bypassed with loss 
	      of function: </emphasis>This value
	      indicates an error event that is unrecoverable or uncorrectable by the
	      platform hardware and/or firmware. However, the hardware or platform
	      resource with the error can be deconfigured from the system. The platform
	      can be IPLed or re-IPLed with the error bypassed. The deconfigured
	      platform resource(s) resulted in loss of platform or system function. A
	      deferred service or repair action is required.</para>
	      
	      <para><emphasis role="bold">Error on diagnostic test, general: </emphasis>
	      This value indicates an error
	      event that is detected during a diagnostic test. Impact to the system is
	      undefined or unknown.</para>
	      
	      <para><emphasis role="bold">Error on diagnostic test, resource may 
	      produce incorrect results: </emphasis>
	      This value indicates an error event that is detected during a diagnostic
	      test. The error may produce incorrect computational results (e.g.
	      processor floating point unit test error).</para>
	      
	    </section>
	    
	    <section>
	      <title>Event Sub-Type</title>
	      
	      <para>This field provides additional information on the non-error event
	      type.</para>
	      
	      <para><emphasis role="bold">Not applicable: </emphasis>
	      This value is used when the event is associated
	      with an error. Error/Event Severity field and SRC section provide
	      additional error information.</para>
	      
	      <para><emphasis role="bold">Miscellaneous, Information Only: </emphasis>
	      This value is used when the event
	      is &#8220;for information only&#8221; or the event description doesn't
	      fit into any other defined values in this field.</para>
	      
	      <para><emphasis role="bold">Dump Notification: </emphasis>
	      This value is used by the hypervisor or
	      partition firmware as a &#8220;Dump Notification&#8221; event to the OS
	      that a dump file is present in the platform for retrieval by the OS. This
	      value is used by the HMC as a &#8220;Dump Notification&#8221; event to
	      the Service Application to indicate a dump file is present for
	      transmission to the manufacturer.</para>
	      
	      <para><emphasis role="bold">Previously reported error has been 
	      corrected by system: </emphasis>This value
	      is used by the platform firmware to indicate that the error event that
	      was previously reported has been corrected by the platform. On a
	      subsequent platform boot, this event type is logged to indicate that the
	      array was successfully repaired.</para>
	      
	      <para><emphasis role="bold">System resources manually deconfigured 
	      by user: </emphasis>This value is used
	      by the platform firmware to indicate that a subset of platform
	      resource(s) was/were deconfigured due to user's request (e.g. via
	      platform ASM menu). The deconfigured resource(s) is/are not associated
	      with error detected by the platform. The event is a reminder to the user
	      that the platform is running with partial capacity. 
	      <emphasis role="bold">Note:</emphasis> The platform
	      provides this user option for platform performance testing
	      purpose.</para>
	      
	      <para><emphasis role="bold">System resources deconfigured by 
	      system due to prior error event: </emphasis>
	      This value is used by the platform firmware to indicate that the platform
	      is IPLed with resource(s) deconfigured due to error detected and reported
	      previously. The event is a reminder to the user that the platform
	      requires service.</para>
	      
	      <para><emphasis role="bold">Resource deconfiguration notification: </emphasis>
	      This value is used by
	      partition firmware as an &#8220;Event Notification&#8221; to the OS that
	      a specified resource (e.g. processor, memory page, etc.) currently used
	      by the OS should be deallocated due to predictive error. A Logical
	      Resource Identification section is included in the event log to indicate
	      the Resource Type and ID.</para>
	      
	      <para><emphasis role="bold">Customer environmental problem has 
	      returned to normal: </emphasis>This value
	      is used by the platform firmware to indicate that a customer
	      environmental problem (e.g. utility power, room ambient temperature,
	      etc.) detected and reported previously, has returned to normal.</para>
	      
	      <para><emphasis role="bold">Concurrent Maintenance: </emphasis>
	      This value is used by the platform firmware
	      to indicate any non-error event associated with concurrent maintenance
	      activity.</para>
	      
	      <para><emphasis role="bold">Capacity Upgrade Event: </emphasis>
	      This value is used by the platform firmware
	      to indicate any non-error event associated with capacity upgrade
	      activity.</para>
	      
	      <para><emphasis role="bold">Resource Sparing Event: </emphasis>
	      This value is used by the platform firmware
	      to indicate any non-error event associated with platform resource sparing
	      activity.</para>
	      
	      <para><emphasis role="bold">Dynamic Reconfiguration Event: </emphasis>
	      This value is used by the partition
	      firmware to indicate any significant but non-error event associated with
	      dynamic reconfiguration activity. 
	      <emphasis role="bold">Implementation Note:</emphasis> Due to limited
	      platform storage resource, non-error event log associated with a logical
	      partition will be reported to the OS but may not be stored in the
	      platform.</para>
	      
	      <para><emphasis role="bold">Normal system/platform shutdown or 
	      powered off: </emphasis>This value is used
	      by the platform firmware to indicate any non-error event associated with
	      normal system/platform shutdown or powered off activity initiated by the
	      user.</para>
	      
	      <para><emphasis role="bold">Platform powered off by user without 
	      normal shutdown (abnormal powered off): </emphasis>
	      This value is used by the platform firmware to indicate
	      that the platform is abnormally powered off by the user.</para>
	      
	    </section>
	    
	    <section>
	      <title>Error Action Flags</title>
	      
	      <para>The following are the definitions of the actions taken for the
	      various Error Action Flags.</para>
	      
	      <para><emphasis role="bold">Report Externally - </emphasis>
	      This flag instructs the service processor
	      (error logger component) to send the error to the service application
	      (e.g. service focal point(s) or FNM error analyzer). If this flag is set,
	      the SP always sends the error:</para>
	      
	      <itemizedlist>
	        <listitem>
	      
	          <para>To the &#8220;managing HMC(s)&#8221; if one (or multiple)
	          exists.</para>
	
	        </listitem>
	        <listitem>
	              
	          <para>And to the hypervisor (unless the &#8220;Don't report to
	          hypervisor&#8221; flag is also set).</para>
	
	        </listitem>
	      </itemizedlist>
	      
	      <para><emphasis role="bold">Service Action Required - </emphasis>
	      This flag instructs the Service
	      application that some service action is required by either the customer
	      or by the manufacturer&#8217;s service personnel. This is equivalent to
	      saying Customer Notification is required. Contrast this flag with the
	      &#8220;Call Home Required&#8221; flag.</para>
	      
	      <para><emphasis role="bold">Call Home Required - </emphasis>
	      This flag indicates that the error requires
	      service and a Call Home Operation is to be performed. There are
	      additional policies used in combination with this flag: what subsystem
	      performs the Call Home, what is sent and where it is sent.</para>
	      
	      <para><emphasis role="bold">Hidden Error - </emphasis>
	      This flag allows errors to be placed in a
	      partition's OS error log, but still remain hidden from the customer. This
	      is a legacy function and the partition firmware for must filter errors
	      marked &#8220;Hidden&#8221; and not forward these errors marked with this
	      flag to the OS. Note that this flag has no impact on the SP reporting
	      errors to either the HMC or hypervisor or for the hypervisor reporting
	      errors to partitions.</para>
	      
	      <para><emphasis role="bold">Don't report Error to hypervisor - </emphasis>
	      While a partition is booting and
	      before it is functional (e.g. no OS error logging available), partition
	      errors may be sent through the hypervisor to the Service Processor).
	      These partition errors (and only partition errors) may be marked with
	      this flag to indicate that they need not be sent back to the hypervisor.
	      This is due to the error scope being limited to the failing partition and
	      the hypervisor has already taken the appropriate actions.</para>
	      
	      <para><emphasis role="bold">Incomplete Information for Error 
	      Isolation - </emphasis>Some errors are not
	      contained to a single enclosure and require error isolation from an
	      entity with broader system view / scope.</para>
	      
	      <para><emphasis role="bold">Software Error - </emphasis>
	      This flag is used by the partition error logger to
	      indicate to the error is most likely to be caused by the software. When
	      both Software Error and Hardware Error flags are set, the error is caused
	      by either software or hardware. The Software Error and Hardware Error
	      flags are used to trigger the manufacturer&#8217;s support system to
	      automatically download software or firmware fixes.</para>
	      
	      <para><emphasis role="bold">Hardware Error - </emphasis>
	      This flag is used by the partition error logger to
	      indicate to the error is most likely to be caused by the hardware. The
	      Software Error and Hardware Error flags are used to trigger the
	      manufacturer&#8217;s support system to automatically download software or
	      firmware fixes.</para>
	      
	    </section>
    
    </section>
    
    <section xml:id="dbdoclet.50569337_26787">
      <title>Platform Event Log Format, Logical Resource
      Identification section</title>
      
      <table frame="all" pgwide="1">
        <title>Platform Event Log Format, Version 6, Logical
        Resource Identification Section</title>
        <tgroup cols="3">
          <colspec colname="c1" colwidth="10*" />
          <colspec colname="c2" colwidth="10*" />
          <colspec colname="c3" colwidth="80*" />
          <thead>
            <row>
              <entry>
                <para><emphasis role="bold">Offset</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Length in Bytes</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Description</emphasis></para>
              </entry>
            </row>
          </thead>
          <tbody>
            <row>
              <entry>
                <para>0x00</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Section ID: A two-ASCII character field which uniquely
                identifies the type of section.</para>
                <para>value = 'LR'</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x02</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Section length: Length in bytes of the section, including
                the section ID.</para>
                <para>value = 20</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x04</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Section Version</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x05</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Section subtype</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x06</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Creator Component ID</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x08</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Resource Type</para>
                <para>0x10: Processor</para>
                <para>0x11: Shared processor</para>
                <para>0x40: Memory page</para>
                <para>0x41: Memory LMB</para>
                <para>All other values = reserved</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x09</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Reserved</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x0A</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Entitled Capacity: Hundredths of a CPU (only used for
                Resource Type = Shared processor, value = 0x0000 for
                others)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x0C</para>
              </entry>
              <entry>
                <para>4</para>
              </entry>
              <entry>
                <para>Logical CPU ID: for resource type = processor</para>
                <para>DRC Index, for resource type = memory LMB</para>
                <para>Memory Logical Address (bit 0-31), for resource type =
                memory page</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x10</para>
              </entry>
              <entry>
                <para>4</para>
              </entry>
              <entry>
                <para>Memory Logical Address (bit 32-64)), for resource type =
                memory page</para>
              </entry>
            </row>
          </tbody>
        </tgroup>
      </table>
      
    </section>
    
    <section xml:id="dbdoclet.50569337_17545">
      <title>Platform Event Log Format, Primary SRC Section</title>
      
      <table frame="all" pgwide="1">
        <title>Platform Event Log Format, Version 6, Primary SRC
        Section</title>
        <tgroup cols="3">
          <colspec colname="c1" colwidth="10*" />
          <colspec colname="c2" colwidth="10*" />
          <colspec colname="c3" colwidth="80*" />
          <thead>
            <row>
              <entry>
                <para><emphasis role="bold">Offset</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Length in Bytes</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Description</emphasis></para>
              </entry>
            </row>
          </thead>
          <tbody>
            <row>
              <entry>
                <para>0x00</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Section ID: A two-ASCII character field which uniquely
                identifies the type of section.</para>
                <para>value = 'PS'</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x02</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Section length: Length in bytes of the section, including
                the section ID.</para>
                <para>value = 80 + optional FRU call out sub section</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x04</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Section Version</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x05</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Section Subtype</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x06</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Creator component ID</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x08</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>SRC Version</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x09</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>SRC Flags</para>
                <para>bit 0:6 = Platform specific information</para>
                <para>bit 7 = 1: Additional/Optional sub-sections
                present</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x0A</para>
              </entry>
              <entry>
                <para>6</para>
              </entry>
              <entry>
                <para>Platform specific information</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x10</para>
              </entry>
              <entry>
                <para>4</para>
              </entry>
              <entry>
                <para>Extended Reference Code hex data word 2 (required)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x14</para>
              </entry>
              <entry>
                <para>4</para>
              </entry>
              <entry>
                <para>Extended Reference Code hex data word 3 (optional)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x18</para>
              </entry>
              <entry>
                <para>4</para>
              </entry>
              <entry>
                <para>Extended Reference Code hex data word 4 (optional)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x1C</para>
              </entry>
              <entry>
                <para>4</para>
              </entry>
              <entry>
                <para>Extended Reference Code hex data word 5 (optional)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x20</para>
              </entry>
              <entry>
                <para>4</para>
              </entry>
              <entry>
                <para>Extended Reference Code hex data word 6 (optional)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x24</para>
              </entry>
              <entry>
                <para>4</para>
              </entry>
              <entry>
                <para>Extended Reference Code hex data word 7 (optional)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x28</para>
              </entry>
              <entry>
                <para>4</para>
              </entry>
              <entry>
                <para>Extended Reference Code hex data word 8 (optional)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x2C</para>
              </entry>
              <entry>
                <para>4</para>
              </entry>
              <entry>
                <para>Extended Reference Code hex data word 9 (optional)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x30</para>
              </entry>
              <entry>
                <para>32</para>
              </entry>
              <entry>
                <para>Primary Reference Code: 32 byte ASCII character
                (required)</para>
              </entry>
            </row>
            <row>
              <entry nameend="c3" namest="c1">
                <para>Additional/Optional Sub section for FRU call out (present
                only for &#8220;Platform Error&#8221; event type)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x00</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Sub section ID = C0 for FRU call out</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x01</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Platform specific information</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x02</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Length of sub section: expressed in # of words (4 bytes),
                from Sub section ID field</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>&#160;</para>
              </entry>
              <entry>
                <para>FRU call out structure length</para>
              </entry>
              <entry>
                <para>FRU call out 1 (see FRU call out structure format
                below)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>&#160;</para>
              </entry>
              <entry>
                <para>&#160;</para>
              </entry>
              <entry>
                <para>FRU call out 2 (call out 2-10 are optional)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>&#160;</para>
              </entry>
              <entry>
                <para>&#160;</para>
              </entry>
              <entry>
                <para>...</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>&#160;</para>
              </entry>
              <entry>
                <para>&#160;</para>
              </entry>
              <entry>
                <para>FRU call out 10 (maximum)</para>
              </entry>
            </row>
          </tbody>
        </tgroup>
      </table>
      
      <table frame="all" pgwide="1">
        <title>Platform Event Log Format, Version 6, FRU Call-out
        Structure</title>
        <tgroup cols="3">
          <colspec colname="c1" colwidth="10*" />
          <colspec colname="c2" colwidth="10*" />
          <colspec colname="c3" colwidth="80*" />
          <thead>
            <row>
              <entry>
                <para><emphasis role="bold">Offset</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Length in Bytes</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Description</emphasis></para>
              </entry>
            </row>
          </thead>
          <tbody>
            <row>
              <entry>
                <para>0x00</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Call-out Structure length, in bytes including all fields,
                including this one.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x01</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Call-out Type / Flags</para>
                <para>bits 0-3: Call-out structure type</para>
                <para>0b0010 = this structure</para>
                <para>bit 4 = 1 FRU Identity (ID) Substructure field included
                in this FRU Call-out structure</para>
                <para>bit 5 = 1 Other platform-only use substructure field
                present following FRU ID substructure</para>
                <para>bit 6-7 = 0b11: Other platform-only use substructure
                field present following FRU ID substructure</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x02</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>FRU Replacement or Maintenance Procedure Priority
                (expressed as an ASCII character, see additional description
                following the table)</para>
                <para>'H' = High priority and mandatory call-out.</para>
                <para>'M' = Medium priority.</para>
                <para>'A' = Medium priority group A (1st group).</para>
                <para>'B' = Medium priority group B (2nd group).</para>
                <para>'C' = Medium priority group C (3rd group).</para>
                <para>'L' = Low priority.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x03</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Length of Location Code field - must be a multiple of
                4.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x04</para>
              </entry>
              <entry>
                <para>variable</para>
                <para>max=80</para>
              </entry>
              <entry>
                <para>Location Code</para>
                <para>NULL terminated ASCII string. May be up to 80 characters
                including the NULL. Padded with extra NULLs to 4-byte
                boundary.</para>
              </entry>
            </row>
            <row>
              <entry nameend="c3" namest="c1">
                <para>FRU Identity Substructure follow:</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x00</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Substructure Type (2 ASCII Characters)</para>
                <para>'ID' = FRU Identity Substructure</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x02</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Substructure length (variable, several optional fields -
                see flags below)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x03</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Flags</para>
                <para>bits 0-3: Failing component Type (see additional
                description following the table)</para>
                <para>0b0000: reserved</para>
                <para>0b0001: &#8220;normal&#8221; hardware FRU</para>
                <para>0b0010: code FRU</para>
                <para>0b0011: configuration error, configuration procedure
                required</para>
                <para>0b0100: Maintenance Procedure required</para>
                <para>0b1001: External FRU</para>
                <para>0b1010: External code FRU</para>
                <para>0b1011: Tool FRU</para>
                <para>0b1100: Symbolic FRU</para>
                <para>0b1111: Reserved for expansion</para>
                <para>all other values reserved</para>
                <para>bit 4 (0x08) = 0b1: FRU Stocking Part Number supplied
                (mutually exclusive with bit 6)</para>
                <para>bit 5 (0x04) = 0b1: CCIN supplied (only valid if bit 4 =
                0b1)</para>
                <para>bit 6 (0x02) = 0b1: Maintenance procedure call out
                supplied (mutually exclusive with FRU p/n)</para>
                <para>bit 7 (0x01) = 0b1: FRU Serial Number supplied (only
                valid if bit 4 = 0b1)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x04</para>
              </entry>
              <entry>
                <para>8, if present</para>
              </entry>
              <entry>
                <para>FRU Stocking Part Number (VPD FN keyword) or Procedure
                ID</para>
                <para>This field is present if Flags bits 4 =0b1 or Flags bits
                6 =0b1.</para>
                <para>It contains a NULL-terminated ASCII character
                string.</para>
                <para>If Flags bit 4 = 0b1, this field contains a 7ASCII
                character part number</para>
                <para>If Flags bit 6 = 0b1, this field contains a 5 ASCII
                character procedure ID</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x0C</para>
              </entry>
              <entry>
                <para>4, if present</para>
              </entry>
              <entry>
                <para>CCIN (VPD CC keyword) (optional, only supplied if Part
                Number also supplied)</para>
                <para>This field is present if Flags bit 5 = 0b1. It contains
                the CCIN of the failing FRU (VPD CC keyword), represented as 4
                ASCII characters (not a NULL-terminated string).</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>&#160;</para>
              </entry>
              <entry>
                <para>12, if present</para>
              </entry>
              <entry>
                <para>FRU Serial Number (VPD SE Keyword) (optional)</para>
                <para>This field is present if Flags bit 7 = 0b1. It contains
                the serial number of the failing FRU (VPD SE keyword),
                represented as a 12 ASCII characters (not a NULL-terminated
                string).</para>
              </entry>
            </row>
            <row>
              <entry nameend="c3" namest="c1">
                <para>End of FRU Identify Substructure</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>&#160;</para>
              </entry>
              <entry>
                <para>variable</para>
              </entry>
              <entry>
                <para>Other platform used only substructure field</para>
              </entry>
            </row>
          </tbody>
        </tgroup>
      </table>
      
	    <section>
	      <title>FRU Replacement or Maintenance Procedure
	      Priority</title>
	      
	      <para>This field defines the service priority of the specific call-out,
	      i.e., replacing the FRU part number or performing the maintenance
	      procedure ID as given in the FRU/Procedure Identity substructure. Here
	      are the priority descriptions:</para>
	      
	      <itemizedlist>
	        <listitem>
	      
	          <para><emphasis role="bold">'H' </emphasis>= High priority and 
	          mandatory call-out. Replacing the FRU (or
	          performing the maintenance procedure) is mandatory. If multiple call-outs
	          with 'H' priority are given, all must be replaced or performed as a
	          group.</para>
	    
	        </listitem>
	        <listitem>
	          
	          <para><emphasis role="bold">'M' </emphasis>= Medium priority. 
	          Replacing the FRU (or performing
	          maintenance procedure) with 'M' priority one at a time in the order given
	          after all call-outs prior to this one, if present, are performed.</para>
	      
	        </listitem>
	        <listitem>
	          
	          <para><emphasis role="bold">'A' </emphasis>= Medium priority group A 
	          (1st group). Replacing all the FRUs
	          with 'A' priority as a group after all call-outs prior to this group, if
	          present, are performed.</para>
	      
	        </listitem>
	        <listitem>
	          
	          <para><emphasis role="bold">'B' </emphasis>= Medium priority group B 
	          (2nd group). Replacing all the FRUs
	          with 'B' priority as a group after all call-outs prior to this group, if
	          present, are performed.</para>
	      
	        </listitem>
	        <listitem>
	          
	          <para><emphasis role="bold">'C' </emphasis>= Medium priority group C 
	          (3rd group). Replacing all the FRUs
	          with 'C' priority as a group after all call-outs prior to this group, if
	          present, are performed.</para>
	      
	        </listitem>
	        <listitem>
	          
	          <para><emphasis role="bold">'L' </emphasis>= Low priority. After 
	          performed all the prior call-outs, if
	          present, and problem still persists, replacing the FRU with this priority
	          one at a time in the order given.</para>
	      
	        </listitem>
	      </itemizedlist>
	          
	      <para>The list of FRU/Procedure call-outs in the &#8220;call-out&#8221;
	      subsection of the SRC structure must be in order as defined above, i.e.
	      High, Medium, Low. 'M' has the same medium priority level as 'A', 'B', or
	      'C' and a call out with 'M' priority can precede or follow 'A', 'B' or
	      'C'. A group call-out must be contiguous in the list. Within the medium
	      priority level, follow the call-out order in the list A list without High
	      or Medium priority is also valid.</para>
	      
	    </section>
	    
	    <section>
	      <title>Failing Component Type Description</title>
	      
	      <itemizedlist>
	        <listitem>
	      
	          <para><emphasis role="bold">Normal Hardware FRU: </emphasis>
	          Hardware FRU in the platform which the
	          platform firmware or code can positively identify, and its VPD contains
	          the part number and associated information.</para>
	      
	        </listitem>
	        <listitem>
	          
	          <para><emphasis role="bold">Code FRU: </emphasis>
	          Some layer of platform firmware or OS code is
	          suspected. The procedure ID field provides additional information about
	          which code(s) is/are the potential problem.</para>
	      
	        </listitem>
	        <listitem>
	          
	          <para><emphasis role="bold">Configuration error: </emphasis>
	          The problem may be related to how hardware
	          or code is configured. For example, an adapter is plugged in a slot that
	          cannot support it. The FRU could be a procedure or a symbolic FRU. The
	          reason to use one of these is if the analysis can provide more
	          information to the customer and service provider by giving a location
	          code.</para>
	      
	        </listitem>
	        <listitem>
	          
	          <para><emphasis role="bold">Maintenance procedure required: </emphasis>
	          Further isolation of the problem
	          is required by performing the procedure as identified in the Procedure ID
	          field. Procedures are designed to help to isolate problems and guide the
	          service provider through identifying which FRUs to replace in which
	          order.</para>
	      
	        </listitem>
	        <listitem>
	          
	          <para><emphasis role="bold">Symbolic FRU: </emphasis>Used for a single 
	          FRU where the analysis code knows
	          exactly what the part is but there is no part number, or the part number
	          cannot be pulled from VPD, or when there is something special (like a
	          procedure) for acquiring the FRU or working with it. Examples are cables,
	          or FRUs without VPD (so a part number cannot be filled in). The term
	          &#8220;Symbolic&#8221; simply means &#8220;not an actual part
	          number&#8221;.</para>
	      
	        </listitem>
	        <listitem>
	          
	          <para><emphasis role="bold">External FRU: </emphasis>A failing part(s) 
	          which is/are not in the system,
	          e.g. attached storage sub-system, network hubs/switches, external drives
	          like CD/DVD boxes.</para>
	      
	        </listitem>
	        <listitem>
	          
	          <para><emphasis role="bold">External Code: </emphasis>Code not running 
	          in the platform but is the
	          potential source of the error. This could be something like storage
	          subsystem code or even another system in the same cluster.</para>
	      
	        </listitem>
	        <listitem>
	          
	          <para><emphasis role="bold">Tool FRU: </emphasis>This is a special 
	          tool that will be required by one of
	          the FRUs in the list. Tools are only added as FRUs when they are not part
	          of the CE tool kit and therefore the repair action could be delayed if
	          the CE did not know to bring it. Examples are Optical Cleaning Kits for
	          fiber channel, and special tools for torque or reach or weight
	          considerations.</para>
	      
	        </listitem>
	      </itemizedlist>
	      
	    </section>
    
    </section>
    
    <section xml:id="dbdoclet.50569337_94114">
      <title>Platform Event Log Format, Dump Locator Section</title>
      <para>&#160;</para>
      <table frame="all" pgwide="1">
        <title>Platform Event Log Format, Version 6, Dump Locator
        Section</title>
        <tgroup cols="3">
          <colspec colname="c1" colwidth="10*" />
          <colspec colname="c2" colwidth="10*" />
          <colspec colname="c3" colwidth="80*" />
          <thead>
            <row>
              <entry>
                <para><emphasis role="bold">Offset</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Length in Bytes</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Description</emphasis></para>
              </entry>
            </row>
          </thead>
          <tbody>
            <row>
              <entry>
                <para>0x00</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Section ID: A two-ASCII character field which uniquely
                identifies the type of section.</para>
                <para>value = 'DH'</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x02</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Section length: Length in bytes of the section, including
                the section ID.</para>
                <para>value = 64</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x04</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Section Version</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x05</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Section Sub-Type</para>
                <para>0x00 = Log truncated, complete log received by another
                service entity.</para>
                <para>0x01 = FSP Dump</para>
                <para>0x02 = Platform System Dump</para>
                <para>0x03 = Reserved</para>
                <para>0x04 = Power Subsystem Dump</para>
                <para>0x05 = Platform Event Log Entry Dump (when distinguishing
                between dump types, the term &#8220;Log Dump&#8221; is
                typically used)</para>
                <para>0x06 = Partition-initiated resource dump</para>
                <para>0x07 = Platform-initiated resource dump</para>
                <para>All other values reserved</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x0</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Creator component ID</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x08</para>
              </entry>
              <entry>
                <para>4</para>
              </entry>
              <entry>
                <para>Dump ID</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x0C</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Flags</para>
                <para>bit 0 (0x80) = 0, Dump sent to partition</para>
                <para>bit 0 = 1, Dump sent to HMC</para>
                <para>bit 1 (0x40) = 0, File name in ASCII</para>
                <para>bit 1 = 1, Dump file name is hex</para>
                <para>bit 2 (0x20) = 1, Dump size field valid</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x0D</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Reserved</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x0F</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Length of OS assigned Dump ID field in bytes, must be
                multiple of 4.</para>
                <para>May be 0.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x10</para>
              </entry>
              <entry>
                <para>8</para>
              </entry>
              <entry>
                <para>Dump Size</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x18</para>
              </entry>
              <entry>
                <para>40</para>
              </entry>
              <entry>
                <para>OS-Assigned Dump ID</para>
                <para>As the flag field indicates, this field may either be an
                ASCII string or a hex number.</para>
                <para>When an ASCII string (AIX, Linux, HMC), this is a NULL
                terminated ASCII string representing the dump file name (leaf
                name only, does not include path).</para>
                <para>Field may be up to 40 characters including the
                NULL.</para>
              </entry>
            </row>
          </tbody>
        </tgroup>
      </table>
      
    </section>
    
    <section xml:id="dbdoclet.50569337_81250">
      <title>Platform Event Log Format, EPOW Section</title>
      
      <table frame="all" pgwide="1" xml:id="dbdoclet.50569337_39498">
        <title>Platform Event Log Format, Version 6, EPOW
        Section</title>
        <tgroup cols="3">
          <colspec colname="c1" colwidth="10*" />
          <colspec colname="c2" colwidth="10*" />
          <colspec colname="c3" colwidth="80*" />
          <thead>
            <row>
              <entry>
                <para><emphasis role="bold">Offset</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Length in Bytes</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Description</emphasis></para>
              </entry>
            </row>
          </thead>
          <tbody>
            <row>
              <entry>
                <para>0x00</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Section ID: A two-ASCII character field which uniquely
                identifies the type of section.</para>
                <para>value = 'EP'</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x02</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Section length: Length in bytes of the section, including
                the section ID.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x04</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Section Version</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x05</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Section subtype</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x06</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Creator Component ID</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x08</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>EPOW Sensor Value (low-order 4 bits contain the action
                code).</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x09</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>EPOW Event Modifier</para>
                <para>(low-order 4 bits contain the event modifier
                value)</para>
                <para>0x00 = Not applicable</para>
                <para>For EPOW sensor value = 3</para>
                <para>0x01 = Normal system shutdown with no additional
                delay</para>
                <para>0x02 = Loss of utility power, system is running on
                UPS/Battery</para>
                <para>0x03 = Loss of system critical functions, system should
                be shutdown</para>
                <para>0x04 = Ambient temperature too high</para>
                <para>All other values = reserved</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x0A</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Extended Modifier for Section Version 2 and higher</para>
                <para>For EPOW Sensor Value = 3</para>
                <para>0x00 System wide shutdown</para>
                <para>0x01 Partition specific shutdown</para>
                <para>0x02 - 0xFF Reserved</para>
                <para>All other situations Reserved = 0x00</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x0B</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Reserved</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x0C</para>
              </entry>
              <entry>
                <para>8</para>
              </entry>
              <entry>
                <para>Platform specific reason code</para>
              </entry>
            </row>
          </tbody>
        </tgroup>
      </table>
      
    </section>
    
    <section xml:id="dbdoclet.50569337_74350">
      <title>Platform Event Log Format, IO Events Section</title>
      
      <table frame="all" pgwide="1" xml:id="dbdoclet.50569337_86901">
        <title>Platform Event Log Format, Version 6, IO Events
        Section</title>
        <tgroup cols="3">
          <colspec colname="c1" colwidth="10*" />
          <colspec colname="c2" colwidth="10*" />
          <colspec colname="c3" colwidth="80*" />
          <thead>
            <row>
              <entry>
                <para><emphasis role="bold">Offset</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Length in Bytes</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Description</emphasis></para>
              </entry>
            </row>
          </thead>
          <tbody>
            <row>
              <entry>
                <para>0x00</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Section ID: A two-ASCII character field which uniquely
                identifies the type of section.</para>
                <para>value = 'IE'</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x02</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Section length: Length in bytes of the section, including
                the section ID.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x04</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Section Version</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x05</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Section subtype</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x06</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Creator Component ID</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x08</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>IO-Event Type:</para>
                <para>0x01 = Error Detected</para>
                <para>0x02 = Error Recovered</para>
                <para>0x03 = Event</para>
                <para>0x04 = RPC Pass Through</para>
                <para>All other values = Reserved</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x09</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Offset 0x10 Field Length:</para>
                <para>For IO Event Type of RPC Pass Through, this field
                specifies the length of the data field which begins at offset
                0x10, otherwise the value in this field is 0. Must be a
                multiple of 4 to maintain 4-byte alignment.</para>
                <para>&#160;</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x0A</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Error/Event Scope:</para>
                <para>0x00 = Not Applicable (use for IO-Event type 0x02, 0x03,
                0x04)</para>
                <para>0x36 = Reserved</para>
                <para>0x37 = Reserved</para>
                <para>0x38 = PHB</para>
                <para>0x39 = Reserved</para>
                <para>0x3A = Reserved</para>
                <para>0x3B = Reserved</para>
                <para>0x51 = Service Processor</para>
                <para>All other values = Reserved</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x0B</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>I/O-Event Sub-Type:</para>
                <para>0x00 = Not Applicable (use for IO-Event type 0x01, 0x02,
                0x04)</para>
                <para>0x01 = Rebalance request</para>
                <para>0x03 = Node online</para>
                <para>0x04 = Node off-line</para>
                <para>0x05 = platform-dump-max-size change</para>
                <para>0x08 = Generic Notification</para>
                <para>0x09 = NVDIMM status change</para>
                <para>All other values = Reserved</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x0C</para>
              </entry>
              <entry>
                <para>4</para>
              </entry>
              <entry>
                <para>DRC Index</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x10</para>
              </entry>
              <entry>
                <para>0-216</para>
              </entry>
              <entry>
                <para>For the RPC Pass Through IO Event Type: RPC data.
                Variable length data. Must be padded to 4 bytes
                alignment.</para>
                <para>&#160;</para>
                <para>For the platform-dump-max-size change I/O-Event Sub-Type:
                8 bytes for the new value of the platform-dump-max-size system
                parameter (specifying the sum (in bytes) of the maximum size of
                each unique platform dump type that the 
                <emphasis>ibm,platform-dump</emphasis> RTAS call could
                return).</para>
                <para>&#160;</para>
                <para>For Generic Notification I/O Event Sub-Type: Scoped Data
                Generic Notification Event Section. Must be padded to 4 bytes
                alignment.</para>
              </entry>
            </row>
          </tbody>
        </tgroup>
      </table>
      
    </section>
    
    <section xml:id="dbdoclet.50569337_16482">
      <title>Platform Event Log Format, Failing Enclosure
      MTMS</title>
      
      <table frame="all" pgwide="1">
        <title>Platform Event Log Format, Version 6, Failing
        Enclosure MTMS</title>
        <tgroup cols="3">
          <colspec colname="c1" colwidth="10*" />
          <colspec colname="c2" colwidth="10*" />
          <colspec colname="c3" colwidth="80*" />
          <thead>
            <row>
              <entry>
                <para><emphasis role="bold">Offset</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Length in Bytes</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Description</emphasis></para>
              </entry>
            </row>
          </thead>
          <tbody>
            <row>
              <entry>
                <para>0x00</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Section ID: A two-ASCII character field which uniquely
                identifies the type of section.</para>
                <para>value = 'MT'</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x02</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Section length: Length in bytes of the section, including
                the section ID.</para>
                <para>value = 28</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x04</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Section Version</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x05</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Section subtype</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x06</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Creator Component ID</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x08</para>
              </entry>
              <entry>
                <para>8</para>
              </entry>
              <entry>
                <para>Machine Type and Model: 8 ASCII characters, in the form
                &#8220;tttt-mmm&#8221;,</para>
                <para>where tttt = Machine Type and mmm = Model Number</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x10</para>
              </entry>
              <entry>
                <para>12</para>
              </entry>
              <entry>
                <para>Serial Number:</para>
                <para>12 ASCII characters (If less than 12 characters are used,
                string is left justified (stored in the field starting with the
                lowest address) and padded with NULLs.)</para>
              </entry>
            </row>
          </tbody>
        </tgroup>
      </table>
      <para>The Failing Enclosure Machine Type, Model, and Serial Number (MTMS)
      that is associated with the error is important for service and
      support.</para>
      
      <para>The source of information for the MTMS fields varies according to
      the following:</para>

      <itemizedlist>
        <listitem>
              
          <para>For CEC errors, it is the CEC enclosure MTMS.</para>

        </listitem>
        <listitem>
          
          <para>For errors in I/O enclosures (drawers and towers) that have their
          own MTMS and are sold as separate MTMS from the CEC, we use the I/O
          Drawer MTMS.</para>

        </listitem>
        <listitem>
          
          <para>For I/O enclosures that were sold as a feature, this section
          contains the Feature Code and Serial Number of the I/O enclosure. When
          the Feature Code is used, it is left justified in the Machine Type and
          Model field.</para>

        </listitem>
      </itemizedlist>
      
    </section>
    
    <section>
      <title>Platform Event Log Format, Impacted Partitions</title>
      
      <table frame="all" pgwide="1">
        <title>Platform Event Log Format, Version 6, Impacted
        Partitions</title>
        <tgroup cols="6">
          <colspec colname="c1" colwidth="10*" />
          <colspec colname="c2" colwidth="10*" />
          <colspec colname="c3" colwidth="20*" />
          <colspec colname="c4" colwidth="20*" />
          <colspec colname="c5" colwidth="20*" />
          <colspec colname="c6" colwidth="20*" />
          <thead>
            <row>
              <entry>
                <para><emphasis role="bold">Offset</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Length</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Byte 0</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Byte 1</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Byte 2</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Byte 3</emphasis></para>
              </entry>
            </row>
          </thead>
          <tbody>
            <row>
              <entry>
                <para>0</para>
              </entry>
              <entry>
                <para>8</para>
              </entry>
              <entry>
                <para>Section Header</para>
              </entry>
              <entry>
                <para>&#160;</para>
              </entry>
              <entry>
                <para>&#160;</para>
              </entry>
              <entry>
                <para>&#160;</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x10</para>
              </entry>
              <entry>
                <para>4</para>
              </entry>
              <entry>
                <para>Primary Partition ID</para>
              </entry>
              <entry>
                <para>Length of LP name</para>
                <para>(must be a multiple of 4)</para>
              </entry>
              <entry>
                <para>Target LP Count</para>
              </entry>
              <entry>
                <para>&#160;</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x14</para>
              </entry>
              <entry>
                <para>4</para>
              </entry>
              <entry>
                <para>Logical Partition ID</para>
              </entry>
              <entry>
                <para>&#160;</para>
              </entry>
              <entry>
                <para>&#160;</para>
              </entry>
              <entry>
                <para>&#160;</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x18</para>
              </entry>
              <entry>
                <para>variable</para>
              </entry>
              <entry>
                <para>Primary Partition (LP) Name</para>
                <para>Null terminated ASCII string, padded to 4-Byte
                boundary</para>
              </entry>
              <entry>
                <para>&#160;</para>
              </entry>
              <entry>
                <para>&#160;</para>
              </entry>
              <entry>
                <para>&#160;</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>&#160;</para>
              </entry>
              <entry>
                <para>variable</para>
              </entry>
              <entry>
                <para>Target LP 1</para>
              </entry>
              <entry>
                <para>Target LP 2</para>
                <para>and so on</para>
                <para>(padded to a 4-Byte boundary)</para>
              </entry>
              <entry>
                <para>&#160;</para>
              </entry>
              <entry>
                <para>&#160;</para>
              </entry>
            </row>
          </tbody>
        </tgroup>
      </table>
      
      <para>This section describes partitions that are impacted by an error.
      When this section is supplied, the partitions in this list (and only
      these partitions) are notified of the error.</para>
      
    </section>
    
    <section xml:id="dbdoclet.50569337_54366">
      <title>Platform Event Log Format, Failing Memory
      Address</title>
      
      <table frame="all" pgwide="1">
        <title>Platform Error Event Log Format, Version 6, Failing
        Memory Address</title>
        <tgroup cols="3">
          <colspec colname="c1" colwidth="10*" />
          <colspec colname="c2" colwidth="10*" />
          <colspec colname="c3" colwidth="80*" />
          <thead>
            <row>
              <entry>
                <para><emphasis role="bold">Offset</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Length in Bytes</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Description</emphasis></para>
              </entry>
            </row>
          </thead>
          <tbody>
            <row>
              <entry>
                <para>0x00</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Section ID: A two-ASCII character field which uniquely
                identifies the type of section.</para>
                <para>value = 'MC'</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x02</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Section length: Length in bytes of the section, including
                the section ID</para>
                <para>value = 32</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x04</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Section Version</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x05</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Section Subtype</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x06</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry>
                <para>Creator Component ID</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x08</para>
              </entry>
              <entry>
                <para>4</para>
              </entry>
              <entry>
                <para>FRU ID -- Identifies the FRU on which the machine check
                interrupt occurred</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x0C</para>
              </entry>
              <entry>
                <para>4</para>
              </entry>
              <entry>
                <para>Processor ID -- identifies the physical CPU on which the
                machine check occurred</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x10</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Type of machine check interrupt</para>
                <para>0x00 = Uncorrectable Memory Error (UE)</para>
                <para>0x01 = SLB error</para>
                <para>0x02 = ERAT Error</para>
                <para>0x04 = TLB error</para>
                <para>0x05 = D-Cache error</para>
                <para>0x07 = I-Cache error</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x11</para>
              </entry>
              <entry>
                <para>23</para>
              </entry>
              <entry>
                <para>Information specific to machine check interrupt type.
                This section is binary zeroes if the platform does not provide
                specific information for the type of interrupt.</para>
              </entry>
            </row>
          </tbody>
        </tgroup>
      </table>
      
      <table frame="all" pgwide="1">
        <title>UE Error Information</title>
        <tgroup cols="3">
          <colspec colname="c1" colwidth="10*" />
          <colspec colname="c2" colwidth="10*" />
          <colspec colname="c3" colwidth="80*" />
          <thead>
            <row>
              <entry>
                <para><emphasis role="bold">Offset</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Length in Bytes</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Description</emphasis></para>
              </entry>
            </row>
          </thead>
          <tbody>
            <row>
              <entry>
                <para>0x11</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>Type of UE</para>
                <para>Bit 0 = 0 Permanent UE. The UE may be cleared with a DCBZ
                instruction.</para>
                <para>Bit 0 =1 Transient UE. The UE cannot be cleared with a
                DCBZ instruction. The contents of the entire logical page are
                not accessible for this type of UE</para>
                <para>64 bit effective address is provided</para>
                <para>Bit 1 = 0 64 bit effective address is not provided by the
                log</para>
                <para>Bit 1 = 1 64 bit effective address is provided by the
                log. Offset 0x18 provides the effective address if this bit is
                1</para>
                <para>64 bit logical address is provided</para>
                <para>Bit 2 = 0 64 bit logical address of logical page is not
                provided by the log</para>
                <para>Bit 2 = 1 64 bit logical address of logical page is
                provided by the log. Offset 0x20 provides the logical address
                of the page if this bit is 1</para>
                <para>Bit3-4 Reserved</para>
                <para>Bit5-7 Type of UE machine check interrupt. The value of
                the field is 0b000 for a permanent UE</para>
                <para>0b000 = Platform cannot determine the processor unit that
                detected the error</para>
                <para>0b001 = Error detected by instruction fetch unit of the
                processor</para>
                <para>0b010 = Error during page table search for instruction
                fetch</para>
                <para>0b011 = Error detected by load/store unit of the
                processor</para>
                <para>0b100 = Error detected during page table search for
                load/store type of instruction</para>
                <para>All other values are reserved.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x12</para>
              </entry>
              <entry>
                <para>6</para>
              </entry>
              <entry>
                <para>Reserved</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x18</para>
              </entry>
              <entry>
                <para>8</para>
              </entry>
              <entry>
                <para>64 bit effective address</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x20</para>
              </entry>
              <entry>
                <para>8</para>
              </entry>
              <entry>
                <para>64 bit logical address</para>
              </entry>
            </row>
          </tbody>
        </tgroup>
      </table>

      <table frame="all" pgwide="1">
        <title>SLB Error Information</title>
        <tgroup cols="3">
          <colspec colname="c1" colwidth="10*" />
          <colspec colname="c2" colwidth="10*" />
          <colspec colname="c3" colwidth="80*" />
          <thead>
            <row>
              <entry>
                <para><emphasis role="bold">Offset</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Length in Bytes</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Description</emphasis></para>
              </entry>
            </row>
          </thead>
          <tbody>
            <row>
              <entry>
                <para>0x11</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>64 bit effective address is provided</para>
                <para>Bit 0 = 0 64 bit effective address not provided by the
                log</para>
                <para>Bit 0 =1 64 bit effective address provided by the log.
                Offset 0x18 provides the effective address if bit 0 is1</para>
                <para>Bit1-5 Reserved</para>
                <para>Bit 6-7 Type of SLB error</para>
                <para>0b00 = Parity error in the SLB array or on the access
                path to the SLB</para>
                <para>0b01 = Multiple hit error. There are two or more entries
                in the SLB that translate the same effective address</para>
                <para>0b10 = Multiple hit error or parity error. Platform does
                not have enough information to disambiguate between the two
                cases.</para>
                <para>All other values are reserved.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x12</para>
              </entry>
              <entry>
                <para>6</para>
              </entry>
              <entry>
                <para>Reserved</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x18</para>
              </entry>
              <entry>
                <para>8</para>
              </entry>
              <entry>
                <para>64 bit effective address</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x20</para>
              </entry>
              <entry>
                <para>8</para>
              </entry>
              <entry>
                <para>Reserved</para>
              </entry>
            </row>
          </tbody>
        </tgroup>
      </table>

      <table frame="all" pgwide="1">
        <title>ERAT Error Information</title>
        <tgroup cols="3">
          <colspec colname="c1" colwidth="10*" />
          <colspec colname="c2" colwidth="10*" />
          <colspec colname="c3" colwidth="80*" />
          <thead>
            <row>
              <entry>
                <para><emphasis role="bold">Offset</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Length in Bytes</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Description</emphasis></para>
              </entry>
            </row>
          </thead>
          <tbody>
            <row>
              <entry>
                <para>0x11</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>64 bit effective address is provided</para>
                <para>Bit 0 = 0 64 bit effective address not provided by the
                log</para>
                <para>Bit 0 =1 64 bit effective address provided by the log.
                Offset 0x18 provides the effective address if bit 0 is1</para>
                <para>Bit 1-5 Reserved</para>
                <para>Bit 6-7 Type of ERAT error</para>
                <para>0b01 = Parity error in the ERAT array</para>
                <para>0b10 = Multiple hit error. There are two or more entries
                in the ERAT array that translate the same effective
                address</para>
                <para>0b11 = Multiple hit error or parity error in the ERAT
                array. Platform does not have enough information to
                disambiguate between the two cases.</para>
                <para>All other values are reserved.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x12</para>
              </entry>
              <entry>
                <para>6</para>
              </entry>
              <entry>
                <para>Reserved</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x18</para>
              </entry>
              <entry>
                <para>8</para>
              </entry>
              <entry>
                <para>64 bit effective address</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x20</para>
              </entry>
              <entry>
                <para>8</para>
              </entry>
              <entry>
                <para>Reserved</para>
              </entry>
            </row>
          </tbody>
        </tgroup>
      </table>

      <table frame="all" pgwide="1">
        <title>TLB Error Information</title>
        <tgroup cols="3">
          <colspec colname="c1" colwidth="10*" />
          <colspec colname="c2" colwidth="10*" />
          <colspec colname="c3" colwidth="80*" />
          <thead>
            <row>
              <entry>
                <para><emphasis role="bold">Offset</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Length in Bytes</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Description</emphasis></para>
              </entry>
            </row>
          </thead>
          <tbody>
            <row>
              <entry>
                <para>0x11</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry>
                <para>64 bit effective address is provided</para>
                <para>Bit 0 = 0 64 bit effective address not provided by the
                log</para>
                <para>Bit 0 =1 64 bit effective address provided by the log.
                Offset 0x18 provides the effective address if bit 0 is1</para>
                <para>Bit 1-5 Reserved</para>
                <para>Bit 6-7 Type of TLB error</para>
                <para>0b01 = Parity error in the TLB array</para>
                <para>0b10 = Multiple hit error. There are two or more entries
                in the TLB that translate the same effective address</para>
                <para>0b11= Multiple hit error or parity error in the TLB
                array. Platform does not have enough information to
                disambiguate between the two cases.</para>
                <para>All other values are reserved.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x12</para>
              </entry>
              <entry>
                <para>6</para>
              </entry>
              <entry>
                <para>Reserved</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x18</para>
              </entry>
              <entry>
                <para>8</para>
              </entry>
              <entry>
                <para>64 bit effective address</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x20</para>
              </entry>
              <entry>
                <para>8</para>
              </entry>
              <entry>
                <para>Reserved</para>
              </entry>
            </row>
          </tbody>
        </tgroup>
      </table>
      
      <para>For an error log that has the machine check interrupt section
      filled out, the platform is not required to provide the date and time
      stamp in the main-a section. The fields will be binary zeroes if the date
      and time stamp is not provided.</para>
      
    </section>

    <section xml:id="error.hotplug">
      <title>Platform Event Log Format, Hotplug Section</title>
      
      <table frame="all" pgwide="1" xml:id="table.error.hotplug">
        <title>Platform Error Event Log Format, Version 6, Hotplug Section</title>
        <tgroup cols="4">
          <colspec colname="c1" colwidth="10*" align="center" />
          <colspec colname="c2" colwidth="10*" align="center" />
          <colspec colname="c3" colwidth="5*" />
          <colspec colname="c4" colwidth="75*" />
          <thead valign="top">
            <row>
              <entry>
                <para><emphasis role="bold">Offset</emphasis></para>
              </entry>
              <entry>
                <para><emphasis role="bold">Length in Bytes</emphasis></para>
              </entry>
              <entry namest='c3' nameend='c4' align="center">
                <para><emphasis role="bold">Description</emphasis></para>
              </entry>
            </row>
          </thead>
          <tbody valign="top">
            <row>
              <entry>
                <para>0x00</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry namest='c3' nameend='c4'>
                <para>Section ID: A two-ASCII character field which uniquely 
                identifies the type of section. Value = “HP”.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x02</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry namest='c3' nameend='c4' >
                <para>Section length: Length in bytes of the section, including 
                the section ID.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x04</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry namest='c3' nameend='c4'>
                <para>Section Version</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x05</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry namest='c3' nameend='c4'>
                <para>Section subType</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x06</para>
              </entry>
              <entry>
                <para>2</para>
              </entry>
              <entry namest='c3' nameend='c4'>
                <para>Creator Component ID</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x08</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry namest='c3' nameend='c4'>
                <para>Hotplug Resource Type.<?linebreak?>
                0x01 = CPU<?linebreak?>
                0x02 = Memory<?linebreak?>
                0x03 = SLOT<?linebreak?>
                0x04 = PHB<?linebreak?>
                0x05 = PCI</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x09</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry namest='c3' nameend='c4'>
                <para>Hotplug Action<?linebreak?>
                0x01 = Add<?linebreak?>
                0x02 = Remove</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>0x0A</para>
              </entry>
              <entry>
                <para>1</para>
              </entry>
              <entry namest='c3' nameend='c4'>
                <para>Hotplug Identifier Type<?linebreak?>
                0x01 = drc name, resource is identified by drc name<?linebreak?>
                0x02 = drc index, resource is identified by drc index<?linebreak?>
                0x03 = drc count, number of resources to act upon<?linebreak?>
                0x04 = drc count indexed, number of resources to act upon beginning at the specified drc index</para>
              </entry>
            </row>

            <row>
              <entry morerows='3'>
                <para>0x0B</para>
              </entry>
              <entry morerows='3'>
                <para>1</para>
              </entry>
              <entry align="center">
                <para><emphasis role="bold">Bit</emphasis></para>
              </entry>
              <entry align="center">
                <para><emphasis role="bold">Hotplug Event Capability Description</emphasis></para>
              </entry>
            </row>
            <row>
              <entry align="center">
                <para>0</para>
              </entry>
              <entry>
                <para>1 = Hotplug Token Present</para>
              </entry>
            </row>
            <row>
              <entry align="center">
                <para>1</para>
              </entry>
              <entry>
                <para>0 = Transactional Request: When using “drc count”or “drc count indexed”as the Hotplug 
                Identifier, the OS should take steps to verify the entirety of the request can be satisfied 
                before proceeding with the hotplug / unplug operations. If only a partial count can be 
                satisfied, the OS should ignore the entirety of the request. If the OS cannot determine 
                this beforehand, it should satisfy the hotplug / unplug request for as many of the 
                requested resources as possible, and attempt to revert to the original OS / DRC state.</para>
                <para>1 = Non-transactional Request: When using “drc count”or “drc count indexed”as the 
                Hotplug Identifier, the OS should attempt to satisfy as much of the request as possible, 
                even if it cannot be satisfied for all the DRCs specified.</para>
              </entry>
            </row>
            <row>
              <entry align="center">
                <para>2:7</para>
              </entry>
              <entry>
                <para>Reserved</para>
              </entry>
            </row>
            
            <row>
              <entry>
                <para>0x0C</para>
              </entry>
              <entry>
                <para>Variable</para>
              </entry>
              <entry namest='c3' nameend='c4' >
                <para>Hotplug Identifier<?linebreak?>
                Variable length field depending on the Hotplug Identifier Type specified.
                For drc name, this field is a null-terminated ASCII character field containing 
                the drc name of the resource to hotplug.</para>
                <para>For drc index, this is 4 byte field with the drc index of the resource to hotplug.</para>
                <para>For drc count, this is a 4 byte field with the number of resources to hotplug.</para>
                <para>For drc count indexed, this is two 4 byte fields the first being the number of resources 
                to hotplug and the second being the drc index at which to start.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>(Section Length - 4)</para>
              </entry>
              <entry>
                <para>4</para>
              </entry>
              <entry namest='c3' nameend='c4' >
                <para>Hotplug Token<?linebreak?>
                Present only if corresponding Hotplug Event Capability bit is set.</para>
                <para>Integer value that can be used in conjunction with other fields of the hotplug 
                event structure (Hotplug Indentifier, Hotplug Type, etc.) to allow OS to associate 
                hotplug event with the request which generated it for the purposes of providing 
                feedback to the requestor, such as debugging or error information.</para>
              </entry>
            </row>
          </tbody>
        </tgroup>
      </table>
    </section>
  </section>
 
</section>
