openUBMC Chip Abstract Layer
V0.1
载入中...
搜索中...
未找到
include
bcal
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
23
namespace
DRIVER_BT {
24
using namespace
bcal;
25
30
struct
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
43
struct
BtRsp
{
44
uint8_t
len
;
45
uint8_t
lun
:2;
46
uint8_t
netfn
:6;
47
uint8_t
seq
;
48
uint8_t
cmd
;
49
uint8_t
completion_code
;
50
uint8_t
data
[1];
51
};
52
58
class
Bt
:
public
IDriver
{
59
public
:
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
DRIVER_BT::Bt
BT 驱动接口 BMC通过BT通道与HOST交互
Definition
bt.h:58
DRIVER_BT::Bt::setatn
virtual void setatn(int32_t index, uint8_t enable)=0
设置 BT 的 ATN 信号状态 BMC向HOST发送消息后,通知HOST有消息可读
DRIVER_BT::Bt::write
virtual int32_t write(int32_t index, const string_view_t &val, uint32_t timeout)=0
向 BT 总线写入数据
DRIVER_BT::Bt::read
virtual string_t read(int32_t index, uint32_t len, uint32_t timeout)=0
读取 BT 总线数据
bcal::IDriver
BCAL层驱动公共接口
Definition
driver.h:41
driver.h
BCAL 驱动公共接口定义
DRIVER_BT::BtReq
BT消息请求,参见IPMI规范
Definition
bt.h:30
DRIVER_BT::BtReq::netfn
uint8_t netfn
Definition
bt.h:33
DRIVER_BT::BtReq::seq
uint8_t seq
Definition
bt.h:34
DRIVER_BT::BtReq::len
uint8_t len
Definition
bt.h:31
DRIVER_BT::BtReq::data
uint8_t data[1]
Definition
bt.h:36
DRIVER_BT::BtReq::lun
uint8_t lun
Definition
bt.h:32
DRIVER_BT::BtReq::cmd
uint8_t cmd
Definition
bt.h:35
DRIVER_BT::BtRsp
BT消息响应,参见IPMI规范
Definition
bt.h:43
DRIVER_BT::BtRsp::data
uint8_t data[1]
Definition
bt.h:50
DRIVER_BT::BtRsp::lun
uint8_t lun
Definition
bt.h:45
DRIVER_BT::BtRsp::completion_code
uint8_t completion_code
Definition
bt.h:49
DRIVER_BT::BtRsp::cmd
uint8_t cmd
Definition
bt.h:48
DRIVER_BT::BtRsp::seq
uint8_t seq
Definition
bt.h:47
DRIVER_BT::BtRsp::netfn
uint8_t netfn
Definition
bt.h:46
DRIVER_BT::BtRsp::len
uint8_t len
Definition
bt.h:44
制作者
1.9.8