Set SOL Configuration Parameters 命令详情
更新时间:2025/06/26
在Gitcode上查看源码修订记录
| openUBMC版本号 | 修订日期 | 修订人 | 修订内容 |
|---|---|---|---|
| 25.06 | 2025/06/26 | pengqiang-gs | 初稿,新增命令详情 |
基本信息
功能说明
标准命令,设置 SOL 功能需要的网络配置。 This command is used for setting parameters such as the network addressing information required for SOL payload operation.
权限
BasicSetting
命令信息
请求信息
| 字节顺序 | 域取值说明 |
|---|---|
| 1 | [7:4] - reserved [3:0] - Channel number. |
| 2 | Parameter selector |
| 3 | Configuration parameter data, per Table SOL Configuration Parameters |
响应信息
| 字节顺序 | 域取值说明 |
|---|---|
| 1 | Completion CodeCompletion Code 80h = parameter not supported. 81h = attempt to set the ‘set in progress’ value (in parameter #0) when not in the ‘set complete’ state. (This completion code provides a way to recognize that another party has already ‘claimed’ the parameters) 82h = attempt to write read-only parameter 83h = attempt to read write-only parameter |
SOL Configuration Parameters
| Parameter | # | Parameter Data (non-volatile unless otherwise noted) |
|---|---|---|
| Set In Progress (volatile) | 0 | data 1 - This parameter is used to indicate when any of the following parameters are being updated, and when the updates are completed. The bit is primarily provided to alert software than some other software or utility is in the process of making changes to the data. An implementation can also elect to provide a ‘rollback’ feature that uses this information to decide whether to ‘roll back’ to the previous configuration information, or to accept the configuration change. If used, the roll back shall restore all parameters to their previous state. Otherwise, the change shall take effect when the write occurs. [7:2] - reserved [1:0] 00b = set complete. If a system reset or transition to powered down state occurs while ‘set in progress’ is active, the BMC will go to the ‘set complete’ state. If rollback is implemented, going directly to ‘set complete’ without first doing a ‘commit write’ will cause any pending write data to be discarded. 01b = set in progress. This flag indicates that some utility or other software is presently doing writes to parameter data. It is a notification flag only, it is not a resource lock. The BMC does not provide any interlock mechanism that would prevent other software from writing parameter data while. 10b = commit write (optional). This is only used if a rollback is implemented. The BMC will save the data that has been written since the last time the ‘set in progress’ and then go to the ‘set in progress’ state. An error completion code will be returned if this option is not supported. 11b = reserved |
| SOL Enable | 1 | Byte 1: [7:1]: Reserved [0]: SOL Enable. Note, this controls whether the SOL payload type can be activated. Noter that whether an SOL stream can be established is also dependent on the Access Mode and Authentication settings for the corresponding LAN channel. The enabled/disabled state and access mode settings for the serial/modem channel have no effect on SOL. 1b = enable SOL payload 0b = disable SOL payload |
| SOL Authentication | 2 | Byte 1: SOL Authentication Enable [7]: Force SOL Payload Encryption 1b: Force encryption. If the Cipher Suite for the session supports encryption this setting will force the use of encryption for all SOL payload data. 0b: Encryption controlled by remote console. Whether SOL Packets are encrypted or not is selectable by the remote console at the time the payload is activated (using the Activate Payload command) and can be changed during operation via the Suspend/Resume Payload Encryption command. [6]: Force SOL Payload Authentication 1b: Force Authentication. If the Cipher Suite for the session supports authentication this setting will force the use of authentication on all SOL Payload data. 0b: Authentication controlled by remote software. Note that for the standard Cipher Suites, if encryption is used authentication must also be used. Therefore, while encryption is being used software will not be able to select using unauthenticated payloads. [5:4]: Reserved [3:0]: SOL Privilege Level. Sets the minimum operating privilege level that is required to be able to activate SOL using the Activate Payload command. 0h: reserved 1h: reserved 2h: USER level 3h: OPERATOR level 4h: ADMINISTRATOR level 5h: OEM Proprietary level all other: Reserved |
| Character Accumulate Interval & Character Send Threshold | 3 | Byte 1: Character Accumulate Interval in 5 ms increments. 1-based. This sets the typical amount of time that the BMC will wait before transmitting a partial SOL character data packet. (Where a partial packet is defined as a packet that has fewer characters to transmit than the number of characters specified by the Send Threshold - see next field in this parameter). A packet will not be sent 00h = reserved Byte 2: Character Send Threshold. 1-based. The BMC will automatically send an SOL character data packet containing this number of characters as soon as this number of characters (or greater) has been accepted from the baseboard serial controller into the BMC. This provides a mechanism to tune the buffer to reduce latency to when the first characters are received after an idle interval. In the degenerate case, setting this value to a ‘1’ would cause the BMC to send a packet as soon as the first character was received. This can be useful if the character accumulate interval is large. If the BMC is waiting for an acknowledge from the previous packet, it will ignore this threshold and continue to collect data until it has a full packet’s worth. |
| SOL Retry | 4 | Byte 1: Retry Count [7:3] - Reserved [2:0] - Retry count. 1-based. 0 = no retries after packet is transmitted. Packet will be dropped if no ACK/NACK received by time retries expire. Byte 2: Retry Interval. 1-based. Retry Interval in 10 ms increments. Sets the time that the BMC will wait before the first retry and the time between retries when sending SOL packets to the remote console. 00h: Retries sent back-to-back |
| SOL non-volatile bit rate (non-volatile) | 5 | This configuration parameter is not supported if the implementation does not have a BMC serial controller that can be potentially configured Serial communication with the BMC when SOL is activated always occurs using 8 bits/character, no parity, 1 stop bit, and RTS/CTS (hardware) flow control. Note: If SOL is enabled for multiple LAN channels, the BMC uses the serial communication settings for the channel over which the Activate SOL command was initially received. The settings for other channels are ignored. Data 1 [7:4] - Reserved [3:0] - Bit Rate. 1-5h = reserved. Support for bit rates other than 19.2 kbps is optional. The BMC must return an error completion if a requested bit rate is not supported. It is recommended that the parameter out-of-range (C9h) code be used for this situation. 0h: Use setting presently configured for IPMI over serial channel. The setting will be used even if the access mode for the serial channel is set to ‘disabled’. Note: IPMI specification can allow more than one serial channel. If serial port sharing is not implemented, this value is reserved. 6h: 9600 bps 7h: 19.2 kbps 8h: 38.4 kbps 9h: 57.6 kbps Ah: 115.2 kbps all other = reserved |
| SOL volatile bit rate (volatile) | 6 | Set volatile version of SOL Serial Settings. Data follows that for the SOL non-volatile bit rate parameter. |
| SOL Payload Channel (optional, Read Only) | 7 | This parameter indicates which IPMI channel is being used for the communication parameters (e.g. IP address, MAC address) for the SOL Payload. Typically, these parameters will come from the same channel that the Activate Payload command for SOL was accepted over. |
| SOL Payload Port Number (Read Only orRead/Write) | 8 | This parameter is Read/Write when the implementation allows the port number over which the SOL payload can be activated to be configurable. Otherwise, it is a Read Only parameter. data 1:2 - Primary RMCP Port Number, LSByte first. |
| OEM Parameters | 192:255 | This range is available for special OEM configuration parameters. The OEM is identified according to the Manufacturer ID field returned by the Get Device ID command. |
命令样例
样例1:
- 请求:
- 响应: