bta_pan_int.h revision 5738f83aeb59361a0a2eda2460113f6dc919427
15738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
25738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *
35738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *  Copyright (C) 2004-2012 Broadcom Corporation
45738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *
55738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *  Licensed under the Apache License, Version 2.0 (the "License");
65738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *  you may not use this file except in compliance with the License.
75738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *  You may obtain a copy of the License at:
85738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *
95738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *  http://www.apache.org/licenses/LICENSE-2.0
105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *
115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *  Unless required by applicable law or agreed to in writing, software
125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *  distributed under the License is distributed on an "AS IS" BASIS,
135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *  See the License for the specific language governing permissions and
155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *  limitations under the License.
165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *
175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project ******************************************************************************/
185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *
215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *  This is the private interface file for the BTA data gateway.
225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *
235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project ******************************************************************************/
245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_PAN_INT_H
255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_PAN_INT_H
265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#include "bta_sys.h"
285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#include "bta_pan_api.h"
295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*****************************************************************************
315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**  Constants
325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*****************************************************************************/
335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* PAN events */
385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectenum
395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{
405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    /* these events are handled by the state machine */
415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BTA_PAN_API_CLOSE_EVT = BTA_SYS_EVT_START(BTA_ID_PAN),
425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BTA_PAN_CI_TX_READY_EVT,
435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BTA_PAN_CI_RX_READY_EVT,
445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BTA_PAN_CI_TX_FLOW_EVT,
455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BTA_PAN_CI_RX_WRITE_EVT,
465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BTA_PAN_CI_RX_WRITEBUF_EVT,
475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BTA_PAN_CONN_OPEN_EVT,
485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BTA_PAN_CONN_CLOSE_EVT,
495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BTA_PAN_BNEP_FLOW_ENABLE_EVT,
505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BTA_PAN_RX_FROM_BNEP_READY_EVT,
515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    /* these events are handled outside of the state machine */
535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BTA_PAN_API_ENABLE_EVT,
545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BTA_PAN_API_DISABLE_EVT,
555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BTA_PAN_API_SET_ROLE_EVT,
565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BTA_PAN_API_OPEN_EVT
575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project};
585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*****************************************************************************
635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**  Data types
645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*****************************************************************************/
655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_PAN_API_ENABLE_EVT */
675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct
685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{
695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BT_HDR              hdr;                        /* Event header */
705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    tBTA_PAN_CBACK     *p_cback;                    /* PAN callback function */
715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_PAN_API_ENABLE;
725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_PAN_API_REG_ROLE_EVT */
745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct
755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{
765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BT_HDR              hdr;                             /* Event header */
775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    char                user_name[BTA_SERVICE_NAME_LEN+1];   /* Service name */
785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    char                gn_name[BTA_SERVICE_NAME_LEN+1];     /* Service name */
795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    char                nap_name[BTA_SERVICE_NAME_LEN+1];    /* Service name */
805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    tBTA_PAN_ROLE       role;
815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    UINT8               user_app_id;
825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    UINT8               gn_app_id;
835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    UINT8               nap_app_id;
845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    tBTA_SEC            user_sec_mask;                   /* Security mask */
855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    tBTA_SEC            gn_sec_mask;                     /* Security mask */
865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    tBTA_SEC            nap_sec_mask;                    /* Security mask */
875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_PAN_API_SET_ROLE;
905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_PAN_API_OPEN_EVT */
925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct
935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{
945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BT_HDR              hdr;                        /* Event header */
955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    tBTA_PAN_ROLE        local_role;                 /* local role */
965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    tBTA_PAN_ROLE        peer_role;                  /* peer role */
975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BD_ADDR             bd_addr;                    /* peer bdaddr */
985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_PAN_API_OPEN;
995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_PAN_CI_TX_FLOW_EVT */
1015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct
1025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{
1035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BT_HDR          hdr;                    /* Event header */
1045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BOOLEAN         enable;                 /* Flow control setting */
1055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_PAN_CI_TX_FLOW;
1065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_PAN_CONN_OPEN_EVT */
1085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct
1095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{
1105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BT_HDR          hdr;        /* Event header */
1115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    tPAN_RESULT     result;
1125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_PAN_CONN;
1145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* union of all data types */
1195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef union
1205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{
1215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BT_HDR                   hdr;
1225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    tBTA_PAN_API_ENABLE      api_enable;
1235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    tBTA_PAN_API_SET_ROLE    api_set_role;
1245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    tBTA_PAN_API_OPEN        api_open;
1255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    tBTA_PAN_CI_TX_FLOW      ci_tx_flow;
1265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    tBTA_PAN_CONN            conn;
1275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_PAN_DATA;
1285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* state machine control block */
1305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct
1315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{
1325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BD_ADDR                 bd_addr;        /* peer bdaddr */
1335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BUFFER_Q                data_queue;     /* Queue of buffers waiting to be passed to application */
1345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    UINT16                  handle;         /* BTA PAN/BNEP handle */
1355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BOOLEAN                 in_use;         /* scb in use */
1365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    tBTA_SEC                sec_mask;       /* Security mask */
1375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BOOLEAN                 pan_flow_enable;/* BNEP flow control state */
1385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BOOLEAN                 app_flow_enable;/* Application flow control state */
1395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    UINT8                   state;          /* State machine state */
1405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    tBTA_PAN_ROLE            local_role;     /* local role */
1415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    tBTA_PAN_ROLE            peer_role;      /* peer role */
1425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    UINT8                    app_id;         /* application id for the connection */
1435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_PAN_SCB;
1455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* main control block */
1495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct
1505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{
1515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    tBTA_PAN_SCB    scb[BTA_PAN_NUM_CONN];          /* state machine control blocks */
1525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    tBTA_PAN_CBACK *p_cback;                        /* PAN callback function */
1535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    UINT8            app_id[3];                      /* application id for PAN roles */
1545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    UINT8           flow_mask;                      /* Data flow mask */
1555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    UINT8           q_level;                        /* queue level set by application for TX data */
1565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_PAN_CB;
1585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* pan data param */
1615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct
1625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{
1635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BT_HDR  hdr;
1645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BD_ADDR src;
1655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BD_ADDR dst;
1665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    UINT16  protocol;
1675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BOOLEAN ext;
1685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    BOOLEAN forward;
1695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_PAN_DATA_PARAMS;
1715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*****************************************************************************
1745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**  Global data
1755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*****************************************************************************/
1765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* PAN control block */
1785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if BTA_DYNAMIC_MEMORY == FALSE
1805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern tBTA_PAN_CB  bta_pan_cb;
1815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#else
1825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern tBTA_PAN_CB *bta_pan_cb_ptr;
1835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define bta_pan_cb (*bta_pan_cb_ptr)
1845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
1855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*****************************************************************************
1875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**  Function prototypes
1885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*****************************************************************************/
1895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern tBTA_PAN_SCB *bta_pan_scb_alloc(void);
1905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_pan_scb_dealloc(tBTA_PAN_SCB *p_scb);
1915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern UINT8 bta_pan_scb_to_idx(tBTA_PAN_SCB *p_scb);
1925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern tBTA_PAN_SCB *bta_pan_scb_by_handle(UINT16 handle);
1935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern BOOLEAN bta_pan_hdl_event(BT_HDR *p_msg);
1945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* action functions */
1965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_pan_enable(tBTA_PAN_DATA *p_data);
1975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_pan_disable(void);
1985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_pan_set_role(tBTA_PAN_DATA *p_data);
1995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_pan_open(tBTA_PAN_SCB *p_scb, tBTA_PAN_DATA *p_data);
2005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_pan_api_close(tBTA_PAN_SCB *p_scb, tBTA_PAN_DATA *p_data);
2015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_pan_set_shutdown(tBTA_PAN_SCB *p_scb, tBTA_PAN_DATA *p_data);
2025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_pan_rx_path(tBTA_PAN_SCB *p_scb, tBTA_PAN_DATA *p_data);
2035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_pan_tx_path(tBTA_PAN_SCB *p_scb, tBTA_PAN_DATA *p_data);
2045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_pan_tx_flow(tBTA_PAN_SCB *p_scb, tBTA_PAN_DATA *p_data);
2055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_pan_conn_open(tBTA_PAN_SCB *p_scb, tBTA_PAN_DATA *p_data);
2065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_pan_conn_close(tBTA_PAN_SCB *p_scb, tBTA_PAN_DATA *p_data);
2075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_pan_writebuf(tBTA_PAN_SCB *p_scb, tBTA_PAN_DATA *p_data);
2085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_pan_write_buf(tBTA_PAN_SCB *p_scb, tBTA_PAN_DATA *p_data);
2095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_pan_free_buf(tBTA_PAN_SCB *p_scb, tBTA_PAN_DATA *p_data);
2105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif /* BTA_PAN_INT_H */
213