IP Library Granted Patent US 12694118
Granted Patent B2
US 12694118 · App. 18/619,546 · Granted Jul 28, 2026

Operating system discovery of, and interaction with, firmware framework devices

Inventors: Daniel L. Hamlin (Round Rock, TX); Gokul Thiruchengode Vajravel (Bangalore, IN)
Assignee: Dell Products L.P.
G06F21/572
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12694118
App. No.
18/619,546
Granted
Jul 28, 2026
Kind
B2
Abstract

Systems and methods for Operating System (OS) discovery of, and interaction with, firmware framework devices. In some embodiments, an Information Handling System (IHS) may include one or more processors; a memory coupled to the one or more processors, where the memory includes program instructions that, upon execution by the one or more processors, cause the one or more processors to instantiate an OS; a controller, where the controller includes firmware that, upon execution by a processing core, causes the processing core to instantiate an orchestrator; and a plurality of devices coupled to the controller, where each device includes firmware that, upon execution by a corresponding processing core, causes the corresponding processing core to instantiate a node, where the nodes are configured to communicate with the orchestrator within a firmware framework without any involvement by the OS, and where the nodes and orchestrator are further configured to communicate with the OS.

Claims (54)

1 . An Information Handling System (IHS), comprising:

one or more processors;

a memory coupled to the one or more processors, wherein the memory comprises program instructions stored thereon that, upon execution by the one or more processors, cause the one or more processors to instantiate an Operating System (OS);

a controller, wherein the controller comprises firmware that, upon execution by a processing core, causes the processing core to instantiate an orchestrator; and

a plurality of devices coupled to the controller, wherein each device comprises firmware that, upon execution by a corresponding processing core, causes the corresponding processing core to instantiate a node corresponding to the device,

wherein the nodes are configured to communicate with the orchestrator within a firmware framework without any involvement by the OS, and wherein the nodes and orchestrator are further configured to communicate with the OS, and wherein the orchestrator is configured to:

identify the plurality of nodes corresponding to the plurality of devices;

collect, independently of the OS, a node manifest from each of the identified nodes, wherein each node manifest describes capabilities of the corresponding device;

based on the collected node manifests, produce a firmware platform manifest; and

provide information from the firmware platform manifest to a host application of the OS.

2 . The IHS of claim 1 , wherein the controller comprises an Embedded Controller (EC) or Baseband Management Controller (BMC).

3 . The IHS of claim 1 , wherein the plurality of devices comprises at least one of: a sensor, a sensor hub, a Central Processing Unit (CPU), a Graphical Processing Unit (GPU), an audio Digital Signal Processor (aDSP), a Neural Processing Unit (NPU), a Tensor Processing Unit (TSU), a Neural Network Processor (NNP), an Intelligence Processing Unit (IPU), an Image Signal Processor (ISP), or a Video Processing Unit (VPU), a camera controller, an audio controller, a memory, a Universal Serial Bus (USB) device, a Peripheral Component Interconnect express (PCIe) device, or a Trusted Platform Module (TPM).

4 . The IHS of claim 1 , wherein at least one of the plurality of devices is coupled to the controller via at least one of: a Systems-on-Chip (SoC) interconnect, a Peripheral Component Interconnect Express (PCIe) bus, or a Universal Serial Bus (USB) port.

5 . The IHS of claim 4 , wherein the SoC interconnect comprises at least one of: an Advanced Microcontroller Bus Architecture (AMBA) bus, a QuickPath Interconnect (QPI) bus, or a HyperTransport (HT) bus.

6 . The IHS of claim 1 , wherein at least one of the plurality of devices or the controller is coupled to the one or more processors via at least one of: a Systems-on-Chip (SoC) interconnect, a Peripheral Component Interconnect Express (PCIe) bus, or a Universal Serial Bus (USB) port.

7 . The IHS of claim 1 , wherein the orchestrator or at least one of the plurality of nodes is configured to communicate with the OS via two or more distinct communication protocols.

8 . The IHS of claim 1 , wherein the orchestrator is configured to provide the information from the firmware platform manifest to the host application of the OS via one or more orchestration services selected from the group consisting of: an OS discovery service, and an OS communication service.

9 . The IHS of claim 8 , wherein the OS discovery service is configured at least in part by a policy to receive, from the orchestrator or the given node, an identification of at least one of: a given device corresponding to the given node, the controller corresponding to the orchestrator, a distance or latency of the given node from the orchestrator, a capability of the orchestrator or the given node, or a firmware version of the orchestrator or the given node.

10 . The IHS of claim 8 , wherein the OS discovery service is configured at least in part by a policy to receive, from the orchestrator or the given node, an identification of at least one of: (i) one or more capabilities of the orchestrator or the given node; and (ii) one or more interfaces usable to access the one or more capabilities.

11 . The IHS of claim 8 , wherein the OS discovery service is configured at least in part by a policy to:

ascertain a topology of the plurality of nodes, or of the orchestrator and the plurality of nodes; and

communicate the topology to the OS.

12 . The IHS of claim 11 , wherein the topology comprises at least one parent node coupled to at least one child node.

13 . The IHS of claim 8 , wherein the OS communication service is configured at least in part by a policy to:

receive a command from the OS; and

provide for the execution of the command from the OS.

14 . The IHS of claim 13 , wherein to provide for the execution of the command from the OS, the OS communication service is further configured to distribute the command to a different node.

15 . A method, comprising:

producing, via a controller within an Information Handling System (IHS), an orchestrator of a firmware framework;

producing, via a plurality of devices coupled to the controller, a plurality of corresponding nodes, wherein each node is configured to communicate with the orchestrator;

enabling the orchestrator to:

identify the plurality of nodes corresponding to the plurality of devices;

collect, independently of an Operating System (OS) of the IHS, a node manifest from each of the identified nodes, wherein each node manifest describes capabilities of the corresponding device;

based on the collected node manifests, produce a firmware platform manifest; and

provide information from the firmware platform manifest to a host application of the OS.

16 . The method of claim 15 , further comprising:

coupling a child device within the plurality of devices to a parent device within the plurality of devices;

in response to the coupling, producing, via the child device, a child node with respect to a parent node produced by the parent device in the firmware framework; and

enabling, at least in part by the orchestrator, the OS to invoke a capability of the child node.

17 . The method of claim 16 , further comprising:

decoupling the child device from the parent device; and

in response to the decoupling, removing the child node from the firmware framework.

18 . A computer-readable storage device having instructions stored thereon that cause an Information Handling System (IHS), in response to execution of the instructions, to perform operations comprising:

producing, via a controller within the IHS, an orchestrator of a firmware framework;

producing, via a plurality of devices coupled to the controller, a plurality of corresponding nodes, wherein each node is configured to communicate with the orchestrator;

enabling the orchestrator to:

identify the plurality of nodes corresponding to the plurality of devices;

collect, independently of an Operating System (OS) of the IHS, a node manifest from each of the identified nodes, wherein each node manifest describes capabilities of the corresponding device;

based on the collected node manifests, produce a firmware platform manifest; and

provide information from the firmware platform manifest to a host application of the OS.

19 . The computer-readable storage device of claim 18 , wherein the operations further comprise:

coupling a child device within the plurality of devices to a parent device within the plurality of devices;

in response to the coupling, producing, via the child device, a child node with respect to a parent node produced by the parent device in the firmware framework; and

enabling, at least in part by the orchestrator, the OS to invoke a capability of the child node.