From patchwork Tue Sep 17 09:38:50 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Wang, Jiada" X-Patchwork-Id: 11148423 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 3E92A14DB for ; Tue, 17 Sep 2019 09:39:59 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 241BA21881 for ; Tue, 17 Sep 2019 09:39:59 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728665AbfIQJjy (ORCPT ); Tue, 17 Sep 2019 05:39:54 -0400 Received: from esa3.mentor.iphmx.com ([68.232.137.180]:20501 "EHLO esa3.mentor.iphmx.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728319AbfIQJjy (ORCPT ); Tue, 17 Sep 2019 05:39:54 -0400 IronPort-SDR: D8163l2u0H1sMk+65Kh7wYSEJxGHvbUdDB01yHDxmZijAewjpf41M6b1T8/Dc0P1X+9NBprOnQ 6ZC0xqCJBcqiRypHJkba8moaBZsooMVnRCoWUpj+eh014wQN+Z4Kow9pJeE+2MjHsZ75UyR6Hm RBuYwOxOlRMjHpLnM94TaabLjsbsDJX+AIlMzhX3tdsw51OqKtbut8qwMD7LeooQfQi4z1o+FF 4jyHhmpHwTGnMvzCl0KiqtZ1DUS7WHhdeHU6Se0e5dps637kdvrPq4ojO3pjwSBs1npktOygqA x8o= X-IronPort-AV: E=Sophos;i="5.64,515,1559548800"; d="scan'208";a="41416525" Received: from orw-gwy-01-in.mentorg.com ([192.94.38.165]) by esa3.mentor.iphmx.com with ESMTP; 17 Sep 2019 01:39:53 -0800 IronPort-SDR: QahvdR0bdUS7VCop1W6UESzY3UUmS5qkDvzHrqVPkPXMpbSIfqxYiJ+D+EN6akRnrFk81FH2Xe d6ehyBZG1gAkJPiOIkgqnlIzh5DFJyyQzmVfJkPXpITxxhRwqtDhu9f+Jpdxk00iPIIb/OLl9M Ub5e84pUdARGIttceD1OlFzXmtJY8g+WywdEk5ot6G4uOl81phw2BzgqR4L+UmqBo8aLN5JmjZ 4Fk1ai+0/0LrjbiyjO1uGAnjNIRmUVixpPqxXYdu3cnzlnojKHah91E9auJquRDFOMoO8XHq5n 19A= From: Jiada Wang To: , , , , CC: , , Subject: [PATCH v3 24/49] Input: atmel_mxt_ts - rename bl_completion to chg_completion Date: Tue, 17 Sep 2019 18:38:50 +0900 Message-ID: <20190917093915.18645-5-jiada_wang@mentor.com> X-Mailer: git-send-email 2.19.2 In-Reply-To: <20190917093915.18645-1-jiada_wang@mentor.com> References: <20190917093915.18645-1-jiada_wang@mentor.com> MIME-Version: 1.0 X-ClientProxiedBy: SVR-ORW-MBX-07.mgc.mentorg.com (147.34.90.207) 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 65d587badf6a..dfbdf6cf5c54 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);