diff options
author | iwasaki <iwasaki@FreeBSD.org> | 2012-05-18 18:55:58 +0000 |
---|---|---|
committer | iwasaki <iwasaki@FreeBSD.org> | 2012-05-18 18:55:58 +0000 |
commit | 31eddd58e3798cc0cb647a258ee1746a9f043078 (patch) | |
tree | 8925d82a855712a632f2c701eb9cec7ec7fbb7c4 /sys/libkern/flsl.c | |
parent | 8a8c044e283955d1ea7337162a3cfd195f2abbb1 (diff) | |
download | FreeBSD-src-31eddd58e3798cc0cb647a258ee1746a9f043078.zip FreeBSD-src-31eddd58e3798cc0cb647a258ee1746a9f043078.tar.gz |
Add SMP/i386 suspend/resume support.
Most part is merged from amd64.
- i386/acpica/acpi_wakecode.S
Replaced with amd64 code (from realmode to paging enabling code).
- i386/acpica/acpi_wakeup.c
Replaced with amd64 code (except for wakeup_pagetables stuff).
- i386/include/pcb.h
- i386/i386/genassym.c
Added PCB new members (CR0, CR2, CR4, DS, ED, FS, SS, GDT, IDT, LDT
and TR) needed for suspend/resume, not for context switch.
- i386/i386/swtch.s
Added suspendctx() and resumectx().
Note that savectx() was not changed and used for suspending (while
amd64 code uses it).
BSP and AP execute the same sequence, suspendctx(), acpi_wakecode()
and resumectx() for suspend/resume (in case of UP system also).
- i386/i386/apic_vector.s
Added cpususpend().
- i386/i386/mp_machdep.c
- i386/include/smp.h
Added cpususpend_handler().
- i386/include/apicvar.h
- kern/subr_smp.c
- sys/smp.h
Added IPI_SUSPEND and suspend_cpus().
- i386/i386/initcpu.c
- i386/i386/machdep.c
- i386/include/md_var.h
- pc98/pc98/machdep.c
Moved initializecpu() declarations to md_var.h.
MFC after: 3 days
Diffstat (limited to 'sys/libkern/flsl.c')
0 files changed, 0 insertions, 0 deletions