]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/power/charger-manager.c
Merge tag 'rtc-4.6-2' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux
[karo-tx-linux.git] / drivers / power / charger-manager.c
index 1ea5d1aa268b6a16f88ca24e68e861d3ae31d4fb..e664ca7c0afd7c6136e7f8618551e26784fe7f47 100644 (file)
@@ -2019,27 +2019,6 @@ static void __exit charger_manager_cleanup(void)
 }
 module_exit(charger_manager_cleanup);
 
-/**
- * find_power_supply - find the associated power_supply of charger
- * @cm: the Charger Manager representing the battery
- * @psy: pointer to instance of charger's power_supply
- */
-static bool find_power_supply(struct charger_manager *cm,
-                       struct power_supply *psy)
-{
-       int i;
-       bool found = false;
-
-       for (i = 0; cm->desc->psy_charger_stat[i]; i++) {
-               if (!strcmp(psy->desc->name, cm->desc->psy_charger_stat[i])) {
-                       found = true;
-                       break;
-               }
-       }
-
-       return found;
-}
-
 /**
  * cm_notify_event - charger driver notify Charger Manager of charger event
  * @psy: pointer to instance of charger's power_supply
@@ -2057,9 +2036,11 @@ void cm_notify_event(struct power_supply *psy, enum cm_event_types type,
 
        mutex_lock(&cm_list_mtx);
        list_for_each_entry(cm, &cm_list, entry) {
-               found_power_supply = find_power_supply(cm, psy);
-               if (found_power_supply)
+               if (match_string(cm->desc->psy_charger_stat, -1,
+                                psy->desc->name) >= 0) {
+                       found_power_supply = true;
                        break;
+               }
        }
        mutex_unlock(&cm_list_mtx);