123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146 |
- /**
- * \file blebrr.h
- *
- *
- */
- /*
- * Copyright (C) 2013. Mindtree Limited.
- * All rights reserved.
- */
- #ifndef _H_BLEBRR_
- #define _H_BLEBRR_
- /* --------------------------------------------- Header File Inclusion */
- #include "MS_common.h"
- #include "MS_brr_api.h"
- extern UCHAR blebrr_state;
- #define BLEBRR_LOG printf
- #define BLEBRR_dump_bytes appl_dump_bytes
- /* --------------------------------------------- Global Definitions */
- /** GATT Modes */
- #define BLEBRR_GATT_PROV_MODE 0x00
- #define BLEBRR_GATT_PROXY_MODE 0x01
- /** Bearer Client Server Roles */
- #define BLEBRR_CLIENT_ROLE BRR_CLIENT_ROLE
- #define BLEBRR_SERVER_ROLE BRR_SERVER_ROLE
- /** Bearer GATT communication Channel setup events */
- #define BLEBRR_COM_CHANNEL_CONNECT 0x00
- #define BLEBRR_COM_CHANNEL_DISCONNECT 0x01
- /** Bearer GATT MTU related defines */
- #define BLEBRR_GATT_MIN_MTU (23 - 3)
- /* Bearer GATT Service related defines */
- #define BLEBRR_MESH_PRVSNG_SERVICE 0x1827
- #define BLEBRR_MESH_PROXY_SERVICE 0x1828
- #define BLEBRR_MESH_PRVSNG_DATA_IN_CHAR 0x2ADB
- #define BLEBRR_MESH_PRVSNG_DATA_OUT_CHAR 0x2ADC
- #define BLEBRR_MESH_PROXY_DATA_IN_CHAR 0x2ADD
- #define BLEBRR_MESH_PROXY_DATA_OUT_CHAR 0x2ADE
- /** GATT Interface Events */
- #define BLEBRR_GATT_IFACE_UP 0x00
- #define BLEBRR_GATT_IFACE_DOWN 0x01
- #define BLEBRR_GATT_IFACE_ENABLE 0x02
- #define BLEBRR_GATT_IFACE_DISABLE 0x03
- /** Bearer state defines */
- #define BLEBRR_STATE_IDLE 0x00
- #define BLEBRR_STATE_IN_SCAN_ENABLE 0x01
- #define BLEBRR_STATE_IN_SCAN_DISABLE 0x02
- #define BLEBRR_STATE_SCAN_ENABLED 0x04
- #define BLEBRR_STATE_IN_ADV_ENABLE 0x10
- #define BLEBRR_STATE_IN_ADV_DISABLE 0x20
- #define BLEBRR_STATE_ADV_ENABLED 0x40
- /*define Queue Size*/
- #define BLEBRR_QUEUE_SIZE 64
- #define BLEBRR_SET_STATE(x) blebrr_state = (x)
- #define BLEBRR_GET_STATE() blebrr_state
- //#define BLEBRR_LP_SUPPORT
- #ifdef BLEBRR_LP_SUPPORT
- #define BLEBRR_LP_OFF 1
- #define BLEBRR_LP_SLEEP 2
- #define BLEBRR_LP_WKP 3
- #define BLEBRR_LP_PROXY 4
- #endif
- /* --------------------------------------------- Structures/Data Types */
- /* Call Back to Inform Application Layer about GATT Bearer Iface Events */
- typedef void (* BLEBRR_GATT_IFACE_EVENT_PL_CB)
- (
- UCHAR ev_name,
- UCHAR ev_param
- );
- /* --------------------------------------------- Macros */
- /* --------------------------------------------- Internal Functions */
- void blebrr_adv_idle (void);
- void blebrr_scan_enable (void);
- /* --------------------------------------------- API Declarations */
- void blebrr_init_pl (void);
- void blebrr_register(void);
- void blebrr_scan_pl (UCHAR enable);
- void blebrr_advertise_data_pl (CHAR type, UCHAR * pdata, UINT16 pdatalen);
- //void blebrr_advertise_pl(UCHAR state); // HZF
- API_RESULT blebrr_advertise_pl(UCHAR state); // HZF
- UCHAR blebrr_get_advdata_offset_pl (void);
- void blebrr_set_gattmode_pl (UCHAR flag);
- void blebrr_pl_scan_setup (UCHAR enable);
- void blebrr_pl_advertise_setup (UCHAR enable);
- void blebrr_pl_recv_advpacket(UCHAR type, UCHAR * pdata, UINT16 pdatalen, UCHAR rssi);
- API_RESULT blebrr_gatt_send_pl(BRR_HANDLE * handle, UCHAR * data, UINT16 datalen);
- API_RESULT blebrr_pl_gatt_connection (BRR_HANDLE * handle, UCHAR role, UCHAR mode, UINT16 mtu);
- API_RESULT blebrr_pl_gatt_disconnection (BRR_HANDLE * handle);
- API_RESULT blebrr_pl_recv_gattpacket (BRR_HANDLE * handle, UCHAR * pdata, UINT16 pdatalen);
- UCHAR blebrr_gatt_mode_get(void);
- API_RESULT blebrr_create_gatt_conn_pl
- (
- UCHAR p_bdaddr_type,
- UCHAR * p_bdaddr
- );
- API_RESULT blebrr_disconnect_pl(void);
- API_RESULT blebrr_discover_service_pl(UCHAR serv);
- API_RESULT blebrr_confige_ntf_pl(UCHAR config_ntf, UCHAR mode);
- API_RESULT blebrr_set_adv_scanrsp_data_pl
- (
- UCHAR * srp_data,
- UCHAR srp_datalen
- );
- void blebrr_gatt_mode_set(UCHAR flag);
- UCHAR blebrr_gatt_mode_get(void);
- void blebrr_pl_advertise_end (void);
- API_RESULT blebrr_register_gatt_iface_event_pl
- (
- BLEBRR_GATT_IFACE_EVENT_PL_CB gatt_iface_evt_cb
- );
- API_RESULT blebrr_sleep_handler(void);
- API_RESULT blebrr_wakeup_handler(void);
- API_RESULT blebrr_lp_start(UCHAR mode);
- void blebrr_lp_stop(void);
- UCHAR blebrr_get_queue_depth(void);
- #endif /* _H_BLEBRR_ */
|