ARM: Kirkwood: Convert GoFlexNet to use regulators
authorAndrew Lunn <andrew@lunn.ch>
Sat, 17 Nov 2012 14:46:13 +0000 (15:46 +0100)
committerJason Cooper <jason@lakedaemon.net>
Sat, 24 Nov 2012 02:57:06 +0000 (02:57 +0000)
Control the power to USB using a fixed regulator.

Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Tested-by: Josh Coombs <josh.coombs@gmail.com>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
arch/arm/boot/dts/kirkwood-goflexnet.dts
arch/arm/mach-kirkwood/board-goflexnet.c

index 7c8238f..84de887 100644 (file)
                        gpios = <&gpio1 9 0>;
                };
        };
+       regulators {
+               compatible = "simple-bus";
+               #address-cells = <1>;
+               #size-cells = <0>;
+
+               usb_power: regulator@1 {
+                       compatible = "regulator-fixed";
+                       reg = <1>;
+                       regulator-name = "USB Power";
+                       regulator-min-microvolt = <5000000>;
+                       regulator-max-microvolt = <5000000>;
+                       enable-active-high;
+                       regulator-always-on;
+                       regulator-boot-on;
+                       gpio = <&gpio0 29 0>;
+               };
+       };
 };
index d388bea..5ff4392 100644 (file)
@@ -26,7 +26,6 @@
 #include <linux/of_fdt.h>
 #include <linux/of_irq.h>
 #include <linux/of_platform.h>
-#include <linux/gpio.h>
 #include <asm/mach-types.h>
 #include <asm/mach/arch.h>
 #include <asm/mach/map.h>
@@ -62,9 +61,5 @@ void __init goflexnet_init(void)
         */
        kirkwood_mpp_conf(goflexnet_mpp_config);
 
-       if (gpio_request(29, "USB Power Enable") != 0 ||
-           gpio_direction_output(29, 1) != 0)
-               pr_err("can't setup GPIO 29 (USB Power Enable)\n");
-
        kirkwood_ge00_init(&goflexnet_ge00_data);
 }