Firmware update system

US9235404B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9235404-B2
Application numberUS-201213534678-A
CountryUS
Kind codeB2
Filing dateJun 27, 2012
Priority dateJun 27, 2012
Publication dateJan 12, 2016
Grant dateJan 12, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A firmware update system is described that collectively handles firmware updates for hardware resources of a computing device. The firmware update system may be configured to handle firmware updates in a consistent manner across different computing platforms/architectures. A data structure is defined to associate each updateable resource with a corresponding identifier to enumerate the updateable resources to the firmware update system. The firmware update system may reference the data structure to produce representations of the each individual resource that provide an operating system level abstraction through which detection, analysis, acquisition, deployment, installation, and tracking of firmware updates is managed. Using the representations, the firmware update system operates to discover available firmware updates collectively for the enumerated resources, match the updates to appropriate resources, and initiate installation of the updates.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method comprising: registering one or more hardware resources associated with a platform for collective handling of firmware updates through a device management system implemented by an operating system of the platform configured to handle at least the firmware updates and device driver updates for the one or more hardware resources using a common update package format; detecting firmware update packages that are available for the one or more hardware resources that are registered, the firmware update packages including a field type identifying a type of the firmware update package that is configurable to identify a system firmware type and a device firmware type; ascertaining available firmware update packages that are applicable to the one or more hardware resources that are registered; and initiating installation of available firmware update packages that are applicable to the one or more hardware resources. 2. The computer-implemented method of claim 1 , wherein the ascertaining comprises determining whether detected firmware update packages are applicable to the platform based on identifiers associated with the detected firmware updates. 3. The computer-implemented method of claim 1 , wherein the ascertaining comprises checking version information for the available firmware update packages against currently installed versions to determine whether detected firmware update packages are applicable. 4. The computer-implemented method of claim 1 , wherein detecting the firmware update packages comprises checking for update packages when the operating system boots. 5. The computer-implemented method of claim 1 , wherein detecting the firmware update packages comprises checking for update packages periodically at run-time. 6. The computer-implemented method of claim 1 , wherein registering the one or more hardware resources comprises: referencing a resource data structure instantiated by system firmware for the platform, the resource data structure identifying hardware resources designated to use the operating system to handle firmware update packages; and creating operating system abstractions of the hardware resources identified by the resource data structure to register the hardware resources. 7. The computer-implemented method of claim 6 , wherein: the operating system abstractions are representations of the hardware resources as plug and play devices within a device management system of the operating system configured to handle driver updates for the plug and play devices; and the firmware update packages for the registered hardware devices are detected and distributed through the device management system. 8. The computer-implemented method of claim 1 , wherein: hardware resources associated with the platform are assigned with globally unique identifiers (GUIDs) used to reference and distinguish between the hardware resources; and the detecting firmware update packages comprises checking for firmware update packages that match GUIDs assigned to the one or more hardware resources that are registered. 9. A method implemented by a computing platform comprising: enumerating hardware resources of the computing platform for which updates to associated firmware are designated for handling through a firmware update system of the computing platform by accessing a data structure configured to supply identifiers assigned to hardware resources selected to employ the firmware update system for firmware updates; producing representations of the enumerated hardware resources as plug and play devices managed through device management functionality built-in to an operating system of the computing platform, the device management system configured to enable both firmware updates and device driver updates for the hardware resources, the representations as plug and play devices incorporating the identifiers; acquiring, through the device management functionality, firmware update packages that are applicable to the enumerated hardware resources of the computing platform, the firmware update packages: matched to corresponding hardware resources based on the identifiers incorporated with the representations as plug and play devices; formed in a format that is recognizable as device driver packages handled collectively with one or more other kinds of update packages including device driver updates; and including a field identifying a type of the firmware update package that is configurable to identify a system firmware type and a device firmware type; communicating the firmware update packages that are acquired for execution by system firmware of the platform to install the firmware updates, the firmware update packages targeted to corresponding hardware resources using the identifiers; and selectively managing installation of the firmware update packages based upon feedback regarding the installation that is supplied by the system firmware to facilitate control of the installation, the managing the installation including generating a new identifier assigned to at least one of the enumerated hardware resources so that at least one firmware update package matched to the at least one of the enumerated hardware resources prior to the generating the new identifier is not matched to the at least one of the enumerated hardware resources upon the generating the new identifier. 10. A method as recited in claim 9 , wherein the identifiers are globally unique identifiers (GUID) assigned by the system firmware. 11. A method as recited in claim 9 , wherein the firmware update packages are formatted as driver-style packages that the device management functionality is configured to recognize and handle. 12. A method as recited in claim 9 , wherein the identifiers comprise platform-specific identifiers that each reflect a combination of a particular hardware resource and a particular computing platform. 13. A method as recited in claim 9 , further comprising: responsive to the feedback supplied by the system firmware that indicates an error with installation of one of the firmware update package corresponding to a particular hardware resource, automatically rolling back firmware for the particular hardware resource to a last-known good firmware version. 14. A method as recited in claim 9 , further comprising: tracking versions of installed firmware for the hardware resources based on the feedback supplied by the system firmware, wherein the feedback indicates success or failure for the installation of each of the firmware update packages. 15. A method as recited in claim 9 , further comprising: responsive to the feedback supplied by the system firmware that indicates an error with installation of one of the firmware update package corresponding to a particular hardware resource, retrying installation of the firmware update package for the particular hardware resource a configurable number of times. 16. A method as recited in claim 9 , wherein selectively managing installation of the firmware update packages based upon the feedback comprises determining based on the feedback whether to halt operations, retry installation of one or more firmware updates, rollback one or more firmware updates, or continue normal operations. 17. A computing platform comprising: multiple hardware resources having updateable firmware; a resource data structure configured to indicate hardware resources of the multiple hardware resources for which updates to associated firmware are designated for handling through a firmware update system of the computing platform, the r

Assignees

Inventors

Classifications

  • G06F8/654Primary

    using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories · CPC title

  • G06F8/665Primary

    Physics · mapped topic

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9235404B2 cover?
A firmware update system is described that collectively handles firmware updates for hardware resources of a computing device. The firmware update system may be configured to handle firmware updates in a consistent manner across different computing platforms/architectures. A data structure is defined to associate each updateable resource with a corresponding identifier to enumerate the updateab…
Who is the assignee on this patent?
Cavalaris James G, Lenart Adam, Schwartz Jr James A, and 2 more
What technology area does this patent fall under?
Primary CPC classification G06F8/654. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 12 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).