From patchwork Tue Aug 27 06:28:45 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Wang, Jiada" X-Patchwork-Id: 11116157 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 839F61395 for ; Tue, 27 Aug 2019 06:29:18 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 6B8282184D for ; Tue, 27 Aug 2019 06:29:18 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727455AbfH0G3N (ORCPT ); Tue, 27 Aug 2019 02:29:13 -0400 Received: from esa1.mentor.iphmx.com ([68.232.129.153]:11340 "EHLO esa1.mentor.iphmx.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725860AbfH0G3N (ORCPT ); Tue, 27 Aug 2019 02:29:13 -0400 IronPort-SDR: flWKIDMXFq6+QFhaQ7qLcnRK7Qf5RwK7YrKJKT2nORzeNjPROy0bKcL0WTBX2rGFg8piTGzPD3 I+HHesE/FLnlWgF4Bh57RZMj/AVFMFP5uw8Lw5Z9hsk5tlUIvrSL2BA7TTaeigMJ+bCboHShFO ceeC8EWIv/7ne5HzENzcvbDtX60xcekUXKlxjOOUJNPxrMEFAKP4nm3sJo0PT+xMu9hjhxNVSM vHa3WLbIaIvxIlr1w4nsbAvYvIur3ukebHaxij1JBjdbIjxL+fKRCfVl8NE8/2QMqgqAqMr7bC 20Q= X-IronPort-AV: E=Sophos;i="5.64,436,1559548800"; d="scan'208";a="42589375" Received: from orw-gwy-02-in.mentorg.com ([192.94.38.167]) by esa1.mentor.iphmx.com with ESMTP; 26 Aug 2019 22:29:12 -0800 IronPort-SDR: ZK+TJDo2r0qaqxbC2ZamdU7mCh3TT5Qec7CyQStItXMx8Wyj20sKOfoz0N1aFyHmO/TgEc2MRi +6/IpBc728FtlbQ52HX20BJ8ocTca+M2oHc+MSUeJrgYHXIEHDR2Yt5D2M0bQ9NmgBJjXlZE6e 9dzilqERo94yZl00PLjll2UmCod28XM8yD8SbICSmuA0VY82wwQlYn4cNWczXmijAuR5jtd6Sm x8P+G83PguvXpyDLqReJmH3pjv04N4gaT24sxzW95SZZsbGq2tRYP3WdefRdNHFQgnLv1gntJS N+s= From: Jiada Wang To: , CC: , , , Subject: [PATCH v2 24/49] Input: atmel_mxt_ts - rename bl_completion to chg_completion Date: Tue, 27 Aug 2019 15:28:45 +0900 Message-ID: <20190827062910.20598-5-jiada_wang@mentor.com> X-Mailer: git-send-email 2.19.2 In-Reply-To: <20190827062910.20598-1-jiada_wang@mentor.com> References: <20190827062910.20598-1-jiada_wang@mentor.com> MIME-Version: 1.0 X-ClientProxiedBy: svr-orw-mbx-01.mgc.mentorg.com (147.34.90.201) To svr-orw-mbx-03.mgc.mentorg.com (147.34.90.203) Sender: linux-input-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-input@vger.kernel.org From: Nick Dyer Signed-off-by: Nick Dyer (cherry picked from ndyer/linux/for-upstream commit dda8453bfb44216645ede798918a314d4fca2481) [gdavis: Resolve forward port conflicts due to applying upstream commit 96a938aa214e ("Input: atmel_mxt_ts - remove platform data support").] Signed-off-by: George G. Davis [jiada: call complete(&data->chg_completion) only when in_bootloader is TRUE] Signed-off-by: Jiada Wang --- drivers/input/touchscreen/atmel_mxt_ts.c | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/drivers/input/touchscreen/atmel_mxt_ts.c b/drivers/input/touchscreen/atmel_mxt_ts.c index 4e7f82e2fc0c..e5843cb9a35e 100644 --- a/drivers/input/touchscreen/atmel_mxt_ts.c +++ b/drivers/input/touchscreen/atmel_mxt_ts.c @@ -381,9 +381,6 @@ struct mxt_data { u8 T100_reportid_max; u16 T107_address; - /* for fw update in bootloader */ - struct completion bl_completion; - /* for reset handling */ struct completion reset_completion; @@ -395,6 +392,9 @@ struct mxt_data { enum mxt_suspend_mode suspend_mode; + /* for power up handling */ + struct completion chg_completion; + /* Indicates whether device is in suspend */ bool suspended; @@ -611,7 +611,7 @@ static int mxt_check_bootloader(struct mxt_data *data, struct mxt_flash *f) * CHG assertion before reading the status byte. * Once the status byte has been read, the line is deasserted. */ - ret = mxt_wait_for_completion(data, &data->bl_completion, + ret = mxt_wait_for_completion(data, &data->chg_completion, MXT_FW_CHG_TIMEOUT); if (ret) { /* @@ -1402,8 +1402,7 @@ static irqreturn_t mxt_interrupt(int irq, void *dev_id) struct mxt_data *data = dev_id; if (data->in_bootloader) { - /* bootloader state transition completion */ - complete(&data->bl_completion); + complete(&data->chg_completion); return IRQ_HANDLED; } @@ -2167,9 +2166,9 @@ static void mxt_regulator_enable(struct mxt_data *data) msleep(MXT_CHG_DELAY); retry_wait: - reinit_completion(&data->bl_completion); + reinit_completion(&data->chg_completion); data->in_bootloader = true; - error = mxt_wait_for_completion(data, &data->bl_completion, + error = mxt_wait_for_completion(data, &data->chg_completion, MXT_POWERON_DELAY); if (error == -EINTR) goto retry_wait; @@ -3334,7 +3333,7 @@ static int mxt_enter_bootloader(struct mxt_data *data) enable_irq(data->irq); } - reinit_completion(&data->bl_completion); + reinit_completion(&data->chg_completion); return 0; } @@ -3370,7 +3369,7 @@ static int mxt_load_fw(struct device *dev) } /* Wait for flash. */ - ret = mxt_wait_for_completion(data, &data->bl_completion, + ret = mxt_wait_for_completion(data, &data->chg_completion, MXT_FW_RESET_TIME); if (ret) goto disable_irq; @@ -3381,7 +3380,7 @@ static int mxt_load_fw(struct device *dev) * the CHG line after bootloading has finished, so ignore potential * errors. */ - mxt_wait_for_completion(data, &data->bl_completion, MXT_FW_RESET_TIME); + mxt_wait_for_completion(data, &data->chg_completion, MXT_FW_RESET_TIME); data->in_bootloader = false; disable_irq: @@ -3803,7 +3802,7 @@ static int mxt_probe(struct i2c_client *client, const struct i2c_device_id *id) data->irq = client->irq; i2c_set_clientdata(client, data); - init_completion(&data->bl_completion); + init_completion(&data->chg_completion); init_completion(&data->reset_completion); init_completion(&data->crc_completion);