Lines Matching refs:line
25 struct mutex lock; /* Protects line operation */
61 struct virtio_gpio_line *line = &vgpio->lines[gpio];
62 struct virtio_gpio_request *req = &line->req;
69 * Prevent concurrent requests for the same line since we have
70 * pre-allocated request/response buffers for each GPIO line. Moreover
71 * Linux always accesses a GPIO line sequentially, so this locking shall
74 mutex_lock(&line->lock);
85 line->rxlen = 0;
86 reinit_completion(&line->completion);
93 ret = virtqueue_add_sgs(vgpio->request_vq, sgs, 1, 1, line, GFP_KERNEL);
103 wait_for_completion(&line->completion);
111 if (unlikely(line->rxlen != rxlen)) {
113 rxlen, line->rxlen);
122 mutex_unlock(&line->lock);
129 struct virtio_gpio_line *line = &vgpio->lines[gpio];
130 struct virtio_gpio_response *res = &line->res;
419 * Find GPIO line number from the offset of irq_line within the
438 struct virtio_gpio_line *line;
442 line = virtqueue_get_buf(vq, &len);
443 if (!line)
446 line->rxlen = len;
447 complete(&line->completion);