Lines Matching refs:asyreq

206         struct fw_asyreq *asyreq;
209 asyreq = (struct fw_asyreq *)malloc(sizeof(struct fw_asyreq_t) + 16);
210 if (asyreq == NULL)
211 err(EX_SOFTWARE, "%s:asyreq malloc", __func__);
212 asyreq->req.len = 16;
214 asyreq->req.type = FWASREQNODE;
215 asyreq->pkt.mode.rreqq.dst = FWLOCALBUS | node;
217 asyreq->req.type = FWASREQEUI;
218 asyreq->req.dst.eui = eui;
220 asyreq->pkt.mode.rreqq.tlrt = 0;
222 asyreq->pkt.mode.rreqq.tcode = FWTCODE_RREQQ;
224 asyreq->pkt.mode.rreqq.tcode = FWTCODE_WREQQ;
226 asyreq->pkt.mode.rreqq.dest_hi = 0xffff;
227 asyreq->pkt.mode.rreqq.dest_lo = addr_lo;
229 qld = (u_int32_t *)&asyreq->pkt;
231 asyreq->pkt.mode.wreqq.data = htonl(data);
233 if (ioctl(fd, FW_ASYREQ, asyreq) < 0) {
237 free(asyreq);
262 struct fw_asyreq *asyreq;
264 asyreq = (struct fw_asyreq *)malloc(sizeof(struct fw_asyreq_t) + 12);
265 if (asyreq == NULL)
266 err(EX_SOFTWARE, "%s:asyreq malloc", __func__);
267 asyreq->req.len = 12;
268 asyreq->req.type = FWASREQNODE;
269 asyreq->pkt.mode.ld[0] = 0;
270 asyreq->pkt.mode.ld[1] = 0;
271 asyreq->pkt.mode.common.tcode = FWTCODE_PHY;
273 asyreq->pkt.mode.ld[1] |= ((root_node << 24) | (1 << 23));
275 asyreq->pkt.mode.ld[1] |= ((1 << 22) | (gap_count << 16));
276 asyreq->pkt.mode.ld[2] = ~asyreq->pkt.mode.ld[1];
281 if (ioctl(fd, FW_ASYREQ, asyreq) < 0)
283 free(asyreq);
289 struct fw_asyreq *asyreq;
291 asyreq = (struct fw_asyreq *)malloc(sizeof(struct fw_asyreq_t) + 12);
292 if (asyreq == NULL)
293 err(EX_SOFTWARE, "%s:asyreq malloc", __func__);
294 asyreq->req.len = 12;
295 asyreq->req.type = FWASREQNODE;
296 asyreq->pkt.mode.common.tcode = FWTCODE_PHY;
297 asyreq->pkt.mode.ld[1] |= (1 << 30) | ((node & 0x3f) << 24);
298 asyreq->pkt.mode.ld[2] = ~asyreq->pkt.mode.ld[1];
300 if (ioctl(fd, FW_ASYREQ, asyreq) < 0)
302 free(asyreq);
308 struct fw_asyreq *asyreq;
310 asyreq = (struct fw_asyreq *)malloc(sizeof(struct fw_asyreq_t) + 16);
311 if (asyreq == NULL)
312 err(EX_SOFTWARE, "%s:asyreq malloc", __func__);
313 asyreq->req.len = 16;
314 asyreq->req.type = FWASREQNODE;
315 asyreq->pkt.mode.wreqq.dst = FWLOCALBUS | (node & 0x3f);
316 asyreq->pkt.mode.wreqq.tlrt = 0;
317 asyreq->pkt.mode.wreqq.tcode = FWTCODE_WREQQ;
319 asyreq->pkt.mode.wreqq.dest_hi = 0xffff;
320 asyreq->pkt.mode.wreqq.dest_lo = 0xf0000000 | RESET_START;
322 asyreq->pkt.mode.wreqq.data = htonl(0x1);
324 if (ioctl(fd, FW_ASYREQ, asyreq) < 0)
326 free(asyreq);