diff --git a/include/boot/s390.h b/include/boot/s390.h index 4be4dc8b..52cdeaa5 100644 --- a/include/boot/s390.h +++ b/include/boot/s390.h @@ -285,18 +285,21 @@ static __always_inline void __ctl_set_bit(unsigned int cr, unsigned int bit) * DIAG 308 support */ enum diag308_subcode { - DIAG308_REL_HSA = 2, - DIAG308_IPL = 3, - DIAG308_DUMP = 4, - DIAG308_SET = 5, - DIAG308_STORE = 6, + DIAG308_CLEAR_RESET = 0, + DIAG308_LOAD_NORMAL_RESET = 1, + DIAG308_REL_HSA = 2, + DIAG308_LOAD_CLEAR = 3, + DIAG308_LOAD_NORMAL_DUMP = 4, + DIAG308_SET = 5, + DIAG308_STORE = 6, + DIAG308_LOAD_NORMAL = 7, DIAG308_SET_PV = 8, DIAG308_UNPACK_PV = 10, }; enum diag308_rc { DIAG308_RC_OK = 0x0001, - DIAG308_RC_NO_CONF = 0x0102, + DIAG308_RC_NOCONFIG = 0x0102, }; static __always_inline unsigned long diag308(unsigned long subcode, void *addr) diff --git a/zipl/boot/stage2dump.c b/zipl/boot/stage2dump.c index 1a920abd..2815c01a 100644 --- a/zipl/boot/stage2dump.c +++ b/zipl/boot/stage2dump.c @@ -405,7 +405,7 @@ static __noreturn void dump_exit(unsigned long code) if (ipib_info->ipib_csum != csum) libc_stop(code); diag308(DIAG308_SET, (void *) ipib_info->ipib); - diag308(DIAG308_IPL, NULL); + diag308(DIAG308_LOAD_CLEAR, NULL); __builtin_unreachable(); } diff --git a/zipl/boot/stage3.c b/zipl/boot/stage3.c index 69ad7932..82b7b2ad 100644 --- a/zipl/boot/stage3.c +++ b/zipl/boot/stage3.c @@ -121,7 +121,7 @@ secure_boot_enabled() rc = pl_hdr->version <= IPL_MAX_SUPPORTED_VERSION && !!(pl_hdr->flags & IPL_FLAG_SECURE); break; - case DIAG308_RC_NO_CONF: + case DIAG308_RC_NOCONFIG: rc = 0; break; default: