summaryrefslogtreecommitdiffstats
path: root/drivers/hsi/controllers/omap_ssi.h
diff options
context:
space:
mode:
authorSebastian Reichel2016-05-20 06:25:06 +0200
committerSebastian Reichel2016-06-28 00:40:00 +0200
commit4e552310cdf0c81210b5fc9173f7cf497eeb9feb (patch)
treef9f4e8bdcbb87627e9a4431a55ef39f6d973adba /drivers/hsi/controllers/omap_ssi.h
parentHSI: omap_ssi_port: ensure clocks are kept enabled during transfer (diff)
downloadkernel-qcow2-linux-4e552310cdf0c81210b5fc9173f7cf497eeb9feb.tar.gz
kernel-qcow2-linux-4e552310cdf0c81210b5fc9173f7cf497eeb9feb.tar.xz
kernel-qcow2-linux-4e552310cdf0c81210b5fc9173f7cf497eeb9feb.zip
HSI: omap_ssi: call msg->complete() from process context
msg->complete() should always be called from process context once irq_safe runtime pm flag is no longer set for omap-ssi. Signed-off-by: Sebastian Reichel <sre@kernel.org> Tested-by: Pavel Machek <pavel@ucw.cz>
Diffstat (limited to 'drivers/hsi/controllers/omap_ssi.h')
-rw-r--r--drivers/hsi/controllers/omap_ssi.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/hsi/controllers/omap_ssi.h b/drivers/hsi/controllers/omap_ssi.h
index 99143f4f8837..32ced0c8f789 100644
--- a/drivers/hsi/controllers/omap_ssi.h
+++ b/drivers/hsi/controllers/omap_ssi.h
@@ -73,6 +73,8 @@ struct omap_ssm_ctx {
* @txqueue: TX message queues
* @rxqueue: RX message queues
* @brkqueue: Queue of incoming HWBREAK requests (FRAME mode)
+ * @errqueue: Queue for failed messages
+ * @errqueue_work: Delayed Work for failed messages
* @irq: IRQ number
* @wake_irq: IRQ number for incoming wake line (-1 if none)
* @wake_gpio: GPIO number for incoming wake line (-1 if none)
@@ -96,6 +98,8 @@ struct omap_ssi_port {
struct list_head txqueue[SSI_MAX_CHANNELS];
struct list_head rxqueue[SSI_MAX_CHANNELS];
struct list_head brkqueue;
+ struct list_head errqueue;
+ struct delayed_work errqueue_work;
unsigned int irq;
int wake_irq;
struct gpio_desc *wake_gpio;