Semi-working patch for amd64 suspend/resume

Alexander Motin mav at FreeBSD.org
Mon Dec 1 09:19:36 PST 2008


Ian Smith wrote:
> On Mon, 1 Dec 2008, Alexander Motin wrote:
>  > Alexander Motin wrote:
>  > > As result, I have found, that if I am inserting:
>  > > qqq:
>  > >         jmp     qqq
>  > > lines before line 98 of acpi_switch.S:
>  > >     movl    $MSR_MTRRdefType, %ecx
>  > >         movl    WAKEUP_CTX(mtrr), %eax
>  > >         wrmsr
>  > > system hangs, but if I insert it just after them - system reboots.
>  > > 
>  > > With just commenting this three lines I was able to get successful
>  > > suspend/resume with UP amd64 kernel!!!
>  > > 
>  > > Here is problems I still have now:
>  > >  - SMP kernel resume is not working, system reboots while doing
>  > > acpi_wakeup_cpus();
>  > >  - SATA controller does not resumes correctly, it dies for some reason,
>  > > reporting timeouts on any request;
>  > 
>  > This one is not a problem anymore. Seems to be fixed.
> 
> Progress!
> 
>  > >  - text mode video does not restores on resume, while Xorg graphic one
>  > > does. hw.acpi.reset_video=1 does not help, it just hanging resume process.
> 
> Longshot: hw.syscons.sc_no_suspend_vtswitch=1 fixes similar symptoms on 
> two (older, i386 and UP) laptops here.  Some folks have reported needing 
> to have VESA loaded to get text mode video back up.  Maybe worth a try?

vtswitch does not help and vesa generally does not working under amd64.

-- 
Alexander Motin


More information about the freebsd-acpi mailing list