0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011 #include <linux/init.h>
0012 #include <linux/linkage.h>
0013 #include <asm/asm-offsets.h>
0014 #include <asm/thread_info.h>
0015 #include <asm/page.h>
0016 #include <asm/ptrace.h>
0017
0018 __HEAD
0019 ENTRY(startup_continue)
0020 larl %r1,tod_clock_base
0021 mvc 0(16,%r1),__LC_BOOT_CLOCK
0022 #
0023 # Setup stack
0024 #
0025 larl %r14,init_task
0026 stg %r14,__LC_CURRENT
0027 larl %r15,init_thread_union+THREAD_SIZE-STACK_FRAME_OVERHEAD-__PT_SIZE
0028 #ifdef CONFIG_KASAN
0029 brasl %r14,kasan_early_init
0030 #endif
0031 brasl %r14,startup_init # s390 specific early init
0032 brasl %r14,start_kernel # common init code
0033 #
0034 # We returned from start_kernel ?!? PANIK
0035 #
0036 basr %r13,0
0037 lpswe .Ldw-.(%r13) # load disabled wait psw
0038
0039 .align 16
0040 .LPG1:
0041 .Ldw: .quad 0x0002000180000000,0x0000000000000000