userio             57 drivers/input/serio/userio.c 	struct userio_device *userio = id->port_data;
userio             60 drivers/input/serio/userio.c 	spin_lock_irqsave(&userio->buf_lock, flags);
userio             62 drivers/input/serio/userio.c 	userio->buf[userio->head] = val;
userio             63 drivers/input/serio/userio.c 	userio->head = (userio->head + 1) % USERIO_BUFSIZE;
userio             65 drivers/input/serio/userio.c 	if (userio->head == userio->tail)
userio             69 drivers/input/serio/userio.c 	spin_unlock_irqrestore(&userio->buf_lock, flags);
userio             71 drivers/input/serio/userio.c 	wake_up_interruptible(&userio->waitq);
userio             78 drivers/input/serio/userio.c 	struct userio_device *userio;
userio             80 drivers/input/serio/userio.c 	userio = kzalloc(sizeof(struct userio_device), GFP_KERNEL);
userio             81 drivers/input/serio/userio.c 	if (!userio)
userio             84 drivers/input/serio/userio.c 	mutex_init(&userio->mutex);
userio             85 drivers/input/serio/userio.c 	spin_lock_init(&userio->buf_lock);
userio             86 drivers/input/serio/userio.c 	init_waitqueue_head(&userio->waitq);
userio             88 drivers/input/serio/userio.c 	userio->serio = kzalloc(sizeof(struct serio), GFP_KERNEL);
userio             89 drivers/input/serio/userio.c 	if (!userio->serio) {
userio             90 drivers/input/serio/userio.c 		kfree(userio);
userio             94 drivers/input/serio/userio.c 	userio->serio->write = userio_device_write;
userio             95 drivers/input/serio/userio.c 	userio->serio->port_data = userio;
userio             97 drivers/input/serio/userio.c 	file->private_data = userio;
userio            104 drivers/input/serio/userio.c 	struct userio_device *userio = file->private_data;
userio            106 drivers/input/serio/userio.c 	if (userio->running) {
userio            111 drivers/input/serio/userio.c 		serio_unregister_port(userio->serio);
userio            113 drivers/input/serio/userio.c 		kfree(userio->serio);
userio            116 drivers/input/serio/userio.c 	kfree(userio);
userio            124 drivers/input/serio/userio.c 	struct userio_device *userio = file->private_data;
userio            138 drivers/input/serio/userio.c 		spin_lock_irqsave(&userio->buf_lock, flags);
userio            140 drivers/input/serio/userio.c 		nonwrap_len = CIRC_CNT_TO_END(userio->head,
userio            141 drivers/input/serio/userio.c 					      userio->tail,
userio            145 drivers/input/serio/userio.c 			memcpy(buf, &userio->buf[userio->tail], copylen);
userio            146 drivers/input/serio/userio.c 			userio->tail = (userio->tail + copylen) %
userio            150 drivers/input/serio/userio.c 		spin_unlock_irqrestore(&userio->buf_lock, flags);
userio            166 drivers/input/serio/userio.c 		error = wait_event_interruptible(userio->waitq,
userio            167 drivers/input/serio/userio.c 						 userio->head != userio->tail);
userio            182 drivers/input/serio/userio.c 	struct userio_device *userio = file->private_data;
userio            194 drivers/input/serio/userio.c 	error = mutex_lock_interruptible(&userio->mutex);
userio            200 drivers/input/serio/userio.c 		if (!userio->serio->id.type) {
userio            208 drivers/input/serio/userio.c 		if (userio->running) {
userio            215 drivers/input/serio/userio.c 		userio->running = true;
userio            216 drivers/input/serio/userio.c 		serio_register_port(userio->serio);
userio            220 drivers/input/serio/userio.c 		if (userio->running) {
userio            227 drivers/input/serio/userio.c 		userio->serio->id.type = cmd.data;
userio            231 drivers/input/serio/userio.c 		if (!userio->running) {
userio            238 drivers/input/serio/userio.c 		serio_interrupt(userio->serio, cmd.data, 0);
userio            247 drivers/input/serio/userio.c 	mutex_unlock(&userio->mutex);
userio            253 drivers/input/serio/userio.c 	struct userio_device *userio = file->private_data;
userio            255 drivers/input/serio/userio.c 	poll_wait(file, &userio->waitq, wait);
userio            257 drivers/input/serio/userio.c 	if (userio->head != userio->tail)