1 /******************************************************************************
2 *
3 * Copyright (C) 2009-2013 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 #include "gki.h"
21 #include "bta_gattc_co.h"
22 #include "bta_gattc_ci.h"
23
24 #if( defined BLE_INCLUDED ) && (BLE_INCLUDED == TRUE)
25 #if( defined BTA_GATT_INCLUDED ) && (BTA_GATT_INCLUDED == TRUE)
26
27
28 /*****************************************************************************
29 ** Function Declarations
30 *****************************************************************************/
31
32 /*******************************************************************************
33 **
34 ** Function bta_gattc_co_cache_open
35 **
36 ** Description This callout function is executed by GATTC when a GATT server
37 ** cache is ready to be sent.
38 **
39 ** Parameter server_bda: server bd address of this cache belongs to
40 ** evt: call in event to be passed in when cache open is done.
41 ** conn_id: connection ID of this cache operation attach to.
42 ** to_save: open cache to save or to load.
43 **
44 ** Returns void.
45 **
46 *******************************************************************************/
bta_gattc_co_cache_open(BD_ADDR server_bda,UINT16 evt,UINT16 conn_id,BOOLEAN to_save)47 void bta_gattc_co_cache_open(BD_ADDR server_bda, UINT16 evt, UINT16 conn_id, BOOLEAN to_save)
48 {
49 tBTA_GATT_STATUS status = BTA_GATT_OK;
50
51 /* open NV cache and send call in */
52 bta_gattc_ci_cache_open(server_bda, evt, status, conn_id);
53 }
54
55 /*******************************************************************************
56 **
57 ** Function bta_gattc_co_cache_load
58 **
59 ** Description This callout function is executed by GATT when server cache
60 ** is required to load.
61 **
62 ** Parameter server_bda: server bd address of this cache belongs to
63 ** evt: call in event to be passed in when cache save is done.
64 ** num_attr: number of attribute to be save.
65 ** attr_index: starting attribute index of the save operation.
66 ** conn_id: connection ID of this cache operation attach to.
67 ** Returns
68 **
69 *******************************************************************************/
bta_gattc_co_cache_load(BD_ADDR server_bda,UINT16 evt,UINT16 start_index,UINT16 conn_id)70 void bta_gattc_co_cache_load(BD_ADDR server_bda, UINT16 evt, UINT16 start_index, UINT16 conn_id)
71 {
72 UINT16 num_attr = 0;
73 tBTA_GATTC_NV_ATTR attr[BTA_GATTC_NV_LOAD_MAX];
74 tBTA_GATT_STATUS status = BTA_GATT_MORE;
75
76 bta_gattc_ci_cache_load(server_bda, evt, num_attr, attr, status, conn_id);
77 }
78 /*******************************************************************************
79 **
80 ** Function bta_gattc_co_cache_save
81 **
82 ** Description This callout function is executed by GATT when a server cache
83 ** is available to save.
84 **
85 ** Parameter server_bda: server bd address of this cache belongs to
86 ** evt: call in event to be passed in when cache save is done.
87 ** num_attr: number of attribute to be save.
88 ** p_attr: pointer to the list of attributes to save.
89 ** attr_index: starting attribute index of the save operation.
90 ** conn_id: connection ID of this cache operation attach to.
91 ** Returns
92 **
93 *******************************************************************************/
bta_gattc_co_cache_save(BD_ADDR server_bda,UINT16 evt,UINT16 num_attr,tBTA_GATTC_NV_ATTR * p_attr_list,UINT16 attr_index,UINT16 conn_id)94 void bta_gattc_co_cache_save (BD_ADDR server_bda, UINT16 evt, UINT16 num_attr,
95 tBTA_GATTC_NV_ATTR *p_attr_list, UINT16 attr_index, UINT16 conn_id)
96 {
97 tBTA_GATT_STATUS status = BTA_GATT_OK;
98
99 bta_gattc_ci_cache_save(server_bda, evt, status, conn_id);
100 }
101
102 /*******************************************************************************
103 **
104 ** Function bta_gattc_co_cache_close
105 **
106 ** Description This callout function is executed by GATTC when a GATT server
107 ** cache is written completely.
108 **
109 ** Parameter server_bda: server bd address of this cache belongs to
110 ** conn_id: connection ID of this cache operation attach to.
111 **
112 ** Returns void.
113 **
114 *******************************************************************************/
bta_gattc_co_cache_close(BD_ADDR server_bda,UINT16 conn_id)115 void bta_gattc_co_cache_close(BD_ADDR server_bda, UINT16 conn_id)
116 {
117 /* close NV when server cache is done saving or loading,
118 does not need to do anything for now on Insight */
119 }
120
121 /*******************************************************************************
122 **
123 ** Function bta_gattc_co_cache_reset
124 **
125 ** Description This callout function is executed by GATTC to reset cache in
126 ** application
127 **
128 ** Parameter server_bda: server bd address of this cache belongs to
129 **
130 ** Returns void.
131 **
132 *******************************************************************************/
bta_gattc_co_cache_reset(BD_ADDR server_bda)133 void bta_gattc_co_cache_reset(BD_ADDR server_bda)
134 {
135 }
136
137 #endif
138 #endif
139
140