summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorShengjiu Wang <shengjiu.wang@freescale.com>2014-11-18 14:20:55 +0800
committerShengjiu Wang <shengjiu.wang@freescale.com>2014-11-19 17:48:21 +0800
commitc79832c45fc33b3eb1e7cd8ecfaadb85d045815b (patch)
treeb760a42e3b7a6d028a6fe9022d71c387db273b19 /drivers
parentd22d9374948d2461189a632263c2e18a13c9ea41 (diff)
MLK-9866: mfd: si476x: FM will fail to open sometimes.
In commit e856a0ebc23dcd2c933e3f902317652cc50f0067, we disabled wait_event_timeout for CMD_POWER_DOWN, which will cause power down failed sometimes, then FM will fail to reopen. In this patch enable the wait_event_timeout for power down. Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/mfd/si476x-cmd.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/drivers/mfd/si476x-cmd.c b/drivers/mfd/si476x-cmd.c
index 8ac23dff91a1..6f1ef63086c9 100644
--- a/drivers/mfd/si476x-cmd.c
+++ b/drivers/mfd/si476x-cmd.c
@@ -303,13 +303,13 @@ static int si476x_core_send_command(struct si476x_core *core,
* possible racing conditions when working in polling mode */
atomic_set(&core->cts, 0);
- if (!(command == CMD_POWER_DOWN))
- if (!wait_event_timeout(core->command,
- atomic_read(&core->cts),
- usecs_to_jiffies(usecs) + 1))
- dev_warn(&core->client->dev,
- "(%s) [CMD 0x%02x] Answer timeout.\n",
- __func__, command);
+ /* if (unlikely(command == CMD_POWER_DOWN) */
+ if (!wait_event_timeout(core->command,
+ atomic_read(&core->cts),
+ usecs_to_jiffies(usecs) + 1))
+ dev_warn(&core->client->dev,
+ "(%s) [CMD 0x%02x] Answer timeout.\n",
+ __func__, command);
/*
When working in polling mode, for some reason the tuner will