forked from Minki/linux
drm/msm/hdmi: Prevent gpio_free related kernel warnings
Calling the legacy gpio_free on an invalid GPIO (a GPIO numbered -1) results in kernel warnings. This causes a lot of backtraces when we try to unload the drm/msm module. Call gpio_free only on valid GPIOs. Signed-off-by: Archit Taneja <architt@codeaurora.org> Signed-off-by: Rob Clark <robdclark@gmail.com>
This commit is contained in:
parent
4816b6267c
commit
c899f93584
@ -112,6 +112,9 @@ static int gpio_config(struct hdmi *hdmi, bool on)
|
||||
for (i = 0; i < HDMI_MAX_NUM_GPIO; i++) {
|
||||
struct hdmi_gpio_data gpio = config->gpios[i];
|
||||
|
||||
if (gpio.num == -1)
|
||||
continue;
|
||||
|
||||
if (gpio.output) {
|
||||
int value = gpio.value ? 0 : 1;
|
||||
|
||||
@ -126,8 +129,10 @@ static int gpio_config(struct hdmi *hdmi, bool on)
|
||||
|
||||
return 0;
|
||||
err:
|
||||
while (i--)
|
||||
gpio_free(config->gpios[i].num);
|
||||
while (i--) {
|
||||
if (config->gpios[i].num != -1)
|
||||
gpio_free(config->gpios[i].num);
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user