Merge branch 'for-linus' of git://git.linaro.org/people/rmk/linux-arm
[linux-2.6-block.git] / drivers / power / lp8788-charger.c
index 22b6407c9ca9949d65b0c719e895549e8bb3e902..e33d6b2a7a56eb0a5dd968b1b28506aca55868f8 100644 (file)
@@ -367,7 +367,8 @@ static inline bool lp8788_is_valid_charger_register(u8 addr)
        return addr >= LP8788_CHG_START && addr <= LP8788_CHG_END;
 }
 
-static int lp8788_update_charger_params(struct lp8788_charger *pchg)
+static int lp8788_update_charger_params(struct platform_device *pdev,
+                                       struct lp8788_charger *pchg)
 {
        struct lp8788 *lp = pchg->lp;
        struct lp8788_charger_platform_data *pdata = pchg->pdata;
@@ -376,7 +377,7 @@ static int lp8788_update_charger_params(struct lp8788_charger *pchg)
        int ret;
 
        if (!pdata || !pdata->chg_params) {
-               dev_info(lp->dev, "skip updating charger parameters\n");
+               dev_info(&pdev->dev, "skip updating charger parameters\n");
                return 0;
        }
 
@@ -537,7 +538,6 @@ err_free_irq:
 static int lp8788_irq_register(struct platform_device *pdev,
                                struct lp8788_charger *pchg)
 {
-       struct lp8788 *lp = pchg->lp;
        const char *name[] = {
                LP8788_CHG_IRQ, LP8788_PRSW_IRQ, LP8788_BATT_IRQ
        };
@@ -550,13 +550,13 @@ static int lp8788_irq_register(struct platform_device *pdev,
        for (i = 0; i < ARRAY_SIZE(name); i++) {
                ret = lp8788_set_irqs(pdev, pchg, name[i]);
                if (ret) {
-                       dev_warn(lp->dev, "irq setup failed: %s\n", name[i]);
+                       dev_warn(&pdev->dev, "irq setup failed: %s\n", name[i]);
                        return ret;
                }
        }
 
        if (pchg->num_irqs > LP8788_MAX_CHG_IRQS) {
-               dev_err(lp->dev, "invalid total number of irqs: %d\n",
+               dev_err(&pdev->dev, "invalid total number of irqs: %d\n",
                        pchg->num_irqs);
                return -EINVAL;
        }
@@ -690,9 +690,10 @@ static int lp8788_charger_probe(struct platform_device *pdev)
 {
        struct lp8788 *lp = dev_get_drvdata(pdev->dev.parent);
        struct lp8788_charger *pchg;
+       struct device *dev = &pdev->dev;
        int ret;
 
-       pchg = devm_kzalloc(lp->dev, sizeof(struct lp8788_charger), GFP_KERNEL);
+       pchg = devm_kzalloc(dev, sizeof(struct lp8788_charger), GFP_KERNEL);
        if (!pchg)
                return -ENOMEM;
 
@@ -700,7 +701,7 @@ static int lp8788_charger_probe(struct platform_device *pdev)
        pchg->pdata = lp->pdata ? lp->pdata->chg_pdata : NULL;
        platform_set_drvdata(pdev, pchg);
 
-       ret = lp8788_update_charger_params(pchg);
+       ret = lp8788_update_charger_params(pdev, pchg);
        if (ret)
                return ret;
 
@@ -718,7 +719,7 @@ static int lp8788_charger_probe(struct platform_device *pdev)
 
        ret = lp8788_irq_register(pdev, pchg);
        if (ret)
-               dev_warn(lp->dev, "failed to register charger irq: %d\n", ret);
+               dev_warn(dev, "failed to register charger irq: %d\n", ret);
 
        return 0;
 }