• Aucun résultat trouvé

3GEVBOOT - Global Environment Variable Boot

Dans le document User’s ManualPart 1 and 2 (Page 139-145)

Command Input

GEVBOOT Variable-Name Description

The GEVBOOT command permits the user to boot the system using a Global Environment Variable, Variable-Name, which is a “fw-boot-path”.

Background: Residual Data and Boot List

Recent releases of IBM AIX requires that the PReP style of residual data be provided by the system firmware. Previous releases of IBM's AIX did not require that residual data be implemented.

Residual data, basically, informs the operating system of the system attributes (i.e., what devices are present, how are they configured, are they bootable?, etc.). To some degree, it is an abstraction of the hardware that the system firmware provides.

IBM has further defined what residual data should look like now.

This latest version of IBM AIX also requires that the system firmware must support a boot list. This boot list contains a list of bootable devices that the firmware utilizes to boot the system. This boot list is housed within a Global Environment Variable (GEV). The GEVs are kept in the PReP partition of NVRAM, more specifically, the global environment variable area. Through this GEV, the OS/user can configure the system for its boot device selection policy.

This latest version of IBM AIX also requires that the system firmware support the PReP style of network booting. The PReP style of network

3

Requirements

Some high-level requirements that this release meets are:

Residual Data as specified above.

Boot List Support via "fw-boot-path", "fw-boot-device", and "boot-file" global environment variables

Network Boot, PReP style

OEM Banner support

Initialization of the PIRQx (PCI Interrupts) route control registers.

System uniqueness (i.e., board serial number)

The "boot list" and "OEM banner support" requirements require that the firmware be capable of reading and writing global environment variables.

These variables are housed within the global environment area of NVRAM (i.e., the PReP partition).

Each mass storage device, and network interface supported from the firmware must identify itself. This identification is per the firmware device naming convention, as outlined in the IBM document. The device naming convention follows the Open Firmware device naming convention. The GE variables, "fw-boot-path" and "fw-boot-device", consist of device names.

Global Environment Variables (GEVs) The product supports the following GEVs:

MOT-OEM-BANNER

This variable is used by the firmware to display the OEM banner (if initialized). The contents of this GEV are displayed prior to the display of the firmware copyright message.

MOT-OEM-ID

This variable is used by the firmware to apply any special switches, product variations, other alterations as needed.

Debugger Commands

3

fw-boot-path

This variable contains a list (four maximum) of boot devices which can be booted from. The OS maintains this variable. This is a read-only variable from the firmware’s perspective. (The firmware does not impose any limit upon the length of this list.) However, this variable may be modified by utilizing the GEVEDIT command.

fw-boot-device

This variable contains the boot device path from the current boot device (i.e., the device just booted from, mass storage or network).

This variable is updated on each successful boot (i.e., IPL loaded).

ClientIPAddr

This variable is updated on each successful network boot. It contains the client’s internet protocol address.

ServerIPAddr

This variable is updated on each successful network boot. It contains the server’s internet protocol address.

GatewayIPAddr

This variable is updated on each successful network boot.It contains the gateway internet protocol address to the server.

NetMask

This variable is updated on each successful network boot. It contains the internet protocol address mask. The mask is applied to both the server’s and client’s IP address to determine if the gateway must be used.

boot-file

This variable is updated on each successful network boot. It contains the name of the boot file.

3

Styles of Booting

The older Motorola mode of mass storage device booting was also preserved for backward compatibility. However, priority is given to the new style of booting (i.e., NVRAM boot list).

The older product supports booting from the network. However, it does not support it as per the PReP specification. The PReP specification specifies the boot image from a mass storage device to be the same when booting from a network interface. The older support treats the network boot image as a raw binary, no format understood. The new support understands the PReP boot image. The PReP boot image does have a defined format. The network boot image may be loaded any where in memory, as per the PReP specification.

Support has been added to the product to enable the PReP style of networking booting. The former style is also preserved for backward compatibility. However, priority is given to the new style of network booting. This capability is in the form of a new ENV parameter.

Both styles of network booting are supported. The new style of networking booting (i.e., PReP) is controlled by an ENV configuration parameter. The default state of the ENV configuration parameter is set to enable the PReP style of network booting. Disabling this parameter will effectively default the network boot process to the past mode of network booting (i.e., no file format understood). This support is identified by the following ENV parameter:

Network PReP-Boot Mode Enable [Y/N], defaults to ’Y’

PPC1Bug revision 1.8 added a new global environment variable (GEV)

"fw-boot-path" boot to the global firmware boot process. The boot priority, for both mass storage device boot and network interface boot, is given first to the "fw-boot-path" GEV.

To support this, a new boot process has been added. This boot process is labeled "NVRAM Boot List" boot.This new boot process is identified by the ENV command parameters of:

NVRAM Boot List (GEV.fw-boot-path) Boot Enable [Y/N], defaults to ’Y’

NVRAM Boot List (GEV.fw-boot-path) Boot at power-up only [Y/N], defaults to ’N’

NVRAM Boot List (GEV.fw-boot-path) Boot Abort Delay, defaults to 5

Debugger Commands

3

The default state of the ENV configuration parameter is set to ’Y’ for yes/enabled. This gives boot priority to the devices listed within the "fw-boot-path" GEV. Setting this ENV configuration parameter to ’N’ for no/disabled, effectively changes the behavior of boot policy to the same behavior as prior products. If the "fw-boot-path" GEV is not initialized, this also effectively has the same behavior as prior products.

This new boot takes priority over all other boots (i.e., Auto Boot, Network Boot). This boot may also be executed manually from the firmware command line via the GEVBOOT command.

The following global environment variables are updated upon each successful network boot: fw-boot-device, ClientIPAddr, ServerIPAddr, GatewayIPAddr, NetMask, and boot-file.

The "fw-boot-device" GEV is updated upon each boot instance. This is done regardless of the specified boot policy. Both the mass storage device boot module, and the network interface boot module are modified to set the GEV at every successful boot instance.

The "fw-boot-path" GEV is a list (a maximum of four) of "fw-boot-device"

GEVs. Boot priority is always given to the first device in the list.

Example

Show storage devices via ioi

PPC1-Bug>ioi;d I/O Inquiry Status:

CLUN DLUN CNTRL-TYPE DADDR DTYPE RM Inquiry-Data 1 0 PC8477 0 $00 Y <None>

Device-Name =/pci@80000000/pci8086,484@b,0/PNP0700@3f0/floppy@0

3

fw-boot-path needs to be defined as a device that was shown to be available via ioi

PPC1-Bug>gevshow

fw-boot-device=/pci@80000000/pci1011,9@e,0:0,0 ClientIPAddr=144.191.24.121

ServerIPAddr=144.191.24.252 GatewayIPAddr=144.191.12.252 NetMask=255.255.255.0

boot-file=/usr/tmp/jdcham.ram

fw-boot-path=/pci@80000000/pci8086,484@b,0/PNP0700@3f0/floppy@0 Total Number of GE Variables =7, Bytes Utilized =313, Bytes Free =1999

gevboot automatically uses fw-boot-device -- in this example it fails because there is no floppy in the drive with a bootable image

PPC1-Bug>gevboot

NVRAM Boot List about to Begin... Press <ESC> to Bypass, <SPC> to Continue Scanning System for Attached Boot Devices

/pci@80000000/pci8086,484@b,0/PNP0700@3f0/floppy@0 /pci@80000000/pci1011,9@e,0:0,0

Attempting BOOT from Devices Specified by the GE Variable “fw-boot-path”

/pci@80000000/pci8086,484@b,0/PNP0700@3f0/floppy@0 PPC1-Bug>

Debugger Commands

3

Dans le document User’s ManualPart 1 and 2 (Page 139-145)