Commit 6ac9166d authored by Rui Miguel Silva's avatar Rui Miguel Silva Committed by Greg Kroah-Hartman

greybus: power_supply: fix name setting location

We were checking for existing power supply names in the wrong place,
i.e, we were checking before any of the module power supply were
registered, because of that of course no name collision was detected.

Move the check to the register loop and with that we guarantee that this
mechanism works for greybus power supply naming.

Tested: using gbsim and using power supply with the same name and check
that: 1. no problems creating sysfs entries; 2. naming is done following
the desired rules.
Signed-off-by: default avatarRui Miguel Silva <rui.silva@linaro.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@google.com>
parent cc43368a
......@@ -870,19 +870,19 @@ static int gb_power_supply_config(struct gb_power_supplies *supplies, int id)
if (ret < 0)
return ret;
ret = gb_power_supply_prop_descriptors_get(gbpsy);
if (ret < 0)
return ret;
/* guarantee that we have an unique name, before register */
return __gb_power_supply_set_name(gbpsy->model_name, gbpsy->name,
sizeof(gbpsy->name));
return gb_power_supply_prop_descriptors_get(gbpsy);
}
static int gb_power_supply_enable(struct gb_power_supply *gbpsy)
{
int ret;
/* guarantee that we have an unique name, before register */
ret = __gb_power_supply_set_name(gbpsy->model_name, gbpsy->name,
sizeof(gbpsy->name));
if (ret < 0)
return ret;
ret = gb_power_supply_register(gbpsy);
if (ret < 0)
return ret;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment