Boot Routine Device Table for Hardware Detection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Newer computing devices with processor circuits not rooted in Industry Standard Architecture (ISA) no longer provide hardware components' registers and buffers at rigidly defined I/O addresses, making it difficult for operating systems to detect and configure hardware devices during boot processes, as they rely on outdated PCI configuration registers.
Innovation Solution
A boot routine that creates a device table with blocks ordered to reflect the hierarchy of buses and bridge devices, ensuring core device drivers are loaded before bridge and endpoint device drivers, and communicates this information to the operating system to facilitate proper hardware detection and configuration.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If hardware components are accessed at rigidly defined I/O addresses as per ISA specification, then operating systems can perform hardware detection, but newer processor circuits without ISA roots cannot provide registers and buffers at such fixed addresses
Solution Approach 1:
The patent introduces a boot routine as an intermediary layer between the hardware and the operating system. This boot routine creates a device table that maps hardware device information in a manner compatible with both traditional ISA-based systems and newer non-ISA processor circuits. The device table serves as a mediator that translates hardware presence information into a format that operating systems can reliably detect and configure, regardless of whether the underlying processor follows ISA architecture or not.
Solution Approach 2:
The boot routine performs preliminary actions by creating and organizing the device table before the operating system attempts to detect hardware. This advance preparation ensures that when the operating system boots, the hardware information is already structured and accessible, eliminating the need for the operating system to rely on traditional fixed I/O address methods that don't work with newer processor circuits.
2Adaptability or versatility
If operating systems rely on PCI configuration registers for hardware detection, then hardware detection can be performed, but it becomes difficult when hardware components are dynamically memory mapped rather than fixed at specific addresses
Solution Approach 1:
The patent implements dynamic adaptability by having the boot routine create device tables that can accommodate both fixed and dynamic memory mappings. The device table structure allows hardware components to be registered at their actual memory locations whether those locations are fixed or dynamically assigned. This dynamic approach enables the system to detect and configure hardware components regardless of whether they use traditional fixed addresses or modern dynamic memory mapping schemes.
3Productivity
If device drivers are loaded without considering the hierarchy of buses and bridge devices, then loading process is simple, but bridge devices may not be enabled before endpoint devices causing configuration errors
Solution Approach 1:
The boot routine performs preliminary organization of device information in the device table according to the hierarchical structure of buses and bridge devices. By pre-arranging device entries in the correct hierarchical order before the operating system loads device drivers, the system ensures that bridge devices are properly enabled and configured before endpoint devices attempt to access them. This preliminary structuring maintains loading efficiency while guaranteeing configuration correctness.
4Ease of operation
If operating systems perform their own hardware detection relying on fixed addresses, then minimal data from boot software is needed, but this approach fails when hardware addresses are no longer rigidly defined
Solution Approach 1:
The boot routine creates a device table that copies and structures hardware presence information in a standardized format. This copied and organized information allows operating systems to maintain their autonomous hardware detection capabilities while working with a consistent data structure that accommodates both traditional and modern hardware architectures. The device table serves as a portable representation of hardware information that bridges the gap between old and new system architectures.
Data Source
AI summary
Various embodiments are directed to creating multiple device blocks associated with hardware devices, arranging the device blocks in an order indicative of positions of the hardware devices in a hierarchy of buses and bridges, and enabling access to the multiple device blocks from an operating system. An apparatus comprises a processor circuit and storage storing instructions operative on the processor circuit to create a device table comprising multiple device blocks, each device block corresponding to one of multiple hardware devices accessible to the processor circuit, the device blocks arranged in an order indicative of relative positions of the hardware devices in a hierarchy of buses and at least one bridge device; enable access to the device table by an operating system; and execute a second sequence of instructions of the operating system operative on the processor circuit to access the device table. Other embodiments are described and claimed herein.


