Lines Matching refs:bi
491 struct hdlcdrv_ioctl bi;
499 if (copy_from_user(&bi, data, sizeof(bi)))
502 switch (bi.cmd) {
505 return s->ops->ioctl(dev, data, &bi, cmd);
509 bi.data.cp.tx_delay = s->ch_params.tx_delay;
510 bi.data.cp.tx_tail = s->ch_params.tx_tail;
511 bi.data.cp.slottime = s->ch_params.slottime;
512 bi.data.cp.ppersist = s->ch_params.ppersist;
513 bi.data.cp.fulldup = s->ch_params.fulldup;
519 s->ch_params.tx_delay = bi.data.cp.tx_delay;
520 s->ch_params.tx_tail = bi.data.cp.tx_tail;
521 s->ch_params.slottime = bi.data.cp.slottime;
522 s->ch_params.ppersist = bi.data.cp.ppersist;
523 s->ch_params.fulldup = bi.data.cp.fulldup;
528 bi.data.mp.iobase = dev->base_addr;
529 bi.data.mp.irq = dev->irq;
530 bi.data.mp.dma = dev->dma;
531 bi.data.mp.dma2 = s->ptt_out.dma2;
532 bi.data.mp.seriobase = s->ptt_out.seriobase;
533 bi.data.mp.pariobase = s->ptt_out.pariobase;
534 bi.data.mp.midiiobase = s->ptt_out.midiiobase;
540 dev->base_addr = bi.data.mp.iobase;
541 dev->irq = bi.data.mp.irq;
542 dev->dma = bi.data.mp.dma;
543 s->ptt_out.dma2 = bi.data.mp.dma2;
544 s->ptt_out.seriobase = bi.data.mp.seriobase;
545 s->ptt_out.pariobase = bi.data.mp.pariobase;
546 s->ptt_out.midiiobase = bi.data.mp.midiiobase;
550 bi.data.cs.ptt = hdlcdrv_ptt(s);
551 bi.data.cs.dcd = s->hdlcrx.dcd;
552 bi.data.cs.ptt_keyed = s->ptt_keyed;
553 bi.data.cs.tx_packets = dev->stats.tx_packets;
554 bi.data.cs.tx_errors = dev->stats.tx_errors;
555 bi.data.cs.rx_packets = dev->stats.rx_packets;
556 bi.data.cs.rx_errors = dev->stats.rx_errors;
560 bi.data.ocs.ptt = hdlcdrv_ptt(s);
561 bi.data.ocs.dcd = s->hdlcrx.dcd;
562 bi.data.ocs.ptt_keyed = s->ptt_keyed;
570 if (bi.data.calibrate > INT_MAX / s->par.bitrate)
572 s->hdlctx.calibrate = bi.data.calibrate * s->par.bitrate / 16;
581 bi.data.bits =
594 bi.data.bits =
603 strscpy(bi.data.drivername, s->ops->drvname,
604 sizeof(bi.data.drivername));
607 bi.data.drivername[0] = '\0';
611 if (copy_to_user(data, &bi, sizeof(bi)))