
Add a check for the gpio_request() function return value and do not try to configure the GPIO if the gpio_request() call fails. Also, print an error message indicating the gpio_request() has failed.
Signed-off-by: Igor Grinberg grinberg@compulab.co.il --- drivers/misc/gpio_led.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/drivers/misc/gpio_led.c b/drivers/misc/gpio_led.c index 3fedddc..de20419 100644 --- a/drivers/misc/gpio_led.c +++ b/drivers/misc/gpio_led.c @@ -11,7 +11,11 @@
void __led_init(led_id_t mask, int state) { - gpio_request(mask, "gpio_led"); + if (gpio_request(mask, "gpio_led") != 0) { + printf("%s: failed requesting GPIO%lu!\n", __func__, mask); + return; + } + gpio_direction_output(mask, state == STATUS_LED_ON); }