openUBMC Chip Abstract Layer V0.1
载入中...
搜索中...
未找到
bt.h
浏览该文件的文档.
1/*
2 * Copyright (c) Huawei Technologies Co., Ltd. 2025. All rights reserved.
3 *
4 * this file licensed under the Mulan PSL v2.
5 * You can use this software according to the terms and conditions of the Mulan PSL v2.
6 * You may obtain a copy of Mulan PSL v2 at:
7 * http://license.coscl.org.cn/MulanPSL2
8 *
9 * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR
10 * IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, MERCHANTABILITY OR FIT FOR A PARTICULAR
11 * PURPOSE.
12 * See the Mulan PSL v2 for more details.
13 */
14
19#ifndef DRIVER_BT_H
20#define DRIVER_BT_H
21#include "driver.h"
22
23namespace DRIVER_BT {
24using namespace bcal;
25
30struct BtReq {
31 uint8_t len;
32 uint8_t lun:2;
33 uint8_t netfn:6;
34 uint8_t seq;
35 uint8_t cmd;
36 uint8_t data[1];
37};
38
43struct BtRsp {
44 uint8_t len;
45 uint8_t lun:2;
46 uint8_t netfn:6;
47 uint8_t seq;
48 uint8_t cmd;
50 uint8_t data[1];
51};
52
58class Bt : public IDriver {
59public:
68 virtual string_t read(int32_t index, uint32_t len, uint32_t timeout) = 0;
69
78 virtual int32_t write(int32_t index, const string_view_t &val, uint32_t timeout) = 0;
79
86 virtual void setatn(int32_t index, uint8_t enable) = 0;
87};
88
89} // namespace
90
91#endif // DRIVER_BT_H
BT 驱动接口 BMC通过BT通道与HOST交互
Definition bt.h:58
virtual void setatn(int32_t index, uint8_t enable)=0
设置 BT 的 ATN 信号状态 BMC向HOST发送消息后,通知HOST有消息可读
virtual int32_t write(int32_t index, const string_view_t &val, uint32_t timeout)=0
向 BT 总线写入数据
virtual string_t read(int32_t index, uint32_t len, uint32_t timeout)=0
读取 BT 总线数据
BCAL层驱动公共接口
Definition driver.h:41
BCAL 驱动公共接口定义
BT消息请求,参见IPMI规范
Definition bt.h:30
uint8_t netfn
Definition bt.h:33
uint8_t seq
Definition bt.h:34
uint8_t len
Definition bt.h:31
uint8_t data[1]
Definition bt.h:36
uint8_t lun
Definition bt.h:32
uint8_t cmd
Definition bt.h:35
BT消息响应,参见IPMI规范
Definition bt.h:43
uint8_t data[1]
Definition bt.h:50
uint8_t lun
Definition bt.h:45
uint8_t completion_code
Definition bt.h:49
uint8_t cmd
Definition bt.h:48
uint8_t seq
Definition bt.h:47
uint8_t netfn
Definition bt.h:46
uint8_t len
Definition bt.h:44