Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/usbdev/src/hub.c

    r79ae36dd r49ce810  
    4242#include <usb/debug.h>
    4343#include <time.h>
    44 #include <async.h>
    4544
    4645/** How much time to wait between attempts to register endpoint 0:0.
     
    7271{
    7372        CHECK_CONNECTION(connection);
    74        
    75         async_exch_t *exch = async_exchange_begin(connection->hc_sess);
    76        
     73
    7774        sysarg_t address;
    78         int rc = async_req_2_1(exch, DEV_IFACE_ID(USBHC_DEV_IFACE),
     75        int rc = async_req_2_1(connection->hc_phone,
     76            DEV_IFACE_ID(USBHC_DEV_IFACE),
    7977            IPC_M_USBHC_REQUEST_ADDRESS, speed,
    8078            &address);
    81        
    82         async_exchange_end(exch);
    83        
    84         if (rc != EOK)
     79        if (rc != EOK) {
    8580                return (usb_address_t) rc;
    86        
    87         return (usb_address_t) address;
     81        } else {
     82                return (usb_address_t) address;
     83        }
    8884}
    8985
     
    9894{
    9995        CHECK_CONNECTION(connection);
    100        
    101         if (attached_device == NULL)
     96        if (attached_device == NULL) {
    10297                return EBADMEM;
    103        
    104         async_exch_t *exch = async_exchange_begin(connection->hc_sess);
    105         int rc = async_req_3_0(exch, DEV_IFACE_ID(USBHC_DEV_IFACE),
     98        }
     99
     100        return async_req_3_0(connection->hc_phone,
     101            DEV_IFACE_ID(USBHC_DEV_IFACE),
    106102            IPC_M_USBHC_BIND_ADDRESS,
    107103            attached_device->address, attached_device->handle);
    108         async_exchange_end(exch);
    109        
    110         return rc;
    111104}
    112105
     
    121114{
    122115        CHECK_CONNECTION(connection);
    123        
    124         async_exch_t *exch = async_exchange_begin(connection->hc_sess);
    125         int rc = async_req_2_0(exch, DEV_IFACE_ID(USBHC_DEV_IFACE),
     116
     117        return async_req_2_0(connection->hc_phone,
     118            DEV_IFACE_ID(USBHC_DEV_IFACE),
    126119            IPC_M_USBHC_RELEASE_ADDRESS, address);
    127         async_exchange_end(exch);
    128        
    129         return rc;
    130120}
    131121
     
    202192        usb_hc_connection_t hc_conn = {
    203193                .hc_handle = connection->hc_handle,
    204                 .hc_sess = NULL
     194                .hc_phone = -1
    205195        };
    206196
Note: See TracChangeset for help on using the changeset viewer.