Re: [PATCH] USB: bcma: use simpler devm helper for getting vcc GPIO

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello.

On 03/24/2016 08:37 AM, Rafał Miłecki wrote:

Thanks to switching to devm_gpiod_get:
1) We don't have to pass fwnode pointer
2) We can request initial GPIO value at getting call
This was successfully tested on Netgear R6250 (BCM4708).

Signed-off-by: Rafał Miłecki <zajec5@xxxxxxxxx>
---
  drivers/usb/host/bcma-hcd.c | 6 ++----
  1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/usb/host/bcma-hcd.c b/drivers/usb/host/bcma-hcd.c
index 963e2d0..172ef17 100644
--- a/drivers/usb/host/bcma-hcd.c
+++ b/drivers/usb/host/bcma-hcd.c
@@ -352,10 +352,8 @@ static int bcma_hcd_probe(struct bcma_device *core)
       usb_dev->core = core;

       if (core->dev.of_node)
-             usb_dev->gpio_desc = devm_get_gpiod_from_child(&core->dev, "vcc",
-                                                            &core->dev.of_node->fwnode);
-     if (!IS_ERR_OR_NULL(usb_dev->gpio_desc))
-             gpiod_direction_output(usb_dev->gpio_desc, 1);
+             usb_dev->gpio_desc = devm_gpiod_get(&core->dev, "vcc",
+                                                 GPIOD_OUT_HIGH);
Do you need to check the returned descriptor?
Do you mean like in future, after initialization? Yes. You can check it with
grep gpio_desc drivers/usb/host/bcma-hcd.c

Oh, sorry!

I mean you need to check the pointer returned by devm_gpiod_get().

Sure. I don't need to. Only some of devices have USB power controlled
using GPIO, so having this entry in DT is optional.

   Then use devm_gpiod_get_optional()?

MBR, Sergei

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux