btmrvl: set irq_bt to -1 when failed to parse it
authorJeffy Chen <jeffy.chen@rock-chips.com>
Mon, 23 Jan 2017 04:18:52 +0000 (12:18 +0800)
committerMarcel Holtmann <marcel@holtmann.org>
Thu, 16 Feb 2017 16:25:20 +0000 (17:25 +0100)
The irq_of_parse_and_map will return 0 as a invalid irq.

Set irq_bt to -1 in this case, so that the btmrvl resume/suspend code
would not try to enable/disable it.

Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
Reviewed-by: Brian Norris <briannorris@chromium.org>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
drivers/bluetooth/btmrvl_sdio.c

index c738baeb6d45cd3281b28ac189b42e2c42b27c85..796f7194a772984863c4f49335f8523651fc1a5d 100644 (file)
@@ -97,6 +97,7 @@ static int btmrvl_sdio_probe_of(struct device *dev,
                cfg->irq_bt = irq_of_parse_and_map(card->plt_of_node, 0);
                if (!cfg->irq_bt) {
                        dev_err(dev, "fail to parse irq_bt from device tree");
+                       cfg->irq_bt = -1;
                } else {
                        ret = devm_request_irq(dev, cfg->irq_bt,
                                               btmrvl_wake_irq_bt,