Lines Matching defs:req
66 static void adb_iop_end_req(struct adb_request *req, int state)
68 req->complete = 1;
69 current_req = req->next;
70 if (req->done) (*req->done)(req);
82 struct adb_request *req;
87 req = current_req;
88 if ((adb_iop_state == sending) && req && req->reply_expected) {
105 struct adb_request *req;
113 req = current_req;
116 printk("adb_iop_listen %p: rcvd packet, %d bytes: %02X %02X", req,
133 if (req && (adb_iop_state != idle)) {
134 adb_iop_end_req(req, idle);
142 req->reply_len = amsg->count + 1;
143 memcpy(req->reply, &amsg->cmd, req->reply_len);
164 struct adb_request *req;
171 req = current_req;
172 if (!req) return;
177 printk("adb_iop_start %p: sending packet, %d bytes:", req, req->nbytes);
178 for (i = 0 ; i < req->nbytes ; i++)
179 printk(" %02X", (uint) req->data[i]);
187 amsg.count = req->nbytes - 2;
191 memcpy(&amsg.cmd, req->data + 1, req->nbytes - 1);
193 req->sent = 1;
200 iop_send_message(ADB_IOP, ADB_CHAN, req,
217 int adb_iop_send_request(struct adb_request *req, int sync)
221 err = adb_iop_write(req);
225 while (!req->complete) adb_iop_poll();
230 static int adb_iop_write(struct adb_request *req)
234 if ((req->nbytes < 2) || (req->data[0] != ADB_PACKET)) {
235 req->complete = 1;
241 req->next = NULL;
242 req->sent = 0;
243 req->complete = 0;
244 req->reply_len = 0;
247 last_req->next = req;
248 last_req = req;
250 current_req = req;
251 last_req = req;
273 struct adb_request req = {
279 adb_iop_write(&req);
280 while (!req.complete) {