Received: by 10.213.65.68 with SMTP id h4csp227763imn; Fri, 16 Mar 2018 00:48:29 -0700 (PDT) X-Google-Smtp-Source: AG47ELvUrka53zh7aYGsQGqN7JajuctCBAEXGi5uZvnGLPfW18vrIlTXBs06CF1GrgT7P+/gCK8u X-Received: by 10.98.13.211 with SMTP id 80mr766741pfn.69.1521186509067; Fri, 16 Mar 2018 00:48:29 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1521186509; cv=none; d=google.com; s=arc-20160816; b=fp/wMuybPSL3Bn0NJ1ICk1KMpDA7K+cELLffB+WkSv1bijCW/BPPt/GS5j91SYM8iN 7N5WnWd4FUsysKPzujzgTi/k8jolC5M6RvyvWVMTXbu6ZWstgxiHw6URoK7oxOuwFDRp 48kgcqbdeA+8cLyfKkwal5PPHuGd7vJcufcFCbxI2bnwO8xvnTfjRhAw/mXbK9ree6nA lJM+gciOvx8EFDVUw6tf8athOg19LlEEyRSS1OI/wTINmD45jXGpItKfG/wUPGZJtZqa rhY3ww2XKtEtos1myo3ZudRGRQuJ2WTftDkmFuP6SLRLFs7HhBRXBROiUnMK0Pzf0DlD 6GkA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :references:in-reply-to:mime-version:dkim-signature :arc-authentication-results; bh=+oh6JGQc5mlFvoHJ9MApWn5yt3KYLD41ZCU8WrHjfKA=; b=Axr1Od2AmHap2+GHvMUstDdJjis+7hrtb23u+qbLwugAx964EfrINDELA4tUQ142Ak yCLbxAtwfghRRsHmj/Ptw1ttR64iOiVDipnUg5MIFSAOMZUQDgMu5S/jl+ivH8xskPZ5 CQSHJ8w37Dhxr57l87gtacIehJKJiK4Trtr9mSihKYU6blzLWZ+L/pa4XQnsEwDUhpnN JRKXpH9PnrghZ2PDBAgqGoXyQe3q+YqFFvlnY0gGEB+oqTSAyNQyZ34W1HqqAaK8Ykbj zRndN2U1XKXrTgGKQ4txDKhiMpWWo0sc0npUfscmyJjCPMY2tfS2YGSNcAkmgHi5CFR5 GzdA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@endlessm-com.20150623.gappssmtp.com header.s=20150623 header.b=WUzzMuoX; 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 d6-v6si5573244plo.661.2018.03.16.00.48.14; Fri, 16 Mar 2018 00:48:29 -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=@endlessm-com.20150623.gappssmtp.com header.s=20150623 header.b=WUzzMuoX; 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 S1753376AbeCPHrR (ORCPT + 99 others); Fri, 16 Mar 2018 03:47:17 -0400 Received: from mail-ot0-f181.google.com ([74.125.82.181]:41711 "EHLO mail-ot0-f181.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752014AbeCPHrP (ORCPT ); Fri, 16 Mar 2018 03:47:15 -0400 Received: by mail-ot0-f181.google.com with SMTP id i28-v6so4816441otf.8 for ; Fri, 16 Mar 2018 00:47:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=endlessm-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=+oh6JGQc5mlFvoHJ9MApWn5yt3KYLD41ZCU8WrHjfKA=; b=WUzzMuoXBnXxkT/8Ftad41fx4ieBwQOSeEhn8q/JeR4tK3rLaVw6L7Gn1NLsAB++2W Nvi0EBju9xJpFJFCFjWV3DZZdj/mkiCc+B4F/OaU2FPjxEtshlEUGbte5hUasoc3/mSP ZsYz5J6ArAV5Z5PLGVGj/mN4xkqcYh8Vjw2/rrxP+TJBKxZqi51a91Re+Dvm/7X4d4v4 1EqkcxrqBQyz13f8K0mdFc/58cFx4KADJZ5/+3A1wMd85eDZi3zkqfrd88OVKGBJza+t AVW8SPyI7tIyIjo4em0NqTVsZY0V0ATJmwdbfQ4rUNPWm9MthY/HN3b4qb9dVOyBNnS2 5FSw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=+oh6JGQc5mlFvoHJ9MApWn5yt3KYLD41ZCU8WrHjfKA=; b=JAJ1FccA8rmdKGWfaTaaD794SLpfArvJUjo6/k2m+nBYjWHa4Qt1/jYiN+ZeWu9615 Mu2B7VX0w34yuLm39QBi4N9MFwI29PyQioXUOH5Y5KgLz/PwrVD384LzZi4Ul8BXRWYI NiqkpzzXyuBSY2fw04uo2LI0jrCycKQeFiV6giLdGx6KJ9x16BYjEVCS5r2p41VSdUD4 wgdoJptfycofQeSmzaqaqyW2vfTod12rFRm9B0ZcFcVozKKTLYv1wmvVlef3lxz/xPkj cETlgwlFdkEEmEQVqKPc3d2nql8iKRvwckLB5/Qr30ONP1UHHz+yjWrd/QW0YLFmlH+o 2CYw== X-Gm-Message-State: AElRT7E7f9Qn6HHQ0Kcq16OZyNG9aYk2IXUYwZbfv6FcWOnnQXd7bl02 BA3BRA7Jxd4iVvs+dxrL/gsz01tN+WsOYlPEjNunAg== X-Received: by 2002:a9d:509:: with SMTP id 9-v6mr547315otw.223.1521186434974; Fri, 16 Mar 2018 00:47:14 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a9d:26f8:0:0:0:0:0 with HTTP; Fri, 16 Mar 2018 00:47:14 -0700 (PDT) In-Reply-To: <278fe5fa-7b33-02e5-12e3-b7760952b297@linux.intel.com> References: <6c8df688-b456-6f07-9325-6f4dfd8f0883@linux.intel.com> <278fe5fa-7b33-02e5-12e3-b7760952b297@linux.intel.com> From: Daniel Drake Date: Fri, 16 Mar 2018 15:47:14 +0800 Message-ID: Subject: Re: Intel GemniLake xHCI connected devices can never wake up the system from suspend To: Mathias Nyman Cc: Chris Chiu , mathias.nyman@intel.com, Greg Kroah-Hartman , Linux USB Mailing List , Linux Kernel , Linux Upstreaming Team , ACPI Devel Maling List Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, I'm working alongside Chris on this issue. On Fri, Mar 16, 2018 at 12:11 AM, Mathias Nyman wrote: > Scope (_SB.PCI0.XHC) has _PS0 method, so Linux will look for a _S3W to get > the > lowest possible D state in S3, but_S3W is missing, so Linux pci-acpi code > will > probably default to D0 Yes, _S3W is missing, and in this case, acpi_dev_pm_get_state() is setting the maximum number permitted device power state to the minimum value of D0. So the XHCI controller is in D0 when you go into suspend. I tried your hack to force it into D3hot. Now the system can wake up from resume via the USB port. Thanks for finding that. >> ASUS said the BIOS has no problem on USB wakeup under Windows so I don't >> think >> there's any update. Anything else could be cause for this? > > Linux and Windows probably check different DSDT values I've studied the ACPI spec trying to understand better, but I'm struggling with the question: What is the maximum number (lowest power) permitted device power state for a device that is configured as able to wake the system from S3, **that does not implement the _S3W method**? As far as I can see, the ACPI spec doesn't give an answer. It's clear what the behaviour is when _S3W is present, but not unclear what should happen when it is not there. As noted above, Linux's interpretation is that in such case, the device must remain fully on (D0) when going into S3. I am wondering if Windows just has made an alternative assumption that all available device power states can wake the system from suspend in such case. This is working in Windows so hopefully we can find a way to match the behaviour? Thanks Daniel