//声明
static struct input_polled_dev *mir3da_idev;
//分配
mir3da_idev->poll = mir3da_dev_poll;
/*----------------------------------------------------------------------------*/
//实现
static void mir3da_dev_poll(struct input_polled_dev *dev)
{
report_abs();
}
//注册
result = input_register_polled_device(mir3da_idev);
#man poll
int poll(struct pollfd *fds, nfds_t nfds, int timeout);
#man epoll
epollfd = epoll_create(10);
epoll_ctl(epollfd, EPOLL_CTL_ADD, listen_sock, &ev)
epoll_wait(epollfd, events, MAX_EVENTS, -1)
#man select
int select(int nfds, fd_set *readfds, fd_set *writefds,
fd_set *exceptfds, struct timeval *timeout);
timeout 超时返回