diff --git a/drivers/regulator/core.c b/drivers/regulator/core.c index 6cb9d399affd..e70e15c4aa28 100644 --- a/drivers/regulator/core.c +++ b/drivers/regulator/core.c @@ -985,9 +985,8 @@ static int set_supply(struct regulator_dev *rdev, rdev_info(rdev, "supplied by %s\n", rdev_get_name(supply_rdev)); rdev->supply = create_regulator(supply_rdev, &rdev->dev, "SUPPLY"); - if (IS_ERR(rdev->supply)) { - err = PTR_ERR(rdev->supply); - rdev->supply = NULL; + if (rdev->supply == NULL) { + err = -ENOMEM; return err; }