power_supply: isp1704_charger: Error messages when probe fail
authorPali Rohár <pali.rohar@gmail.com>
Sun, 21 Feb 2016 11:28:18 +0000 (12:28 +0100)
committerSebastian Reichel <sre@kernel.org>
Sun, 21 Feb 2016 19:24:28 +0000 (20:24 +0100)
This patch adds more detailed error messages when probe function fails.
It is useful for debbuging why the driver refuses to register the
charger device.

Signed-off-by: Pali Rohár <pali.rohar@gmail.com>
Acked-by: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Sebastian Reichel <sre@kernel.org>
drivers/power/isp1704_charger.c

index 46a292a..acaf7cf 100644 (file)
@@ -411,8 +411,10 @@ static int isp1704_charger_probe(struct platform_device *pdev)
        if (np) {
                int gpio = of_get_named_gpio(np, "nxp,enable-gpio", 0);
 
-               if (gpio < 0)
+               if (gpio < 0) {
+                       dev_err(&pdev->dev, "missing DT GPIO nxp,enable-gpio\n");
                        return gpio;
+               }
 
                pdata = devm_kzalloc(&pdev->dev,
                        sizeof(struct isp1704_charger_data), GFP_KERNEL);
@@ -422,8 +424,10 @@ static int isp1704_charger_probe(struct platform_device *pdev)
 
                ret = devm_gpio_request_one(&pdev->dev, pdata->enable_gpio,
                                        GPIOF_OUT_INIT_HIGH, "isp1704_reset");
-               if (ret)
+               if (ret) {
+                       dev_err(&pdev->dev, "gpio request failed\n");
                        goto fail0;
+               }
        }
 
        if (!pdata) {
@@ -443,6 +447,7 @@ static int isp1704_charger_probe(struct platform_device *pdev)
 
        if (IS_ERR(isp->phy)) {
                ret = PTR_ERR(isp->phy);
+               dev_err(&pdev->dev, "usb_get_phy failed\n");
                goto fail0;
        }
 
@@ -452,8 +457,10 @@ static int isp1704_charger_probe(struct platform_device *pdev)
        isp1704_charger_set_power(isp, 1);
 
        ret = isp1704_test_ulpi(isp);
-       if (ret < 0)
+       if (ret < 0) {
+               dev_err(&pdev->dev, "isp1704_test_ulpi failed\n");
                goto fail1;
+       }
 
        isp->psy_desc.name              = "isp1704";
        isp->psy_desc.type              = POWER_SUPPLY_TYPE_USB;
@@ -466,6 +473,7 @@ static int isp1704_charger_probe(struct platform_device *pdev)
        isp->psy = power_supply_register(isp->dev, &isp->psy_desc, &psy_cfg);
        if (IS_ERR(isp->psy)) {
                ret = PTR_ERR(isp->psy);
+               dev_err(&pdev->dev, "power_supply_register failed\n");
                goto fail1;
        }
 
@@ -478,8 +486,10 @@ static int isp1704_charger_probe(struct platform_device *pdev)
        isp->nb.notifier_call = isp1704_notifier_call;
 
        ret = usb_register_notifier(isp->phy, &isp->nb);
-       if (ret)
+       if (ret) {
+               dev_err(&pdev->dev, "usb_register_notifier failed\n");
                goto fail2;
+       }
 
        dev_info(isp->dev, "registered with product id %s\n", isp->model);