Changeset 4fd3faf in mainline for uspace/lib/usb


Ignore:
Timestamp:
2011-04-08T11:58:18Z (14 years ago)
Author:
Jan Vesely <jano.vesely@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
ffc63b0
Parents:
cd1cec3b
Message:

Use per endpoint communication mutex

Location:
uspace/lib/usb
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/usb/include/usb/host/endpoint.h

    rcd1cec3b r4fd3faf  
    5353        fibril_mutex_t guard;
    5454        fibril_condvar_t avail;
    55         bool active;
     55        volatile bool active;
    5656        link_t same_device_eps;
    5757} endpoint_t;
  • uspace/lib/usb/src/host/batch.c

    rcd1cec3b r4fd3faf  
    7979        instance->error = EOK;
    8080        instance->ep = ep;
     81        endpoint_use(instance->ep);
    8182}
    8283/*----------------------------------------------------------------------------*/
     
    8990{
    9091        assert(instance);
     92        assert(instance->ep);
     93        endpoint_release(instance->ep);
    9194        instance->next_step(instance);
    9295}
  • uspace/lib/usb/src/host/endpoint.c

    rcd1cec3b r4fd3faf  
    6060{
    6161        assert(instance);
     62        assert(!instance->active);
    6263        list_remove(&instance->same_device_eps);
    6364        free(instance);
     
    7980        fibril_mutex_lock(&instance->guard);
    8081        instance->active = false;
     82        fibril_mutex_unlock(&instance->guard);
    8183        fibril_condvar_signal(&instance->avail);
    82         fibril_mutex_unlock(&instance->guard);
    8384}
    8485/*----------------------------------------------------------------------------*/
Note: See TracChangeset for help on using the changeset viewer.