Received: by 2002:a25:e7d8:0:0:0:0:0 with SMTP id e207csp675006ybh; Tue, 10 Mar 2020 06:16:48 -0700 (PDT) X-Google-Smtp-Source: ADFU+vt0v8ojjAf14hYufEKAZ2eymA67JFOBqf9PuIEvgnCSldo9idKGnXdkQFPysZ5ygqOXuOyc X-Received: by 2002:a05:6808:30d:: with SMTP id i13mr1027891oie.119.1583846207938; Tue, 10 Mar 2020 06:16:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1583846207; cv=none; d=google.com; s=arc-20160816; b=D4iTqrqStCk/HzOIPSmF8VBrd2WB7jdxg6yGzTN6LrdLmkSWBdYvE4tB7JsHqspzVF KZ31z3aAgUFG+WERPdNonNcds28T8daR5d59I5Gjfyy5bXF/ei81QZq6DlalMO/VylK0 1+6luYp2C3nzPFFsdIttrJ1Q8bx4xvNOFP4ns5i1jYpOLR1s6VJCk2JDWZzP6HPlORMa PHk5LfC7uaEpRhtr0/4STUmaoZC1KnljAiMZhNVhikOJlF/FnrFekyPcZjVodBfaONV4 Yg2I4Ne5axfZv3ahme//jty4ssJnGrognF0nprZnCTRxMmDMXQmM6/KD8JEDAHJJb9kH APSA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=I8E9zGNCrAM8VNufL9d+1og8U1Pg9TFUsIkKEQBolRo=; b=kXBlgmngBYNNV+2iXwh7I7835Owkc5bi8aRnZak+i6viQLD7p9FLEUe+bQkzYES1ew ldN0f89ZBcKnXzfj+kHPqLNQEbtx9Z/zEVOuFPcw28sxUdDa1Z1mLJoEBR1cGC4H0l/j TAeM6xKgVR/y4aNVTqQCNTL0LlxZgQQq8inog/CXE869ucF8NpNRR+05fCU0yvUCkjJS M5cSVuOzBGvCHNYKI5Pcb8NiOxXUfJgP9qEsmz3FvPgorRzKEhTesO9ajcwUeRbeAPl9 6BJAffZS60ioZb30Kt4bYWx3u8aCcQR6AFuUjW0mRNFXzohIY83SvVKICH/iAtq1Gfxv IbsA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=hU2sKEca; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id b20si5576127oic.136.2020.03.10.06.16.35; Tue, 10 Mar 2020 06:16:47 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=hU2sKEca; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731658AbgCJNPJ (ORCPT + 99 others); Tue, 10 Mar 2020 09:15:09 -0400 Received: from mail.kernel.org ([198.145.29.99]:39544 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731983AbgCJNPH (ORCPT ); Tue, 10 Mar 2020 09:15:07 -0400 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 5E34024693; Tue, 10 Mar 2020 13:15:06 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1583846106; bh=xn89jOZ4WMo3qQrjiebX25SNxsaPH9ff5YHUlIpOBkQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=hU2sKEcaSM7NxoecdseBWxsgtJPGLkVcBTPMGThqBceLTbF5kk3avssOZbPCHfnpR DbbULPsHTtvEJEx3PldwU7HSWO2gmHPewWwkn23PDw/hbW1l219m0yukcJgn6AfZUN IBxXitnEM8wHm6OLM+Ln5Y2GMmiMEeHSz5MjL7B8= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Marcel Partap , Merlijn Wajer , Michael Scott , NeKit , Pavel Machek , Sebastian Reichel , Tony Lindgren , Kishon Vijay Abraham I Subject: [PATCH 4.19 71/86] phy: mapphone-mdm6600: Fix write timeouts with shorter GPIO toggle interval Date: Tue, 10 Mar 2020 13:45:35 +0100 Message-Id: <20200310124534.605432985@linuxfoundation.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20200310124530.808338541@linuxfoundation.org> References: <20200310124530.808338541@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Tony Lindgren commit 46b7edf1c7b7c91004c4db2c355cbd033f2385f9 upstream. I've noticed that when writing data to the modem the writes can time out at some point eventually. Looks like kicking the modem idle GPIO every 600 ms instead of once a second fixes the issue. Note that this rate is different from our runtime PM autosuspend rate MDM6600_MODEM_IDLE_DELAY_MS that we still want to keep at 1 second, so let's add a separate define for PHY_MDM6600_IDLE_KICK_MS. Fixes: f7f50b2a7b05 ("phy: mapphone-mdm6600: Add runtime PM support for n_gsm on USB suspend") Cc: Marcel Partap Cc: Merlijn Wajer Cc: Michael Scott Cc: NeKit Cc: Pavel Machek Cc: Sebastian Reichel Signed-off-by: Tony Lindgren Signed-off-by: Kishon Vijay Abraham I Signed-off-by: Greg Kroah-Hartman --- drivers/phy/motorola/phy-mapphone-mdm6600.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) --- a/drivers/phy/motorola/phy-mapphone-mdm6600.c +++ b/drivers/phy/motorola/phy-mapphone-mdm6600.c @@ -19,6 +19,7 @@ #define PHY_MDM6600_PHY_DELAY_MS 4000 /* PHY enable 2.2s to 3.5s */ #define PHY_MDM6600_ENABLED_DELAY_MS 8000 /* 8s more total for MDM6600 */ +#define PHY_MDM6600_WAKE_KICK_MS 600 /* time on after GPIO toggle */ #define MDM6600_MODEM_IDLE_DELAY_MS 1000 /* modem after USB suspend */ #define MDM6600_MODEM_WAKE_DELAY_MS 200 /* modem response after idle */ @@ -491,8 +492,14 @@ static void phy_mdm6600_modem_wake(struc ddata = container_of(work, struct phy_mdm6600, modem_wake_work.work); phy_mdm6600_wake_modem(ddata); + + /* + * The modem does not always stay awake 1.2 seconds after toggling + * the wake GPIO, and sometimes it idles after about some 600 ms + * making writes time out. + */ schedule_delayed_work(&ddata->modem_wake_work, - msecs_to_jiffies(MDM6600_MODEM_IDLE_DELAY_MS)); + msecs_to_jiffies(PHY_MDM6600_WAKE_KICK_MS)); } static int __maybe_unused phy_mdm6600_runtime_suspend(struct device *dev)