Deleted Added
full compact
acpi_wakecode.S (231787) acpi_wakecode.S (236772)
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 231787 2012-02-15 22:10:33Z jkim $
29 * $FreeBSD: head/sys/amd64/acpica/acpi_wakecode.S 236772 2012-06-09 00:37:26Z iwasaki $
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"

--- 176 unchanged lines hidden (view full) ---

214 * so use an indirect jump.
215 */
216 ALIGN_TEXT
217 .code64
218wakeup_64:
219 mov $bootdata64 - bootgdt, %eax
220 mov %ax, %ds
221
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"

--- 176 unchanged lines hidden (view full) ---

214 * so use an indirect jump.
215 */
216 ALIGN_TEXT
217 .code64
218wakeup_64:
219 mov $bootdata64 - bootgdt, %eax
220 mov %ax, %ds
221
222 /* Restore arguments and return. */
223 movq wakeup_kpml4 - wakeup_start(%rbx), %rdi
224 movq wakeup_ctx - wakeup_start(%rbx), %rsi
225 movq wakeup_retaddr - wakeup_start(%rbx), %rax
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. */
226 jmp *%rax
227
228 .data
229
230resume_beep:
231 .byte 0
232reset_video:
233 .byte 0

--- 29 unchanged lines hidden (view full) ---

263wakeup_pagetables:
264 .long 0
265
266bootgdtdesc:
267 .word bootgdtend - bootgdt /* Length */
268 .long bootgdt - wakeup_start /* Offset plus %ds << 4 */
269
270 ALIGN_DATA
231 jmp *%rax
232
233 .data
234
235resume_beep:
236 .byte 0
237reset_video:
238 .byte 0

--- 29 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
271wakeup_retaddr:
276wakeup_cr4: /* not used */
272 .quad 0
277 .quad 0
273wakeup_kpml4:
278wakeup_cr3:
274 .quad 0
279 .quad 0
275
276wakeup_ctx:
277 .quad 0
278wakeup_pcb:
279 .quad 0
280wakeup_pcb:
281 .quad 0
280wakeup_fpusave:
282wakeup_ret:
281 .quad 0
282wakeup_gdt:
283 .word 0
284 .quad 0
283 .quad 0
284wakeup_gdt:
285 .word 0
286 .quad 0
285
286 ALIGN_DATA
287wakeup_efer:
288 .quad 0
289wakeup_star:
290 .quad 0
291wakeup_lstar:
292 .quad 0
293wakeup_cstar:
294 .quad 0
295wakeup_sfmask:
296 .quad 0
297wakeup_xsmask:
298 .quad 0
299wakeup_cpu:
300 .long 0
301dummy:
287dummy: