Commit dcf77c39 authored by Viresh Kumar's avatar Viresh Kumar Committed by Greg Kroah-Hartman
Browse files

greybus: arche-apb: NULL is a valid regulator



Since NULL could in theory be a valid regulator we ought to check for
IS_ERR() rather than for NULL. In practice this is unlikely to be an
issue but it's better for neatness.

Signed-off-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
Reviewed-by: default avatarVaibhav Hiremath <vaibhav.hiremath@linaro.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@google.com>
parent bd62fa5e
Loading
Loading
Loading
Loading
+6 −10
Original line number Diff line number Diff line
@@ -170,14 +170,14 @@ static int apb_ctrl_init_seq(struct platform_device *pdev,
	}

	/* Enable power to APB */
	if (apb->vcore) {
	if (!IS_ERR(apb->vcore)) {
		ret = regulator_enable(apb->vcore);
		if (ret) {
			dev_err(dev, "failed to enable core regulator\n");
			return ret;
		}
	}
	if (apb->vio) {
	if (!IS_ERR(apb->vio)) {
		ret = regulator_enable(apb->vio);
		if (ret) {
			dev_err(dev, "failed to enable IO regulator\n");
@@ -246,16 +246,12 @@ static int apb_ctrl_get_devtree_data(struct platform_device *pdev,

	/* Regulators are optional, as we may have fixed supply coming in */
	apb->vcore = devm_regulator_get(dev, "vcore");
	if (IS_ERR(apb->vcore)) {
	if (IS_ERR(apb->vcore))
		dev_info(dev, "no core regulator found\n");
		apb->vcore = NULL;
	}

	apb->vio = devm_regulator_get(dev, "vio");
	if (IS_ERR(apb->vio)) {
	if (IS_ERR(apb->vio))
		dev_info(dev, "no IO regulator found\n");
		apb->vio = NULL;
	}

	apb->pinctrl = devm_pinctrl_get(&pdev->dev);
	if (IS_ERR(apb->pinctrl)) {
@@ -275,10 +271,10 @@ static void apb_ctrl_cleanup(struct arche_apb_ctrl_drvdata *apb)
{
	unsigned long flags;

	if (apb->vcore && regulator_is_enabled(apb->vcore) > 0)
	if (!IS_ERR(apb->vcore) && regulator_is_enabled(apb->vcore) > 0)
		regulator_disable(apb->vcore);

	if (apb->vio && regulator_is_enabled(apb->vio) > 0)
	if (!IS_ERR(apb->vio) && regulator_is_enabled(apb->vio) > 0)
		regulator_disable(apb->vio);

	spin_lock_irqsave(&apb->lock, flags);