Preventing an operable state in an information handling system in response to a reset of a power supply

In one embodiment, a method for preventing an operable state in a plurality of components of an information handling system in response to a reset of a power supply includes: receiving, by an embedded controller of the information handling system, power from the power supply after the reset of the power supply; causing a platform controller hub of the information handling system to receive the power from the power supply; receiving a signal from the platform controller hub indicating that the plurality of components should be placed in the operable state from an inoperable state; determining that the reset of the power supply was caused by the power supply being previously removed from the information handling system; determining that a position of a lid of the information handling system is in a closed position; and causing the plurality of components to remain in the inoperable state.

BACKGROUND

Field of the Disclosure

The disclosure relates generally to information handling systems, and in particular to preventing an operable state in an information handling system in response to a reset of a power supply.

Description of the Related Art

SUMMARY

In one embodiment, a disclosed method for preventing an operable state in a plurality of components of an information handling system in response to a reset of a power supply includes: receiving, by an embedded controller (EC) of the information handling system, power from the power supply after the reset of the power supply; causing, by the EC, a platform controller hub (PCH) of the information handling system to receive the power from the power supply; receiving, by the EC, a PCH signal from the PCH indicating that the plurality of components should be placed in the operable state from an inoperable state; determining, by the EC, that the reset of the power supply was caused by the power supply being previously removed from the information handling system; determining, by the EC, that a position of a lid of the information handling system is in a closed position; and causing, by the EC, the plurality of components to remain in the inoperable state.

In one or more of the disclosed embodiments, the method further includes: determining, by the EC, that the position of the lid has changed from the closed position to an open position; sending, by the EC, an EC signal to the PCH confirming that the plurality of components should be placed in the operable state; and causing, by the EC, a first portion of the plurality of components to be placed in the operable state.

In one or more of the disclosed embodiments, the method further includes: receiving, by the PCH, the EC signal confirming that the plurality of components should be placed in the operable state; and causing, by the PCH, a second portion of the plurality of components to be placed in the operable state.

In one or more of the disclosed embodiments, determining that the position of the lid has changed from the closed position to the open position includes: receiving, by the EC, a sensor signal from a sensor of the information handling system, the sensor signal indicating that the position of the lid is in the open position.

In one or more of the disclosed embodiments, causing the plurality of components to remain in the inoperable state includes: refraining, by the EC, from sending an EC signal to the PCH confirming that the plurality of components should be placed in the operable state; and refraining, by the EC, from causing a first portion of the plurality of components to be placed in the operable state.

In one or more of the disclosed embodiments, the method further includes: waiting, by the PCH, for a threshold time period to receive the EC signal confirming that the plurality of components should be placed in the operable state; identifying, by the PCH, that the threshold time period has elapsed; and refraining, by the PCH, from causing a second portion of the plurality of components to be placed in the operable state.

In one or more of the disclosed embodiments, determining that the position of the lid is in the closed position includes: receiving, by the EC, a sensor signal from a sensor of the information handling system, the sensor signal indicating that the position of the lid is in the closed position.

DESCRIPTION OF PARTICULAR EMBODIMENT(S)

This document describes a method for preventing an operable state in a plurality of components of an information handling system in response to a reset of a power supply includes: receiving, by an embedded controller (EC) of the information handling system, power from the power supply after the reset of the power supply; causing, by the EC, a platform controller hub (PCH) of the information handling system to receive the power from the power supply; receiving, by the EC, a PCH signal from the PCH indicating that the plurality of components should be placed in the operable state from an inoperable state; determining, by the EC, that the reset of the power supply was caused by the power supply being previously removed from the information handling system; determining, by the EC, that a position of a lid of the information handling system is in a closed position; and causing, by the EC, the plurality of components to remain in the inoperable state.

Particular embodiments are best understood by reference toFIGS. 1-3wherein like numbers are used to indicate like and corresponding parts.

Turning now to the drawings,FIG. 1is a block diagram of selected elements of an embodiment of a computing environment that includes an information handling system. Specifically,FIG. 1illustrates a block diagram depicting selected elements of an information handling system100in accordance with some embodiments of the present disclosure. In other embodiments, information handling system100may represent different types of portable information handling systems, such as, display devices, head mounted displays, head mount display systems, smart phones, tablet computers, notebook computers, media players, foldable display systems, digital cameras, 2-in-1 tablet-laptop combination computers, and wireless organizers, or other types of portable information handling systems. In one or more embodiments, information handling system100may also represent other types of information handling systems, including desktop computers, server systems, controllers, and microcontroller units, among other types of information handling systems.

In the embodiment illustrated inFIG. 1, components of information handling system100may include, but are not limited to, a processor subsystem120, which may comprise one or more processors, and system bus121that communicatively couples various system components to processor subsystem120including, for example, a memory subsystem135, an I/O subsystem140, a local storage resource145, and a network interface150. System bus121may represent a variety of suitable types of bus structures (e.g., a memory bus, a peripheral bus, or a local bus) using various bus architectures in selected embodiments. For example, such architectures may include, but are not limited to, Micro Channel Architecture (MCA) bus, Industry Standard Architecture (ISA) bus, Enhanced ISA (EISA) bus, Peripheral Component Interconnect (PCI) bus, PCI-Express (PCIe) bus, HyperTransport (HT) bus, and Video Electronics Standards Association (VESA) local bus. As shown inFIG. 1, information handling system100may additionally include a lid105, a power supply110, a sensor115, an embedded controller (EC)125, and a platform controller hub (PCH)130. In other embodiments, computing environment160may include additional, fewer, and/or different components than the components shown inFIG. 1.

In information handling system100, processor subsystem120may comprise a system, device, or apparatus operable to interpret and/or execute program instructions and/or process data, and may include a microprocessor, microcontroller, digital signal processor (DSP), application specific integrated circuit (ASIC), or another digital or analog circuitry configured to interpret and/or execute program instructions and/or process data. In some embodiments, processor subsystem120may interpret and/or execute program instructions and/or process data stored locally (e.g., in memory subsystem135and/or another component of information handling system100). In the same or alternative embodiments, processor subsystem120may interpret and/or execute program instructions and/or process data stored remotely. In one embodiment, processor subsystem120may be or include a multi-core processor comprised of one or more processing cores disposed upon an integrated circuit (IC) chip. In other embodiments, processor subsystem120may be or include an integrated device (e.g., microcontroller, system on a chip (SoC), and the like) that includes memory, peripheral interfaces, and/or other components suitable for interpreting and/or executing program instructions and/or processing data.

In one embodiment, I/O subsystem140may comprise a system, device, or apparatus generally operable to receive and/or transmit data to, from, and/or within information handling system100. I/O subsystem140may represent, for example, a variety of communication interfaces, graphics interfaces, video interfaces, user input interfaces, and/or peripheral interfaces. In various embodiments, I/O subsystem140may be used to support various peripheral devices, such as a touch panel, a display adapter, a keyboard, an accelerometer, a touch pad, a gyroscope, an IR sensor, a microphone, a sensor, a camera, or another type of peripheral device.

In one embodiment, local storage resource145may comprise computer-readable media (e.g., hard disk drive, floppy disk drive, CD-ROM, and/or other type of rotating storage media, flash memory, EEPROM, and/or another type of solid state storage media) and may be generally operable to store instructions and/or data.

In one embodiment, network interface150may be a suitable system, apparatus, or device operable to serve as an interface between information handling system100and a network155. Network interface150may enable information handling system100to communicate over network155using a suitable transmission protocol and/or standard, including, but not limited to, transmission protocols and/or standards enumerated below with respect to the discussion of network155. Network155may be a public network or a private (e.g. corporate) network. The network may be implemented as, or may be a part of, a storage area network (SAN), personal area network (PAN), local area network (LAN), a metropolitan area network (MAN), a wide area network (WAN), a wireless local area network (WLAN), a virtual private network (VPN), an intranet, the Internet or another appropriate architecture or system that facilitates the communication of signals, data and/or messages (generally referred to as data). Network interface150may enable wired and/or wireless communications (e.g., NFC or Bluetooth) to and/or from information handling system100.

In particular embodiments, network155may include one or more routers for routing data between client information handling systems100and server information handling systems100. A device (e.g., a client information handling system100or a server information handling system100) on network155may be addressed by a corresponding network address including, for example, an Internet protocol (IP) address, an Internet name, a Windows Internet name service (WINS) name, a domain name or other system name. In particular embodiments, network155may include one or more logical groupings of network devices such as, for example, one or more sites (e.g. customer sites) or subnets. As an example, a corporate network may include potentially thousands of offices or branches, each with its own subnet (or multiple subnets) having many devices. One or more client information handling systems100may communicate with one or more server information handling systems100via any suitable connection including, for example, a modem connection, a LAN connection including the Ethernet or a broadband WAN connection including DSL, Cable, Ti, T3, Fiber Optics, Wi-Fi, or a mobile network connection including GSM, GPRS, 3G, or WiMax.

In one embodiment, lid105may be a suitable system, apparatus, or device operable to house components of information handling system100. In particular, lid105may be comprised of a rigid material (e.g., aluminum) and/or semi-rigid material (e.g., plastic) operable to provide a housing for components within information handling system100. In one embodiment, lid105may be or include a top cover, or “A cover,” for information handling system100. In other embodiments, lid105may be or include a bottom cover, or “D cover,” and/or any other cover or shell suitable for housing components of information handling system100. Lid105is described in further detail with respect toFIG. 2.

In one embodiment, power supply110may be a suitable system, apparatus, or device operable to supply, or otherwise provide, power to information handling system100. In particular, power supply110may be or include a battery operable to supply, or otherwise provide, power to components within information handling system100such that the components may become initialized, or be placed into an “operable state.” That is, power supply110may supply power to components within information handling system100such that information handling system100may be operable for use for a finite time period (e.g., several hours) without requiring external power being supplied via a power cord coupled to a power outlet. In one embodiment, power supply110may be or include a battery comprised of nickel cadmium. In other embodiments, power supply110may be or include a battery comprised of nickel metal hydride, lithium ion, and/or any other type of battery suitable for supplying, or otherwise providing, power to information handling system100. Power supply110is described in further detail with respect toFIG. 2.

In one embodiment, sensor115may be a suitable system, apparatus, or device operable to sense, or otherwise detect, a position of lid105. Specifically, sensor115may be or include a device operable to detect the position, and/or changes in the position, of lid105in relation to information handling system100. In one embodiment, sensor115may detect the position of lid105as being in an open position. For example, sensor115may detect that the position of lid105is in an open position as a user opens lid105of information handling system100to view information presented to the user via a display (not shown in figure) of information handling system100. In another embodiment, sensor115may detect the position of lid105as being in a closed position. For example, sensor115may detect that the position of lid105is in a closed position as the user closes lid105of information handling system100at the end of a user session. In another example, sensor115may detect that the position of lid105is in the closed position during instances in which power supply110has been removed from information handling system100allowing a user and/or administrator to perform maintenance on components within information handling system100.

In one embodiment, sensor115may be or include a Hall effect sensor operable to detect the presence and/or magnitude of a magnetic field within lid105. In this embodiment, sensor115may detect a presence of a magnetic field caused by a magnet within lid105and may determine that lid105is in a closed position given the presence of the magnetic field. For example, sensor115may detect the presence of a magnetic field caused by a magnet within lid105when the position of lid105is at an angle of less than 50° in relation to information handling system100. Similarly, sensor115may detect an absence of a magnetic field caused by the magnet within lid105and may determine that lid105is in an open position given the absence of the magnetic field. For example, sensor115may detect the absence of a magnetic field caused by the magnet within lid105when the position of lid105is at an angle greater than 50° in relation to information handling system100. In another embodiment, sensor115may be or include a proximity sensor (e.g., inductive proximity sensor, capacitive proximity sensor, and the like) operable to detect the position of lid105. In other embodiments, sensor115may be or include a magnetic proximity sensor, an ultrasound proximity sensor, a photoelectric proximity sensor, and/or any other type of sensor operable for sensing, or otherwise detecting, a position of lid105. Sensor115is described in further detail with respect toFIG. 2.

In one embodiment, embedded controller (EC)125may be a suitable system, apparatus, or device operable to support various system tasks on behalf of information handling system100. In particular, EC125may be or include an electronic hardware device (e.g. a microcontroller) operable to perform hardware initialization during a pre-boot sequence of information handling system100and to identify any failures or issues that may occur during initialization. In one embodiment, EC125may execute firmware instructions (e.g., stored in memory220shown inFIG. 2) that allows EC125to generate a diagnostic testing sequence used to detect, examine, and/or initialize components within, or communicably coupled to, information handling system100. For example, EC125may power on after receiving power from power supply110after a reset of power supply110and may determine that the reset was caused by power supply110being previously removed from information handling system100by a user.

Conventionally, a reset of a power supply caused by a previous removal of the power supply from an information handling system may cause an EC to begin initializing components within, or communicably coupled to, the information handing system. However, for instances in which a user has removed the power supply to perform maintenance on components within the information handling system, the replacement of the battery within the information handling system may cause unexpected behavior as the EC receives power and begins to initialize the components. In particular, if the user has kept the position of the lid of the information handling system in a closed position and has oriented the information handling system in an orientation to best perform maintenance (e.g., an upside-down orientation), the user may be unaware of the EC initializing the components after the reset of the power supply. While the information handling system is in this orientation, the user may install and/or uninstall one or more components while performing maintenance which may unknowingly result in a short circuit causing damage to the information handling system, thereby decreasing overall system performance and user experience.

In contrast, EC125may receive power from power supply110after a reset of power supply110and may determine that the reset was caused by power supply110being previously removed from information handling system100. Additionally, EC125may determine that a position of lid105is in a closed position. Upon determining that the reset was caused by power supply110being previously removed from information handling system100and that the position of lid105is in the closed position, EC125may determine that information handling system100is likely oriented in an upside-down orientation allowing a user to perform maintenance on components within information handling system100and that the user is likely unaware of the reset of power supply110. Thus, EC125may delay the initialization of components within information handling system100to avoid the potential damage to information handling system100described above. Specifically, EC125may cause components within information handling system100to remain uninitialized, or in an “inoperable state,” until EC125determines that the position of lid105is in an open position, thereby indicating that the user has explicitly enabled information handling system100for use. As such, EC125may avoid damages to information handling system100caused by an inadvertent reset of power supply110, thereby increasing overall system performance and user experience. EC125is described in further detail with respect toFIG. 2.

In one embodiment, platform controller hub (PCH)130may be a suitable system, apparatus, or device operable to manage various data paths and functions associated with information handling system100. In particular, PCH130may support general-purpose input/output (GPIO) and initialize components within information handling system100after a reset of power supply110. In one embodiment, PCH130may receive power from power supply110(e.g., via PCH power210shown inFIG. 2) after a reset of power supply110and may send a signal, or a “PCH signal,” to EC125indicating that components within information handling system100should be initialized, or placed in an operable state. In this embodiment, PCH130may receive a signal, or an “EC signal,” from EC125confirming that the components should be placed in the operable state. Upon receiving the EC signal from EC125, PCH130may cause the components, or a portion thereof, to be placed in the operable state as information handling system100completes a booting process. Conversely, PCH130may wait for an adjustable threshold period of time, or a “threshold time period,” to receive the EC signal from EC125and may identify that the threshold time period has elapsed. Upon identifying that the threshold time period has elapsed, PCH130may refrain from causing the components, or a portion thereof, to be placed in the operable state. For example, PCH130may wait for a threshold time period of 30 seconds to receive the EC signal from EC125and may refrain from initializing components upon identifying that the EC signal was not received within the threshold time period. PCH130is described in further detail with respect toFIG. 2.

FIG. 2illustrates selected elements of an embodiment of an information handling system. In the embodiment illustrated inFIG. 2, information handling system100includes a lid105, a power supply110, a sensor115, an embedded controller (EC)125, and a platform controller hub (PCH)130as described above with respect toFIG. 1. Information handling system100additionally includes a converter240(e.g., an AC-DC converter, DC-DC converter, and the like) operable for converting a signal (e.g., a voltage) received by PCH130. EC125includes a memory220operable for storing firmware instructions that allow EC125to detect, examine, and/or initialize components within, or communicably coupled to, information handling system100. Similarly, PCH130includes a memory230operable for storing firmware instructions that allow PCH130to manage various data paths and functions associated with information handling system100and/or to initialize components within, or communicably coupled to, information handling system100. As shown inFIG. 2, information handling system100additionally includes real-time clock (RTC) power200and PCH power210. Here, power supply110may be segmented, or otherwise partitioned, such that a portion of power supply110may be provided to RTC power200for supplying power to EC125and a portion of power supply110may be provided to PCH power210for supplying power to PCH130. In other embodiments, information handling system100may include additional, fewer, and/or different components than the components shown inFIG. 2.

In one embodiment, EC125may receive power from power supply110(e.g., via RTC power200) after a reset of power supply110and may cause PCH130to receive power from power supply110(e.g., via PCH power210). Specifically, EC125may send a signal to converter240causing converter240to supply power from PCH power210to PCH130. Upon receiving power from PCH power210(e.g., via converter240), PCH130may send PCH signal260to EC125indicating that components of information handling system100should be placed in an operable state. For example, PCH130may receive power and identify that a register within PCH130indicates that information handling system100is to transition from a “G3” state in which information handling system100is in a mechanically off state to a “G0” state in which information handling system100is in a working state. This transition may be prompted by the removal of power supply110from information handling system100causing a reset of power supply110as described above. In one embodiment, PCH signal260may be or include a request for EC125, or for the firmware instructions therein, to cause inoperable components of information handling system100to be placed in an “S3” state, or a low wake-up latency sleeping state.

In one embodiment, EC125may receive PCH signal260and may, instead, delay the initialization of components within information handling system100to avoid potential damage to information handling system100. Specifically, EC125may determine that the reset of power supply110was caused by power supply110being previously removed from information handling system100. For example, EC125may identify that a register within EC125indicates that power supply110was recently removed, causing information handling system to enter a “G3” state. In addition, EC125may determine a position of lid105. As described above with respect toFIG. 1, the position of lid105may be in a closed position while information handling system100is oriented in an upside-down orientation allowing a user to perform maintenance on components within information handling system100. While information handling system100is in this orientation, the user is likely unaware of the reset of power supply110. Therefore, EC125may determine the position of lid105to ensure that lid105is not in a closed position during initialization of components after the removal of power supply110causing a reset, likely indicating that the user is performing maintenance. In one embodiment, sensor115may determine the position of lid105based on magnetic field280as described above with respect toFIG. 1. Accordingly, sensor115may provide sensor signal270to EC125and EC125may, resultantly, determine the position of lid105in relation to information handling system100.

In one embodiment, upon determining that the reset of power supply110was caused by power supply110being previously removed from information handling system100and that the position of lid105is in the closed position, EC125may cause components within information handling system100to remain in an inoperable state. That is, EC125may refrain from sending EC signal250to PCH130confirming that components should be placed in the operable state. In addition, EC125may refrain from causing the components, or a portion thereof, to be placed in the operable state. For example, EC125may refrain from placing components of information handling system100in an “S3” state. As described above with respect toFIG. 1, PCH130may wait for a threshold time period to receive EC signal250from EC125and may identify that the threshold time period has elapsed. Upon identifying that the threshold time period has elapsed, PCH130may refrain from causing the components, or a portion thereof, to be placed in the operable state.

In one embodiment, upon determining that the position of lid105has changed from the closed position to an open position, EC125may send EC signal250to PCH130confirming that the components should be placed in the operable state (e.g., “S3” state). Specifically, sensor115may determine that the position of lid105is in an open position based on an absence of magnetic field280and may provide sensor signal270to EC125. Here, sensor signal270may indicate that the position of lid105is now in the open position. In addition, EC125may cause the components, or a portion thereof, to be placed in the operable state. Similarly, PCH130may receive EC signal250from EC125and may cause the components, or a portion thereof, to be placed in the operable state. That is, upon determining that the position of lid105has changed from the closed position to the open position, EC125and PCH130may communicate to respectively cause components of information handling system100to be placed in an operable state (e.g., “S5” states, “S3” states, “S0” states, and the like) while information handling system100completes a booting process. As such, EC125may ensure that components remain in an inoperable state as a user installs and/or uninstalls components while performing maintenance, thereby avoiding potential damage to information handling system100.

FIG. 3is a flowchart depicting selected elements of an embodiment of a method for preventing an operable state in a plurality of components of an information handling system in response to a reset of a power supply. It is noted that certain operations described in method300may be optional or may be rearranged in different embodiments.

Method300may begin at steps310and320, where an embedded controller (EC) of the information handling system may receive power from the power supply and may cause a platform controller hub (PCH) of the information handling system to receive the power from the power supply. For example, power supply110may be segmented, or otherwise partitioned, such that a portion of power supply110may be provided to RTC power200for supplying power to EC125and a portion of power supply110may be provided to PCH power210for supplying power to PCH130as described above with respect toFIG. 2. EC125may send a signal to converter240causing converter240to supply power from PCH power210to PCH130as described above with respect toFIG. 2. In step330, the EC may receive a PCH signal from the PCH indicating that the plurality of components should be placed in the operable state. The plurality of components may be in an inoperable state. For example, PCH signal260may be or include a request for EC125, or for the firmware instructions therein, to cause inoperable components of information handling system100to be placed in an “S3” state, or a low wake-up latency sleeping state, as described above with respect toFIG. 2. In step340, the EC may determine that the reset of the power supply was caused by the power supply being previously removed from the information handling system. For example, EC125may identify that a register within EC125indicates that power supply110was recently removed, causing information handling system to enter a “G3” state as described above with respect toFIG. 2. In step350, the EC may determine that a position of a lid of the information handling system is in a closed position. For example, sensor115may detect a presence of a magnetic field caused by a magnet within lid105and may determine that lid105is in a closed position given the presence of the magnetic field as described above with respect toFIG. 1. Sensor115may provide sensor signal270to EC125and EC125may, resultantly, determine the position of lid105in relation to information handling system100as described above with respect toFIG. 2. In step360, the EC may cause the plurality of components to remain in the inoperable state. For example, upon determining that the reset of power supply110was caused by power supply110being previously removed from information handling system100and that the position of lid105is in the closed position, EC125may cause components within information handling system100to remain in an inoperable state as described above with respect toFIG. 2.