Bluetooth: hci_bcm: Make shutdown and device wake GPIO optional
authorStefan Wahren <stefan.wahren@i2se.com>
Sun, 25 Feb 2018 14:10:52 +0000 (15:10 +0100)
committerMarcel Holtmann <marcel@holtmann.org>
Sun, 25 Feb 2018 20:08:28 +0000 (21:08 +0100)
According to the devicetree binding the shutdown and device wake
GPIOs are optional. Since commit 3e81a4ca51a1 ("Bluetooth: hci_bcm:
Mandate presence of shutdown and device wake GPIO") this driver
won't probe anymore on Raspberry Pi 3 and Zero W (no device wake GPIO
connected). So fix this regression by reverting this commit partially.

Fixes: 3e81a4ca51a1 ("Bluetooth: hci_bcm: Mandate presence of shutdown and device wake GPIO")
Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
Reviewed-by: Lukas Wunner <lukas@wunner.de>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
drivers/bluetooth/hci_bcm.c

index 0438a64b8185ed85b60c28f5086141c7e7a7b769..6314dfb02969a9191940e8dcf8b0d0fc987453c1 100644 (file)
@@ -922,12 +922,13 @@ static int bcm_get_resources(struct bcm_device *dev)
 
        dev->clk = devm_clk_get(dev->dev, NULL);
 
-       dev->device_wakeup = devm_gpiod_get(dev->dev, "device-wakeup",
-                                           GPIOD_OUT_LOW);
+       dev->device_wakeup = devm_gpiod_get_optional(dev->dev, "device-wakeup",
+                                                    GPIOD_OUT_LOW);
        if (IS_ERR(dev->device_wakeup))
                return PTR_ERR(dev->device_wakeup);
 
-       dev->shutdown = devm_gpiod_get(dev->dev, "shutdown", GPIOD_OUT_LOW);
+       dev->shutdown = devm_gpiod_get_optional(dev->dev, "shutdown",
+                                               GPIOD_OUT_LOW);
        if (IS_ERR(dev->shutdown))
                return PTR_ERR(dev->shutdown);