static u32 fm_v4l2_fops_poll(struct file *file, struct poll_table_struct *pts) { int ret; struct fmdev *fmdev; unsigned int mask = 0; fmdev = video_drvdata(file); if (fmdev->rx.comp_scan_status == 1) { if (fmdev->rx.comp_scan_done == 1) { mask |= POLLPRI | POLLIN; fmdev->rx.comp_scan_done = 0; } else { mask = 0; } return mask; } mask = 0; ret = fmc_is_rds_data_available(fmdev, file, pts); if (ret < 0) mask = 0; else return POLLIN | POLLRDNORM; return mask; }
static u32 fm_v4l2_fops_poll(struct file *file, struct poll_table_struct *pts) { int ret; struct fmdev *fmdev; fmdev = video_drvdata(file); ret = fmc_is_rds_data_available(fmdev, file, pts); if (ret < 0) return POLLIN | POLLRDNORM; return 0; }