Lines Matching refs:async_callback_data
87 } async_callback_data; variable
152 memset(&async_callback_data, 0, sizeof(async_callback_data)); in async_callback_thread_start()
154 ret = pthread_mutex_init(&async_callback_data.mutex, NULL); in async_callback_thread_start()
160 ret = pthread_cond_init(&async_callback_data.cond, NULL); in async_callback_thread_start()
166 async_callback_data.thread_running = 1; in async_callback_thread_start()
168 ret = pthread_create(&async_callback_data.thr, NULL, in async_callback_thread_start()
169 async_callback_thread_fct, &async_callback_data); in async_callback_thread_start()
172 async_callback_data.thread_running = 0; in async_callback_thread_start()
180 if (async_callback_data.thread_running != 0) { in async_callback_thread_end()
183 ret = pthread_mutex_lock(&async_callback_data.mutex); in async_callback_thread_end()
189 async_callback_data.stop_thread = 1; in async_callback_thread_end()
192 while (async_callback_data.thread_running && in async_callback_thread_end()
193 async_callback_data.event_pending) { in async_callback_thread_end()
194 ret = pthread_cond_signal(&async_callback_data.cond); in async_callback_thread_end()
199 ret = pthread_cond_wait(&async_callback_data.cond, in async_callback_thread_end()
200 &async_callback_data.mutex); in async_callback_thread_end()
207 ret = pthread_mutex_unlock(&async_callback_data.mutex); in async_callback_thread_end()
213 ret = pthread_cond_signal(&async_callback_data.cond); in async_callback_thread_end()
219 ret = pthread_join(async_callback_data.thr, (void**)NULL); in async_callback_thread_end()
231 if (pthread_equal(pthread_self(), async_callback_data.thr)) { in async_callback_post()
235 ret = pthread_mutex_lock(&async_callback_data.mutex); in async_callback_post()
241 if (async_callback_data.thread_running == 0) { in async_callback_post()
242 (void)pthread_mutex_unlock(&async_callback_data.mutex); in async_callback_post()
248 while (async_callback_data.event_pending) { in async_callback_post()
249 ret = pthread_cond_wait(&async_callback_data.cond, in async_callback_post()
250 &async_callback_data.mutex); in async_callback_post()
257 async_callback_data.event_pending = 1; in async_callback_post()
258 async_callback_data.event = event; in async_callback_post()
259 async_callback_data.event_status = event_status; in async_callback_post()
261 ret = pthread_mutex_unlock(&async_callback_data.mutex); in async_callback_post()
267 ret = pthread_cond_signal(&async_callback_data.cond); in async_callback_post()
293 if ((hal_is_closed || !async_callback_data.thread_running) && in StNfc_hal_open()