A method and system for configuring PCIe device slot positioning information under BIOS
By establishing a mapping relationship between PCIe device slots and device paths in the BIOS editing page and storing it in NVROM, the problems of low configuration efficiency and poor universality in the existing technology are solved, and fast and flexible configuration of PCIe device slot positioning information is realized.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- INSPUR (SHANDONG) COMPUTER TECH CO LTD
- Filing Date
- 2022-07-29
- Publication Date
- 2026-04-28
AI Technical Summary
Existing methods for configuring the location information of PCIe device slots are inefficient, have poor versatility, and cannot quickly respond to changes in hardware circuitry.
The mapping relationship between PCIe device slots and device paths is determined in the BIOS editing page and stored in NVROM. After BIOS initialization, the configuration information is read to set the device path and slot number.
It improves the efficiency and flexibility of configuring PCIe device slot location information, simplifies operation, reduces reliance on professional BIOS engineers, is applicable to a variety of hardware configurations, and expands the scope of application.
Smart Images

Figure CN115291952B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of server configuration technology, and in particular to a method and system for configuring PCIe (Peripheral Component Interconnect Express) device slot location information under BIOS (Basic Input Output System). Background Technology
[0002] With the development of server technology, their functions are becoming increasingly diverse, and correspondingly, the number of PCIe devices that servers can connect to is increasing. Server motherboards will have numerous PCIe device slots. Once the motherboard hardware circuit design is complete, the connection relationship between each slot and the CPU is determined. When the hardware circuitry changes or expansion cards are added, altering the branching structure of the motherboard's slot signals, configuring the PCIe device slot positioning information to ensure the server configuration functions correctly becomes a crucial technical issue.
[0003] Currently, configuring PCIe device slot location information typically requires BIOS engineers to recalculate the changes in Device Path caused by variations in the branch structure of the motherboard hardware circuit slot signals, obtain a statistical table, hardcode the Device Path for each slot in the BIOS code, modify the original code structure, recompile the code, and release a new version to adapt to the changed device paths. Furthermore, the Device Path varies depending on the project.
[0004] However, current methods for configuring PCIe device slot location information are inefficient because the Device Path for each slot is hardcoded in the BIOS. This necessitates significant code modifications when hardware circuitry changes occur. Furthermore, each different project requires checking and hardcoding the Device Path separately based on its motherboard circuitry, resulting in poor versatility and slow response times to hardware circuitry changes, further complicating the configuration process. Summary of the Invention
[0005] This application provides a method and system for configuring PCIe device slot location information under BIOS, in order to solve the problem of low configuration efficiency in the existing methods for configuring PCIe device slot location information.
[0006] To address the aforementioned technical problems, the embodiments of this application disclose the following technical solutions:
[0007] A method for configuring PCIe device slot location information under BIOS, the method comprising:
[0008] Multiple PCIe devices are used to fill all the PCIE device slots on the server motherboard;
[0009] Enter the BIOS editing page, which includes a list of device paths for multiple PCIe devices;
[0010] Based on the connection status of the multiple PCIe devices, determine the mapping relationship between the PCIe device slots and the device paths, and configure the mapping relationship in the BIOS editing page;
[0011] The mapping relationship and configuration information are stored in the BIOS's NVROM (non-volatile memory);
[0012] After BIOS initialization, it reads the configuration information in the NVROM and sets the device path and PCIe device slot number accordingly.
[0013] Optionally, entering the BIOS editing page specifically refers to:
[0014] Use the hotkey to enter the BIOS SETUP interface.
[0015] Optionally, based on the connection status of the multiple PCIe devices, a mapping relationship between PCIe device slots and device paths is determined, and the mapping relationship is configured in the BIOS editing page, including:
[0016] Determine the first correspondence, which is: the correspondence between PCIe devices and PCIE device slots on the server motherboard;
[0017] Based on the device path displayed in the BIOS editing page, a second correspondence is determined, which is the correspondence between the device path and the PCIe device on the server motherboard.
[0018] Based on the first and second correspondences, establish a mapping relationship between PCIe device slots and device paths;
[0019] On the BIOS editing page, according to the mapping relationship, enter the corresponding PCIe device slot number on the server motherboard after the device path of each PCIe device.
[0020] Optionally, the method of determining the mapping relationship between PCIe device slots and device paths based on the insertion status of multiple PCIe devices, and configuring the mapping relationship in the BIOS editing page, further includes:
[0021] Determine whether the mapping relationship covers all device paths on the current server motherboard and PCIe devices on the server motherboard;
[0022] If so, proceed to the next step;
[0023] If not, reuse multiple PCIe devices to fill all the PCIE device slots on the server motherboard until the mapping covers all device paths and PCIe devices on the current server motherboard.
[0024] Optionally, storing the mapping relationship and configuration information in the BIOS's NVROM includes:
[0025] The mapping relationship is stored in the BIOS's NVROM;
[0026] After configuring the mapping relationship on the BIOS editing page, configuration information is generated.
[0027] The configuration information is stored in the BIOS's NVROM;
[0028] Change the configuration information to position 1.
[0029] Optionally, after BIOS initialization, the method of reading configuration information from the NVROM and setting the device path and PCIe device slot number according to the configuration information includes:
[0030] After BIOS initialization, it reads the configuration information modification flags from the NVROM;
[0031] If the modified flag is 0, the configuration information in the NVROM will not be read;
[0032] If the modified flag is 1, then read the configuration information from the NVROM;
[0033] After reading the configuration information from the NVROM, the PCIe device slot number and the device path location relationship variables are written into the pre-set blank variables according to the configuration information in the NVROM.
[0034] Run the location relationship variables and send device information to the BMC according to the mapping relationship;
[0035] Change the configuration information to flag 0 to generate a new BIOS version.
[0036] A system for configuring PCIe device slot location information under BIOS, the system comprising: multiple PCIe devices, PCIe device slots, a BIOS editing module, a mapping relationship determination module, a storage module, and a configuration module, wherein the multiple PCIe devices are fully inserted into the PCIe device slots of the server motherboard;
[0037] The BIOS editing module is used to enter the BIOS editing page, which includes a list of device paths for multiple PCIe devices.
[0038] The mapping relationship determination module is used to determine the mapping relationship between the PCIe device slot and the device path based on the insertion status of the multiple PCIe devices, and configure the mapping relationship on the BIOS editing page;
[0039] The storage module is used to store the mapping relationship and configuration information into the NVROM of the BIOS;
[0040] The configuration module is used to read the configuration information in the NVROM after BIOS initialization, and set the device path and PCIe device slot number according to the configuration information.
[0041] Optionally, the mapping relationship determination module includes:
[0042] The first correspondence determination unit is used to determine the first correspondence, which is: the correspondence between PCIe devices and PCIE device slots on the server motherboard;
[0043] The second correspondence determination unit is used to determine a second correspondence based on the device path displayed in the BIOS editing page. The second correspondence is the correspondence between the device path and the PCIe device on the server motherboard.
[0044] The mapping relationship establishment unit is used to establish a mapping relationship between PCIe device slots and device paths based on the first correspondence relationship and the second correspondence relationship;
[0045] The editing unit is used to enter the number of the PCIE device slot on the corresponding server motherboard after the device path of each PCIe device on the BIOS editing page, according to the mapping relationship.
[0046] Optionally, the mapping relationship determination module further includes: a verification unit, used to determine whether the mapping relationship covers all device paths on the current server motherboard and PCIe devices on the server motherboard. If yes, continue to the next step; if no, reuse multiple PCIe devices to fully fill the PCIE device slots on the server motherboard and start the BIOS editing module until the mapping relationship covers all device paths on the current server motherboard and PCIe devices on the server motherboard.
[0047] Optionally, the configuration module includes:
[0048] The first read unit is used to read the configuration information modification flag bit in the NVROM after BIOS initialization;
[0049] The second reading unit is used to not read the configuration information in the NVROM when the modification flag bit is 0, and to read the configuration information in the NVROM when the modification flag bit is 1.
[0050] The write unit is used to read the configuration information in the NVROM and write the PCIe device slot number and the device path location relationship variable into a pre-set blank variable according to the configuration information in the NVROM.
[0051] The running unit is used to run the positioning relationship variables and send device information to the BMC according to the mapping relationship;
[0052] The flag update unit is used to set the configuration information change flag to 0 and generate a new BIOS version.
[0053] The technical solutions provided by the embodiments of this application may include the following beneficial effects:
[0054] This application provides a method for configuring PCIe device slot location information under BIOS. The method first utilizes multiple PCIe devices fully inserted into the PCIe slots of a server motherboard; then, it enters the BIOS editing page, and determines the mapping relationship between the PCIe device slots and device paths based on the insertion status of the multiple PCIe devices, configuring the mapping relationship on the BIOS editing page; then, the mapping relationship and configuration information are stored in the BIOS NVROM; after BIOS initialization, the configuration information in the NVROM is read, and the device paths and PCIe device slot numbers are set accordingly, thereby realizing the configuration of PCIe device slot location information under BIOS. This embodiment allows users to easily modify the mapping relationship between PCIe device slots and device paths simply by entering the BIOS editing page and establishing the mapping relationship between PCIe device slots and device paths, which is very convenient and quick, greatly improving the configuration efficiency of PCIe device slot location information. Furthermore, since this embodiment allows modification of Device Path information and Slots on the BIOS editing page, compared to the existing method of hardcoding the Device Path for each slot in the BIOS code, it is more flexible and conducive to further improving configuration efficiency. Furthermore, this method is simple and convenient, requiring no professional BIOS engineers to compile code, which facilitates the promotion of this slot positioning method. Moreover, the method in this embodiment only completes the customization settings at the BIOS stage, without needing to enter the system, and is not limited by the operating system. It can be directly applied to the entire logical server and PC projects, and can also include different hard drive configurations within the same project, making it widely applicable and easy to promote.
[0055] This application also provides a system for configuring PCIe device slot location information under BIOS. This system mainly includes: multiple PCIe devices, PCIe device slots, a BIOS editing module, a mapping relationship determination module, a storage module, and a configuration module. Multiple PCIe devices are fully inserted into the PCIe device slots of the server motherboard. Through the settings of the BIOS editing module and the mapping relationship determination module, when hardware circuitry changes or expansion cards are added, causing changes in the branch structure of the motherboard hardware circuit slot signals, users can easily modify the correspondence between PCIe device slots and device paths by setting them on the editing page. This is very convenient and quick, greatly improving the configuration efficiency of PCIe device slot location information. Furthermore, due to the settings of the BIOS editing module, this embodiment allows modification of Device Path information and slots on the BIOS editing page. Compared to the existing method of hardcoding the Device Path for each slot in the BIOS code, this method is more universal and flexible, further improving configuration efficiency.
[0056] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and do not limit this application. Attached Figure Description
[0057] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.
[0058] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0059] Figure 1 This is a flowchart illustrating a method for configuring PCIe device slot location information under BIOS, as provided in an embodiment of this application.
[0060] Figure 2 This is a schematic diagram of a system for configuring PCIe device slot location information under BIOS, provided in an embodiment of this application. Detailed Implementation
[0061] To enable those skilled in the art to better understand the technical solutions in this application, the technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments in this application, all other embodiments obtained by those of ordinary skill in the art without creative effort should fall within the scope of protection of this application.
[0062] To better understand this application, the embodiments of this application will be explained in detail below with reference to the accompanying drawings.
[0063] Example 1
[0064] See Figure 1 , Figure 1 This is a flowchart illustrating a method for configuring PCIe device slot location information in BIOS, as provided in an embodiment of this application. Figure 1 As can be seen, the method for configuring PCIe device slot location information under BIOS in this embodiment mainly includes the following process:
[0065] S1: Utilize multiple PCIe devices to fully fill the PCIE device slots on the server motherboard.
[0066] This means filling all the slots on the server motherboard with multiple PCIe devices. A PCIe device slot is simply a slot. Filling all slots with devices covers all current slots and device paths, which helps improve the accuracy of the configuration results.
[0067] S2: Enter the BIOS editing page, which includes a list of device paths for multiple PCIe devices.
[0068] In this embodiment, after powering on, the BIOS SETUP interface is accessed via a hotkey. By entering a pre-set hotkey, relevant editing options can be accessed, further improving editing efficiency and thus enhancing the configuration efficiency of PCIe device slot positioning information. Furthermore, in this embodiment, the options for accessing the relevant editing interface are hidden options, which are revealed via hotkeys. Only those who know the corresponding hotkey under BIOS SETUP can operate on these hidden options, providing protection against accidental operation by unauthorized personnel and improving data security.
[0069] The BIOS editing page in this embodiment can display a list of Device Paths for all PCIe devices, and each Device Path can be entered with a corresponding Slot number. Furthermore, the "Other Options" can be used to add the mapping between Device Paths and Slot numbers for other expansion cards configured in this project. The BIOS can adjust the condition values and variables previously set in the BIOS code based on the configuration, thereby achieving code adjustability.
[0070] The BIOS SETUP interface allows staff to intuitively and clearly configure slot information. Server motherboards for the same project can be configured, saved, and set up in one go, which greatly improves the configuration efficiency of PCIe device slot location information.
[0071] See also Figure 1 As can be seen, after entering the BIOS editing interface, step S3 is executed: based on the connection status of multiple PCIe devices, the mapping relationship between PCIe device slots and device paths is determined, and the mapping relationship is configured on the BIOS editing page.
[0072] Specifically, step S3 includes the following process:
[0073] S31: Determine the first correspondence, which is the correspondence between PCIe devices and PCIE device slots on the server motherboard.
[0074] S32: Determine the second correspondence based on the device path displayed in the BIOS editing page. The second correspondence is the correspondence between the device path and the PCIe device on the server motherboard.
[0075] S33: Based on the first and second correspondences, establish the mapping relationship between the PCIe device slot and the device path.
[0076] In this embodiment, step S33 pre-configures the relationship function between the PCIe device slot and the device path in the BIOS code.
[0077] S34: On the BIOS editing page, according to the mapping relationship, enter the corresponding PCIe device slot number on the server motherboard after the device path of each PCIe device.
[0078] As can be seen from the above steps S31-S34, after entering the BIOS editing page, first check the correspondence between PCIe devices and slots on the server motherboard, then check the Device Path displayed in BIOS STEPUP and match it with the actual PCIe devices. Then, on the editing page, enter the corresponding Slot number on the server motherboard after the Device Path for each PCIe device and save.
[0079] Furthermore, in this embodiment, step S3 also includes the following process:
[0080] S35: Determine if the mapping relationship covers all device paths and PCIe devices on the current server motherboard. If the mapping relationship covers all device paths and PCIe devices on the current server motherboard, continue to step S4. If the mapping relationship does not cover all device paths and PCIe devices on the current server motherboard, it indicates that an expansion card has changed the device path. In this case, execute step S37: Reuse multiple PCIe devices to fully fill the PCIe device slots on the server motherboard until the mapping relationship covers all device paths and PCIe devices on the current server motherboard. That is, re-execute steps S1 and S2: power off, modify the device configuration, and fully fill the PCIe devices. In the edit page, select temporary configuration. The BIOS can save the previous configuration until the mapping relationship covers all device paths and PCIe devices on the current server motherboard.
[0081] Because server projects involve numerous configurations with various expansion card models, each with different signal allocation methods—some are three-layered with three slots, others are two-layered with two slots, or some don't connect at all—this affects the number of slots and the device path configuration. In light of this, this embodiment, through steps S35-S37, allows the BIOS to perform conditional filtering based on BMC signals and adapt the slot and device path relationships to different scenarios. This achieves full coverage of different hardware configurations within a project, improving the accuracy and efficiency of PCIe device slot location information configuration.
[0082] See also Figure 1 It is understood that after determining the mapping relationship between the PCIe device slot and the device path, and configuring the mapping relationship in the BIOS editing page, step S4 is executed: storing the mapping relationship and configuration information in the BIOS NVROM. That is, the BIOS stores the edited relevant option values and contents in the BIOS NVROM. Specifically, step S4 includes the following process:
[0083] S41: Store the mapping relationship in the BIOS NVROM.
[0084] S42: Generate configuration information after configuring the mapping relationship in the BIOS editing page.
[0085] S43: Store the configuration information in the BIOS NVROM.
[0086] S44: Modify the configuration information flag position 1.
[0087] A setting of 1 to the change flag indicates that the configuration information has been modified, while a setting of 0 indicates that it has not been modified.
[0088] S5: After BIOS initialization, read the configuration information in NVROM and set the device path and PCIe device slot number according to the configuration information.
[0089] Specifically, step S5 includes the following process:
[0090] S51: After BIOS initialization, read the configuration information modification flags in NVROM.
[0091] S52: If the change flag is 0, the configuration information in the NVROM will not be read.
[0092] If this is the first time setting the PCIe device slot number and device path location relationship variables, the variables in the BIOS are blank. There is no need to read the configuration information in the NVROM. The slot information and device path have no corresponding relationship. At this time, the BIOS does not send PCIe device slot location information to the BMC.
[0093] S53: If the change flag is set to 1, read the configuration information from the NVROM.
[0094] If the change flag is set to 1, it indicates that the PCIE device slot number and device path location relationship variable are not being set for the first time, and that the location relationship variable has changed. In this case, step S53 is executed.
[0095] S54: After reading the configuration information in the NVROM, write the PCIe device slot number and the device path location relationship variables into the pre-set blank variables according to the configuration information in the NVROM.
[0096] On the first startup, if the Device Path is not configured, it will be an empty variable by default. After step S53 is successfully set, it means that the Device Path has been configured. At this point, the variable is a synchronous configuration and the empty variable is overwritten.
[0097] S55: Run the location relationship variables and send device information to the BMC according to the mapping relationship.
[0098] S56: Change the configuration information modification flag to 0 to generate a new BIOS version.
[0099] As shown in steps S51-S56 above, when the BIOS restarts, it first reads the configuration information modification flag. If the flag is 0, the configuration information in the NVROM is not read; if it is 1, the configuration information in the NVROM is read. After reading the information in the NVROM, the BIOS rewrites the configuration values according to the content. The BIOS reserves the Slot variable and Device Path for positioning information in advance. After the user completes the corresponding relationship settings, the BIOS synchronizes the corresponding Device Path value according to the user settings and performs related operations with the Slot variable set by the user. The BIOS code continues to run, performing logical operations according to the corresponding configuration values, mapping the Slot and Device Path one by one and applying it to the display information. When the BIOS sends device information to the BMC in the server project, it sends the device and Slot number synchronously to ensure the correct display of BMC Web device information. When the BIOS writes Smbios information, it also displays the device information of each Slot according to the relationship between Device Path and Slot. After configuring all the relevant editing content, the configuration information modification flag is set to 0. The project BIOS version can be generated and applied, so there is no need to read the configuration repeatedly during subsequent BIOS startups.
[0100] Example 2
[0101] exist Figure 1 Based on the illustrated embodiment, see also Figure 2 , Figure 2 This is a schematic diagram of a system for configuring PCIe device slot location information under BIOS, provided in an embodiment of this application.
[0102] Depend on Figure 2 As can be seen, the system for configuring PCIe device slot positioning information under BIOS provided in this application embodiment includes: multiple PCIe devices, PCIe device slots, BIOS editing module, mapping relationship determination module, storage module, configuration module, and multiple PCIe devices are fully inserted into the PCIE device slots of the server motherboard;
[0103] The BIOS editing module is used to enter the BIOS editing page, which includes a list of device paths for multiple PCIe devices.
[0104] The mapping relationship determination module is used to determine the mapping relationship between PCIe device slots and device paths based on the insertion status of multiple PCIe devices, and to configure the mapping relationship in the BIOS editing page;
[0105] The storage module is used to store the mapping relationship and configuration information in the BIOS's NVROM;
[0106] The configuration module is used to read the configuration information in the NVROM after BIOS initialization and set the device path and PCIe device slot number accordingly.
[0107] The mapping relationship determination module includes: a first mapping relationship determination unit, a second mapping relationship determination unit, a mapping relationship establishment unit, and an editing unit. The first mapping relationship determination unit determines a first mapping relationship, which is the correspondence between PCIe devices and PCIe device slots on the server motherboard. The second mapping relationship determination unit determines a second mapping relationship based on the device paths displayed in the BIOS editing page, which is the correspondence between device paths and PCIe devices on the server motherboard. The mapping relationship establishment unit establishes a mapping relationship between PCIe device slots and device paths based on the first and second mapping relationships. The editing unit, on the BIOS editing page, enters the corresponding PCIe device slot number on the server motherboard after the device path of each PCIe device, according to the mapping relationship.
[0108] Furthermore, the mapping relationship determination module also includes: a verification unit, used to determine whether the mapping relationship covers all device paths on the current server motherboard and PCIe devices on the server motherboard. If yes, continue to the next step; if no, reuse multiple PCIe devices to fully fill the PCIE device slots on the server motherboard and start the BIOS editing module until the mapping relationship covers all device paths on the current server motherboard and PCIe devices on the server motherboard.
[0109] The configuration module includes: a first reading unit, a second reading unit, a writing unit, a running unit, and a modification flag update unit. Specifically, the first reading unit reads the modification flag of the configuration information in the NVROM after BIOS initialization; the second reading unit does not read the configuration information in the NVROM when the modification flag is 0, and reads the configuration information in the NVROM when the modification flag is 1; the writing unit, after reading the configuration information in the NVROM, writes the PCIe device slot number and device path location relationship variables into a pre-defined blank variable according to the configuration information in the NVROM; the running unit runs the location relationship variables and sends device information to the BMC according to the mapping relationship; and the modification flag update unit sets the configuration information modification flag to 0, generating a new BIOS version.
[0110] This embodiment describes the working principle and method of a system that configures PCIe device slot location information under BIOS. Figure 1 The embodiments shown have been described in detail, and the two embodiments can be referred to each other, so they will not be repeated here.
[0111] The above description is merely a specific embodiment of this application, enabling those skilled in the art to understand or implement this application. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of this application. Therefore, this application is not to be limited to the embodiments shown herein, but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
Claims
1. A method for configuring PCIe device slot location information under BIOS, characterized in that, The method includes: Multiple PCIe devices are used to fill all the PCIE device slots on the server motherboard; Enter the BIOS editing page, which includes a list of device paths for multiple PCIe devices; Based on the connection status of multiple PCIe devices, determine the mapping relationship between PCIe device slots and device paths, and configure the mapping relationship on the BIOS editing page; specifically, this includes: determining a first correspondence, which is the correspondence between PCIe devices on the server motherboard and PCIe device slots; determining a second correspondence based on the device paths displayed on the BIOS editing page, which is the correspondence between the device paths and PCIe devices on the server motherboard; establishing a mapping relationship between PCIe device slots and device paths based on the first and second correspondences; and on the BIOS editing page, entering the corresponding PCIe device slot number on the server motherboard after the device path of each PCIe device, according to the mapping relationship. The mapping relationship and configuration information are stored in the NVROM of the BIOS; specifically, this includes: storing the mapping relationship in the NVROM of the BIOS; generating configuration information after configuring the mapping relationship on the BIOS editing page; storing the configuration information in the NVROM of the BIOS; and setting the configuration information modification flag to 1. After BIOS initialization, the configuration information in the NVROM is read, and the device path and PCIe device slot number are set according to the configuration information. Specifically, this includes: after BIOS initialization, reading the modification flag bit of the configuration information in the NVROM; if the modification flag bit is 0, the configuration information in the NVROM is not read; if the modification flag bit is 1, the configuration information in the NVROM is read; after reading the configuration information in the NVROM, the positioning relationship variables of the PCIe device slot number and device path are written into a pre-set blank variable according to the configuration information in the NVROM; the positioning relationship variable is executed, and the device information is sent to the BMC according to the mapping relationship; the configuration information modification flag bit is set to 0, and a new BIOS version is generated.
2. The method for configuring PCIe device slot positioning information under BIOS according to claim 1, characterized in that, Entering the BIOS editing page specifically involves: Use the hotkey to enter the BIOS SETUP interface.
3. The method for configuring PCIe device slot positioning information under BIOS according to claim 1, characterized in that, The method for determining the mapping relationship between PCIe device slots and device paths based on the connection status of multiple PCIe devices, and configuring the mapping relationship in the BIOS editing page, further includes: Determine whether the mapping relationship covers all device paths on the current server motherboard and PCIe devices on the server motherboard; If so, proceed to the next step; If not, reuse multiple PCIe devices to fill all the PCIE device slots on the server motherboard until the mapping covers all device paths and PCIe devices on the current server motherboard.
4. A system for configuring PCIe device slot location information under BIOS, characterized in that, The system includes: multiple PCIe devices, PCIe device slots, a BIOS editing module, a mapping relationship determination module, a storage module, and a configuration module. The multiple PCIe devices are fully inserted into the PCIe device slots of the server motherboard. The BIOS editing module is used to enter the BIOS editing page, which includes a list of device paths for multiple PCIe devices. The mapping relationship determination module is used to determine the mapping relationship between the PCIe device slot and the device path based on the insertion status of the multiple PCIe devices, and configure the mapping relationship on the BIOS editing page; The storage module is used to store the mapping relationship and configuration information into the NVROM of the BIOS; specifically, it includes: storing the mapping relationship into the NVROM of the BIOS; generating configuration information after configuring the mapping relationship on the BIOS editing page; storing the configuration information into the NVROM of the BIOS; and setting the configuration information modification flag to 1. The configuration module is used to read the configuration information in the NVROM after BIOS initialization, and set the device path and PCIe device slot number according to the configuration information. The mapping relationship determination module includes: The first correspondence determination unit is used to determine the first correspondence, which is: the correspondence between PCIe devices and PCIE device slots on the server motherboard; The second correspondence determination unit is used to determine a second correspondence based on the device path displayed in the BIOS editing page. The second correspondence is the correspondence between the device path and the PCIe device on the server motherboard. The mapping relationship establishment unit is used to establish a mapping relationship between PCIe device slots and device paths based on the first correspondence relationship and the second correspondence relationship; The editing unit is used to input the number of the corresponding PCIE device slot on the server motherboard after the device path of each PCIe device on the BIOS editing page, according to the mapping relationship. The configuration module includes: The first read unit is used to read the configuration information modification flag bit in the NVROM after BIOS initialization; The second reading unit is used to not read the configuration information in the NVROM when the modification flag bit is 0, and to read the configuration information in the NVROM when the modification flag bit is 1. The write unit is used to read the configuration information in the NVROM and write the PCIe device slot number and the device path location relationship variable into a pre-set blank variable according to the configuration information in the NVROM. The running unit is used to run the positioning relationship variables and send device information to the BMC according to the mapping relationship; The flag update unit is used to set the configuration information change flag to 0 and generate a new BIOS version.
5. A system for configuring PCIe device slot positioning information under BIOS according to claim 4, characterized in that, The mapping relationship determination module further includes: a verification unit, used to determine whether the mapping relationship covers all device paths on the current server motherboard and PCIe devices on the server motherboard. If yes, continue to the next step; if no, reuse multiple PCIe devices to fully fill the PCIE device slots on the server motherboard and start the BIOS editing module until the mapping relationship covers all device paths on the current server motherboard and PCIe devices on the server motherboard.
Citation Information
Patent Citations
PCIE screen printing information updating method and device in BIOS setup, controlled terminal and storage medium
CN109933376A
Server system configuration switching device and multi-configuration server
CN212515790U