---------------------------------------------------------------------------------
I/O Memory DMA - Data parity on PHB signals May be recoverable; see
I/O to PCI bus PERR# note following table
memory
Data parity on Machine check
system bus
DMA - Data parity on Device signals May be recoverable; see
memory PCI Bus PERR# note following table
to I/O
Data parity on Machine check
system bus or PHB signals
target abort
Memory parity or Machine check
uncorrectable
ECC
---------------------------------------------------------------------------------
This approach added the expense of developing and testing Open Firmware in both 32 bit mode and 64 bit mode and the effort of testing FCODE developed for 32 bit systems in a system executing in 64 bit mode.
There needs to be an independent definition of power on triggers and a corresponding mechanism used to inform the OS as to support for a given platform.
Table <62b>. Defined Power on Triggers
--------------------------------------------
Bit Semantics
--------------------------------------------
0 Power switch
1 External ring indicate (RS 232 RI pin)
2 Internal ring indicate
3 LAN wakeup event
4 Real time clock wakeup event
5 Service processor wakeup event
6-63 Reserved
--------------------------------------------
Table 11. Instantiate-rtas Argument Call Buffer (Continued)
--------------------------------------------------------------------------------------
Parameter Type Name Values
--------------------------------------------------------------------------------------
In rtas-base-address Real address of RTAS private data area or zero, if
rtas-size is zero
--------------------------------------------------------------------------------------
Table 13. Open Firmware Device Tree Properties
--------------------------------------------------------------------------------------------
Property name Value
--------------------------------------------------------------------------------------------
rtas-size integer size of RTAS private data area in bytes or zero if allocation is not
required
--------------------------------------------------------------------------------------------
Requiring the customer to use diskettes for updating flash code can be very cumbersome, especially in large installations and in configurations involving parallel systems.
A single way to update flash makes it possible for all OS's to have the capability to update the flash on any vendor's platform with one implementation.
Table 12. RTAS Tokens for Functions
-----------------------------------------------------------
RTAS Property/Function Required Notes
-----------------------------------------------------------
update-flash-and-reboot See update-flash section
update-flash
-----------------------------------------------------------
Table 40+1 update-flash and update-flash-and-reboot Argument Call Buffer
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Parameter Type Name Value
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
In Token Token for update-flash or for update-flash-and-reboot
Number In 1
puts
Number Out 1
puts
Block_list A real pointer to a block list
Out Status 0 Success (update-flash-and-reboot does not return on suc
cess)
-1 Hardware cannot be updated
-2 Image unacceptable to update program
-3 programming failed when partially complete, and the
flash is now corrupted -- reboot may fail
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
The -3 return is to cover the case where the update failed before the image was fully updated. In this
case, the OS has the responsibility for reporting the failure.
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Table 40+2 Format of Block List
-----------------------------
Length of block_list in bytes
Address of memory area 1
Length of memory area 1
...
Address of memory area n
Length of memory area n
-----------------------------
Software Implementation Note: The execution time for these calls will be in the order of seconds, rather than "a few tens of microseconds" as noted on page 97.
Software Implementation Note: These RTAS flash update programs should display progress, completion, and error information via the display-character mechanism while the flash update is underway, if possible.
Software Implementation Note: The OS does not expect a return from the update-flash-and-reboot call other than for the case where the hardware can't be accessed, the flash image is unacceptable to the RTAS flash update program, or the result of the update corrupted the flash.
Table 41. cache-control Argument Call Buffer
-----------------------------------------------------------
Parameter Type Name Values
-----------------------------------------------------------
Cache_id level of the cache (1 = L1, 2 =
L2, etc.)
-----------------------------------------------------------
Hardware and Software Implementation Note: Some processors which implement the 6xx bus use a portion of the PIR value to help identify bus transactions. These implementations typically provide a set of pins which are read when power is first applied to the processor to hardware-initialize the PIR value. On such processors, firmware and software should never attempt to write the PIR value, since the integrity of transactions on the bus would likely be lost as a result.
Table 48. NVRAM Signatures (Continued)
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
Signature Signature Type Ownership # Required Description
Class
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
0x02 Support Any support 0 to n Reserved for support processor use.
Processor processor
0x50 Open Firmware Firmware 1 Open Firmware Configuration Variables.
0x51 Firmware Firmware 0 to n General firmware usage
0x52 Hardware Firmware 1 to n These partitions are used to store administrative machine data
such as serial numbers, ec levels, etc. This is often referred to as
Vital Product Data (VPD).
0x70 System Global 1 The System partition is used to store environment variables that
must be accessed by firmware and operating systems.
0x71 Configuration Global 0 to n Configuration partitions are used to store configuration data gen
erated by the system firmware or the operating system that is re
quired at boot time to properly configure the system.
0x72 Error Log Global 0 to n This partition is used to store the error logs built as a result of var
ious RTAS calls.
0x7E Vendor-defined Global 0 to n "name" prefix required, see Table 47 on 143.
0x7F Free Space Global 0 to n This signature is used to mark free space in the NVRAM array.
The name field of all signature 0x7F partitions must be set to
0x7...77.
0xA0 OS Any OS 0 to n General operating system usage.
Note: Any signature not defined above is reserved.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
Software Implementation Note: The OS is not required to specify a non-zero amount of data. RTAS should be prepared to deal with a pointer to a block list describing no non-zero-sized memory areas. That is to say, the block list would contain a length in bytes, and one or more sets of area descriptions each containing a length of zero. In this case RTAS would put the system in the hibernate state without recording any data.
This ACR requires that for vendor-specific error log formats, the first four bytes of that format must contain a unique identifier for the company that has defined the format. This is being raised as an ACR so that all vendors who use vendor-specific formats will implement it consistently, preventing misinterpretation of log content.
Table 54B. Vendor-specific error log format, bytes 12-39 -------------------------------------------------------------------------------------------------------------------- Byte Bit(s) Description -------------------------------------------------------------------------------------------------------------------- 12-15 Company identifier of the company that has defined the format for this vendor specific log type. 15-39 Vendor-specific log data --------------------------------------------------------------------------------------------------------------------
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 operating systems by using an AIM-specific error log format for logs generated on their own platform, their log would have to contain an identifier of "AIM<null>".
Table 55. get-sensor-state Argument Call Buffer
---------------------------------------------------------------------
Parameter Type Name Values
---------------------------------------------------------------------
Out Status 13: Sensor value >= critical high
12: Sensor value >= Warning high
11: Sensor value normal
10: Sensor value <= Warning low
9: Sensor value <= critical low
0: Success
-1: Hardware Error
-2: Hardware Busy, Try again later
-3: No such sensor implemented
State Current value as defined in the |"Defined Val
ues" column of Table 31 on page 121
---------------------------------------------------------------------
Software and Hardware Implementation Note: The meaning of these limits are as follows:
The basic problem with the RTAS stop-self service is that it is a non-terminal RTAS call that does not return to the caller. This basically implies that an operating system can not acquire the RTAS lock prior to calling stop-self.
Table 12. RTAS Tokens for Functions (Continued) ------------------------------------------------- RTAS property/function Required? Notes ------------------------------------------------- query-cpu-stopped-state Required in SMP Platforms -------------------------------------------------
Table 46+1. query-cpu-stopped-state Argument Call Buffer
-------------------------------------------------------------------------------
Parameter Type Name Values
-------------------------------------------------------------------------------
In Token Token for query-cpu-stopped-state
Number Inputs 1
Number Outputs 2
CPU_id Token identifying the processor to be queried,
obtained from the reg value for the CPU in the
Open Firmware device tree
Out Status 0: Success
-1: Hardware Error
-2: Hardware Busy, Try again later
CPU_status 0: The processor is in the RTAS stopped state
1: Stop-self is in progress
2: The processor is not in the RTAS stopped
state
-------------------------------------------------------------------------------
Firmware Implementation Note: RTAS serialization may be required between the stop-self and the query-cpu-stopped-state calls.Software Implementation Note: The operating system must perform a stop-self on the desired processor, then periodically call query-cpu-stopped-state on another processor until the desired processor is stopped before calling set-power-level to power off the desired processor.
Clarify that the power on events supported on a specific platform should be reported to the operating system via the property "power-on-triggers" of the Open Firmware device tree.
clarification text below the requirement.
Table 62. Defined Power Management Event Types (Continued)
---------------------------------------------------------------------------------
Event Type Semantics
Field
Value
---------------------------------------------------------------------------------
Service processor 113 A service processor initiated power management event
Reserved 114-159 Reserved for future use.
---------------------------------------------------------------------------------
Table 62b. Defined Power On Triggers
------------------------------------------------------------
Bit Event Semantics
------------------------------------------------------------
0 Power Switch On Type Field Value 96 In Table 62
1 Reserved Reserved for future use
2 Lid Open Type Field Value 98 in Table 62
3-4 Reserved Reserved for future use
5 Wake Button Type Field Value 101 in Table 62
6-7 Reserved Reserved for future use
8 Switch to Battery Type Field Value 104 in Table 62
9 Switch to AC Type Filed Value 105 in Table 62
10 Keyboard or mouse Type Field Value 106 in Table 62
activity
11 Reserved Reserved for future use
12 Enclosure Closed Type Field Value 108 in Table 62
13 Ring Indicate Type Field Value 109 in Table 62
14 LAN Attention Type Field Value 110 in Table 62
15 Time Alarm Type Field Value 111 in Table 62
16 Configuration Type Field Value 112 in Table 62
change
17 Service Processor Type Field Value 113 in Table 62
18-63 Reserved Reserved for future use
------------------------------------------------------------
Table 1\>. I/O Device Reset States
------------------------------------------------------------------------------------------------------------------------------
Bus Devices Left Open by Open Firmware Other Devices
------------------------------------------------------------------------------------------------------------------------------
System Configured per OF Device Tree The device is in hardware reset
Interrupts inactive state (see note) or inactive:
DMA inactive Interrupts inactive
No outstanding I/O operations DMA inactive
------------------------------------------------------------------------------------------------------------------------------
Note: May optionally be configured, but must be inactive.
------------------------------------------------------------------------------------------------------------------------------
Table 12. RTAS Tokens for Functions (Continued)
--------------------------------------------------------------------------------------------
RTAS property/function Required? Notes
--------------------------------------------------------------------------------------------
restart-rtas Required
nvram-fetch Required Execution time proportional to amount of data
nvram-store Required Execution time proportional to amount of data
get-time-of-day Required
set-time-of-day Required
set-time-for-power-on
event-scan Required
check-exception Required
read-pci-config Required
write-pci-config Required
display-character
set-indicator Required Some specific indicators are required, and
some are optional
get-sensor-state
set-power-level Required in Power
Managed Platforms
get-power-level
assume-power-management
relinquish-power-manage
ment
power-off Provided for platforms with software con
trolled power off capability, with or without
other Power Management capability
hibernate
suspend
system-reboot Required
update-flash-and-reboot See update-flash section
update-flash
cache-control Required in Power
Managed Platforms
Required in SMP
Platforms
freeze_time_base Turn off time base
Required in SMP
Platforms
thaw_time_base Turn time base back on
stop-self
start-cpu
query-cpu-stopped-state Required in SMP
|Platforms
--------------------------------------------------------------------------------------------
This is the last page of the CHRP Version 1.0 Change Notice