Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/c/generic/devman.c

    r4db43721 r0b5a4131  
    4242#include <devman.h>
    4343#include <async.h>
    44 #include <fibril_synch.h>
    4544#include <errno.h>
    4645#include <malloc.h>
     
    5150static int devman_phone_client = -1;
    5251
    53 static FIBRIL_MUTEX_INITIALIZE(devman_phone_mutex);
    54 
    5552int devman_get_phone(devman_interface_t iface, unsigned int flags)
    5653{
    5754        switch (iface) {
    5855        case DEVMAN_DRIVER:
    59                 fibril_mutex_lock(&devman_phone_mutex);
    60                 if (devman_phone_driver >= 0) {
    61                         fibril_mutex_unlock(&devman_phone_mutex);
     56                if (devman_phone_driver >= 0)
    6257                        return devman_phone_driver;
    63                 }
    6458               
    6559                if (flags & IPC_FLAG_BLOCKING)
    66                         devman_phone_driver = async_connect_me_to_blocking(
    67                             PHONE_NS, SERVICE_DEVMAN, DEVMAN_DRIVER, 0);
     60                        devman_phone_driver = ipc_connect_me_to_blocking(PHONE_NS,
     61                            SERVICE_DEVMAN, DEVMAN_DRIVER, 0);
    6862                else
    69                         devman_phone_driver = async_connect_me_to(PHONE_NS,
     63                        devman_phone_driver = ipc_connect_me_to(PHONE_NS,
    7064                            SERVICE_DEVMAN, DEVMAN_DRIVER, 0);
    7165               
    72                 fibril_mutex_unlock(&devman_phone_mutex);
    7366                return devman_phone_driver;
    7467        case DEVMAN_CLIENT:
    75                 fibril_mutex_lock(&devman_phone_mutex);
    76                 if (devman_phone_client >= 0) {
    77                         fibril_mutex_unlock(&devman_phone_mutex);
     68                if (devman_phone_client >= 0)
    7869                        return devman_phone_client;
    79                 }
    80                
    81                 if (flags & IPC_FLAG_BLOCKING) {
    82                         devman_phone_client = async_connect_me_to_blocking(
    83                             PHONE_NS, SERVICE_DEVMAN, DEVMAN_CLIENT, 0);
    84                 } else {
    85                         devman_phone_client = async_connect_me_to(PHONE_NS,
     70               
     71                if (flags & IPC_FLAG_BLOCKING)
     72                        devman_phone_client = ipc_connect_me_to_blocking(PHONE_NS,
    8673                            SERVICE_DEVMAN, DEVMAN_CLIENT, 0);
    87                 }
    88                
    89                 fibril_mutex_unlock(&devman_phone_mutex);
     74                else
     75                        devman_phone_client = ipc_connect_me_to(PHONE_NS,
     76                            SERVICE_DEVMAN, DEVMAN_CLIENT, 0);
     77               
    9078                return devman_phone_client;
    9179        default:
     
    10795        aid_t req = async_send_2(phone, DEVMAN_DRIVER_REGISTER, 0, 0, &answer);
    10896       
    109         sysarg_t retval = async_data_write_start(phone, name, str_size(name));
     97        ipcarg_t retval = async_data_write_start(phone, name, str_size(name));
    11098        if (retval != EOK) {
    11199                async_wait_for(req, NULL);
     
    116104        async_set_client_connection(conn);
    117105       
    118         sysarg_t callback_phonehash;
     106        ipcarg_t callback_phonehash;
    119107        ipc_connect_to_me(phone, 0, 0, 0, &callback_phonehash);
    120108        async_wait_for(req, &retval);
     
    128116{
    129117        ipc_call_t answer;
    130         aid_t req = async_send_1(phone, DEVMAN_ADD_MATCH_ID, match_id->score, &answer);
     118        async_send_1(phone, DEVMAN_ADD_MATCH_ID, match_id->score, &answer);
    131119        int retval = async_data_write_start(phone, match_id->id, str_size(match_id->id));
    132         async_wait_for(req, NULL);
    133         return retval;
     120        return retval; 
    134121}
    135122
     
    167154        aid_t req = async_send_2(phone, DEVMAN_ADD_CHILD_DEVICE, parent_handle, match_count, &answer);
    168155
    169         sysarg_t retval = async_data_write_start(phone, name, str_size(name));
     156        ipcarg_t retval = async_data_write_start(phone, name, str_size(name));
    170157        if (retval != EOK) {
    171158                async_wait_for(req, NULL);
     
    204191        aid_t req = async_send_1(phone, DEVMAN_ADD_DEVICE_TO_CLASS, devman_handle, &answer);
    205192       
    206         sysarg_t retval = async_data_write_start(phone, class_name, str_size(class_name));
     193        ipcarg_t retval = async_data_write_start(phone, class_name, str_size(class_name));
    207194        if (retval != EOK) {
    208195                async_wait_for(req, NULL);
     
    242229       
    243230        if (flags & IPC_FLAG_BLOCKING) {
    244                 phone = async_connect_me_to_blocking(PHONE_NS, SERVICE_DEVMAN,
     231                phone = ipc_connect_me_to_blocking(PHONE_NS, SERVICE_DEVMAN,
    245232                    DEVMAN_CONNECT_TO_DEVICE, handle);
    246233        } else {
    247                 phone = async_connect_me_to(PHONE_NS, SERVICE_DEVMAN,
     234                phone = ipc_connect_me_to(PHONE_NS, SERVICE_DEVMAN,
    248235                    DEVMAN_CONNECT_TO_DEVICE, handle);
    249236        }
     
    257244       
    258245        if (flags & IPC_FLAG_BLOCKING) {
    259                 phone = async_connect_me_to_blocking(PHONE_NS, SERVICE_DEVMAN,
     246                phone = ipc_connect_me_to_blocking(PHONE_NS, SERVICE_DEVMAN,
    260247                    DEVMAN_CONNECT_TO_PARENTS_DEVICE, handle);
    261248        } else {
    262                 phone = async_connect_me_to(PHONE_NS, SERVICE_DEVMAN,
     249                phone = ipc_connect_me_to(PHONE_NS, SERVICE_DEVMAN,
    263250                    DEVMAN_CONNECT_TO_PARENTS_DEVICE, handle);
    264251        }
     
    280267            &answer);
    281268       
    282         sysarg_t retval = async_data_write_start(phone, pathname, str_size(pathname));
     269        ipcarg_t retval = async_data_write_start(phone, pathname, str_size(pathname));
    283270        if (retval != EOK) {
    284271                async_wait_for(req, NULL);
Note: See TracChangeset for help on using the changeset viewer.