1c2485ea4SIlya Leoshkevich/* 2c2485ea4SIlya Leoshkevich * Startup code for multiarch tests. 3c2485ea4SIlya Leoshkevich * Reuses the pc-bios/s390-ccw implementation. 4c2485ea4SIlya Leoshkevich * 5c2485ea4SIlya Leoshkevich * SPDX-License-Identifier: GPL-2.0-or-later 6c2485ea4SIlya Leoshkevich */ 7c2485ea4SIlya Leoshkevich#define main main_pre 8c2485ea4SIlya Leoshkevich#include "../../../pc-bios/s390-ccw/start.S" 9c2485ea4SIlya Leoshkevich#undef main 10c2485ea4SIlya Leoshkevich 11*e31f08dcSThomas Huth.text 12*e31f08dcSThomas Huth 13c2485ea4SIlya Leoshkevichmain_pre: 14c2485ea4SIlya Leoshkevich aghi %r15,-160 /* reserve stack for C code */ 15c2485ea4SIlya Leoshkevich brasl %r14,sclp_setup 16c2485ea4SIlya Leoshkevich brasl %r14,main 17c2485ea4SIlya Leoshkevich larl %r1,success_psw /* check main() return code */ 18c2485ea4SIlya Leoshkevich ltgr %r2,%r2 19c2485ea4SIlya Leoshkevich je 0f 20c2485ea4SIlya Leoshkevich larl %r1,failure_psw 21c2485ea4SIlya Leoshkevich0: 22c2485ea4SIlya Leoshkevich lpswe 0(%r1) 23c2485ea4SIlya Leoshkevich 24c2485ea4SIlya Leoshkevich .align 8 25c2485ea4SIlya Leoshkevichsuccess_psw: 26c2485ea4SIlya Leoshkevich .quad 0x2000180000000,0xfff /* see is_special_wait_psw() */ 27c2485ea4SIlya Leoshkevichfailure_psw: 28c2485ea4SIlya Leoshkevich .quad 0x2000180000000,0 /* disabled wait */ 29