From: Mark Brown broonie@linaro.org
The /RESET GPIO is not manipulated from atomic context so support GPIOs that can't be written from atomic context by using _cansleep(). --- drivers/usb/misc/usb3503.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/usb/misc/usb3503.c b/drivers/usb/misc/usb3503.c index 4e3a2d2..8c06eb2 100644 --- a/drivers/usb/misc/usb3503.c +++ b/drivers/usb/misc/usb3503.c @@ -103,7 +103,7 @@ static int usb3503_clear_bits(struct i2c_client *client, char reg, char req) static int usb3503_reset(int gpio_reset, int state) { if (gpio_is_valid(gpio_reset)) - gpio_set_value(gpio_reset, state); + gpio_set_value_cansleep(gpio_reset, state);
/* Wait T_HUBINIT == 4ms for hub logic to stabilize */ if (state)