It is noted that the appended drawings illustrate only exemplary embodiments of the invention and are, therefore, not to be considered limiting of its scope, for the invention may admit to other equally effective embodiments.
For purposes of this disclosure, an information handling system may include any instrumentality or aggregate of instrumentalities operable to compute, classify, process, transmit, receive, retrieve, originate, switch, store, display, manifest, detect, record, reproduce, handle, or utilize any form of information, intelligence, or data for business, scientific, control, or other purposes. For example, an information handling system may be a personal computer, a server computer system, a network storage device, or any other suitable device and may vary in size, shape, performance, functionality, and price. The information handling system may include random access memory (RAM), one or more processing resources such as a central processing unit (CPU) or hardware or software control logic, ROM, and/or other types of nonvolatile memory. Additional components of the information handling system may include one or more disk drives, one or more network ports for communicating with external devices as well as various input and output (I/O) devices, such as a keyboard, a mouse, and a video display. The information handling system may also include one or more buses operable to transmit communications between the various hardware components.
The techniques described herein provide systems and methods for a Wake ON LAN (WOL) information handling system startup process that receives one or more WOL instructions and control information for modifying the system startup process.
The information handling system 101 receives one or more WOL instructions and receives control information for modifying the system startup process. In one exemplary technique, the control information may be a system or hard drive password, or can be instructions to startup the system by bypassing a password. Thus, even though the system or the system's hard drive may be password protected, WOL techniques may still be utilized as the control information provided as part of the WOL process allows for the system to be started up despite the existence of such password protections. The techniques described herein are also useful, however, for providing other types of control information. The control information may alternatively be an instruction to boot up from another device, such as booting up from a network server or booting from some alternative drive. Thus the control information may allow the boot up procedure to be reconfigured to modify the boot up sequence. The control information may alternatively be an instruction to disable Alert Standard Format (ASF) reporting. It will be recognized that the techniques described herein may further be advantageous to a wide range of other types of control information and that the techniques described herein are not limited to the particularly type of control information provided as part of the WOL process. The system control information provided as part of the WOL process may be stored in the network interface card (NIC) 103 and/or can be stored in a different system memory resource.
Thus as compared to the prior art, an enhanced WOL process is provided in which the WOL process can selectively trigger desired behaviors in the system's BIOS. For example, the WOL instructions or packets may embed system control commands. When the WOL packets are received, the receiving NIC may decode the embedded control commands and place the commands in the NIC's PCI Configuration Space. The NIC may then assert a PME signal which passes control to the system BIOS. A system configure to utilized the techniques described herein may have a BIOS that is set to examine the PCI Configuration Space for such embedded commands. Upon detection of such embedded WOL control commands, the BIOS may then carry out the action embedded in the command. Thus for example, the boot device may be selected. Alternatively, the embedded command may include a boot password that is provided so that the BIOS will continue booting and not stop at a boot password prompt. Alternatively, other control commands or combinations of control commands may be obtained as the techniques described herein are not limited to particular commands. Thus, for example, the standard boot code may include instructions to check one or more flags that may be set by the WOL process. When the WOL process sets that flag then the actions associated with that flag may occur. In another example, setting a particular flag may indicate that a boot password is skipped. Alternatively, setting a particular flag may indicated that a password should be obtained from the NIC. In this manner any of the control actions included in the WOL process may be executed.
The control information described herein that may be provided as part of the WOL process (such as for example the system password, hard disk password, boot up sequence, ASF control or other control instructions) may be distinguished as system control information. Such information provides additional system control beyond merely the WOL instructions. Thus, the control information is distinguishable from a WOL password which a NIC may be configured to be required to receive prior to accepting a WOL instruction.
As shown in
At step 204 a determination is made regarding whether the system activation is the result of a PME or not. If NO, the normal boot path is continued, step 208. If YES, the NIC is checked at step 205 to obtain any system control information that has been provided as part of the WOL process. At step 206, a decision is made regarding whether system control information is present. If NO, the normal boot path is continued by proceeding to step 208. If YES, the control information is processed at step 207. In one embodiment, the processing at step 207 may include the use of a system or hard drive password, instructions bypassing any password requirements, an instruction to boot up from another device, an instruction to disable ASF reporting or any other system control commands provided as part of the WOL processing. Once the control information is processed at step 207, the normal boot path is continued by proceeding to step 208.
Further modifications and alternative embodiments of this invention will be apparent to those skilled in the art in view of this description. It will be recognized, therefore, that the present invention is not limited by these example arrangements. Accordingly, this description is to be construed as illustrative only and is for the purpose of teaching those skilled in the art the manner of carrying out the invention. It is to be understood that the forms of the invention herein shown and described are to be taken as the presently preferred embodiments. Various changes may be made in the implementations and architectures. For example, equivalent elements may be substituted for those illustrated and described herein, and certain features of the invention may be utilized independently of the use of other features, all as would be apparent to one skilled in the art after having the benefit of this description of the invention.