From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.8 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 04661C4360C for ; Sun, 6 Oct 2019 18:02:13 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id C28052067B for ; Sun, 6 Oct 2019 18:02:12 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1570384932; bh=hErGe3uINxLsS7mNQ/P8aL8IKEVdLi6IrfKsbRzA1YA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:List-ID:From; b=1JpZtYk8fE4WAR2dcC3iQYYutzyPt0U4xKFJ5Hil2OsvQYfleFMhuVAmHcfWzxre+ eijkx3LRSEreLggMuRNI1zuyxfFg4mHX312jGvuMuXy0G9PcgfawcYQIXNuE+tQtFt Ycnz+lTMCjCjqHvW7RcawZHXe1g6gI9/PEoKhiUg= Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728516AbfJFSCM (ORCPT ); Sun, 6 Oct 2019 14:02:12 -0400 Received: from mail.kernel.org ([198.145.29.99]:51174 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728192AbfJFR0I (ORCPT ); Sun, 6 Oct 2019 13:26:08 -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 341862070B; Sun, 6 Oct 2019 17:26:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1570382767; bh=hErGe3uINxLsS7mNQ/P8aL8IKEVdLi6IrfKsbRzA1YA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=KEJYmD7dAk95W2PJQxZbsyeNAmGQhJbl4EpMkuDIUNimAF2ICq115XqppTswWpyd8 qTyCgH/f8Tzvj6zCy4A6K3HhyrFf856ruCSXqynaLvK8yTDqvvM1hcUL0E3njbgFSu Eh/+6fxS0adHUTHEp35aG84bhAk926bgxCUlFcCI= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Kai-Heng Feng , Andy Shevchenko , Lee Jones , Sasha Levin Subject: [PATCH 4.14 31/68] mfd: intel-lpss: Remove D3cold delay Date: Sun, 6 Oct 2019 19:21:07 +0200 Message-Id: <20191006171121.869544173@linuxfoundation.org> X-Mailer: git-send-email 2.23.0 In-Reply-To: <20191006171108.150129403@linuxfoundation.org> References: <20191006171108.150129403@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: Kai-Heng Feng [ Upstream commit 76380a607ba0b28627c9b4b55cd47a079a59624b ] Goodix touchpad may drop its first couple input events when i2c-designware-platdrv and intel-lpss it connects to took too long to runtime resume from runtime suspended state. This issue happens becuase the touchpad has a rather small buffer to store up to 13 input events, so if the host doesn't read those events in time (i.e. runtime resume takes too long), events are dropped from the touchpad's buffer. The bottleneck is D3cold delay it waits when transitioning from D3cold to D0, hence remove the delay to make the resume faster. I've tested some systems with intel-lpss and haven't seen any regression. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=202683 Signed-off-by: Kai-Heng Feng Reviewed-by: Andy Shevchenko Signed-off-by: Lee Jones Signed-off-by: Sasha Levin --- drivers/mfd/intel-lpss-pci.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/mfd/intel-lpss-pci.c b/drivers/mfd/intel-lpss-pci.c index d9ae983095c54..2b7e8eeaa59e9 100644 --- a/drivers/mfd/intel-lpss-pci.c +++ b/drivers/mfd/intel-lpss-pci.c @@ -39,6 +39,8 @@ static int intel_lpss_pci_probe(struct pci_dev *pdev, info->mem = &pdev->resource[0]; info->irq = pdev->irq; + pdev->d3cold_delay = 0; + /* Probably it is enough to set this for iDMA capable devices only */ pci_set_master(pdev); pci_try_set_mwi(pdev); -- 2.20.1