Date: Thu, 27 Nov 2008 22:09:31 +0100 From: "Paul B. Mahol" <onemda@gmail.com> To: freebsd-acpi@freebsd.org Subject: Re: Resume on hp nx7300 Message-ID: <3a142e750811271309y714f5c5y38ca6fff577add5f@mail.gmail.com> In-Reply-To: <3a142e750811251137se5091f8vc1ca13e5469413c3@mail.gmail.com> References: <3a142e750811240748o1923fdc4xca1ae55f44bf664d@mail.gmail.com> <3a142e750811241658i39097018x3c6f49aa62805fa7@mail.gmail.com> <3a142e750811251137se5091f8vc1ca13e5469413c3@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 11/25/08, Paul B. Mahol <onemda@gmail.com> wrote: > On 11/25/08, Paul B. Mahol <onemda@gmail.com> wrote: >> On 11/24/08, Paul B. Mahol <onemda@gmail.com> wrote: >>> Hi, >>> >>> I managed somehow to succesfully resume laptop from suspend, >>> setting hw.acpi.osname="Windows 2001" >> It appears that it's not required at all. >> >>> but lcd output is off and can not be turned on. >> >> It will work if vesa is kldloaded _before_ suspend. >> Also kldload i915 (agp+drm+i915) _before_ suspend will do it. >> >>> sysctl hw.acpi.reset_video=1 does'nt work, instead to resume, machine >>> remain in unknown state, keyboard input doesnt work. >>> >>> Also if powerd + cpufreq combination is used, some time after resume >>> system will reboot itself: >>> >>> db:0:kdb.enter.unknown> show pcpu >>> cpuid = 0 >>> curthread = 0xc3ff0240: pid 667 "powerd" >>> curpcb = 0xc3a72d90 >>> fpcurthread = none >>> idlethread = 0xc3d2fd80: pid 10 "idle: cpu0" >>> APIC ID = 0 >>> currentldt = 0x50 >>> spin locks held: >>> db:0:kdb.enter.unknown> bt >>> Tracing pid 667 tid 100036 td 0xc3ff0240 >>> mtrash_ctor(c3e21000,400,0,1,0,...) at mtrash_ctor+0x60 >>> uma_zalloc_arg(c108ba20,0,1,0,c3e2c400,...) at uma_zalloc_arg+0x137 >>> malloc(36c,c06d1bc0,1,210,c049b0c3,...) at malloc+0xcb >>> cf_levels_method(c3e0ae80,c446f000,c3a72b4c,c3a72ba8,c446f3b4,...) at >>> cf_levels_method+0x23d >>> cpufreq_curr_sysctl(c3e414c0,c3e4f000,0,c3a72ba8,c3a72ba8,4,4,c3e414c0) >>> at cpufreq_curr_sysctl+0x169 >>> sysctl_root(c3a72ba8,0,c069a48a,587,c3ff0240,...) at sysctl_root+0x138 >>> userland_sysctl(c3ff0240,c3a72c14,4,0,0,...) at userland_sysctl+0x115 >>> __sysctl(c3ff0240,c3a72cf8,18,c06a0480,c06ce1b0,...) at __sysctl+0xb7 >>> syscall(c3a72d38) at syscall+0x261 >>> Xint0x80_syscall() at Xint0x80_syscall+0x20 >>> --- syscall (202, FreeBSD ELF32, __sysctl), eip = 0x28172533, esp = >>> 0xbfbfe84c, ebp = 0xbfbfe878 --- >>> >>> >>> acpi_ec0: wait timed out (response), forcing polled mode >>> <5>wakeup from sleeping state (slept 00:00:14) >>> acpi_tz0: _CRT value is absurd, ignored (256.0C) >>> agp0: <Intel 82945GM (945GM GMCH) SVGA controller> on vgapci0 >>> agp0: detected 7932k stolen memory >>> agp0: aperture size is 256M >>> Memory modified after free 0xc3e21000(1020) val=0 @ 0xc3e21000 >>> >> >> powerd + cpufreq combination just works, above panic >> probably happened because agp is loaded _after_ resume. >> >>> >>> Fatal trap 12: page fault while in kernel mode >>> cpuid = 0; apic id = 00 >>> fault virtual address = 0xffff0020 >>> fault code = supervisor read, page not present >>> instruction pointer = 0x20:0xc062c350 >>> stack pointer = 0x28:0xc3a72a04 >>> frame pointer = 0x28:0xc3a72a24 >>> code segment = base 0x0, limit 0xfffff, type 0x1b >>> = DPL 0, pres 1, def32 1, gran 1 >>> processor eflags = interrupt enabled, resume, IOPL = 0 >>> current process = 667 (powerd) >>> exclusive sx cpufreq lock (cpufreq lock) r = 0 (0xc3e4f000) locked @ >>> /usr/src/sys/kern/kern_cpu.c:528 >>> exclusive sx sysctl lock (sysctl lock) r = 0 (0xc070f404) locked @ >>> /usr/src/sys/kern/kern_sysctl.c:1415 >>> exclusive sleep mutex Giant (Giant) r = 0 (0xc070edf0) locked @ >>> /usr/src/sys/kern/kern_sysctl.c:1353 >>> exclusive sx cpufreq lock (cpufreq lock) r = 0 (0xc3e4f000) locked @ >>> /usr/src/sys/kern/kern_cpu.c:528 >>> exclusive sx sysctl lock (sysctl lock) r = 0 (0xc070f404) locked @ >>> /usr/src/sys/kern/kern_sysctl.c:1415 >>> exclusive sleep mutex Giant (Giant) r = 0 (0xc070edf0) locked @ >>> /usr/src/sys/kern/kern_sysctl.c:1353 >>> >>> >>> Do I need to build/install UP kernel, or I can use SMP one with smp >>> disabled via loader.conf? >> >> kern.smp.disabled="1" just works, and disabling dual core from bios is >> not required. >> >> Restarting moused after resume is must. >> pccard and ndis powered broadcom card do not work after resume, >> even if right driver was never loaded during/after boot - before suspend. >> >> Main problem is that shutdown button (S5) doesnt work after resume. >> Is there any know reason why that could happen? > > Problem with cardbus controller appears to be that it never got into D3 > state, > because its hdr=0x02 > > I encountered also that setting hw.pci.do_power_nodriver=2 in > /boot/loader.conf > have same nasty effect when using it with suspend/resume. > > After resume all devices will be put back into D0 state, but if you > kldunload > one driver, for example snd_hda and kldload it again, all devices that > do not have > driver attached (and with hdr=0x00) will be put into D3 again. > > Same scenario happen when unloading driver, device will remain in D0 state > until some other driver is loaded/attached to correct device. > > Current devices power state can be monitored with "pciconf -lvc". > > I think this is more general problem. Here is status of cardbus before suspend: 02:06.0 CardBus bridge: Texas Instruments PCIxx12 Cardbus Controller Subsystem: Hewlett-Packard Company Unknown device 30a2 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64, Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 18 Region 0: Memory at f4100000 (32-bit, non-prefetchable) Bus: primary=02, secondary=03, subordinate=03, sec-latency=0 I/O window 0: 00000000-00000003 I/O window 1: 00000000-00000003 BridgeCtl: Parity- SERR- ISA+ VGA- MAbort- >Reset+ 16bInt+ PostWrite- 16-bit legacy interface ports at 0001 00: 4c 10 39 80 07 00 10 02 00 00 07 06 10 40 82 00 10: 00 00 10 f4 a0 00 00 02 02 03 03 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 12 01 c4 03 40: 3c 10 a2 30 01 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 60 10 44 08 19 00 a3 01 00 00 17 00 22 1b 01 01 90: c0 02 64 40 00 00 00 00 00 00 00 00 00 00 00 00 a0: 01 00 02 7e 00 00 c0 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 22 52 d0 6f 05 98 01 04 00 00 00 00 00 00 00 00 and after resume: 02:06.0 CardBus bridge: Texas Instruments PCIxx12 Cardbus Controller Subsystem: Hewlett-Packard Company Unknown device 30a2 Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Interrupt: pin A routed to IRQ 255 Bus: primary=00, secondary=00, subordinate=00, sec-latency=0 I/O window 0: 00000000-00000003 [disabled] I/O window 1: 00000000-00000003 [disabled] BridgeCtl: Parity- SERR- ISA- VGA- MAbort- >Reset+ 16bInt- PostWrite- 16-bit legacy interface ports at 0001 00: 4c 10 39 80 00 00 10 02 00 00 07 06 00 00 82 00 10: 00 00 00 00 a0 00 00 02 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 ff 01 40 03 40: 3c 10 a2 30 01 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 60 10 44 08 19 00 a3 01 00 00 17 00 22 1b 01 01 90: c0 02 64 40 00 00 00 00 00 00 00 00 00 00 00 00 a0: 01 00 02 7e 00 00 c0 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 22 52 d0 6f 05 98 01 04 00 00 00 00 00 00 00 00 -- Paul
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3a142e750811271309y714f5c5y38ca6fff577add5f>