Lines Matching defs:rtlusb
237 struct rtl_usb *rtlusb = rtl_usbdev(rtl_usbpriv(hw));
239 rtlusb->max_bulk_out_size = IS_HIGH_SPEED_USB(rtlusb->udev)
244 rtlusb->max_bulk_out_size);
247 u32 ep_num = rtlusb->ep_map.ep_mapping[i];
256 rtlusb->usb_tx_post_hdl =
258 rtlusb->usb_tx_cleanup =
260 rtlusb->usb_tx_aggregate_hdl =
265 init_usb_anchor(&rtlusb->tx_submitted);
267 skb_queue_head_init(&rtlusb->tx_skb_queue[i]);
268 init_usb_anchor(&rtlusb->tx_pending[i]);
279 struct rtl_usb *rtlusb = rtl_usbdev(usb_priv);
281 rtlusb->rx_max_size = rtlpriv->cfg->usb_interface_cfg->rx_max_size;
282 rtlusb->rx_urb_num = rtlpriv->cfg->usb_interface_cfg->rx_urb_num;
283 rtlusb->in_ep = rtlpriv->cfg->usb_interface_cfg->in_ep_num;
284 rtlusb->usb_rx_hdl = rtlpriv->cfg->usb_interface_cfg->usb_rx_hdl;
285 rtlusb->usb_rx_segregate_hdl =
289 rtlusb->rx_max_size, rtlusb->rx_urb_num, rtlusb->in_ep);
290 init_usb_anchor(&rtlusb->rx_submitted);
291 init_usb_anchor(&rtlusb->rx_cleanup_urbs);
293 skb_queue_head_init(&rtlusb->rx_queue);
294 tasklet_setup(&rtlusb->rx_work_tasklet, _rtl_rx_work);
303 struct rtl_usb *rtlusb = rtl_usbdev(usb_priv);
306 struct usb_interface *usb_intf = rtlusb->intf;
309 rtlusb->out_ep_nums = rtlusb->in_ep_nums = 0;
316 rtlusb->in_ep_nums++;
318 rtlusb->out_ep_nums++;
325 if (rtlusb->in_ep_nums < rtlpriv->cfg->usb_interface_cfg->in_ep_num) {
329 if (rtlusb->out_ep_nums == 0) {
335 rtlusb->usb_mq_to_hwq = rtlpriv->cfg->usb_interface_cfg->usb_mq_to_hwq;
346 struct rtl_usb *rtlusb = rtl_usbdev(rtl_usbpriv(hw));
368 rtlusb->acm_method = EACMWAY2_SW;
372 rtlusb->irq_mask[0] = 0xFFFFFFFF;
374 rtlusb->irq_mask[1] = 0xFFFFFFFF;
375 rtlusb->disablehwsm = true;
380 static int _rtl_prep_rx_urb(struct ieee80211_hw *hw, struct rtl_usb *rtlusb,
385 buf = usb_alloc_coherent(rtlusb->udev, rtlusb->rx_max_size, gfp_mask,
392 usb_fill_bulk_urb(urb, rtlusb->udev,
393 usb_rcvbulkpipe(rtlusb->udev, rtlusb->in_ep),
394 buf, rtlusb->rx_max_size, _rtl_rx_completed, rtlusb);
496 struct rtl_usb *rtlusb = rtl_usbdev(rtl_usbpriv(hw));
499 if (rtlusb->usb_rx_segregate_hdl)
500 rtlusb->usb_rx_segregate_hdl(hw, skb, &rx_queue);
513 struct rtl_usb *rtlusb = from_tasklet(rtlusb, t, rx_work_tasklet);
514 struct ieee80211_hw *hw = usb_get_intfdata(rtlusb->intf);
517 while ((skb = skb_dequeue(&rtlusb->rx_queue))) {
518 if (unlikely(IS_USB_STOP(rtlusb))) {
523 if (likely(!rtlusb->usb_rx_segregate_hdl)) {
572 struct rtl_usb *rtlusb = (struct rtl_usb *)_urb->context;
575 if (unlikely(IS_USB_STOP(rtlusb)))
591 qlen = skb_queue_len(&rtlusb->rx_queue);
607 _rtl_install_trx_info(rtlusb, skb, rtlusb->in_ep);
617 skb_queue_tail(&rtlusb->rx_queue, skb);
618 tasklet_schedule(&rtlusb->rx_work_tasklet);
635 usb_anchor_urb(_urb, &rtlusb->rx_submitted);
647 usb_anchor_urb(_urb, &rtlusb->rx_cleanup_urbs);
655 struct rtl_usb *rtlusb = rtl_usbdev(rtl_usbpriv(hw));
658 usb_kill_anchored_urbs(&rtlusb->rx_submitted);
660 tasklet_kill(&rtlusb->rx_work_tasklet);
668 skb_queue_purge(&rtlusb->rx_queue);
670 while ((urb = usb_get_from_anchor(&rtlusb->rx_cleanup_urbs))) {
682 struct rtl_usb *rtlusb = rtl_usbdev(rtl_usbpriv(hw));
684 WARN_ON(0 == rtlusb->rx_urb_num);
686 WARN_ON(rtlusb->rx_max_size < 1600);
688 for (i = 0; i < rtlusb->rx_urb_num; i++) {
694 err = _rtl_prep_rx_urb(hw, rtlusb, urb, GFP_KERNEL);
701 usb_anchor_urb(urb, &rtlusb->rx_submitted);
713 usb_kill_anchored_urbs(&rtlusb->rx_submitted);
722 struct rtl_usb *rtlusb = rtl_usbdev(rtl_usbpriv(hw));
729 SET_USB_START(rtlusb);
745 struct rtl_usb *rtlusb = rtl_usbdev(rtl_usbpriv(hw));
753 while ((_skb = skb_dequeue(&rtlusb->tx_skb_queue[i]))) {
754 rtlusb->usb_tx_cleanup(hw, _skb);
760 usb_kill_anchored_urbs(&rtlusb->tx_pending[i]);
762 usb_kill_anchored_urbs(&rtlusb->tx_submitted);
775 struct rtl_usb *rtlusb = rtl_usbdev(rtl_usbpriv(hw));
782 SET_USB_STOP(rtlusb);
785 usb_kill_anchored_urbs(&rtlusb->rx_submitted);
787 tasklet_kill(&rtlusb->rx_work_tasklet);
793 skb_queue_purge(&rtlusb->rx_queue);
795 while ((urb = usb_get_from_anchor(&rtlusb->rx_cleanup_urbs))) {
807 struct rtl_usb *rtlusb = rtl_usbdev(rtl_usbpriv(hw));
809 usb_anchor_urb(_urb, &rtlusb->tx_submitted);
825 struct rtl_usb *rtlusb = rtl_usbdev(rtl_usbpriv(hw));
828 rtlusb->usb_tx_post_hdl(hw, urb, skb);
848 struct rtl_usb *rtlusb = (struct rtl_usb *)info->rate_driver_data[0];
849 struct ieee80211_hw *hw = usb_get_intfdata(rtlusb->intf);
852 if (unlikely(IS_USB_STOP(rtlusb)))
864 struct rtl_usb *rtlusb = rtl_usbdev(rtl_usbpriv(hw));
871 _rtl_install_trx_info(rtlusb, skb, ep_num);
872 usb_fill_bulk_urb(_urb, rtlusb->udev, usb_sndbulkpipe(rtlusb->udev,
881 struct rtl_usb *rtlusb = rtl_usbdev(rtl_usbpriv(hw));
885 WARN_ON(NULL == rtlusb->usb_tx_aggregate_hdl);
886 if (unlikely(IS_USB_STOP(rtlusb))) {
891 ep_num = rtlusb->ep_map.ep_mapping[qnum];
943 struct rtl_usb *rtlusb = rtl_usbdev(rtl_usbpriv(hw));
951 hw_queue = rtlusb->usb_mq_to_hwq(fc, skb_get_queue_mapping(skb));
1081 struct rtl_usb *rtlusb = rtl_usbdev(rtl_usbpriv(hw));
1103 usb_put_dev(rtlusb->udev);