Lines Matching refs:rx_list

90 	} rx_list;  member
590 list_add_tail(&lb->link, &priv->rx_list.head); in ps3_vuart_queue_rx_bytes()
591 priv->rx_list.bytes_held += bytes; in ps3_vuart_queue_rx_bytes()
622 spin_lock_irqsave(&priv->rx_list.lock, flags); in ps3_vuart_read()
626 while (priv->rx_list.bytes_held < bytes) { in ps3_vuart_read()
633 bytes - priv->rx_list.bytes_held); in ps3_vuart_read()
634 spin_unlock_irqrestore(&priv->rx_list.lock, flags); in ps3_vuart_read()
639 list_for_each_entry_safe(lb, n, &priv->rx_list.head, link) { in ps3_vuart_read()
645 priv->rx_list.bytes_held -= bytes_read; in ps3_vuart_read()
652 spin_unlock_irqrestore(&priv->rx_list.lock, flags); in ps3_vuart_read()
664 spin_unlock_irqrestore(&priv->rx_list.lock, flags); in ps3_vuart_read()
689 if (priv->rx_list.work.trigger) { in ps3_vuart_read_async()
697 spin_lock_irqsave(&priv->rx_list.lock, flags); in ps3_vuart_read_async()
698 if (priv->rx_list.bytes_held >= bytes) { in ps3_vuart_read_async()
701 schedule_work(&priv->rx_list.work.work); in ps3_vuart_read_async()
702 spin_unlock_irqrestore(&priv->rx_list.lock, flags); in ps3_vuart_read_async()
706 priv->rx_list.work.trigger = bytes; in ps3_vuart_read_async()
707 spin_unlock_irqrestore(&priv->rx_list.lock, flags); in ps3_vuart_read_async()
718 to_port_priv(dev)->rx_list.work.trigger = 0; in ps3_vuart_cancel_async()
799 spin_lock_irqsave(&priv->rx_list.lock, flags); in ps3_vuart_handle_interrupt_rx()
803 spin_unlock_irqrestore(&priv->rx_list.lock, flags); in ps3_vuart_handle_interrupt_rx()
807 if (priv->rx_list.work.trigger && priv->rx_list.bytes_held in ps3_vuart_handle_interrupt_rx()
808 >= priv->rx_list.work.trigger) { in ps3_vuart_handle_interrupt_rx()
810 __func__, __LINE__, priv->rx_list.work.trigger); in ps3_vuart_handle_interrupt_rx()
811 priv->rx_list.work.trigger = 0; in ps3_vuart_handle_interrupt_rx()
812 schedule_work(&priv->rx_list.work.work); in ps3_vuart_handle_interrupt_rx()
815 spin_unlock_irqrestore(&priv->rx_list.lock, flags); in ps3_vuart_handle_interrupt_rx()
1045 INIT_LIST_HEAD(&priv->rx_list.head); in ps3_vuart_probe()
1046 spin_lock_init(&priv->rx_list.lock); in ps3_vuart_probe()
1048 INIT_WORK(&priv->rx_list.work.work, ps3_vuart_work); in ps3_vuart_probe()
1049 priv->rx_list.work.trigger = 0; in ps3_vuart_probe()
1050 priv->rx_list.work.dev = dev; in ps3_vuart_probe()