mfd: tps65910: Fix possible invalid pointer dereference on regmap_add_irq_chip fail
[firefly-linux-kernel-4.4.55.git] / drivers / mfd / tps65910.c
index 1f142d76cbbc6fc03f44ead367c01a9b75f24c86..d6573318977fc3023513b4807658eb9a0714e3db 100644 (file)
@@ -255,8 +255,10 @@ static int tps65910_irq_init(struct tps65910 *tps65910, int irq,
        ret = regmap_add_irq_chip(tps65910->regmap, tps65910->chip_irq,
                IRQF_ONESHOT, pdata->irq_base,
                tps6591x_irqs_chip, &tps65910->irq_data);
-       if (ret < 0)
+       if (ret < 0) {
                dev_warn(tps65910->dev, "Failed to add irq_chip %d\n", ret);
+               tps65910->chip_irq = 0;
+       }
        return ret;
 }