Lines Matching full:service
102 SHIM_SERVICE_T *service = (SHIM_SERVICE_T *)handle; in vchi_msg_peek() local
109 if (vchiu_queue_is_empty(&service->queue)) in vchi_msg_peek()
112 header = vchiu_queue_peek(&service->queue); in vchi_msg_peek()
134 SHIM_SERVICE_T *service = (SHIM_SERVICE_T *)handle; in vchi_msg_remove() local
137 header = vchiu_queue_pop(&service->queue); in vchi_msg_remove()
139 vchiq_release_message(service->handle, header); in vchi_msg_remove()
165 SHIM_SERVICE_T *service = (SHIM_SERVICE_T *)handle; in vchi_msg_queue() local
173 status = vchiq_queue_message(service->handle, &element, 1); in vchi_msg_queue()
181 status = vchiq_queue_message(service->handle, &element, 1); in vchi_msg_queue()
208 SHIM_SERVICE_T *service = (SHIM_SERVICE_T *)handle; in vchi_bulk_queue_receive() local
215 WARN_ON(!service->callback); in vchi_bulk_queue_receive()
230 status = vchiq_bulk_receive(service->handle, data_dst, data_size, in vchi_bulk_queue_receive()
239 status = vchiq_bulk_receive(service->handle, data_dst, in vchi_bulk_queue_receive()
267 SHIM_SERVICE_T *service = (SHIM_SERVICE_T *)handle; in vchi_bulk_queue_transmit() local
274 WARN_ON(!service->callback); in vchi_bulk_queue_transmit()
290 status = vchiq_bulk_transmit(service->handle, data_src, data_size, in vchi_bulk_queue_transmit()
299 status = vchiq_bulk_transmit(service->handle, data_src, in vchi_bulk_queue_transmit()
327 SHIM_SERVICE_T *service = (SHIM_SERVICE_T *)handle; in vchi_msg_dequeue() local
334 if (vchiu_queue_is_empty(&service->queue)) in vchi_msg_dequeue()
337 header = vchiu_queue_pop(&service->queue); in vchi_msg_dequeue()
344 vchiq_release_message(service->handle, header); in vchi_msg_dequeue()
377 SHIM_SERVICE_T *service = (SHIM_SERVICE_T *)handle; in vchi_msg_queuev() local
383 return vchiq_status_to_vchi(vchiq_queue_message(service->handle, in vchi_msg_queuev()
401 vchiq_release_message((VCHIQ_SERVICE_HANDLE_T)message->service, in vchi_held_msg_release()
431 SHIM_SERVICE_T *service = (SHIM_SERVICE_T *)handle; in vchi_msg_hold() local
438 if (vchiu_queue_is_empty(&service->queue)) in vchi_msg_hold()
441 header = vchiu_queue_pop(&service->queue); in vchi_msg_hold()
446 message_handle->service = in vchi_msg_hold()
447 (struct opaque_vchi_service_t *)service->handle; in vchi_msg_hold()
487 * Description: Starts the command service on each connection,
512 * Description: Stops the command service on each connection,
534 * Description: Routine to open a service
543 SHIM_SERVICE_T *service = in shim_callback() local
546 if (!service->callback) in shim_callback()
551 vchiu_queue_push(&service->queue, header); in shim_callback()
553 service->callback(service->callback_param, in shim_callback()
560 service->callback(service->callback_param, in shim_callback()
565 service->callback(service->callback_param, in shim_callback()
570 service->callback(service->callback_param, in shim_callback()
579 service->callback(service->callback_param, in shim_callback()
585 service->callback(service->callback_param, in shim_callback()
596 vchiq_release_message(service->handle, header); in shim_callback()
604 SHIM_SERVICE_T *service = kzalloc(sizeof(SHIM_SERVICE_T), GFP_KERNEL); in service_alloc() local
608 if (service) { in service_alloc()
609 if (vchiu_queue_init(&service->queue, 64)) { in service_alloc()
610 service->callback = setup->callback; in service_alloc()
611 service->callback_param = setup->callback_param; in service_alloc()
613 kfree(service); in service_alloc()
614 service = NULL; in service_alloc()
618 return service; in service_alloc()
621 static void service_free(SHIM_SERVICE_T *service) in service_free() argument
623 if (service) { in service_free()
624 vchiu_queue_delete(&service->queue); in service_free()
625 kfree(service); in service_free()
634 SHIM_SERVICE_T *service = service_alloc(instance, setup); in vchi_service_open() local
636 *handle = (VCHI_SERVICE_HANDLE_T)service; in vchi_service_open()
638 if (service) { in vchi_service_open()
645 params.userdata = service; in vchi_service_open()
650 &service->handle); in vchi_service_open()
652 service_free(service); in vchi_service_open()
653 service = NULL; in vchi_service_open()
658 return (service != NULL) ? 0 : -1; in vchi_service_open()
667 SHIM_SERVICE_T *service = service_alloc(instance, setup); in vchi_service_create() local
669 *handle = (VCHI_SERVICE_HANDLE_T)service; in vchi_service_create()
671 if (service) { in vchi_service_create()
678 params.userdata = service; in vchi_service_create()
681 status = vchiq_add_service(instance, ¶ms, &service->handle); in vchi_service_create()
684 service_free(service); in vchi_service_create()
685 service = NULL; in vchi_service_create()
690 return (service != NULL) ? 0 : -1; in vchi_service_create()
697 SHIM_SERVICE_T *service = (SHIM_SERVICE_T *)handle; in vchi_service_close() local
698 if (service) { in vchi_service_close()
699 VCHIQ_STATUS_T status = vchiq_close_service(service->handle); in vchi_service_close()
701 service_free(service); in vchi_service_close()
702 service = NULL; in vchi_service_close()
714 SHIM_SERVICE_T *service = (SHIM_SERVICE_T *)handle; in vchi_service_destroy() local
715 if (service) { in vchi_service_destroy()
716 VCHIQ_STATUS_T status = vchiq_remove_service(service->handle); in vchi_service_destroy()
718 service_free(service); in vchi_service_destroy()
719 service = NULL; in vchi_service_destroy()
733 SHIM_SERVICE_T *service = (SHIM_SERVICE_T *)handle; in vchi_service_set_option() local
743 service = NULL; in vchi_service_set_option()
746 if (service) { in vchi_service_set_option()
748 vchiq_set_service_option(service->handle, in vchi_service_set_option()
761 SHIM_SERVICE_T *service = (SHIM_SERVICE_T *)handle; in vchi_get_peer_version() local
762 if(service) in vchi_get_peer_version()
764 VCHIQ_STATUS_T status = vchiq_get_peer_version(service->handle, peer_version); in vchi_get_peer_version()
826 * Description: Routine to increment refcount on a service
834 SHIM_SERVICE_T *service = (SHIM_SERVICE_T *)handle; in vchi_service_use() local
835 if (service) in vchi_service_use()
836 ret = vchiq_status_to_vchi(vchiq_use_service(service->handle)); in vchi_service_use()
846 * Description: Routine to decrement refcount on a service
854 SHIM_SERVICE_T *service = (SHIM_SERVICE_T *)handle; in vchi_service_release() local
855 if (service) in vchi_service_release()
857 vchiq_release_service(service->handle)); in vchi_service_release()