XenevaOS
Loading...
Searching...
No Matches
bt.h
Go to the documentation of this file.
1
30#ifndef __BT_H__
31#define __BT_H__
32
33#include <stdint.h>
34
35#define BT_GET_INFO 0x4201
36#define BT_SCAN 0x4202
37#define BT_CONNECT 0x4203
38#define BT_DISCONNECT 0x4204
39#define BT_READ_NAME 0x4205
40#define BT_PAIR 0x4206
41#define BT_PASSKEY 0x4207
42#define BT_CONFIRM 0x4208
43#define BT_AUDIO 0x4209
44#define BT_A2DP 0x420A
45#define BT_FORGET 0x420B
46
47#define BT_OK 0
48#define BT_ERR 1
49#define BT_NEED_CONFIRM 2
50#define BT_NO_AUDIO 3
51
52#define BT_MAX_SCAN 64
53/* Classic inquiry result. LE address types remain 0 (public) and 1 (random). */
54#define BT_ADDR_BREDR 2
55#define BT_NAME_LEN 32
56
63
82
83typedef struct _au_bt_usb_ops_ {
84 void* ctx;
85 int (*control)(void* ctx, uint8_t bm, uint8_t req, uint16_t val, uint16_t idx, uint8_t* data,
86 uint16_t len, int data_in);
87 int (*intr)(void* ctx, uint8_t* data, uint16_t cap);
88 int (*bulk_out)(void* ctx, const uint8_t* data, uint16_t len);
89 int (*bulk_in)(void* ctx, uint8_t* data, uint16_t cap);
90 int (*iso_out)(void* ctx, const uint8_t* data, uint16_t len);
93
94extern void AuBtUsbReady(const AuBtUsbOps* ops);
95extern void AuVirtioBtInitialize(uint64_t device, int bus, int dev, int func);
96
97#endif
unsigned int uint32_t
Definition acefiex.h:163
unsigned char uint8_t
Definition acefiex.h:161
COMPILER_DEPENDENT_UINT64 uint64_t
Definition acefiex.h:165
unsigned short int uint16_t
Definition acefiex.h:162
signed char int8_t
Definition acefiex.h:158
#define BT_MAX_SCAN
Definition bt.h:52
struct _au_bt_usb_ops_ AuBtUsbOps
void AuVirtioBtInitialize(uint64_t device, int bus, int dev, int func)
Definition virtio_bt.c:437
struct _bt_scan_ent_ BtScanEnt
struct _bt_info_ BtInfo
#define BT_NAME_LEN
Definition bt.h:55
void AuBtUsbReady(const AuBtUsbOps *ops)
Definition host.c:3280
const struct device * dev
Definition drm_print.h:519
size_t len
Definition initial.c:23
void * data
Definition kthread.h:30
Definition bt.h:83
int(* iso_out)(void *ctx, const uint8_t *data, uint16_t len)
Definition bt.h:90
int(* intr)(void *ctx, uint8_t *data, uint16_t cap)
Definition bt.h:87
void * ctx
Definition bt.h:84
int has_iso
Definition bt.h:91
int(* bulk_out)(void *ctx, const uint8_t *data, uint16_t len)
Definition bt.h:88
int(* control)(void *ctx, uint8_t bm, uint8_t req, uint16_t val, uint16_t idx, uint8_t *data, uint16_t len, int data_in)
Definition bt.h:85
int(* bulk_in)(void *ctx, uint8_t *data, uint16_t cap)
Definition bt.h:89
Definition bt.h:64
int nscan
Definition bt.h:78
uint8_t iso
Definition bt.h:69
BtScanEnt scan[BT_MAX_SCAN]
Definition bt.h:80
uint8_t connected
Definition bt.h:70
int card_id
Definition bt.h:79
uint16_t iso_mtu
Definition bt.h:68
char msg[80]
Definition bt.h:75
uint8_t peer[6]
Definition bt.h:72
int status
Definition bt.h:77
uint32_t passkey
Definition bt.h:76
uint8_t hci_ver
Definition bt.h:66
uint16_t acl_mtu
Definition bt.h:67
uint8_t encrypted
Definition bt.h:71
uint8_t bd_addr[6]
Definition bt.h:65
uint8_t peer_type
Definition bt.h:73
char peer_name[64]
Definition bt.h:74
Definition bt.h:57
char name[BT_NAME_LEN]
Definition bt.h:61
uint8_t addr_type
Definition bt.h:59
int8_t rssi
Definition bt.h:60
uint8_t addr[6]
Definition bt.h:58
Definition fs.h:255