Lines Matching refs:devpriv
154 struct vmk80xx_private *devpriv = dev->private; in vmk80xx_do_bulk_msg() local
162 tx_addr = devpriv->ep_tx->bEndpointAddress; in vmk80xx_do_bulk_msg()
163 rx_addr = devpriv->ep_rx->bEndpointAddress; in vmk80xx_do_bulk_msg()
171 size = usb_endpoint_maxp(devpriv->ep_tx); in vmk80xx_do_bulk_msg()
173 usb_bulk_msg(usb, tx_pipe, devpriv->usb_tx_buf, in vmk80xx_do_bulk_msg()
174 size, NULL, devpriv->ep_tx->bInterval); in vmk80xx_do_bulk_msg()
175 usb_bulk_msg(usb, rx_pipe, devpriv->usb_rx_buf, size, NULL, HZ * 10); in vmk80xx_do_bulk_msg()
180 struct vmk80xx_private *devpriv = dev->private; in vmk80xx_read_packet() local
185 if (devpriv->model == VMK8061_MODEL) { in vmk80xx_read_packet()
190 ep = devpriv->ep_rx; in vmk80xx_read_packet()
192 return usb_interrupt_msg(usb, pipe, devpriv->usb_rx_buf, in vmk80xx_read_packet()
199 struct vmk80xx_private *devpriv = dev->private; in vmk80xx_write_packet() local
204 devpriv->usb_tx_buf[0] = cmd; in vmk80xx_write_packet()
206 if (devpriv->model == VMK8061_MODEL) { in vmk80xx_write_packet()
211 ep = devpriv->ep_tx; in vmk80xx_write_packet()
213 return usb_interrupt_msg(usb, pipe, devpriv->usb_tx_buf, in vmk80xx_write_packet()
220 struct vmk80xx_private *devpriv = dev->private; in vmk80xx_reset_device() local
224 size = usb_endpoint_maxp(devpriv->ep_tx); in vmk80xx_reset_device()
225 memset(devpriv->usb_tx_buf, 0, size); in vmk80xx_reset_device()
238 struct vmk80xx_private *devpriv = dev->private; in vmk80xx_ai_insn_read() local
243 down(&devpriv->limit_sem); in vmk80xx_ai_insn_read()
246 switch (devpriv->model) { in vmk80xx_ai_insn_read()
257 devpriv->usb_tx_buf[0] = VMK8061_CMD_RD_AI; in vmk80xx_ai_insn_read()
258 devpriv->usb_tx_buf[VMK8061_CH_REG] = chan; in vmk80xx_ai_insn_read()
266 if (devpriv->model == VMK8055_MODEL) { in vmk80xx_ai_insn_read()
267 data[n] = devpriv->usb_rx_buf[reg[0]]; in vmk80xx_ai_insn_read()
272 data[n] = devpriv->usb_rx_buf[reg[0]] + 256 * in vmk80xx_ai_insn_read()
273 devpriv->usb_rx_buf[reg[1]]; in vmk80xx_ai_insn_read()
276 up(&devpriv->limit_sem); in vmk80xx_ai_insn_read()
286 struct vmk80xx_private *devpriv = dev->private; in vmk80xx_ao_insn_write() local
292 down(&devpriv->limit_sem); in vmk80xx_ao_insn_write()
295 switch (devpriv->model) { in vmk80xx_ao_insn_write()
306 devpriv->usb_tx_buf[VMK8061_CH_REG] = chan; in vmk80xx_ao_insn_write()
311 devpriv->usb_tx_buf[reg] = data[n]; in vmk80xx_ao_insn_write()
317 up(&devpriv->limit_sem); in vmk80xx_ao_insn_write()
327 struct vmk80xx_private *devpriv = dev->private; in vmk80xx_ao_insn_read() local
332 down(&devpriv->limit_sem); in vmk80xx_ao_insn_read()
337 devpriv->usb_tx_buf[0] = VMK8061_CMD_RD_AO; in vmk80xx_ao_insn_read()
343 data[n] = devpriv->usb_rx_buf[reg + chan]; in vmk80xx_ao_insn_read()
346 up(&devpriv->limit_sem); in vmk80xx_ao_insn_read()
356 struct vmk80xx_private *devpriv = dev->private; in vmk80xx_di_insn_bits() local
361 down(&devpriv->limit_sem); in vmk80xx_di_insn_bits()
363 rx_buf = devpriv->usb_rx_buf; in vmk80xx_di_insn_bits()
365 if (devpriv->model == VMK8061_MODEL) { in vmk80xx_di_insn_bits()
367 devpriv->usb_tx_buf[0] = VMK8061_CMD_RD_DI; in vmk80xx_di_insn_bits()
375 if (devpriv->model == VMK8055_MODEL) in vmk80xx_di_insn_bits()
385 up(&devpriv->limit_sem); in vmk80xx_di_insn_bits()
395 struct vmk80xx_private *devpriv = dev->private; in vmk80xx_do_insn_bits() local
396 unsigned char *rx_buf = devpriv->usb_rx_buf; in vmk80xx_do_insn_bits()
397 unsigned char *tx_buf = devpriv->usb_tx_buf; in vmk80xx_do_insn_bits()
401 if (devpriv->model == VMK8061_MODEL) { in vmk80xx_do_insn_bits()
409 down(&devpriv->limit_sem); in vmk80xx_do_insn_bits()
418 if (devpriv->model == VMK8061_MODEL) { in vmk80xx_do_insn_bits()
429 up(&devpriv->limit_sem); in vmk80xx_do_insn_bits()
439 struct vmk80xx_private *devpriv = dev->private; in vmk80xx_cnt_insn_read() local
444 down(&devpriv->limit_sem); in vmk80xx_cnt_insn_read()
447 switch (devpriv->model) { in vmk80xx_cnt_insn_read()
458 devpriv->usb_tx_buf[0] = VMK8061_CMD_RD_CNT; in vmk80xx_cnt_insn_read()
466 if (devpriv->model == VMK8055_MODEL) in vmk80xx_cnt_insn_read()
467 data[n] = devpriv->usb_rx_buf[reg[0]]; in vmk80xx_cnt_insn_read()
469 data[n] = devpriv->usb_rx_buf[reg[0] * (chan + 1) + 1] in vmk80xx_cnt_insn_read()
470 + 256 * devpriv->usb_rx_buf[reg[1] * 2 + 2]; in vmk80xx_cnt_insn_read()
473 up(&devpriv->limit_sem); in vmk80xx_cnt_insn_read()
483 struct vmk80xx_private *devpriv = dev->private; in vmk80xx_cnt_insn_config() local
489 down(&devpriv->limit_sem); in vmk80xx_cnt_insn_config()
492 if (devpriv->model == VMK8055_MODEL) { in vmk80xx_cnt_insn_config()
500 devpriv->usb_tx_buf[reg] = 0x00; in vmk80xx_cnt_insn_config()
510 up(&devpriv->limit_sem); in vmk80xx_cnt_insn_config()
520 struct vmk80xx_private *devpriv = dev->private; in vmk80xx_cnt_insn_write() local
527 down(&devpriv->limit_sem); in vmk80xx_cnt_insn_write()
548 devpriv->usb_tx_buf[6 + chan] = val; in vmk80xx_cnt_insn_write()
554 up(&devpriv->limit_sem); in vmk80xx_cnt_insn_write()
564 struct vmk80xx_private *devpriv = dev->private; in vmk80xx_pwm_insn_read() local
570 down(&devpriv->limit_sem); in vmk80xx_pwm_insn_read()
572 tx_buf = devpriv->usb_tx_buf; in vmk80xx_pwm_insn_read()
573 rx_buf = devpriv->usb_rx_buf; in vmk80xx_pwm_insn_read()
587 up(&devpriv->limit_sem); in vmk80xx_pwm_insn_read()
597 struct vmk80xx_private *devpriv = dev->private; in vmk80xx_pwm_insn_write() local
603 down(&devpriv->limit_sem); in vmk80xx_pwm_insn_write()
605 tx_buf = devpriv->usb_tx_buf; in vmk80xx_pwm_insn_write()
633 up(&devpriv->limit_sem); in vmk80xx_pwm_insn_write()
640 struct vmk80xx_private *devpriv = dev->private; in vmk80xx_find_usb_endpoints() local
654 if (!devpriv->ep_rx) in vmk80xx_find_usb_endpoints()
655 devpriv->ep_rx = ep_desc; in vmk80xx_find_usb_endpoints()
661 if (!devpriv->ep_tx) in vmk80xx_find_usb_endpoints()
662 devpriv->ep_tx = ep_desc; in vmk80xx_find_usb_endpoints()
667 if (!devpriv->ep_rx || !devpriv->ep_tx) in vmk80xx_find_usb_endpoints()
670 if (!usb_endpoint_maxp(devpriv->ep_rx) || !usb_endpoint_maxp(devpriv->ep_tx)) in vmk80xx_find_usb_endpoints()
678 struct vmk80xx_private *devpriv = dev->private; in vmk80xx_alloc_usb_buffers() local
681 size = usb_endpoint_maxp(devpriv->ep_rx); in vmk80xx_alloc_usb_buffers()
682 devpriv->usb_rx_buf = kzalloc(size, GFP_KERNEL); in vmk80xx_alloc_usb_buffers()
683 if (!devpriv->usb_rx_buf) in vmk80xx_alloc_usb_buffers()
686 size = usb_endpoint_maxp(devpriv->ep_tx); in vmk80xx_alloc_usb_buffers()
687 devpriv->usb_tx_buf = kzalloc(size, GFP_KERNEL); in vmk80xx_alloc_usb_buffers()
688 if (!devpriv->usb_tx_buf) in vmk80xx_alloc_usb_buffers()
697 struct vmk80xx_private *devpriv = dev->private; in vmk80xx_init_subdevices() local
702 down(&devpriv->limit_sem); in vmk80xx_init_subdevices()
704 if (devpriv->model == VMK8055_MODEL) in vmk80xx_init_subdevices()
710 up(&devpriv->limit_sem); in vmk80xx_init_subdevices()
731 if (devpriv->model == VMK8061_MODEL) { in vmk80xx_init_subdevices()
762 if (devpriv->model == VMK8055_MODEL) { in vmk80xx_init_subdevices()
768 if (devpriv->model == VMK8061_MODEL) { in vmk80xx_init_subdevices()
778 up(&devpriv->limit_sem); in vmk80xx_init_subdevices()
788 struct vmk80xx_private *devpriv; in vmk80xx_auto_attach() local
798 devpriv = comedi_alloc_devpriv(dev, sizeof(*devpriv)); in vmk80xx_auto_attach()
799 if (!devpriv) in vmk80xx_auto_attach()
802 devpriv->model = board->model; in vmk80xx_auto_attach()
804 sema_init(&devpriv->limit_sem, 8); in vmk80xx_auto_attach()
814 usb_set_intfdata(intf, devpriv); in vmk80xx_auto_attach()
816 if (devpriv->model == VMK8055_MODEL) in vmk80xx_auto_attach()
825 struct vmk80xx_private *devpriv = dev->private; in vmk80xx_detach() local
827 if (!devpriv) in vmk80xx_detach()
830 down(&devpriv->limit_sem); in vmk80xx_detach()
834 kfree(devpriv->usb_rx_buf); in vmk80xx_detach()
835 kfree(devpriv->usb_tx_buf); in vmk80xx_detach()
837 up(&devpriv->limit_sem); in vmk80xx_detach()