You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
109 lines
4.5 KiB
109 lines
4.5 KiB
/* Copyright Statement: |
|
* * |
|
* * This software/firmware and related documentation ("MediaTek Software") are |
|
* * protected under relevant copyright laws. The information contained herein |
|
* * is confidential and proprietary to MediaTek Inc. and/or its licensors. |
|
* * Without the prior written permission of MediaTek inc. and/or its licensors, |
|
* * any reproduction, modification, use or disclosure of MediaTek Software, |
|
* * and information contained herein, in whole or in part, shall be strictly |
|
* * prohibited. |
|
* * |
|
* * MediaTek Inc. (C) 2016. All rights reserved. |
|
* * |
|
* * BY OPENING THIS FILE, RECEIVER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES |
|
* * THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE") |
|
* * RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO RECEIVER |
|
* * ON AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL |
|
* * WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED |
|
* * WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR |
|
* * NONINFRINGEMENT. |
|
* * NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE |
|
* * SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR |
|
* * SUPPLIED WITH THE MEDIATEK SOFTWARE, AND RECEIVER AGREES TO LOOK ONLY TO |
|
* * SUCH THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. RECEIVER |
|
* * EXPRESSLY ACKNOWLEDGES THAT IT IS RECEIVER'S SOLE RESPONSIBILITY TO OBTAIN |
|
* * FROM ANY THIRD PARTY ALL PROPER LICENSES CONTAINED IN MEDIATEK SOFTWARE. |
|
* * MEDIATEK SHALL ALSO NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES |
|
* * MADE TO RECEIVER'S SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR |
|
* * OPEN FORUM. RECEIVER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND |
|
* * CUMULATIVE LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED |
|
* * HEREUNDER WILL BE, AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK |
|
* * SOFTWARE AT ISSUE, OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE |
|
* * PAID BY RECEIVER TO MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE. |
|
* * |
|
* * The following software/firmware and/or related documentation ("MediaTek Software") |
|
* * have been modified by MediaTek Inc. All revisions are subject to any receiver's |
|
* * applicable license agreements with MediaTek Inc. |
|
* */ |
|
|
|
#pragma once |
|
|
|
#include "mdroid_buildcfg.h" |
|
#include "raw_address.h" |
|
|
|
#if defined(MTK_INTEROP_EXTENSION) && (MTK_INTEROP_EXTENSION == TRUE) |
|
#include "uipc.h" |
|
|
|
typedef void (*BtifA2dpDataCallback)(tUIPC_CH_ID ch_id, tUIPC_EVENT event); |
|
|
|
class BtAvServiceDelayTimer { |
|
public: |
|
BtAvServiceDelayTimer() = default; |
|
~BtAvServiceDelayTimer() = default; |
|
|
|
/******************************************************************************* |
|
** |
|
** Function btif_create_av_domain_timer |
|
** |
|
** Description Call it on enable AV service to create delay timer |
|
** |
|
** Returns void |
|
** |
|
*******************************************************************************/ |
|
static void btif_create_av_domain_timer(); |
|
|
|
/******************************************************************************* |
|
** |
|
** Function btif_av_is_black_peer_for_delay_start |
|
** |
|
** Description Call it to check peer device. Return TRUE and schedule delay |
|
** timer when it blacklisted device, else return FALSE |
|
** |
|
** Returns bool |
|
** |
|
*******************************************************************************/ |
|
bool btif_av_is_black_peer_for_delay_start(const RawAddress& peer_addr); |
|
|
|
/******************************************************************************* |
|
** |
|
** Function btif_a2dp_data_cb |
|
** |
|
** Description Static function to set callback function. |
|
** |
|
** Returns void |
|
** |
|
*******************************************************************************/ |
|
static void btif_a2dp_data_cb(BtifA2dpDataCallback cb) { |
|
BtAvServiceDelayTimer::btif_a2dp_data_cb_ = cb; |
|
} |
|
|
|
private: |
|
static void btif_media_av_delay_start_cmd_hdlr(void* data); |
|
|
|
static BtifA2dpDataCallback btif_a2dp_data_cb_; |
|
}; |
|
|
|
#endif |
|
|
|
#if defined(MTK_VND_A2DP_PKT_LEN) && (MTK_VND_A2DP_PKT_LEN == TRUE) |
|
/******************************************************************************* |
|
** |
|
** Function btif_av_change_pkt_len_callback |
|
** |
|
** Description Callback function for vendor specific event that to change packet length of a2dp |
|
** |
|
** Returns void |
|
** |
|
*******************************************************************************/ |
|
extern void btif_av_change_pkt_len_callback(uint8_t len, uint8_t* p); |
|
#endif
|
|
|