Received: by 2002:ac0:a5a6:0:0:0:0:0 with SMTP id m35-v6csp4536295imm; Mon, 17 Sep 2018 16:04:19 -0700 (PDT) X-Google-Smtp-Source: ANB0VdblxQEdkPvToMXJB0gsb98cQuROHnAGjj4g/jjCf7sAuWVARgu8eJ/y7u9PBagRHgj2VkaA X-Received: by 2002:a17:902:bc8b:: with SMTP id bb11-v6mr26347962plb.112.1537225459236; Mon, 17 Sep 2018 16:04:19 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1537225459; cv=none; d=google.com; s=arc-20160816; b=0tOuJPtXEgePd9mRJKeg9iBfkbqLjaEK5GzWePQwLr57t2pgApoojQ+W8UVxFEOq3+ GrBgxjMBPSlrsLGK7pf9o3A03TbFRVAgU3Yuhu08A2ECP4MXbiHC4ufX3Bs1TZkJ4+M+ y9Ut8HtMbcNScmFD2TASE/c46z4U27V8VCziaGfA1XqjKZBDXZKFLS+y+BW6Izov7Nxa tp9XNusVgtjaKcLJxLsuia3+vqZhcb5o57WK/gTpPYlGg6LXGumWV0+K9va1cMxOT6Fm 3xX6DenuLKo7j8o5hGCc9LcdA5KiY7aIRuwX4W9oYkGX2vWj459Cw+A6ZpdYrvad1SXa Q30g== 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; bh=qtNX0ADWCZNT4uNuztI6XL/RJSLnCaeCXvfpEEEjrF4=; b=YhXaMJKN24BhW2x9uCaL2Ta51pAF+sedJbC+X1g2T0JPV4H5ysh3I2p0gDBMfW7ARu gPiscaPbQM8JYrEbwkZRd3dBefXoHZC8BOpjeXSTKusu7gMqhJ7CDkQGCHtbMzdogN2I rRzcga16nVSx1VhuUAy68QceDsbHceipxjUD+JN1PXBkjQYO59j8B4L719tTcnIuDTbv jhF3nvCYHPXH8fZrrEjt+knfo3Lc064ZlTGx7JOsbnnRxs2dQ1ks97Gd2EmEo2BHney/ NWzwbOhc7J6w7o0dEHOm9vEdsgDfVY8sidZpb+wTrySNG2UiOLrZy+dCAiTHdHqlzel6 j5nQ== ARC-Authentication-Results: i=1; mx.google.com; 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 c125-v6si16646558pga.268.2018.09.17.16.04.04; Mon, 17 Sep 2018 16:04:19 -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; 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 S1730446AbeIREcH (ORCPT + 99 others); Tue, 18 Sep 2018 00:32:07 -0400 Received: from mail.linuxfoundation.org ([140.211.169.12]:48526 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727088AbeIREcG (ORCPT ); Tue, 18 Sep 2018 00:32:06 -0400 Received: from localhost (li1825-44.members.linode.com [172.104.248.44]) by mail.linuxfoundation.org (Postfix) with ESMTPSA id 86E2DC49; Mon, 17 Sep 2018 23:02:38 +0000 (UTC) From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Srinivas Pandruvada , "Rafael J. Wysocki" , Hans de Goede , Tejun Heo , Sasha Levin Subject: [PATCH 4.14 058/126] ata: libahci: Correct setting of DEVSLP register Date: Tue, 18 Sep 2018 00:41:46 +0200 Message-Id: <20180917211708.262139998@linuxfoundation.org> X-Mailer: git-send-email 2.19.0 In-Reply-To: <20180917211703.481236999@linuxfoundation.org> References: <20180917211703.481236999@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review 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 4.14-stable review patch. If anyone has any objections, please let me know. ------------------ From: Srinivas Pandruvada [ Upstream commit 2dbb3ec29a6c069035857a2fc4c24e80e5dfe3cc ] We have seen that on some platforms, SATA device never show any DEVSLP residency. This prevent power gating of SATA IP, which prevent system to transition to low power mode in systems with SLP_S0 aka modern standby systems. The PHY logic is off only in DEVSLP not in slumber. Reference: https://www.intel.com/content/dam/www/public/us/en/documents/datasheets /332995-skylake-i-o-platform-datasheet-volume-1.pdf Section 28.7.6.1 Here driver is trying to do read-modify-write the devslp register. But not resetting the bits for which this driver will modify values (DITO, MDAT and DETO). So simply reset those bits before updating to new values. Signed-off-by: Srinivas Pandruvada Reviewed-by: Rafael J. Wysocki Reviewed-by: Hans de Goede Signed-off-by: Tejun Heo Signed-off-by: Sasha Levin Signed-off-by: Greg Kroah-Hartman --- drivers/ata/libahci.c | 2 ++ 1 file changed, 2 insertions(+) --- a/drivers/ata/libahci.c +++ b/drivers/ata/libahci.c @@ -2153,6 +2153,8 @@ static void ahci_set_aggressive_devslp(s deto = 20; } + /* Make dito, mdat, deto bits to 0s */ + devslp &= ~GENMASK_ULL(24, 2); devslp |= ((dito << PORT_DEVSLP_DITO_OFFSET) | (mdat << PORT_DEVSLP_MDAT_OFFSET) | (deto << PORT_DEVSLP_DETO_OFFSET) |