X-Git-Url: http://git.cascardo.eti.br/?a=blobdiff_plain;f=net%2Frfkill%2Frfkill-regulator.c;h=cf5b145902e5e0a4616122bbdcfecfb1662c7ec2;hb=64c353864e3f7ccba0ade1bd6f562f9a3bc7e68d;hp=d11ac79246e46d8388d6bee79de663928aa0f86e;hpb=bb762929dbfb378ef8c5c3f400bc98a6a0614584;p=cascardo%2Flinux.git diff --git a/net/rfkill/rfkill-regulator.c b/net/rfkill/rfkill-regulator.c index d11ac79246e4..cf5b145902e5 100644 --- a/net/rfkill/rfkill-regulator.c +++ b/net/rfkill/rfkill-regulator.c @@ -30,6 +30,7 @@ struct rfkill_regulator_data { static int rfkill_regulator_set_block(void *data, bool blocked) { struct rfkill_regulator_data *rfkill_data = data; + int ret = 0; pr_debug("%s: blocked: %d\n", __func__, blocked); @@ -40,15 +41,16 @@ static int rfkill_regulator_set_block(void *data, bool blocked) } } else { if (!rfkill_data->reg_enabled) { - regulator_enable(rfkill_data->vcc); - rfkill_data->reg_enabled = true; + ret = regulator_enable(rfkill_data->vcc); + if (!ret) + rfkill_data->reg_enabled = true; } } pr_debug("%s: regulator_is_enabled after set_block: %d\n", __func__, regulator_is_enabled(rfkill_data->vcc)); - return 0; + return ret; } static struct rfkill_ops rfkill_regulator_ops = {