Service Processor Emulated Frame Buffer for Pre-Boot Display Visibility
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
During the pre-boot initialization stage of server systems, the host cannot display data on a monitor connected to the service processor, leading to confusion for users as the monitor appears blank, even though the host is booting in the background, due to the lack of access to PCI/PCIe memory space by pre-boot BIOS or host firmware.
Innovation Solution
A service processor emulates a frame buffer and determines ownership of the display controller to generate display signals based on either its own images or those from the host, allowing it to display serial data received from the host on a monitor during the pre-boot initialization stage by allocating memory space for an emulated frame buffer and switching ownership accordingly.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the host uses pre-boot BIOS or host firmware to initialize the system before booting, then the system can perform necessary platform level initialization, but the host cannot display data on a monitor connected to the service processor during this stage
Solution Approach 1:
The service processor acts as an intermediary between the host and the monitor. During pre-boot initialization, the service processor captures and displays serial data from the host on its own monitor, serving as a mediator when the host cannot directly display information. This resolves the contradiction by enabling display visibility through an intermediate device while maintaining the host's pre-boot initialization capabilities.
Solution Approach 2:
The service processor creates a copy of the host's serial data output and displays it on the monitor connected to the service processor. By copying the host's initialization data to the service processor's display output, the system maintains both the host's pre-boot functionality and provides visible feedback to users during this stage.
2Ease of operation
If the monitor is connected to the service processor during pre-boot stage, then the service processor can manage the display, but the host data is not visible on the monitor
Solution Approach 1:
The system merges the host's serial data output with the service processor's display functionality. By combining the data source (host serial output) with the display capability (service processor monitor output), the system enables monitor connectivity during pre-boot while maintaining data visibility through the service processor's display of the host's serial data.
3Adaptability or versatility
If the host routes display through the service processor in normal operation, then the service processor can manage display signals, but during pre-boot the host cannot generate display signals independently
Solution Approach 1:
The service processor is designed with multi-functionality to handle both normal operation display routing and pre-boot initialization display. During pre-boot, it assumes the role of generating and managing display signals independently, while during normal operation, it routes host display signals to the monitor. This universal capability resolves the contradiction by enabling the service processor to adapt its display signal generation role based on the system state.
Data Source
AI summary
In an aspect of the disclosure, a method, a computer-readable medium, and an apparatus are provided. The apparatus may be a service processor. The service processor emulates a frame buffer. The service processor determines whether the service processor is configured to generate display signals to be sent to a display based on images from the service processor or based on images from a host of the service processor. When the service processor is configured to generate the display signals based on the images from the service processor, the service processor generates a first image based on serial data received from the host through a serial port, writes the first image to the emulated frame buffer, and generates a first display signal to be sent to the display based on the first image from the emulated frame buffer.


