pinebuds/services/bt_if_enhanced/inc/tws_role_switch.h
2022-08-15 17:20:27 +08:00

101 lines
2.6 KiB
C

/***************************************************************************
*
* Copyright 2015-2019 BES.
* All rights reserved. All unpublished rights reserved.
*
* No part of this work may be used or reproduced in any form or by any
* means, or stored in a database or retrieval system, without prior written
* permission of BES.
*
* Use of this work is governed by a license granted by BES.
* This work contains confidential and proprietary information of
* BES. which is protected by copyright, trade secret,
* trademark and other intellectual property rights.
*
****************************************************************************/
#ifndef __TWS_ROLE_SWITCH__H__
#define __TWS_ROLE_SWITCH__H__
#include "bluetooth.h"
enum TWS_DATA_STRUCTURE
{
BT_ME = 0,
BT_HCI,
CMGR_CONTEXT,
BT_L2CAP,
BT_RFC,
RFCOMM_CHANNEL,
AVRCP_CONTEXT,
APP_BT_DEVICE,
AVDEV_CONTEXT,
SLAVE_SAVE_DATA_OK,
};
enum PSM_CONTEXT_TYPE
{
PSM_CONTEXT_SDP = 0x01, //SDP
PSM_CONTEXT_RFC = 0x02, //RFCOMM MUX,HFP and SPP share
PSM_CONTEXT_AVDTP = 0x04, //A2DP
PSM_CONTEXT_AVCTP = 0x08, //AVRCP
PSM_CONTEXT_INVALID = 0x80,
};
#define BT_RPOFILE_FINAL_FLAG (0x55)
enum PROFILE_CONTEXT_FLAG
{
#if defined(ENHANCED_STACK)
BT_HFP_FLAG = 0x01,
BT_A2DP_FLAG = 0x02,
BT_AVRCP_FLAG = 0x04,
BT_MAP_FLAG =0x08,
BT_HID_FLAG = 0x10,
//add new profile flag here
BT_SPP_FLAG = 0x80, //SPP has multiple app id(total BTIF_APP_SPP_NUM),BT_SPP_FLAG flag should be at high bit
#else
BT_COMMON_FLAG = 0x01,
BT_RFC_MUX_FLAG = 0x02,
BT_HFP_FLAG = 0x04,
BT_A2DP_FLAG = 0x08,
BT_A2DP_CONTINUE_FLAG = 0x10,
BT_AVRCP_FLAG = 0x20,
BT_SPP_FLAG = 0x40,
DATA_COMPLETE_FLAG = 0x80,
#endif
};
#define BT_ALL_CONTEXT_PSM (PSM_CONTEXT_SDP | PSM_CONTEXT_RFC | PSM_CONTEXT_AVDTP | PSM_CONTEXT_AVCTP)
#if defined(ENHANCED_STACK)
#define BT_ALL_CONTEXT_FLAG (BT_HFP_FLAG | BT_A2DP_FLAG | BT_AVRCP_FLAG | BT_MAP_FLAG | BT_SPP_FLAG | BT_HID_FLAG)
#else
#define BT_ALL_CONTEXT_FLAG (BT_COMMON_FLAG | BT_RFC_MUX_FLAG | BT_HFP_FLAG | BT_A2DP_FLAG | BT_A2DP_CONTINUE_FLAG | BT_AVRCP_FLAG | SPP_SERVER_INTERACTION_FLAG)
#endif
#define BT_ALL_RFC_APP_ID (BTIF_APP_HFP_PROFILE_ID | BT_SPP_FLAG)
#define BT_EARPHONE_BASIC_APP_ID (BTIF_APP_HFP_PROFILE_ID | BTIF_APP_A2DP_PROFILE_ID | BTIF_APP_AVRCP_PROFILE_ID)
enum TWS_CHANNEL_TYPE
{
HF_RF_CHANNEL = 0,
UNKNOWN_CHANNEL,
};
#ifdef __cplusplus
extern "C" {
#endif /* */
#ifdef __cplusplus
}
#endif /* */
#endif /* __ME_H */