openUBMC Chip Abstract Layer V0.1
载入中...
搜索中...
未找到
SOL(Serial Over LAN)

保持现状

接口用途

  • bmc_soc 串口日志收集
  • soctrl 串口配置 日志收集

对比

<tt>enable</tt>

  • 原接口
    void enable(uint32_t status) const;
  • 新接口
    void enable(int32_t index, uint32_t status);
  • 变更说明 统一变更

<tt>read</tt>

  • 原接口
    string read(uint32_t direction, uint32_t index, uint32_t length);
  • 新接口
    string_t read(int32_t index, uint32_t direction, uint32_t length);
  • 变更说明 入参变更

<tt>get_pos</tt>

  • 原接口
    void get_pos(const SOL_DATA_POS_S *pos) const;
  • 新接口
    tuple<uint32_t, uint32_t, uint32_t> get_pos(int32_t index);
  • 变更说明 入参变更

<tt>get_register_info</tt>

  • 原接口
    using ALL_RES_VAL = struct {
    uint32_t index;
    uint32_t start;
    uint32_t tx_add;
    uint32_t tx_size;
    uint32_t rx_add;
    uint32_t rx_size;
    uint32_t tx_now;
    uint32_t rx_now;
    uint32_t fifo_state;
    uint32_t err_times;
    uint32_t irq;
    uint32_t re_times;
    };
    void get_register_info(const ALL_RES_VAL *reg) const;
  • 新接口
    uint32_t get_length(int32_t index);
  • 变更说明 get_register_info实际只使用了接收到的日志长度;其他未使用

<tt>set_start_size</tt>

  • 原接口
    using SOL_START_SIZE = struct {
    uint32_t index; /* sol index, 取值范围0~3 */
    uint32_t reserved; /* 保留扩展字段 */
    uint32_t ah; /* 起始地址高32位 */
    uint32_t rx_start_al; /* RX起始地址低32位,必须32字节对齐 */
    uint32_t tx_start_al; /* TX起始地址低32位,必须32字节对齐 */
    uint32_t rx_size; /* RX大小,范围0~7,分别对应0.25M/0.5M/1M/2M/4M/8M/16M/32M */
    uint32_t tx_size; /* TX大小,范围0~7,分别对应0.25M/0.5M/1M/2M/4M/8M/16M/32M */
    };
    void set_start_size(const SOL_START_SIZE *start_size) const;
  • 新接口
    void set_log_size(int32_t index, uint32_t rx_size, uint32_t tx_size);
  • 变更说明 地址信息跟实现强相关,这里不作为接口