xtos_ bci_ session_ create
以 O_RDWR 打开 XTOS BCI 设备并创建会话,同时尝试缓存 GET_INFO 结果。
本页目录
声明
#include <xtos/bci.h>
xtos_bci_session_t *xtos_bci_session_create(const char *device_path);参数
| 参数 | 类型 | 说明 |
|---|---|---|
| device_path | const char * | 非 NULL、NUL 结尾的设备节点路径,例如 /dev/xtos0。 |
返回值
成功返回会话句柄;失败返回 NULL 并保留分配或 open 的 errno。GET_INFO 失败不会使已打开的会话创建失败。
错误
| errno | 条件 |
|---|---|
| EINVAL | device_path 为 NULL。 |
| ENOENT/EACCES/EBUSY | 设备节点不存在、权限不足或驱动不允许同时打开。 |
| system errno | calloc 或 open 失败时返回相应 errno。 |
注意事项
- 会话拥有 fd、设备路径和 mmap 状态;调用方只能通过 API 借用 fd/映射,不能自行 close/munmap。
- GET_INFO 失败时 info 保持 calloc 的零值,后续 get_info 仍可能返回 0;创建成功不证明设备 UAPI 能力有效。
- session.c 不提供并发锁;不要并发读写配置或销毁同一会话。
示例
源码
本文按 OpenXTOS 提交 dd313955ad57542bcd2af8827157d1bbd0cf5e83 的头文件和实现编写。