Lines Matching refs:fh

41 	struct lirc_fh *fh;  in lirc_raw_event()  local
84 list_for_each_entry(fh, &dev->lirc_fh, list) in lirc_raw_event()
85 kfifo_put(&fh->rawir, in lirc_raw_event()
104 list_for_each_entry(fh, &dev->lirc_fh, list) { in lirc_raw_event()
105 if (LIRC_IS_TIMEOUT(sample) && !fh->send_timeout_reports) in lirc_raw_event()
107 if (kfifo_put(&fh->rawir, sample)) in lirc_raw_event()
108 wake_up_poll(&fh->wait_poll, EPOLLIN | EPOLLRDNORM); in lirc_raw_event()
122 struct lirc_fh *fh; in lirc_scancode_event() local
127 list_for_each_entry(fh, &dev->lirc_fh, list) { in lirc_scancode_event()
128 if (kfifo_put(&fh->scancodes, *lsc)) in lirc_scancode_event()
129 wake_up_poll(&fh->wait_poll, EPOLLIN | EPOLLRDNORM); in lirc_scancode_event()
139 struct lirc_fh *fh = kzalloc(sizeof(*fh), GFP_KERNEL); in lirc_open() local
143 if (!fh) in lirc_open()
154 if (kfifo_alloc(&fh->rawir, MAX_IR_EVENT_SIZE, GFP_KERNEL)) { in lirc_open()
161 if (kfifo_alloc(&fh->scancodes, 32, GFP_KERNEL)) { in lirc_open()
167 fh->send_mode = LIRC_MODE_PULSE; in lirc_open()
168 fh->rc = dev; in lirc_open()
169 fh->send_timeout_reports = true; in lirc_open()
172 fh->rec_mode = LIRC_MODE_SCANCODE; in lirc_open()
174 fh->rec_mode = LIRC_MODE_MODE2; in lirc_open()
180 init_waitqueue_head(&fh->wait_poll); in lirc_open()
182 file->private_data = fh; in lirc_open()
184 list_add(&fh->list, &dev->lirc_fh); in lirc_open()
192 kfifo_free(&fh->scancodes); in lirc_open()
195 kfifo_free(&fh->rawir); in lirc_open()
197 kfree(fh); in lirc_open()
205 struct lirc_fh *fh = file->private_data; in lirc_close() local
206 struct rc_dev *dev = fh->rc; in lirc_close()
210 list_del(&fh->list); in lirc_close()
214 kfifo_free(&fh->rawir); in lirc_close()
216 kfifo_free(&fh->scancodes); in lirc_close()
217 kfree(fh); in lirc_close()
228 struct lirc_fh *fh = file->private_data; in lirc_transmit() local
229 struct rc_dev *dev = fh->rc; in lirc_transmit()
253 if (fh->send_mode == LIRC_MODE_SCANCODE) { in lirc_transmit()
368 struct lirc_fh *fh = file->private_data; in lirc_ioctl() local
369 struct rc_dev *dev = fh->rc; in lirc_ioctl()
430 val = fh->rec_mode; in lirc_ioctl()
450 fh->rec_mode = val; in lirc_ioctl()
457 val = fh->send_mode; in lirc_ioctl()
466 fh->send_mode = val; in lirc_ioctl()
500 ret = dev->s_rx_carrier_range(dev, fh->carrier_low, in lirc_ioctl()
510 fh->carrier_low = val; in lirc_ioctl()
573 fh->send_timeout_reports = !!val; in lirc_ioctl()
590 struct lirc_fh *fh = file->private_data; in lirc_poll() local
591 struct rc_dev *rcdev = fh->rc; in lirc_poll()
594 poll_wait(file, &fh->wait_poll, wait); in lirc_poll()
599 if (fh->rec_mode == LIRC_MODE_SCANCODE && in lirc_poll()
600 !kfifo_is_empty(&fh->scancodes)) in lirc_poll()
603 if (fh->rec_mode == LIRC_MODE_MODE2 && in lirc_poll()
604 !kfifo_is_empty(&fh->rawir)) in lirc_poll()
614 struct lirc_fh *fh = file->private_data; in lirc_read_mode2() local
615 struct rc_dev *rcdev = fh->rc; in lirc_read_mode2()
623 if (kfifo_is_empty(&fh->rawir)) { in lirc_read_mode2()
627 ret = wait_event_interruptible(fh->wait_poll, in lirc_read_mode2()
628 !kfifo_is_empty(&fh->rawir) || in lirc_read_mode2()
640 ret = kfifo_to_user(&fh->rawir, buffer, length, &copied); in lirc_read_mode2()
652 struct lirc_fh *fh = file->private_data; in lirc_read_scancode() local
653 struct rc_dev *rcdev = fh->rc; in lirc_read_scancode()
662 if (kfifo_is_empty(&fh->scancodes)) { in lirc_read_scancode()
666 ret = wait_event_interruptible(fh->wait_poll, in lirc_read_scancode()
667 !kfifo_is_empty(&fh->scancodes) || in lirc_read_scancode()
679 ret = kfifo_to_user(&fh->scancodes, buffer, length, &copied); in lirc_read_scancode()
691 struct lirc_fh *fh = file->private_data; in lirc_read() local
692 struct rc_dev *rcdev = fh->rc; in lirc_read()
700 if (fh->rec_mode == LIRC_MODE_MODE2) in lirc_read()
782 struct lirc_fh *fh; in lirc_unregister() local
788 list_for_each_entry(fh, &dev->lirc_fh, list) in lirc_unregister()
789 wake_up_poll(&fh->wait_poll, EPOLLHUP | EPOLLERR); in lirc_unregister()
828 struct lirc_fh *fh; in rc_dev_get_from_fd() local
839 fh = f.file->private_data; in rc_dev_get_from_fd()
840 dev = fh->rc; in rc_dev_get_from_fd()