Unified BIOS POST Code Transmission via Emulated USB HID

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current technologies lack a unified method for sending BIOS Power On Self Test (POST) codes to Baseboard Management Controllers (BMCs) across various host architectures, as BMCs in non-INTEL X86 systems do not utilize IO ports and each architecture has its own method, leading to a need for a standard interface.

Innovation Solution

Implementing a method where a host uses a USB HID control pipe to send POST codes to a BMC, allowing BIOSes or bootloaders to load USB drivers for HID devices, enabling BMCs to connect via USB and receive POST codes through a standard interface available across all architectures.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If IO port method is used to send POST codes to BMC, then INTEL X86 systems can send POST codes, but non-INTEL X86 architectures cannot send POST codes because they do not provide IO ports

Engineering Contradiction:
Improvecompatibility across host architecturesVSAvoidarchitecture-specific implementation methods
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent applies universality by making the BMC emulate multiple USB device types (HID device, CDC device, and storage device) through a single USB controller. This allows the BMC to interact with different host architectures through a common USB interface, resolving the contradiction between architecture-specific IO port methods and universal compatibility. The BMC can present itself as different device types depending on the host's capabilities, enabling POST code transmission across diverse architectures without requiring architecture-specific implementations.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Adaptability or versatility

If each host architecture implements its own method to send POST codes to BMC, then each architecture can send POST codes, but there is no unified standard interface available across all host architectures

Engineering Contradiction:
Improveunified standard interfaceVSAvoidimplementation complexity
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The patent introduces USB as an intermediary interface between the host and BMC. The BMC emulates USB devices that are universally supported across all host architectures, converting architecture-specific POST code sending requirements into a unified USB-based communication protocol. This intermediary approach provides a standardized interface while maintaining compatibility with various host architectures, eliminating the need for each architecture to implement its own unique method.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If BMC emulates USB storage device to receive firmware image, then firmware can be updated, but additional USB device emulation is required increasing system complexity

Engineering Contradiction:
Improvefirmware update capabilityVSAvoidnumber of emulated USB devices
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent applies multi-functionality by enabling the BMC to emulate multiple USB device types (HID, CDC, and storage devices) through a single USB controller. This allows the BMC to perform multiple functions including POST code reception, firmware updates, and management communications without requiring separate physical interfaces or significantly increasing system complexity. The single USB controller handles all device emulations, making the system versatile while maintaining operational simplicity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS10417006B2Unified method to send BIOS post codes to BMC
Publication Date: 2019.09.17 AMERICAN MEGATRENDS
  • US10417006B2 patent drawing
  • US10417006B2 patent drawing
  • US10417006B2 patent drawing

AI summary

In an aspect of the disclosure, a method, a computer-readable medium, and an apparatus are provided. The apparatus may be an embedded-system device. The embedded-system device emulates a USB device. The embedded-system device exposes the emulated USB device to a host of the embedded-system device through a USB connection. The embedded-system device receives data from BIOS of the host through the emulated USB device.