From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kai-Heng Feng Subject: Re: [PATCH] r8169: Reinstate ALDPS and ASPM support Date: Wed, 6 Jun 2018 14:47:36 +0800 Message-ID: <8BAED2AC-DA94-4F63-BA16-EB3D54649BC5@canonical.com> References: <20180605045812.17977-1-kai.heng.feng@canonical.com> <20180605141114.GC14873@lunn.ch> Mime-Version: 1.0 (Mac OS X Mail 11.4 \(3445.8.2\)) Content-Type: text/plain; charset=us-ascii; delsp=yes; format=flowed Content-Transfer-Encoding: 7bit Cc: David Miller , Hayes Wang , hkallweit1@gmail.com, romieu@fr.zoreil.com, Linux Netdev List , Linux Kernel Mailing List , Ryankao To: Andrew Lunn Return-path: Received: from youngberry.canonical.com ([91.189.89.112]:41214 "EHLO youngberry.canonical.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932164AbeFFGsi (ORCPT ); Wed, 6 Jun 2018 02:48:38 -0400 Received: from mail-pg0-f69.google.com ([74.125.83.69]) by youngberry.canonical.com with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.76) (envelope-from ) id 1fQSER-0003pK-6P for netdev@vger.kernel.org; Wed, 06 Jun 2018 06:47:43 +0000 Received: by mail-pg0-f69.google.com with SMTP id b7-v6so1865409pgv.5 for ; Tue, 05 Jun 2018 23:47:43 -0700 (PDT) In-Reply-To: <20180605141114.GC14873@lunn.ch> Sender: netdev-owner@vger.kernel.org List-ID: at 22:11, Andrew Lunn wrote: > On Tue, Jun 05, 2018 at 12:58:12PM +0800, Kai-Heng Feng wrote: >> This patch reinstate ALDPS and ASPM support on r8169. >> >> On some Intel platforms, ASPM support on r8169 is the key factor to let >> Package C-State achieve PC8. Without ASPM support, the deepest Package >> C-State can hit is PC3. PC8 can save additional ~3W in comparison with >> PC3. >> >> This patch is from Realtek. >> >> Fixes: e0c075577965 ("r8169: enable ALDPS for power saving") >> Fixes: d64ec841517a ("r8169: enable internal ASPM and clock request >> settings") >> >> Cc: Ryankao >> Signed-off-by: Kai-Heng Feng >> --- >> drivers/net/ethernet/realtek/r8169.c | 190 +++++++++++++++++++++------ >> 1 file changed, 151 insertions(+), 39 deletions(-) >> >> diff --git a/drivers/net/ethernet/realtek/r8169.c >> b/drivers/net/ethernet/realtek/r8169.c >> index 75dfac0248f4..a28ef20be221 100644 >> --- a/drivers/net/ethernet/realtek/r8169.c >> +++ b/drivers/net/ethernet/realtek/r8169.c >> @@ -319,6 +319,8 @@ static const struct pci_device_id rtl8169_pci_tbl[] >> = { >> >> MODULE_DEVICE_TABLE(pci, rtl8169_pci_tbl); >> >> +static int enable_aspm = 1; >> +static int enable_aldps = 1; >> static int use_dac = -1; >> static struct { >> u32 msg_enable; >> @@ -817,6 +819,10 @@ struct rtl8169_private { >> >> MODULE_AUTHOR("Realtek and the Linux r8169 crew "); >> MODULE_DESCRIPTION("RealTek RTL-8169 Gigabit Ethernet driver"); >> +module_param(enable_aspm, int, 0); >> +MODULE_PARM_DESC(enable_aspm, "Enable ASPM"); >> +module_param(enable_aldps, int, 0); >> +MODULE_PARM_DESC(enable_aldps, "Enable ALDPS"); > > Hi Kai > > No module parameter please. Just turn it on by default. Assuming > testing shows works. Hi Andrew, Sure. Do you think we should also strip out the enable/disable logic? Or just remove the parameter? Kai-Heng > > Andrew