Home
last modified time | relevance | path

Searched refs:rpipe (Results 1 – 5 of 5) sorted by relevance

/Linux-v4.19/drivers/usb/wusbcore/
Dwa-rpipe.c126 static void rpipe_init(struct wa_rpipe *rpipe) in rpipe_init() argument
128 kref_init(&rpipe->refcnt); in rpipe_init()
129 spin_lock_init(&rpipe->seg_lock); in rpipe_init()
130 INIT_LIST_HEAD(&rpipe->seg_list); in rpipe_init()
131 INIT_LIST_HEAD(&rpipe->list_node); in rpipe_init()
158 struct wa_rpipe *rpipe = container_of(_rpipe, struct wa_rpipe, refcnt); in rpipe_destroy() local
159 u8 index = le16_to_cpu(rpipe->descr.wRPipeIndex); in rpipe_destroy()
161 if (rpipe->ep) in rpipe_destroy()
162 rpipe->ep->hcpriv = NULL; in rpipe_destroy()
163 rpipe_put_idx(rpipe->wa, index); in rpipe_destroy()
[all …]
Dwa-xfer.c96 static int __wa_xfer_delayed_run(struct wa_rpipe *rpipe, int *dto_waiting);
223 struct wa_rpipe *rpipe; in wa_check_for_delayed_rpipes() local
227 rpipe = list_first_entry(&wa->rpipe_delayed_list, in wa_check_for_delayed_rpipes()
229 __wa_xfer_delayed_run(rpipe, &dto_waiting); in wa_check_for_delayed_rpipes()
234 le16_to_cpu(rpipe->descr.wRPipeIndex)); in wa_check_for_delayed_rpipes()
235 list_del_init(&rpipe->list_node); in wa_check_for_delayed_rpipes()
242 static void wa_add_delayed_rpipe(struct wahc *wa, struct wa_rpipe *rpipe) in wa_add_delayed_rpipe() argument
248 if (list_empty(&rpipe->list_node)) { in wa_add_delayed_rpipe()
250 __func__, le16_to_cpu(rpipe->descr.wRPipeIndex)); in wa_add_delayed_rpipe()
251 list_add_tail(&rpipe->list_node, &wa->rpipe_delayed_list); in wa_add_delayed_rpipe()
[all …]
Dwa-hc.h309 void __rpipe_get(struct wa_rpipe *rpipe) in __rpipe_get() argument
311 kref_get(&rpipe->refcnt); in __rpipe_get()
315 static inline void rpipe_put(struct wa_rpipe *rpipe) in rpipe_put() argument
317 kref_put(&rpipe->refcnt, rpipe_destroy); in rpipe_put()
325 static inline void rpipe_avail_dec(struct wa_rpipe *rpipe) in rpipe_avail_dec() argument
327 atomic_dec(&rpipe->segs_available); in rpipe_avail_dec()
333 static inline int rpipe_avail_inc(struct wa_rpipe *rpipe) in rpipe_avail_inc() argument
335 return atomic_inc_return(&rpipe->segs_available) > 0 in rpipe_avail_inc()
336 && !list_empty(&rpipe->seg_list); in rpipe_avail_inc()
DMakefile25 wa-rpipe.o \
/Linux-v4.19/Documentation/usb/
DWUSB-Design-overview.txt345 Data is sent and received through /Remote Pipes/ (rpipes). An rpipe is
350 when doing a data transfer (xfer), first the rpipe has to be aimed and
400 rpipe to the endpoint where we have to transmit, create a transfer