diff options
Diffstat (limited to 'board/compulab/common/common.c')
-rw-r--r-- | board/compulab/common/common.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/board/compulab/common/common.c b/board/compulab/common/common.c index 6d2d7b0bd02..f2ce522fa68 100644 --- a/board/compulab/common/common.c +++ b/board/compulab/common/common.c @@ -8,6 +8,7 @@ #include <common.h> #include <asm/bootm.h> +#include <asm/gpio.h> #include "common.h" #include "eeprom.h" @@ -23,3 +24,24 @@ void cl_print_pcb_info(void) printf("PCB: %u.%u\n", rev_major, rev_minor); } + +#ifdef CONFIG_CMD_USB +int cl_usb_hub_init(int gpio, const char *label) +{ + if (gpio_request(gpio, label)) { + printf("Error: can't obtain GPIO%d for %s", gpio, label); + return -1; + } + + gpio_direction_output(gpio, 0); + udelay(10); + gpio_set_value(gpio, 1); + udelay(1000); + return 0; +} + +void cl_usb_hub_deinit(int gpio) +{ + gpio_free(gpio); +} +#endif |