1/* SPDX-License-Identifier: GPL-2.0 */
2/*
3 * Copyright IBM Corp. 1999, 2010
4 *
5 * Author(s): Hartmut Penner <hp@de.ibm.com>
6 * Martin Schwidefsky <schwidefsky@de.ibm.com>
7 * Rob van der Heij <rvdhei@iae.nl>
8 *
9 */
10
11#include <linux/init.h>
12#include <linux/linkage.h>
13#include <asm/asm-offsets.h>
14#include <asm/thread_info.h>
15#include <asm/page.h>
16#include <asm/ptrace.h>
17
18__HEAD
19SYM_CODE_START(startup_continue)
20 larl %r1,tod_clock_base
21 mvc 0(16,%r1),__LC_BOOT_CLOCK
22#
23# Setup stack
24#
25 larl %r14,init_task
26 stg %r14,__LC_CURRENT
27 larl %r15,init_thread_union+STACK_INIT_OFFSET
28 stg %r15,__LC_KERNEL_STACK
29 brasl %r14,sclp_early_adjust_va # allow sclp_early_printk
30 brasl %r14,startup_init # s390 specific early init
31 brasl %r14,start_kernel # common init code
32#
33# We returned from start_kernel ?!? PANIK
34#
35 basr %r13,0
36 lpswe dw_psw-.(%r13) # load disabled wait psw
37SYM_CODE_END(startup_continue)
38
39 .balign 16
40SYM_DATA_LOCAL(dw_psw, .quad 0x0002000180000000,0x0000000000000000)
41

source code of linux/arch/s390/kernel/head64.S