|
@@ -401,6 +401,25 @@ void mei_amthif_run_next_cmd(struct mei_device *dev)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+unsigned int mei_amthif_poll(struct mei_device *dev,
|
|
|
+ struct file *file, poll_table *wait)
|
|
|
+{
|
|
|
+ unsigned int mask = 0;
|
|
|
+ mutex_unlock(&dev->device_lock);
|
|
|
+ poll_wait(file, &dev->iamthif_cl.wait, wait);
|
|
|
+ mutex_lock(&dev->device_lock);
|
|
|
+ if (dev->iamthif_state == MEI_IAMTHIF_READ_COMPLETE &&
|
|
|
+ dev->iamthif_file_object == file) {
|
|
|
+ mask |= (POLLIN | POLLRDNORM);
|
|
|
+ dev_dbg(&dev->pdev->dev, "run next amthi cb\n");
|
|
|
+ mei_amthif_run_next_cmd(dev);
|
|
|
+ }
|
|
|
+ return mask;
|
|
|
+}
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
/**
|
|
|
* mei_amthif_irq_process_completed - processes completed iamthif operation.
|
|
|
*
|