Ignore:
File:
1 edited

Legend:

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

    r58563585 r3e6a98c5  
    4040#include <fibril_synch.h>
    4141#include <usb/usb.h>
    42 #include <atomic.h>
    4342
    4443/** Host controller side endpoint structure. */
    4544typedef struct endpoint {
    46         /** Reference count. */
    47         atomic_t refcnt;       
    4845        /** Part of linked list. */
    4946        link_t link;
     
    6057        /** Maximum size of data packets. */
    6158        size_t max_packet_size;
    62         /** Additional opportunities per uframe */
    63         unsigned packets;
    6459        /** Necessary bandwidth. */
    6560        size_t bandwidth;
     
    7267        /** Signals change of active status. */
    7368        fibril_condvar_t avail;
    74         /** High speed TT data */
    75         struct {
    76                 usb_address_t address;
    77                 unsigned port;
    78         } tt;
    7969        /** Optional device specific data. */
    8070        struct {
     
    8878} endpoint_t;
    8979
    90 extern endpoint_t *endpoint_create(usb_address_t, usb_endpoint_t,
    91     usb_direction_t, usb_transfer_type_t, usb_speed_t, size_t, unsigned int,
    92     size_t, usb_address_t, unsigned int);
    93 extern void endpoint_destroy(endpoint_t *);
     80endpoint_t * endpoint_create(usb_address_t address, usb_endpoint_t endpoint,
     81    usb_direction_t direction, usb_transfer_type_t type, usb_speed_t speed,
     82    size_t max_packet_size, size_t bw);
     83void endpoint_destroy(endpoint_t *instance);
    9484
    95 extern void endpoint_add_ref(endpoint_t *);
    96 extern void endpoint_del_ref(endpoint_t *);
     85void endpoint_set_hc_data(endpoint_t *instance,
     86    void *data, int (*toggle_get)(void *), void (*toggle_set)(void *, int));
     87void endpoint_clear_hc_data(endpoint_t *instance);
    9788
    98 extern void endpoint_set_hc_data(endpoint_t *, void *, int (*)(void *),
    99     void (*)(void *, int));
    100 extern void endpoint_clear_hc_data(endpoint_t *);
     89void endpoint_use(endpoint_t *instance);
     90void endpoint_release(endpoint_t *instance);
    10191
    102 extern void endpoint_use(endpoint_t *);
    103 extern void endpoint_release(endpoint_t *);
    104 
    105 extern int endpoint_toggle_get(endpoint_t *);
    106 extern void endpoint_toggle_set(endpoint_t *, int);
     92int endpoint_toggle_get(endpoint_t *instance);
     93void endpoint_toggle_set(endpoint_t *instance, int toggle);
    10794
    10895/** list_get_instance wrapper.
    109  *
    11096 * @param item Pointer to link member.
    111  *
    11297 * @return Pointer to endpoint_t structure.
    113  *
    11498 */
    11599static inline endpoint_t * endpoint_get_instance(link_t *item)
     
    118102}
    119103#endif
    120 
    121104/**
    122105 * @}
Note: See TracChangeset for help on using the changeset viewer.