Methods, non-temporary computer-readable media, and computing systems

The docking hub facilitates local firmware restoration on computing devices by communicating with a network to detect and install backup firmware, addressing the inconvenience and cost issues of traditional methods.

JP7866617B2Active Publication Date: 2026-05-27LENOVO (SINGAPORE) PTE LTD

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
LENOVO (SINGAPORE) PTE LTD
Filing Date
2024-12-13
Publication Date
2026-05-27

AI Technical Summary

Technical Problem

Existing methods for restoring firmware on computing devices are inconvenient and costly when errors occur, especially for users lacking technical expertise, often requiring shipment to a remote service center.

Method used

A method and system utilizing a docking hub to locally restore firmware by uploading device identification and firmware version information to a network, detecting errors, and installing backup firmware through a docking hub and network communication.

Benefits of technology

Enables local, efficient, and secure firmware restoration reducing user inconvenience and costs by leveraging a docking hub's functionality to retrieve and install backup firmware.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007866617000001
    Figure 0007866617000001
  • Figure 0007866617000002
    Figure 0007866617000002
  • Figure 0007866617000003
    Figure 0007866617000003
Patent Text Reader

Abstract

To provide a method that operates a computing system including a computing device and a docking hub.SOLUTION: A method comprises steps of: uploading, by a computing device, identification information of the computing device and firmware version information of firmware installed in the computing device to a network; detecting an error in the installed firmware; transmitting a first request message including the identification information from an embedded controller of the computing device to a docking hub; transmitting a second request message including the identification information from the docking hub to the network; acquiring, by the docking hub, backup firmware corresponding to the firmware version information from the network; and installing the backup firmware in the computing device.SELECTED DRAWING: Figure 1A
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to a method for locally restoring firmware installed on a computing device. , non-temporary computer-readable media, and computing systems It relates to.

Background Art

[0002] When an error exists in the firmware of a computing device, one or more functions of the computing device may be lost until a valid firmware version is restored (e.g., unable to boot, loss of hardware integration). If the local restoration process of the computing device fails (e.g., damage to the version of the local backup firmware), and / or the user of the computing device does not have the technical expertise to handle firmware errors, the computing device may be shipped to a remote service center with an expert who can restore the system or provide a replacement. This remote service process can cause significant inconvenience and costs (e.g., time, cost, manpower) to the user, manufacturer, and service provider.

Summary of the Invention

Means for Solving the Problems

[0003] Generally, one or more embodiments of the present invention relate to a method for operating a computing system including a computing device and a docking hub. The method includes the steps of: uploading identification information of the computing device and firmware version information of firmware installed on the computing device to a network by the computing device; detecting errors in the installed firmware; sending a first request message including identification information from the computing device's embedded controller to the docking hub; sending a second request message including identification information from the docking hub to the network by the docking hub; obtaining backup firmware corresponding to the firmware version information from the network by the docking hub; and installing the backup firmware on the computing device.

[0004] Generally, one or more embodiments of the present invention relate to a non-temporary computer-readable medium (CRM) for storing computer-readable program code for operating a computing system including a computing device and a docking hub. The computer-readable program code causes the computer system to have the computing device upload identification information of the computing device and firmware version information of the firmware installed on the computing device to a network, to detect errors in the installed firmware, to send a first request message containing the identification information from the computing device's built-in controller to the docking hub, to send a second request message containing the identification information from the docking hub to the network, to have the docking hub retrieve backup firmware corresponding to the firmware version information from the network, and to install the backup firmware on the computing device.

[0005] Generally, one or more embodiments of the present invention relate to a computer system comprising a computing device with an embedded controller and a docking hub configured to communicate with the computing device and a network. The computing system is configured such that the computing device uploads identification information of the computing device and firmware version information of firmware installed on the computing device to the network, detects errors in the installed firmware, sends a first request message containing the identification information from the embedded controller of the computing device to the docking hub, sends a second request message containing the identification information from the docking hub to the network, and the docking hub retrieves backup firmware corresponding to the firmware version information from the network and installs the backup firmware on the computing device.

[0006] Other aspects of the present invention will be apparent from the following description and the appended claims. [Brief explanation of the drawing]

[0007] [Figure 1A] This is a perspective view of a computing system according to one or more embodiments of the present invention. [Figure 1B] This is a schematic diagram of various subcomponents included in the computing device shown in Figure 1, according to one or more embodiments of the present invention. [Figure 1C] This is a schematic diagram of various subcomponents included in the docking hub according to one or more embodiments of the present invention, as shown in Figure 1. [Figure 2] This is a schematic diagram of the firmware configuration in the computing device shown in Figure 1, according to one or more embodiments of the present invention. [Figure 3] This figure shows the firmware recovery configuration in the computing system shown in Figure 1, according to one or more embodiments of the present invention. [Figure 4] This is a flowchart showing a method according to one or more embodiments of the present invention. [Figure 5] This is a flowchart showing a method according to one or more embodiments of the present invention. [Modes for carrying out the invention]

[0008] Next, specific embodiments of the present invention will be described in detail with reference to the accompanying drawings. Similar elements in the various figures are indicated by the same reference numerals for consistency.

[0009] The following detailed description of embodiments of the present invention includes numerous specific details to provide a more complete understanding of the invention. However, it will be apparent to those skilled in the art that the invention can be carried out without these specific details. In other examples, well-known features are not described in detail to avoid unnecessarily complicating the description.

[0010] Generally, a computing device includes multiple firmware configurations (i.e., firmware or firmware modules) that provide control or management functions for a specific hardware configuration of the computing device. Because firmware contains the basic functions necessary for the computing device to operate, it is stored in non-volatile memory (e.g., read-only memory, flash memory area, erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM)) separate from the computing device's other memory resources (e.g., random access memory (RAM), storage devices). Data stored in the computing device's other memory resources can be constantly written to, read from, rewritten, and / or erased, but special procedures may be required to modify or update the firmware version. Furthermore, because a valid firmware version is necessary for the proper operation of the computing device, additional security permissions may be required to perform special procedures to change the firmware of the computing device.

[0011] Generally, embodiments of the present invention provide a method for locally restoring a valid firmware version on a computing device using a connected docking hub. By introducing a computing system including a computing device supported by a docking hub (e.g., a PC / laptop docking station, port replicator, multiport adapter / expander, peripheral), the docking hub provides a local platform that can assist in restoring the computing device. Because the docking hub is independent of firmware errors in the computing device, it can be trusted as a fully functional and reliable component of the computing system.

[0012] Figure 1A shows a perspective view of a computing system according to one or more embodiments of the present invention.

[0013] The computing system includes computing devices 10 (e.g., laptop personal computers (PCs), tablet PCs, desktop PCs, convertible PCs) and a docking hub 30. The computing devices 10 are described in more detail below with respect to Figure 1B. The docking hub 30 is a standalone device that supports the computing devices 10 by providing additional functionality. For example, the docking hub 30 may include additional communication ports (e.g., universal serial bus ports), AV (audio-visual) ports (e.g., audio input / output ports, additional monitor support), power connections, and the like.

[0014] The computing system further includes a communication link A (i.e., Link A) connecting the computing device 10 and the docking hub 30. In one or more embodiments, Link A may further include a power connection between the computing device 10 and the docking hub 30. For example, Link A may be a USB-C to USB-C line (CC line) that provides the computing device 10 with power (e.g., via an external power supply (not shown) connected to the docking hub 30) and access to an external network 40 (e.g., a local area network (LAN), a wide area network (WAN) such as the Internet, a mobile network, or any other type of network) via the docking hub 30.

[0015] The computing system further includes a communication link B (i.e., link B) that connects the docking hub 30 to an external network 40. In one or more embodiments, link B may be a direct or indirect wired network connection (e.g., an Ethernet connection) or a wireless network connection between the docking hub 30 and the network 40.

[0016] The computing system further includes a communication link C (i.e., link C) that connects the computing device 10 to an external network 40. In one or more embodiments, link C may be a direct or indirect wired network connection (e.g., an Ethernet connection) or a wireless network connection between the computing device 10 and the network 40, which does not include the docking hub 30.

[0017] Figure 1B shows a schematic diagram of various subcomponents included in the computing device 10 of Figure 1, according to one or more embodiments of the present invention.

[0018] The computing device 10 includes a motherboard MB having multiple subcomponents. The subcomponents installed on the motherboard MB may include a processor 12 (e.g., a central processing unit (CPU)), memory 14, a graphics processing unit (GPU) 16 (e.g., a video subsystem), a power circuit controller 18, firmware memory 20 (e.g., a serial peripheral interface (SPI) flash area), an embedded controller 22, a chipset 24, a network interface 26 (e.g., a wired or wireless connection port that manages communication via Link C), and a storage device 28 (e.g., a hard disk drive (HDD), a solid state drive (SSD)). The computing device 10 may further include a fan and a power supply.

[0019] In one or more embodiments, the above subcomponents of computing device 10 may be omitted, may be included in plurality, may be combined as a single subcomponent (e.g., a processor that functions as a controller of one or more subcomponents), and / or may be disposed in computing device 10 or other parts of the computing system. Further, the functions of each of the above subcomponents may be divided into a plurality of subcomponents, may be implemented in hardware (e.g., circuits, physical components), may be implemented in software (e.g., machine language, programming on a non-transitory computer-readable medium), or may be any combination thereof. Further, without departing from the scope of the present disclosure, computing device 10 may internally or externally include other subcomponents (e.g., device / memory, peripheral elements, removable components, external power sources) other than those listed above as subcomponents of computing device 10.

[0020] FIG. 1C shows a schematic diagram of various subcomponents included in docking hub 30 of FIG. 1 according to one or more embodiments of the present invention.

[0021] Docking hub 30 includes a plurality of subcomponents (e.g., installed on a motherboard or a printed circuit board) in addition to one or more ports 31 (e.g., ports for CC lines to computing device 10, additional data / AV ports). The subcomponents may include a microcontroller 32 (e.g., a CPU), a memory 34, a network interface 36 (e.g., a wired or wireless connection port that manages communication via link B), and a power circuit controller 38 (e.g., a power delivery (PD) controller). Although not shown, docking hub 30 may further include any subcomponent described above with respect to computing device 10 or any other suitable subcomponent.

[0022] In one or more embodiments, the above-described sub-components of the docking hub 30 may be omitted, may be included in plurality, may be combined as a single sub-component (e.g., a processor that functions as a controller for one or more sub-components), and / or may be disposed in the docking hub 30 or other parts of the computing system. Further, the functions of each of the above-described sub-components may be divided among a plurality of sub-components, may be implemented in hardware (e.g., circuits, physical components), may be implemented in software (e.g., machine language, programming on a non-transitory computer-readable medium), or any combination thereof. Further, without departing from the scope of the present disclosure, other sub-components (e.g., device / memory, peripheral elements, removable components, external power sources) other than those listed above may be included internally or externally as sub-components of the computing device 10.

[0023] FIG. 2 shows a schematic diagram of a firmware configuration in the computing device 10 of FIG. 1 according to one or more embodiments of the present invention.

[0024] The computing device 10 includes a firmware memory 20 which may include a flash memory area (e.g., an SPI flash area) that holds various firmware modules of the computing device 10. The firmware memory 20 may include one or more of the following as firmware installed on the computing device 10: descriptor firmware (DESC FW), management engine firmware (ME FW), basic input / output system firmware (BIOS FW), embedded controller firmware (EC FW), trusted platform module firmware (TPM FW), and any appropriate firmware used by the computing device 10. The firmware memory 20 may further include local backup versions of any of the above firmware modules.

[0025] The firmware memory 20 is reprogrammable (for example, to update the installed firmware and to restore the installed firmware in case of errors or corruption). In one or more embodiments, the embedded controller 22 controls modifications to the firmware memory 20. For example, the platform controller hub (PCH) of the computing device 10 may perform any modifications to the firmware memory 20 by coordinating the functions between the main processor 12 (e.g., CPU) of the computing device 10 and the embedded controller 22 (for example, via the enhanced SPI (eSPI) protocol).

[0026] Figure 2 illustrates an embodiment of the present invention including a PCH chipset and eSPI, but it will be understood that alternative configurations, chipsets, and protocols may be used to carry out the present invention. For example, different subcomponents of the computing device 10 in Figure 1B may be configured to manage the firmware memory 20, and different communication protocols may be used.

[0027] The embedded controller 22 may attempt a restore process using the corresponding backup firmware stored locally in the firmware memory 20 when an error is detected in the installed firmware of the computing device 10. However, this local backup restore process may become impossible if the error in the installed firmware limits the functionality of the computing device 10 (for example, if it becomes unbootable, corrupted, or loses access to part or all of the firmware memory 20). As will be described in more detail below with respect to Figure 3, the docking hub 30 may be used as a trusted entity to coordinate the restore of the firmware memory 20.

[0028] Figure 3 shows a firmware recovery configuration in the computing system of Figure 1 according to one or more embodiments of the present invention.

[0029] Embodiments of the present invention utilize link A between the computing device 10 and the docking hub 30 to retrieve and install backup firmware from the network 40. As will be described in more detail below, even if the computing device 10 loses functionality due to a firmware error, the functional hardware of the connected docking hub 30 can be used to coordinate the retrieval of backup firmware from the network 40 via this interconnection.

[0030] Link A is managed by the power circuit controller 18 in the computing device 10 and the power circuit controller 38 in the docking hub 30. The microcontroller 32 in the docking hub 30 is communicatively coupled to the power circuit controller 38. Similarly, the embedded controller 22 in the computing device 10 is communicatively coupled to the power circuit controller 18. Through these connections, the computing system in Figure 1 may be configured to allow the embedded controller 22 to access the functions of the docking hub 30.

[0031] For example, if the network interface 26 of the computing device 10 fails to function due to an error in the installed firmware, the network interface 36 of the docking hub 30 may be instructed to send and receive information to and from the network 40 on behalf of the embedded controller 22. Alternatively, or additionally, if the memory 14 of the computing device 10 fails to function due to an error in the installed firmware, the memory 34 of the docking hub 30 may be used to store information (e.g., backup firmware) on behalf of the embedded controller 22.

[0032] While the embodiments described herein are based on the CC line as Link A, it will be understood that other embodiments of the present invention may utilize different hardware configurations and / or communication protocols between the computing device 10 and the docking hub 30.

[0033] Figures 4 and 5 show flowcharts illustrating exemplary methods 400, 500 for a computing system to perform a firmware restoration process according to one or more embodiments. One or more of the processes in Figures 4 and 5 may be performed by various components of the computing system described with reference to Figures 1A to 3. Methods 400, 500 may be performed in part by one or more processors (e.g., processor 12, embedded controller 22, microcontroller 32).

[0034] Figure 4 shows a flowchart of Method 400 according to one or more embodiments of the present invention.

[0035] In 410, the computing device 10 uploads its identification information and the firmware version information of the firmware installed on the computing device 10 to the network 40. The firmware version information is associated with the identification information so that the identification information can be used to identify the corresponding firmware version information.

[0036] Identification information may include machine type model (MTM), serial number (SN) information, security keys such as embedded keys / flags / tokens, any appropriate system / device identification information, or any combination of the above.

[0037] The firmware version information may include information elements for each firmware module installed in the firmware memory 20. In one or more embodiments, each information element in the firmware version information may include the type of the corresponding firmware module and the last known valid version of the corresponding firmware module.

[0038] In one or more embodiments, identification information and firmware version information are uploaded to a cloud service included in the networking function of the operating system of the computing device 10.

[0039] In one or more embodiments, firmware version information and identification information may be uploaded directly from the computing device 10 to the network 40 (for example, via link C when the computing device 10 is operating without the docking hub 30). Alternatively, firmware version information and identification information may be uploaded by the docking hub 30 via the CC line (for example, when the computing device 10 is operating while connected to the docking hub 30).

[0040] In 420, an error is detected in the installed firmware. In one or more embodiments, the embedded controller 22 may be configured to detect errors (e.g., corruption) in the firmware memory 20. For example, the error may be detected by initial boot block verification (i.e., IBB verification), post IBB validation, detection by a watchdog timer driver (WTD), receiving errors from subcomponents of the computing device 10, any appropriate firmware verification process, or a combination of one or more processes.

[0041] In 430, a first request message containing identification information of the computing device 10 is sent from the embedded controller 22 of the computing device 10 to the docking hub 30. In one or more embodiments, firmware version information of the installed firmware, which may have errors, is also included in the first request message.

[0042] As described above, the embedded controller 22 may utilize the power supply circuit controller 18 and link A to facilitate communication between the computing device 10 and the docking hub 30.

[0043] In one or more embodiments, the first request message may be a vendor-defined message that utilizes a USB-PD (Universal Serial Bus Power Supply) communication link via the CC line forming link A.

[0044] In 440, a second request message containing identification information is sent from the docking hub 30 to the network 40. In one or more embodiments, firmware version information of the installed firmware having errors is also included in the second request message.

[0045] As described above, the embedded controller 22 may utilize the power supply circuit controller 18, CC lines, and subcomponents of the docking hub 30 (e.g., microcontroller 32, network interface 36) to facilitate communication between the computing device 10 and the network 40.

[0046] In one or more embodiments, the second request message is sent to a cloud service included in the networking functionality of the operating system of the computing device 10.

[0047] At 450, the docking hub 30 receives backup firmware corresponding to the firmware version information from the network 40. Based on the second request message, the network 40 correlates the identification information with previously uploaded firmware version information to identify and provide backup firmware corresponding to the most recent known valid installed firmware. Alternatively, if the second request message contains firmware version information for installed firmware with errors, the backup firmware corresponding to the last known valid installed firmware may be directly identified.

[0048] In one or more embodiments, the backup firmware may be downloaded to the memory 34 of the docking hub 30. Alternatively, the backup firmware may be downloaded to the memory 14 of the computing device 10, if functional.

[0049] In step 460, backup firmware is installed on the computing device 10. Using connections to one or more subcomponents of the docking hub 30 (e.g., microcontroller 32, memory 34, network interface 36) via the power circuit controller 18 / 38 and link A, the embedded controller 22 installs the backup firmware from the network 40 and restores the firmware memory 20. Since the embedded controller 22 has root-of-trust (RoT) access to the firmware memory 20 (e.g., all SPI flash areas), the chain of interaction between the computing device 10, the docking hub 30, and the network 40 is secure.

[0050] In one or more embodiments, method 400 is used in a secondary firmware recovery process (for example, after the computing device 10 fails to restore the firmware installed based on a corresponding backup version stored in the firmware memory 20). In an alternative embodiment, method 400 may also be used as the primary method for restoring the firmware memory 20.

[0051] In one or more embodiments, the method 400 may enable the removal of one or more local firmware backups in the computing device 10, thereby increasing the available resources of the computing device 10 (for example, reducing the requirements for firmware memory 20).

[0052] Figure 5 shows a flowchart of Method 500 according to one or more embodiments of the present invention.

[0053] In 510, a failure in the backup restore process is detected. As described above, in one or more embodiments, the firmware restore process via the docking hub 30 is used as a secondary firmware restore process after the computing device 10 fails to complete the primary firmware restore process. For example, the embedded controller 22 may first attempt to restore errors in the installed firmware using a corresponding backup version of the firmware module (i.e., a backup restore process) also stored in the firmware memory 20 (e.g., a local backup in the SPI flash area). The failure of the primary firmware restore process may provide additional information that can be used in method 400.

[0054] In 520, the type information of the installed firmware is identified based on the backup restore process. For example, primary firmware restore may identify the type of installed firmware that has errors in order to access the corresponding backup version in firmware memory 20.

[0055] In 530, type information is included in the first request message and the second request message. In one or more embodiments, when the first request message and the second request message include firmware version information having the type of installed firmware having an error, the backup firmware corresponding to the last known valid installed firmware can be directly identified.

[0056] One or more of the individual processes shown in the flowcharts of Figures 4 and 5 may be omitted, repeated, combined, and / or executed in an order different from that shown herein. Each process may be carried out by hardware (e.g., circuits, physical components), software (e.g., machine code, programming on non-temporary computer-readable media), or any combination thereof. Processes may be executed actively or passively. For example, some steps may be executed using polling or interrupt-driven according to one or more embodiments of the present invention. Additional processes may be executed. Therefore, the scope of the present invention should not be limited by the specific arrangements shown in Figures 4 and 5.

[0057] Embodiments of the present invention may be implemented on substantially any type of computing device 10 or docking hub 30, regardless of the platform used.

[0058] For example, computing device 10 may be one or more mobile devices (e.g., laptop computers, smartphones, personal digital assistants, tablet computers, or other mobile devices), desktop computers, servers, blades in a server chassis, or any other type of computing device or device including at least minimum processing power, memory, and input / output devices (e.g., displays) to perform one or more embodiments of the present invention. For example, computing device 10 may include one or more computer processors, associated memory (e.g., random access memory (RAM), cache memory, flash memory), one or more storage devices (e.g., hard disks, solid state drives, optical drives such as compact disc (CD) drives or digital versatile disc (DVD) drives, flash memory sticks), and a number of other elements and functions. The computer processor may be an integrated circuit for processing instructions. For example, the computer processor may be one or more cores of a processor, or microcores. Computing device 10 may also include one or more input devices, such as a camera, imager, touchscreen, keyboard, mouse, microphone, touchpad, electronic pen, or any other type of input device. Furthermore, the computing device 10 may include one or more output devices, such as a projector, a screen (e.g., an OLED display or other pixel-addressable display device), external storage, or any other output device. The one or more output devices may be the same as or different from the input devices. The computing device 10 may be connected to the network 40 via the network interface 26 and / or via the network interface 36 of the docking hub 30. The input / output devices may be connected directly or indirectly (e.g., via the docking hub 30 or the network 40) to the computer processor, memory, and storage devices.Many different types of computing devices exist, and the input and output devices described above can take other forms.

[0059] Similarly, the docking hub 30 may be one or more devices that include at least minimum processing power, memory, and input / output devices (e.g., an interface / port 31 for link A, a network interface 36 for link B with network 40) in order to carry out one or more embodiments of the present invention.

[0060] Software instructions in the form of computer-readable program code for performing embodiments of the present invention may be stored, in whole or in part, temporarily or permanently, on a non-temporary computer-readable medium such as a CD, DVD, storage device, diskette, tape, flash memory, physical memory, or any other computer-readable storage medium. Specifically, the software instructions may correspond to computer-readable program code configured to perform embodiments of the present invention when executed by a processor.

[0061] One or more embodiments of the present invention may have one or more improvements to computing devices, namely reducing inconvenience and costs (e.g., time, cost, manpower) for users, manufacturers, and service providers of computing devices; increasing available computing resources (e.g., firmware memory, ROM) by enabling remote storage of backup firmware; or reducing the minimum requirements of computing devices. These advantages further illustrate practical applications by providing additional methods for firmware recovery of computing devices.

[0062] Although this disclosure has described a limited number of embodiments, those skilled in the art who are interested in this disclosure will understand that various other embodiments can be devised without departing from the scope of the invention. Accordingly, the scope of the invention should be limited only by the appended claims. [Explanation of Symbols]

[0063] 10 Computing Devices 12 processors 14 memory 16 Graphics Processing Unit 18 Power Circuit Controller 20 Firmware Memory 22 Embedded Controllers 24 Chipset 26 Network Interfaces 28. Storage Devices 30 Docking Hubs 31 ports 32 Microcontrollers 34 memory 36 Network Interfaces 38 Power supply circuit controller 40 Networks A Communication Link A B Communication Link B C Communication Link C PCH Platform Controller Hub eSPI Expansion Serial Peripheral Interface

Claims

1. A method for operating a computing system including a computing device and a docking hub, wherein the method is The computing device uploads the identification information of the computing device and the firmware version information of the firmware installed on the computing device to the network. The steps include detecting errors in the installed firmware, If the aforementioned error is detected, the first request message including the identification information is sent from the embedded controller of the computing device to the docking hub. The steps include sending a second request message containing the aforementioned identification information from the docking hub to the network, The docking hub obtains backup firmware corresponding to the firmware version information from the network, The steps include installing the backup firmware on the computing device, method.

2. The backup firmware is downloaded to the memory of the docking hub. The backup firmware is installed from the docking hub to the computing device. The method according to claim 1.

3. A method for operating a computing system including a computing device and a docking hub, wherein the method is: The computing device uploads the identification information of the computing device and the firmware version information of the firmware installed on the computing device to the network. The steps include detecting errors in the installed firmware, The steps include sending a first request message containing the aforementioned identification information from the embedded controller of the computing device to the docking hub, The steps include sending a second request message containing the aforementioned identification information from the docking hub to the network, The docking hub obtains backup firmware corresponding to the firmware version information from the network, The steps include installing the backup firmware on the computing device, The backup firmware is downloaded to the memory of the docking hub. The backup firmware is installed from the docking hub to the computing device. The embedded controller provides the docking hub with Rotary Access (RoT) to the firmware memory of the computing device for installing the backup firmware. method.

4. The first request message and the backup firmware are transmitted using a predetermined communication protocol managed by the power supply controllers of the computing device and the docking hub, respectively. The embedded controller provides the power supply controller with the RoT access to install the backup firmware. The method according to claim 3.

5. A method for operating a computing system including a computing device and a docking hub, wherein the method is: The computing device uploads the identification information of the computing device and the firmware version information of the firmware installed on the computing device to the network. The steps include detecting errors in the installed firmware, The steps include sending a first request message containing the aforementioned identification information from the embedded controller of the computing device to the docking hub, The steps include sending a second request message containing the aforementioned identification information from the docking hub to the network, The docking hub obtains backup firmware corresponding to the firmware version information from the network, The steps include installing the backup firmware on the computing device, The backup firmware is downloaded to the memory of the docking hub. The backup firmware is installed from the docking hub to the computing device. The step of detecting the error in the installed firmware of the computing device includes the step of detecting corruption of the installed firmware and the step of detecting a failure in the backup restore process, method.

6. The process further includes identifying the type information of the installed firmware having the error, based on the backup and restore process described above. The method according to claim 5, wherein the first request message and the second request message include the type information.

7. A method for operating a computing system including a computing device and a docking hub, wherein the method is: The computing device uploads the identification information of the computing device and the firmware version information of the firmware installed on the computing device to the network. The steps include detecting errors in the installed firmware, The steps include sending a first request message containing the aforementioned identification information from the embedded controller of the computing device to the docking hub, The steps include sending a second request message containing the aforementioned identification information from the docking hub to the network, The docking hub obtains backup firmware corresponding to the firmware version information from the network, The steps include installing the backup firmware on the computing device, The backup firmware is downloaded to the memory of the docking hub. The backup firmware is installed from the docking hub to the computing device. The firmware memory of the computing device includes a serial peripheral interface flash area having a read-only memory portion corresponding to the installed firmware. method.

8. The embedded controller further includes providing the docking hub with RoT access to the read-only memory portion corresponding to the installed firmware, The method according to claim 7.

9. A non-temporary computer-readable medium (CRM) for storing computer-readable program code for operating a computing system including a computing device and a docking hub, wherein the computer-readable program code is stored in the computing system. The computing device uploads its identification information and the firmware version information of the firmware installed on the computing device to the network. To detect errors in the installed firmware, If the aforementioned error is detected, the embedded controller of the computing device will send a first request message containing the identification information to the docking hub. The docking hub transmits a second request message containing the aforementioned identification information to the network. The docking hub allows the backup firmware corresponding to the firmware version information to be obtained from the network. Install the backup firmware on the computing device. Non-temporary computer-readable media.

10. A computing device that hosts an embedded controller, A docking hub configured to communicate with the aforementioned computing device and network, A computing system comprising, The computing system is adjacent The computing device uploads its identification information and the firmware version information of the firmware installed on the computing device to the network. The system detects errors in the installed firmware, If the aforementioned error is detected, a first request message including the identification information is sent from the embedded controller of the computing device to the docking hub. A second request message containing the aforementioned identification information is transmitted from the docking hub to the network. The docking hub obtains backup firmware corresponding to the firmware version information from the network, The backup firmware is configured to be installed on the computing device. Computing system.