• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-WNDR4500-V1.0.1.40_1.0.68/src/linux/linux-2.6/drivers/usb/misc/

Lines Matching refs:rq

94 	struct uss720_async_request *rq = container_of(kref, struct uss720_async_request, ref_count);
95 struct parport_uss720_private *priv = rq->priv;
98 if (likely(rq->urb))
99 usb_free_urb(rq->urb);
101 list_del_init(&rq->asynclist);
103 kfree(rq);
111 struct uss720_async_request *rq;
115 rq = urb->context;
116 priv = rq->priv;
120 } else if (rq->dr.bRequest == 3) {
121 memcpy(priv->reg, rq->reg, sizeof(priv->reg));
123 if (rq->reg[2] & rq->reg[1] & 0x10 && pp)
126 complete(&rq->compl);
127 kref_put(&rq->ref_count, destroy_async);
135 struct uss720_async_request *rq;
144 rq = kmalloc(sizeof(struct uss720_async_request), mem_flags);
145 if (!rq) {
149 kref_init(&rq->ref_count);
150 INIT_LIST_HEAD(&rq->asynclist);
151 init_completion(&rq->compl);
153 rq->priv = priv;
154 rq->urb = usb_alloc_urb(0, mem_flags);
155 if (!rq->urb) {
156 kref_put(&rq->ref_count, destroy_async);
160 rq->dr.bRequestType = requesttype;
161 rq->dr.bRequest = request;
162 rq->dr.wValue = cpu_to_le16(value);
163 rq->dr.wIndex = cpu_to_le16(index);
164 rq->dr.wLength = cpu_to_le16((request == 3) ? sizeof(rq->reg) : 0);
165 usb_fill_control_urb(rq->urb, usbdev, (requesttype & 0x80) ? usb_rcvctrlpipe(usbdev, 0) : usb_sndctrlpipe(usbdev, 0),
166 (unsigned char *)&rq->dr,
167 (request == 3) ? rq->reg : NULL, (request == 3) ? sizeof(rq->reg) : 0, async_complete, rq);
168 /* rq->urb->transfer_flags |= URB_ASYNC_UNLINK; */
170 list_add_tail(&rq->asynclist, &priv->asynclist);
172 ret = usb_submit_urb(rq->urb, mem_flags);
174 kref_get(&rq->ref_count);
175 return rq;
177 kref_put(&rq->ref_count, destroy_async);
184 struct uss720_async_request *rq;
189 list_for_each_entry(rq, &priv->asynclist, asynclist) {
190 usb_unlink_urb(rq->urb);
202 struct uss720_async_request *rq;
211 rq = submit_async_request(priv, 3, 0xc0, ((unsigned int)reg) << 8, 0, mem_flags);
212 if (!rq) {
217 kref_put(&rq->ref_count, destroy_async);
220 if (wait_for_completion_timeout(&rq->compl, HZ)) {
221 ret = rq->urb->status;
225 kref_put(&rq->ref_count, destroy_async);
236 struct uss720_async_request *rq;
241 rq = submit_async_request(priv, 4, 0x40, (((unsigned int)reg) << 8) | val, 0, mem_flags);
242 if (!rq) {
246 kref_put(&rq->ref_count, destroy_async);