Home | History | Annotate | Download | only in include
      1 /******************************************************************************
      2  *
      3  *  Copyright (C) 2009-2012 Broadcom Corporation
      4  *
      5  *  Licensed under the Apache License, Version 2.0 (the "License");
      6  *  you may not use this file except in compliance with the License.
      7  *  You may obtain a copy of the License at:
      8  *
      9  *  http://www.apache.org/licenses/LICENSE-2.0
     10  *
     11  *  Unless required by applicable law or agreed to in writing, software
     12  *  distributed under the License is distributed on an "AS IS" BASIS,
     13  *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     14  *  See the License for the specific language governing permissions and
     15  *  limitations under the License.
     16  *
     17  ******************************************************************************/
     18 
     19 /******************************************************************************
     20  *
     21  *  This is the interface file for the HL (HeaLth device profile) subsystem
     22  *  call-out functions.
     23  *
     24  ******************************************************************************/
     25 #ifndef BTA_HL_CO_H
     26 #define BTA_HL_CO_H
     27 
     28 #include "bta_api.h"
     29 #include "bta_hl_api.h"
     30 
     31 /*****************************************************************************
     32 **  Constants and Data Types
     33 *****************************************************************************/
     34 /**************************
     35 **  Common Definitions
     36 ***************************/
     37 
     38 
     39 /*******************************************************************************
     40 **
     41 ** Function        bta_hl_co_get_num_of_mdep
     42 **
     43 ** Description     This function is called to get the number of MDEPs for this
     44 **                 application ID
     45 **
     46 ** Parameters      app_id - application ID
     47 **                 p_num_of_mdep (output) - number of MDEP configurations supported
     48 **                                          by the application
     49 **
     50 ** Returns         Bloolean - TRUE success
     51 **
     52 *******************************************************************************/
     53 extern BOOLEAN bta_hl_co_get_num_of_mdep(UINT8 app_id, UINT8 *p_num_of_mdep);
     54 /*******************************************************************************
     55 **
     56 ** Function        bta_hl_co_advrtise_source_sdp
     57 **
     58 ** Description     This function is called to find out whether the SOURCE MDEP
     59 **                 configuration information should be advertize in the SDP or nopt
     60 **
     61 ** Parameters      app_id - application ID
     62 **
     63 ** Returns         Bloolean - TRUE advertise the SOURCE MDEP configuration
     64 **                            information
     65 **
     66 *******************************************************************************/
     67 extern BOOLEAN bta_hl_co_advrtise_source_sdp(UINT8 app_id);
     68 /*******************************************************************************
     69 **
     70 ** Function        bta_hl_co_get_mdep_config
     71 **
     72 ** Description     This function is called to get the supported feature
     73 **                 configuration for the specified mdep index and it also assigns
     74 **                 the MDEP ID for the specified mdep index
     75 **
     76 ** Parameters      app_id - HDP application ID
     77 **                 mdep_idx - the mdep index
     78 **                  mdep_counter - mdep_counter
     79 **                 mdep_id  - the assigned MDEP ID for the specified medp_idx
     80 **                 p_mdl_cfg (output) - pointer to the MDEP configuration
     81 **
     82 **
     83 ** Returns         Bloolean - TRUE success
     84 *******************************************************************************/
     85 extern BOOLEAN bta_hl_co_get_mdep_config(UINT8 app_id,
     86                                          UINT8 mdep_idx,
     87                                          UINT8 mdep_counter,
     88                                          tBTA_HL_MDEP_ID mdep_id,
     89                                          tBTA_HL_MDEP_CFG *p_mdep_cfg);
     90 
     91 
     92 /*******************************************************************************
     93 **
     94 ** Function        bta_hl_co_get_echo_config
     95 **
     96 ** Description     This function is called to get the echo test
     97 **                 maximum APDU size configuration
     98 **
     99 ** Parameters      app_id - HDP application ID
    100 **                 p_echo_cfg (output) - pointer to the Echo test maximum APDU size
    101 **                                       configuration
    102 **
    103 ** Returns         Bloolean - TRUE success
    104 *******************************************************************************/
    105 extern BOOLEAN bta_hl_co_get_echo_config(UINT8  app_id,
    106                                          tBTA_HL_ECHO_CFG *p_echo_cfg);
    107 
    108 
    109 /*******************************************************************************
    110 **
    111 ** Function        bta_hl_co_save_mdl
    112 **
    113 ** Description     This function is called to save a MDL configuration item in persistent
    114 **                 storage
    115 **
    116 ** Parameters      app_id - HDP application ID
    117 **                 item_idx - the MDL configuration storage index
    118 **                 p_mdl_cfg - pointer to the MDL configuration data
    119 **
    120 ** Returns          void
    121 **
    122 *******************************************************************************/
    123 extern void bta_hl_co_save_mdl(UINT8 app_id, UINT8 item_idx, tBTA_HL_MDL_CFG *p_mdl_cfg );
    124 /*******************************************************************************
    125 **
    126 ** Function        bta_hl_co_delete_mdl
    127 **
    128 ** Description     This function is called to delete a MDL configuration item in persistent
    129 **                 storage
    130 **
    131 ** Parameters      app_id - HDP application ID
    132 **                 item_idx - the MDL configuration storage index
    133 **
    134 ** Returns          void
    135 **
    136 *******************************************************************************/
    137 extern void bta_hl_co_delete_mdl(UINT8 app_id, UINT8 item_idx);
    138 /*******************************************************************************
    139 **
    140 ** Function         bta_hl_co_get_mdl_config
    141 **
    142 ** Description     This function is called to get the MDL configuration
    143 **                 from teh persistent memory. This function shall only be called
    144 *8                 once after the device is powered up
    145 **
    146 ** Parameters      app_id - HDP application ID
    147 **                 buffer_size - the unit of the buffer size is sizeof(tBTA_HL_MDL_CFG)
    148 **                 p_mdl_buf - Point to the starting location of the buffer
    149 **
    150 ** Returns         BOOLEAN
    151 **
    152 **
    153 *******************************************************************************/
    154 extern BOOLEAN bta_hl_co_load_mdl_config (UINT8 app_id, UINT8 buffer_size,
    155                                           tBTA_HL_MDL_CFG *p_mdl_buf );
    156 
    157 
    158 /*******************************************************************************
    159 **
    160 ** Function         bta_hl_co_get_tx_data
    161 **
    162 ** Description     Get the data to be sent
    163 **
    164 ** Parameters      app_id - HDP application ID
    165 **                 mdl_handle - MDL handle
    166 **                 buf_size - the size of the buffer
    167 **                 p_buf - the buffer pointer
    168 **                 evt - the evt to be passed back to the HL in the
    169 **                       bta_hl_ci_get_tx_data call-in function
    170 **
    171 ** Returns        Void
    172 **
    173 *******************************************************************************/
    174 extern void bta_hl_co_get_tx_data (UINT8 app_id, tBTA_HL_MDL_HANDLE mdl_handle,
    175                                    UINT16 buf_size, UINT8 *p_buf, UINT16 evt);
    176 
    177 
    178 /*******************************************************************************
    179 **
    180 ** Function        bta_hl_co_put_rx_data
    181 **
    182 ** Description     Put the received data
    183 **
    184 ** Parameters      app_id - HDP application ID
    185 **                 mdl_handle - MDL handle
    186 **                 data_size - the size of the data
    187 **                 p_data - the data pointer
    188 **                 evt - the evt to be passed back to the HL in the
    189 **                       bta_hl_ci_put_rx_data call-in function
    190 **
    191 ** Returns        Void
    192 **
    193 *******************************************************************************/
    194 extern void bta_hl_co_put_rx_data (UINT8 app_id, tBTA_HL_MDL_HANDLE mdl_handle,
    195                                    UINT16 data_size, UINT8 *p_data, UINT16 evt);
    196 /*******************************************************************************
    197 **
    198 ** Function         bta_hl_co_get_tx_data
    199 **
    200 ** Description     Get the Echo data to be sent
    201 **
    202 ** Parameters      app_id - HDP application ID
    203 **                 mcl_handle - MCL handle
    204 **                 buf_size - the size of the buffer
    205 **                 p_buf - the buffer pointer
    206 **                 evt - the evt to be passed back to the HL in the
    207 **                       bta_hl_ci_get_tx_data call-in function
    208 **
    209 ** Returns        Void
    210 **
    211 *******************************************************************************/
    212 extern void bta_hl_co_get_echo_data (UINT8 app_id, tBTA_HL_MCL_HANDLE mcl_handle,
    213                                      UINT16 buf_size, UINT8 *p_buf, UINT16 evt);
    214 
    215 /*******************************************************************************
    216 **
    217 ** Function        bta_hl_co_put_echo_data
    218 **
    219 ** Description     Put the received loopback echo data
    220 **
    221 ** Parameters      app_id - HDP application ID
    222 **                 mcl_handle - MCL handle
    223 **                 data_size - the size of the data
    224 **                 p_data - the data pointer
    225 **                 evt - the evt to be passed back to the HL in the
    226 **                       bta_hl_ci_put_echo_data call-in function
    227 **
    228 ** Returns        Void
    229 **
    230 *******************************************************************************/
    231 extern void bta_hl_co_put_echo_data (UINT8 app_id, tBTA_HL_MCL_HANDLE mcl_handle,
    232                                      UINT16 data_size, UINT8 *p_data, UINT16 evt);
    233 
    234 #endif /* BTA_HL_CO_H */
    235