From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Return-Path: Date: Wed, 1 Jun 2016 18:51:51 +0200 From: Peter Wu To: Lukas Wunner Cc: Mika Westerberg , linux-pm@vger.kernel.org, linux-pci@vger.kernel.org, "Rafael J. Wysocki" , dri-devel@lists.freedesktop.org, Bjorn Helgaas , nouveau@lists.freedesktop.org, Dave Airlie Subject: Re: [Nouveau] [PATCH 4/4] drm/nouveau/acpi: fix lockup with PCIe runtime PM Message-ID: <20160601165151.GA1947@al> References: <1464130381-4797-1-git-send-email-peter@lekensteyn.nl> <1464130381-4797-5-git-send-email-peter@lekensteyn.nl> <20160525135535.GN1789@lahna.fi.intel.com> <20160527111037.GA1436@al> <20160530095709.GK1789@lahna.fi.intel.com> <20160530122010.GB1149@al> <20160530130909.GA1743@lahna.fi.intel.com> <20160530161351.GA1355@al> <20160531122026.GA14129@wunner.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii In-Reply-To: <20160531122026.GA14129@wunner.de> List-ID: On Tue, May 31, 2016 at 02:20:26PM +0200, Lukas Wunner wrote: > On Mon, May 30, 2016 at 06:13:51PM +0200, Peter Wu wrote: > > Do you have any suggestions for the case where the pcieport driver > > refuses to put the bridge in D3 (because the BIOS is too old)? In that > > case the nouveau driver needs to fallback to the DSM method (but not > > when runtime PM is deliberately disabled by writing control=on). > > The BIOS cut-off date is meant to avoid issues when suspending ports > on older chipsets. However if the port is used for an Optimus GPU > and we can clearly identify that, and there's a _PR3 method provided, > it's probably safe to say that the port is *intended* to be suspended. > > So you may want to consider amending pci_bridge_d3_possible() to > allow D3 for such ports regardless of the BIOS date, as I've done > for Thunderbolt in this commit: > https://github.com/l1k/linux/commit/3cb8549cd4e5 Then we have heuristics based on BIOS year, on whether it is TB or not, and next to it whether it is an Optimus laptop? Maybe the PCI core needs to export a function that allows drivers to override the detection if this becomes more common. > Not sure how to uniquely identify such ports though. Perhaps check > if there's a device in slot 0 below the port which has > (pdev->class >> 16) == PCI_BASE_CLASS_DISPLAY && > (pdev->vendor == PCI_VENDOR_ID_NVIDIA || > pdev->vendor == PCI_VENDOR_ID_ATI) Seems fragile, there are desktop setups satisfying this match. -- Kind regards, Peter Wu https://lekensteyn.nl From mboxrd@z Thu Jan 1 00:00:00 1970 From: Peter Wu Subject: Re: [PATCH 4/4] drm/nouveau/acpi: fix lockup with PCIe runtime PM Date: Wed, 1 Jun 2016 18:51:51 +0200 Message-ID: <20160601165151.GA1947@al> References: <1464130381-4797-1-git-send-email-peter@lekensteyn.nl> <1464130381-4797-5-git-send-email-peter@lekensteyn.nl> <20160525135535.GN1789@lahna.fi.intel.com> <20160527111037.GA1436@al> <20160530095709.GK1789@lahna.fi.intel.com> <20160530122010.GB1149@al> <20160530130909.GA1743@lahna.fi.intel.com> <20160530161351.GA1355@al> <20160531122026.GA14129@wunner.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <20160531122026.GA14129-JFq808J9C/izQB+pC5nmwQ@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: nouveau-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Nouveau" To: Lukas Wunner Cc: linux-pm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-pci-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, "Rafael J. Wysocki" , dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, Bjorn Helgaas , nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, Dave Airlie , Mika Westerberg List-Id: linux-pm@vger.kernel.org T24gVHVlLCBNYXkgMzEsIDIwMTYgYXQgMDI6MjA6MjZQTSArMDIwMCwgTHVrYXMgV3VubmVyIHdy b3RlOgo+IE9uIE1vbiwgTWF5IDMwLCAyMDE2IGF0IDA2OjEzOjUxUE0gKzAyMDAsIFBldGVyIFd1 IHdyb3RlOgo+ID4gRG8geW91IGhhdmUgYW55IHN1Z2dlc3Rpb25zIGZvciB0aGUgY2FzZSB3aGVy ZSB0aGUgcGNpZXBvcnQgZHJpdmVyCj4gPiByZWZ1c2VzIHRvIHB1dCB0aGUgYnJpZGdlIGluIEQz IChiZWNhdXNlIHRoZSBCSU9TIGlzIHRvbyBvbGQpPyBJbiB0aGF0Cj4gPiBjYXNlIHRoZSBub3V2 ZWF1IGRyaXZlciBuZWVkcyB0byBmYWxsYmFjayB0byB0aGUgRFNNIG1ldGhvZCAoYnV0IG5vdAo+ ID4gd2hlbiBydW50aW1lIFBNIGlzIGRlbGliZXJhdGVseSBkaXNhYmxlZCBieSB3cml0aW5nIGNv bnRyb2w9b24pLgo+IAo+IFRoZSBCSU9TIGN1dC1vZmYgZGF0ZSBpcyBtZWFudCB0byBhdm9pZCBp c3N1ZXMgd2hlbiBzdXNwZW5kaW5nIHBvcnRzCj4gb24gb2xkZXIgY2hpcHNldHMuIEhvd2V2ZXIg aWYgdGhlIHBvcnQgaXMgdXNlZCBmb3IgYW4gT3B0aW11cyBHUFUKPiBhbmQgd2UgY2FuIGNsZWFy bHkgaWRlbnRpZnkgdGhhdCwgYW5kIHRoZXJlJ3MgYSBfUFIzIG1ldGhvZCBwcm92aWRlZCwKPiBp dCdzIHByb2JhYmx5IHNhZmUgdG8gc2F5IHRoYXQgdGhlIHBvcnQgaXMgKmludGVuZGVkKiB0byBi ZSBzdXNwZW5kZWQuCj4gCj4gU28geW91IG1heSB3YW50IHRvIGNvbnNpZGVyIGFtZW5kaW5nIHBj aV9icmlkZ2VfZDNfcG9zc2libGUoKSB0bwo+IGFsbG93IEQzIGZvciBzdWNoIHBvcnRzIHJlZ2Fy ZGxlc3Mgb2YgdGhlIEJJT1MgZGF0ZSwgYXMgSSd2ZSBkb25lCj4gZm9yIFRodW5kZXJib2x0IGlu IHRoaXMgY29tbWl0Ogo+IGh0dHBzOi8vZ2l0aHViLmNvbS9sMWsvbGludXgvY29tbWl0LzNjYjg1 NDljZDRlNQoKVGhlbiB3ZSBoYXZlIGhldXJpc3RpY3MgYmFzZWQgb24gQklPUyB5ZWFyLCBvbiB3 aGV0aGVyIGl0IGlzIFRCIG9yIG5vdCwKYW5kIG5leHQgdG8gaXQgd2hldGhlciBpdCBpcyBhbiBP cHRpbXVzIGxhcHRvcD8gTWF5YmUgdGhlIFBDSSBjb3JlIG5lZWRzCnRvIGV4cG9ydCBhIGZ1bmN0 aW9uIHRoYXQgYWxsb3dzIGRyaXZlcnMgdG8gb3ZlcnJpZGUgdGhlIGRldGVjdGlvbiBpZgp0aGlz IGJlY29tZXMgbW9yZSBjb21tb24uCgo+IE5vdCBzdXJlIGhvdyB0byB1bmlxdWVseSBpZGVudGlm eSBzdWNoIHBvcnRzIHRob3VnaC4gUGVyaGFwcyBjaGVjawo+IGlmIHRoZXJlJ3MgYSBkZXZpY2Ug aW4gc2xvdCAwIGJlbG93IHRoZSBwb3J0IHdoaWNoIGhhcwo+IAkocGRldi0+Y2xhc3MgPj4gMTYp ID09IFBDSV9CQVNFX0NMQVNTX0RJU1BMQVkgJiYKPiAJKHBkZXYtPnZlbmRvciA9PSBQQ0lfVkVO RE9SX0lEX05WSURJQSB8fAo+IAkgcGRldi0+dmVuZG9yID09IFBDSV9WRU5ET1JfSURfQVRJKQoK U2VlbXMgZnJhZ2lsZSwgdGhlcmUgYXJlIGRlc2t0b3Agc2V0dXBzIHNhdGlzZnlpbmcgdGhpcyBt YXRjaC4KLS0gCktpbmQgcmVnYXJkcywKUGV0ZXIgV3UKaHR0cHM6Ly9sZWtlbnN0ZXluLm5sCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk5vdXZlYXUgbWFp bGluZyBsaXN0Ck5vdXZlYXVAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vbm91dmVhdQo=