diff options
author | Om Prakash Singh <omp@nvidia.com> | 2011-10-31 12:07:17 +0530 |
---|---|---|
committer | Dan Willemsen <dwillemsen@nvidia.com> | 2011-11-30 21:52:35 -0800 |
commit | 6d6bdc66279320f0647a71a162965e7705555972 (patch) | |
tree | 56a02aa45381da9901ea7d2954952228854f8986 /drivers/bluetooth | |
parent | 6c9cd9fedc0bcbbcb928b77c36c1d6add6179674 (diff) |
bluetooth: bluesleep: workaround to enable bluesleep functionality
Enable_irq_wake function is returning error while registering bank
irqs. Commenting out enable_irq_wake,disable_irq_wake function will
not affect bluesleep functionality except wake-on-bluethooth.
Bug 890309
Change-Id: I268361372de037b07bbac5373560c94fc9b131b0
Reviewed-on: http://git-master/r/61090
Reviewed-by: Om Prakash Singh <omp@nvidia.com>
Tested-by: Om Prakash Singh <omp@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
Rebase-Id: R4b5334848a954ed107a7294131d78b9162bfb711
Diffstat (limited to 'drivers/bluetooth')
-rw-r--r-- | drivers/bluetooth/bluesleep.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/bluetooth/bluesleep.c b/drivers/bluetooth/bluesleep.c index e14009f26cc6..c54952d9f24d 100644 --- a/drivers/bluetooth/bluesleep.c +++ b/drivers/bluetooth/bluesleep.c @@ -67,6 +67,9 @@ #define POLARITY_LOW 0 #define POLARITY_HIGH 1 +/* enable/disable wake-on-bluetooth */ +#define BT_ENABLE_IRQ_WAKE 0 + struct bluesleep_info { unsigned host_wake; unsigned ext_wake; @@ -384,12 +387,14 @@ static int bluesleep_start(void) goto fail; } +#if BT_ENABLE_IRQ_WAKE retval = enable_irq_wake(bsi->host_wake_irq); if (retval < 0) { BT_ERR("Couldn't enable BT_HOST_WAKE as wakeup interrupt"); free_irq(bsi->host_wake_irq, NULL); goto fail; } +#endif set_bit(BT_PROTO, &flags); wake_lock(&bsi->wake_lock); return 0; @@ -427,8 +432,10 @@ static void bluesleep_stop(void) atomic_inc(&open_count); spin_unlock_irqrestore(&rw_lock, irq_flags); +#if BT_ENABLE_IRQ_WAKE if (disable_irq_wake(bsi->host_wake_irq)) BT_ERR("Couldn't disable hostwake IRQ wakeup mode\n"); +#endif free_irq(bsi->host_wake_irq, NULL); wake_lock_timeout(&bsi->wake_lock, HZ / 2); } |