Re: Lenovo W540 blank screen on suspend/resume after update
Chagin Dmitry <[email protected]>
| Newsgroups | gmane.os.freebsd.devel.mobile,gmane.os.freebsd.devel.acpi |
|---|---|
| Message-ID | <[email protected]> |
On Fri, Nov 14, 2014 at 03:33:26PM -0500, Eric McCorkle wrote: > Sorry, don't remember the working version. > > I have acpi_video compiled in to my kernel. I've tried it with both vt and sc and gotten the same result. > > Might try to do more diagnostics this weekend. > > On November 14, 2014 11:18:57 AM EST, Chagin Dmitry <[email protected]> wrote: > >On Thu, Nov 13, 2014 at 02:13:35PM -0800, Adrian Chadd wrote: > >> Hi, > >> > >> Does it stay blank if you have acpi_video (+ vt) loaded? > >> > >> What was the revision of 11 you were previously running? > >> > >> > >> > >> -adrian > >> > >> > >> On 13 November 2014 14:10, Eric McCorkle <[email protected]> > >wrote: > >> > Hello, > >> > > >> > I updated my kernel and userland with a fresh update from 11 > >yesterday, and > >> > I'm now seeing a blank screen after suspend/resume, where it was > >working > >> > fine previously. > >> > > >> > I had been trying out the new vt console, so I switched back to sc, > >but the > >> > blank screen is still there. > >> > > >> > Sorry, I don't have any information beyond this (quite busy these > >days). > >> > > >> > Eric > > > > > >Lenovo t540, same here. r274463 + sc. resume worked two weeks ago. > > > > > >-- > >Have fun! > >chd > try attached patch. it seems we should take a close look to other PCIB_POWER_FOR_SLEEP() calls. -- Have fun! chd
pci.patch
(text/x-diff, 753 B)
diff --git a/sys/dev/pci/pci.c b/sys/dev/pci/pci.c
index d2ac111..8e6b87b 100644
--- a/sys/dev/pci/pci.c
+++ b/sys/dev/pci/pci.c
@@ -3637,7 +3637,6 @@ static void
pci_set_power_child(device_t dev, device_t child, int state)
{
struct pci_devinfo *dinfo;
- device_t pcib;
int dstate;
/*
@@ -3647,11 +3646,10 @@ pci_set_power_child(device_t dev, device_t child, int state)
* device power. Skip children who aren't attached since they
* are handled separately.
*/
- pcib = device_get_parent(dev);
dinfo = device_get_ivars(child);
dstate = state;
if (device_is_attached(child) &&
- PCIB_POWER_FOR_SLEEP(pcib, child, &dstate) == 0)
+ PCIB_POWER_FOR_SLEEP(dev, child, &dstate) == 0)
pci_set_powerstate(child, dstate);
}
signature.asc
(application/pgp-signature, 181 B)
-----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iEYEARECAAYFAlRqPJcACgkQ0t2Tb3OO/O0VFgCghHNMr8jynEH75SlnsU/wr9Le 8C8Ani8Kbngyi1Lmlo5LWP7NAe0EgM75 =26aN -----END PGP SIGNATURE-----