greybus: hid: Replace WARN_ON() with dev_err()
authorViresh Kumar <viresh.kumar@linaro.org>
Fri, 26 Feb 2016 11:14:19 +0000 (16:44 +0530)
committerGreg Kroah-Hartman <gregkh@google.com>
Mon, 29 Feb 2016 22:49:28 +0000 (14:49 -0800)
WARN_ON() is a bit harsh here, as we just failed to power-off the HID
device while it is getting removed.

Replace it with dev_err().

Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Reviewed-by: Johan Hovold <johan@hovoldconsulting.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
drivers/staging/greybus/hid.c

index 601ee6f..6ef151f 100644 (file)
@@ -345,6 +345,7 @@ static int gb_hid_open(struct hid_device *hid)
 static void gb_hid_close(struct hid_device *hid)
 {
        struct gb_hid *ghid = hid->driver_data;
+       int ret;
 
        /*
         * Protecting hid->open to make sure we don't restart data acquistion
@@ -355,7 +356,10 @@ static void gb_hid_close(struct hid_device *hid)
                clear_bit(GB_HID_STARTED, &ghid->flags);
 
                /* Save some power */
-               WARN_ON(gb_hid_set_power(ghid, GB_HID_TYPE_PWR_OFF));
+               ret = gb_hid_set_power(ghid, GB_HID_TYPE_PWR_OFF);
+               if (ret)
+                       dev_err(&ghid->connection->bundle->dev,
+                               "failed to power off (%d)\n", ret);
        }
        mutex_unlock(&gb_hid_open_mutex);
 }