acpi_wakecode.S (236772) | acpi_wakecode.S (237037) |
---|---|
1/*- 2 * Copyright (c) 2001 Takanori Watanabe <takawata@jp.freebsd.org> 3 * Copyright (c) 2001 Mitsuru IWASAKI <iwasaki@jp.freebsd.org> 4 * Copyright (c) 2003 Peter Wemm 5 * Copyright (c) 2008-2012 Jung-uk Kim <jkim@FreeBSD.org> 6 * All rights reserved. 7 * 8 * Redistribution and use in source and binary forms, with or without --- 12 unchanged lines hidden (view full) --- 21 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27 * SUCH DAMAGE. 28 * | 1/*- 2 * Copyright (c) 2001 Takanori Watanabe <takawata@jp.freebsd.org> 3 * Copyright (c) 2001 Mitsuru IWASAKI <iwasaki@jp.freebsd.org> 4 * Copyright (c) 2003 Peter Wemm 5 * Copyright (c) 2008-2012 Jung-uk Kim <jkim@FreeBSD.org> 6 * All rights reserved. 7 * 8 * Redistribution and use in source and binary forms, with or without --- 12 unchanged lines hidden (view full) --- 21 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27 * SUCH DAMAGE. 28 * |
29 * $FreeBSD: head/sys/amd64/acpica/acpi_wakecode.S 236772 2012-06-09 00:37:26Z iwasaki $ | 29 * $FreeBSD: head/sys/amd64/acpica/acpi_wakecode.S 237037 2012-06-13 22:53:56Z jkim $ |
30 */ 31 32#include <machine/asmacros.h> 33#include <machine/ppireg.h> 34#include <machine/specialreg.h> 35#include <machine/timerreg.h> 36 37#include "assym.s" --- 177 unchanged lines hidden (view full) --- 215 */ 216 ALIGN_TEXT 217 .code64 218wakeup_64: 219 mov $bootdata64 - bootgdt, %eax 220 mov %ax, %ds 221 222 /* Restore arguments. */ | 30 */ 31 32#include <machine/asmacros.h> 33#include <machine/ppireg.h> 34#include <machine/specialreg.h> 35#include <machine/timerreg.h> 36 37#include "assym.s" --- 177 unchanged lines hidden (view full) --- 215 */ 216 ALIGN_TEXT 217 .code64 218wakeup_64: 219 mov $bootdata64 - bootgdt, %eax 220 mov %ax, %ds 221 222 /* Restore arguments. */ |
223 movq wakeup_cr3 - wakeup_start(%rbx), %rsi | |
224 movq wakeup_pcb - wakeup_start(%rbx), %rdi 225 movq wakeup_ret - wakeup_start(%rbx), %rax 226 227 /* Restore GDT. */ 228 lgdt wakeup_gdt - wakeup_start(%rbx) 229 230 /* Jump to return address. */ 231 jmp *%rax --- 36 unchanged lines hidden (view full) --- 268wakeup_pagetables: 269 .long 0 270 271bootgdtdesc: 272 .word bootgdtend - bootgdt /* Length */ 273 .long bootgdt - wakeup_start /* Offset plus %ds << 4 */ 274 275 ALIGN_DATA | 223 movq wakeup_pcb - wakeup_start(%rbx), %rdi 224 movq wakeup_ret - wakeup_start(%rbx), %rax 225 226 /* Restore GDT. */ 227 lgdt wakeup_gdt - wakeup_start(%rbx) 228 229 /* Jump to return address. */ 230 jmp *%rax --- 36 unchanged lines hidden (view full) --- 267wakeup_pagetables: 268 .long 0 269 270bootgdtdesc: 271 .word bootgdtend - bootgdt /* Length */ 272 .long bootgdt - wakeup_start /* Offset plus %ds << 4 */ 273 274 ALIGN_DATA |
276wakeup_cr4: /* not used */ 277 .quad 0 278wakeup_cr3: 279 .quad 0 | |
280wakeup_pcb: 281 .quad 0 282wakeup_ret: 283 .quad 0 284wakeup_gdt: 285 .word 0 286 .quad 0 287dummy: | 275wakeup_pcb: 276 .quad 0 277wakeup_ret: 278 .quad 0 279wakeup_gdt: 280 .word 0 281 .quad 0 282dummy: |