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=-10.1 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=unavailable 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 B9DCEC4360C for ; Sun, 29 Sep 2019 17:42:17 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 8C0D6218DE for ; Sun, 29 Sep 2019 17:42:17 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1569778937; bh=2r8AeKYGjMupGol4CtMYkDcX41Wu5e//UTgfixnBy/0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:List-ID:From; b=hT68C0y6H07jPfTaJioym/503IkKu2t/EvBFrNHIipgb7gefzn6s3evEa7Im5CZQz Q4YJZRXB4REkfhoDfdE99s+M+2pqePOOMpt1QgRoECU4EA5L/uQOEJDL47kZ0+J7Sv xQ7dYmH+a4LeHCJUL2jt8nUYBTJATEbcXiiyYJr4= Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730675AbfI2RmP (ORCPT ); Sun, 29 Sep 2019 13:42:15 -0400 Received: from mail.kernel.org ([198.145.29.99]:44100 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729907AbfI2Rc6 (ORCPT ); Sun, 29 Sep 2019 13:32:58 -0400 Received: from sasha-vm.mshome.net (c-73-47-72-35.hsd1.nh.comcast.net [73.47.72.35]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id A1AFB21925; Sun, 29 Sep 2019 17:32:57 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1569778378; bh=2r8AeKYGjMupGol4CtMYkDcX41Wu5e//UTgfixnBy/0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=vILg1d17/hr6ZulH1pedIQ4z6yzhEf4QkjWlqIVLx0fP3qVoX/7UK6dxu2fxYP//N n2UAn17kQdJB2k8o5lzBYm2snGQZ+HKpJsHEcPiO4bBvM9tseTAiFWFF5VkK4OOZib XvhezmWJi36wRl3V6dDOuo6IsHxiDpe+pj7QBfJw= From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Kai-Heng Feng , Andy Shevchenko , Lee Jones , Sasha Levin Subject: [PATCH AUTOSEL 5.2 06/42] mfd: intel-lpss: Remove D3cold delay Date: Sun, 29 Sep 2019 13:32:05 -0400 Message-Id: <20190929173244.8918-6-sashal@kernel.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190929173244.8918-1-sashal@kernel.org> References: <20190929173244.8918-1-sashal@kernel.org> MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore 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 aed2c04479663..3c271b14e7c6c 100644 --- a/drivers/mfd/intel-lpss-pci.c +++ b/drivers/mfd/intel-lpss-pci.c @@ -35,6 +35,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