aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBhaktipriya Shridhar <bhaktipriya96@gmail.com>2016-08-13 12:18:43 -0400
committerSebastian Reichel <sre@kernel.org>2016-08-15 18:54:37 -0400
commitd8a69251fb58a756e2dd00cc5c7f1b54d383e203 (patch)
tree38b02b19cee3ad392bacf0b81f7d0afef16d6875
parenta8dd5b6868dd8ecb79f741dd94ac25a46ac19ba4 (diff)
power: pm2301_charger: Remove deprecated create_singlethread_workqueue
alloc_ordered_workqueue() with WQ_MEM_RECLAIM set replaces deprecated create_singlethread_workqueue(). This is the identity conversion. The workqueue "charger_wq" is used for running all the charger related tasks. This involves charger detection, checking for HW failure and HW status. This workqueue has been identity converted. It queues multiple workitems viz &pm2->check_main_thermal_prot_work, &pm2->check_hw_failure_work, &pm2->ac_work. Hence, the deprecated create_singlethread_workqueue() instance has been replaced with a dedicated ordered workqueue. The WQ_MEM_RECLAIM flag has been set to ensure forward progress under memory pressure. Signed-off-by: Bhaktipriya Shridhar <bhaktipriya96@gmail.com> Signed-off-by: Sebastian Reichel <sre@kernel.org>
-rw-r--r--drivers/power/supply/pm2301_charger.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/power/supply/pm2301_charger.c b/drivers/power/supply/pm2301_charger.c
index fb62ed3fc38c..78561b6884fc 100644
--- a/drivers/power/supply/pm2301_charger.c
+++ b/drivers/power/supply/pm2301_charger.c
@@ -1054,7 +1054,8 @@ static int pm2xxx_wall_charger_probe(struct i2c_client *i2c_client,
1054 pm2->ac_chg.external = true; 1054 pm2->ac_chg.external = true;
1055 1055
1056 /* Create a work queue for the charger */ 1056 /* Create a work queue for the charger */
1057 pm2->charger_wq = create_singlethread_workqueue("pm2xxx_charger_wq"); 1057 pm2->charger_wq = alloc_ordered_workqueue("pm2xxx_charger_wq",
1058 WQ_MEM_RECLAIM);
1058 if (pm2->charger_wq == NULL) { 1059 if (pm2->charger_wq == NULL) {
1059 ret = -ENOMEM; 1060 ret = -ENOMEM;
1060 dev_err(pm2->dev, "failed to create work queue\n"); 1061 dev_err(pm2->dev, "failed to create work queue\n");