s390/decompressor: clean up and rename compressed/misc.c

Since compressed/misc.c is conditionally compiled move error reporting
code to boot/main.c. With that being done compressed/misc.c has no
"miscellaneous" functions left and is all about plain decompression
now. Rename it accordingly.

Reviewed-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
diff --git a/arch/s390/boot/compressed/Makefile b/arch/s390/boot/compressed/Makefile
index a69746c..fd7cfc7 100644
--- a/arch/s390/boot/compressed/Makefile
+++ b/arch/s390/boot/compressed/Makefile
@@ -9,7 +9,7 @@
 GCOV_PROFILE := n
 UBSAN_SANITIZE := n
 
-obj-y	:= $(if $(CONFIG_KERNEL_UNCOMPRESSED),,misc.o) piggy.o info.o
+obj-y	:= $(if $(CONFIG_KERNEL_UNCOMPRESSED),,decompressor.o) piggy.o info.o
 targets	:= vmlinux.lds vmlinux vmlinux.bin vmlinux.bin.gz vmlinux.bin.bz2
 targets += vmlinux.bin.xz vmlinux.bin.lzma vmlinux.bin.lzo vmlinux.bin.lz4
 targets += info.bin $(obj-y)
diff --git a/arch/s390/boot/compressed/misc.c b/arch/s390/boot/compressed/decompressor.c
similarity index 83%
rename from arch/s390/boot/compressed/misc.c
rename to arch/s390/boot/compressed/decompressor.c
index b773f81..4504663 100644
--- a/arch/s390/boot/compressed/misc.c
+++ b/arch/s390/boot/compressed/decompressor.c
@@ -7,11 +7,9 @@
  * Author(s): Martin Schwidefsky <schwidefsky@de.ibm.com>
  */
 
-#include <linux/uaccess.h>
+#include <linux/kernel.h>
+#include <linux/string.h>
 #include <asm/page.h>
-#include <asm/sclp.h>
-#include <asm/ipl.h>
-#include <asm/sections.h>
 #include "decompressor.h"
 
 /*
@@ -31,8 +29,6 @@ extern char _end[];
 extern unsigned char _compressed_start[];
 extern unsigned char _compressed_end[];
 
-static void error(char *m);
-
 #ifdef CONFIG_HAVE_KERNEL_BZIP2
 #define HEAP_SIZE	0x400000
 #else
@@ -66,23 +62,6 @@ static unsigned long free_mem_end_ptr = (unsigned long) _end + HEAP_SIZE;
 #include "../../../../lib/decompress_unxz.c"
 #endif
 
-static int puts(const char *s)
-{
-	sclp_early_printk(s);
-	return 0;
-}
-
-static void error(char *x)
-{
-	unsigned long long psw = 0x000a0000deadbeefULL;
-
-	puts("\n\n");
-	puts(x);
-	puts("\n\n -- System halted");
-
-	asm volatile("lpsw %0" : : "Q" (psw));
-}
-
 #define decompress_offset ALIGN((unsigned long)_end + HEAP_SIZE, PAGE_SIZE)
 
 unsigned long mem_safe_offset(void)
diff --git a/arch/s390/boot/compressed/decompressor.h b/arch/s390/boot/compressed/decompressor.h
index 90d382d..b774425 100644
--- a/arch/s390/boot/compressed/decompressor.h
+++ b/arch/s390/boot/compressed/decompressor.h
@@ -8,6 +8,7 @@ static inline void *decompress_kernel(void) {}
 void *decompress_kernel(void);
 #endif
 unsigned long mem_safe_offset(void);
+void error(char *m);
 
 struct vmlinux_info {
 	unsigned long default_lma;
diff --git a/arch/s390/boot/startup.c b/arch/s390/boot/startup.c
index 5aeac75..81199ca 100644
--- a/arch/s390/boot/startup.c
+++ b/arch/s390/boot/startup.c
@@ -1,9 +1,19 @@
 // SPDX-License-Identifier: GPL-2.0
 #include <linux/string.h>
 #include <asm/setup.h>
+#include <asm/sclp.h>
 #include "compressed/decompressor.h"
 #include "boot.h"
 
+void error(char *x)
+{
+	sclp_early_printk("\n\n");
+	sclp_early_printk(x);
+	sclp_early_printk("\n\n -- System halted");
+
+	disabled_wait(0xdeadbeef);
+}
+
 #ifdef CONFIG_KERNEL_UNCOMPRESSED
 unsigned long mem_safe_offset(void)
 {