aboutsummaryrefslogtreecommitdiffstats
path: root/arch/s390/include
diff options
context:
space:
mode:
Diffstat (limited to 'arch/s390/include')
-rw-r--r--arch/s390/include/asm/ipl.h1
-rw-r--r--arch/s390/include/asm/kexec.h3
-rw-r--r--arch/s390/include/asm/reset.h2
-rw-r--r--arch/s390/include/asm/setup.h13
4 files changed, 18 insertions, 1 deletions
diff --git a/arch/s390/include/asm/ipl.h b/arch/s390/include/asm/ipl.h
index 97cc4403fabf..6940abfbe1d9 100644
--- a/arch/s390/include/asm/ipl.h
+++ b/arch/s390/include/asm/ipl.h
@@ -168,5 +168,6 @@ enum diag308_rc {
168 168
169extern int diag308(unsigned long subcode, void *addr); 169extern int diag308(unsigned long subcode, void *addr);
170extern void diag308_reset(void); 170extern void diag308_reset(void);
171extern void store_status(void);
171 172
172#endif /* _ASM_S390_IPL_H */ 173#endif /* _ASM_S390_IPL_H */
diff --git a/arch/s390/include/asm/kexec.h b/arch/s390/include/asm/kexec.h
index bb729b84a21e..fb1c96fa348c 100644
--- a/arch/s390/include/asm/kexec.h
+++ b/arch/s390/include/asm/kexec.h
@@ -30,6 +30,9 @@
30/* Not more than 2GB */ 30/* Not more than 2GB */
31#define KEXEC_CONTROL_MEMORY_LIMIT (1UL<<31) 31#define KEXEC_CONTROL_MEMORY_LIMIT (1UL<<31)
32 32
33/* Maximum address we can use for the crash control pages */
34#define KEXEC_CRASH_CONTROL_MEMORY_LIMIT (-1UL)
35
33/* Allocate one page for the pdp and the second for the code */ 36/* Allocate one page for the pdp and the second for the code */
34#define KEXEC_CONTROL_PAGE_SIZE 4096 37#define KEXEC_CONTROL_PAGE_SIZE 4096
35 38
diff --git a/arch/s390/include/asm/reset.h b/arch/s390/include/asm/reset.h
index f584f4a52581..3d6ad4ad2a3f 100644
--- a/arch/s390/include/asm/reset.h
+++ b/arch/s390/include/asm/reset.h
@@ -17,5 +17,5 @@ struct reset_call {
17 17
18extern void register_reset_call(struct reset_call *reset); 18extern void register_reset_call(struct reset_call *reset);
19extern void unregister_reset_call(struct reset_call *reset); 19extern void unregister_reset_call(struct reset_call *reset);
20extern void s390_reset_system(void); 20extern void s390_reset_system(void (*func)(void *), void *data);
21#endif /* _ASM_S390_RESET_H */ 21#endif /* _ASM_S390_RESET_H */
diff --git a/arch/s390/include/asm/setup.h b/arch/s390/include/asm/setup.h
index d5e2ef10537d..5a099714df04 100644
--- a/arch/s390/include/asm/setup.h
+++ b/arch/s390/include/asm/setup.h
@@ -26,15 +26,21 @@
26#define IPL_DEVICE (*(unsigned long *) (0x10404)) 26#define IPL_DEVICE (*(unsigned long *) (0x10404))
27#define INITRD_START (*(unsigned long *) (0x1040C)) 27#define INITRD_START (*(unsigned long *) (0x1040C))
28#define INITRD_SIZE (*(unsigned long *) (0x10414)) 28#define INITRD_SIZE (*(unsigned long *) (0x10414))
29#define OLDMEM_BASE (*(unsigned long *) (0x1041C))
30#define OLDMEM_SIZE (*(unsigned long *) (0x10424))
29#else /* __s390x__ */ 31#else /* __s390x__ */
30#define IPL_DEVICE (*(unsigned long *) (0x10400)) 32#define IPL_DEVICE (*(unsigned long *) (0x10400))
31#define INITRD_START (*(unsigned long *) (0x10408)) 33#define INITRD_START (*(unsigned long *) (0x10408))
32#define INITRD_SIZE (*(unsigned long *) (0x10410)) 34#define INITRD_SIZE (*(unsigned long *) (0x10410))
35#define OLDMEM_BASE (*(unsigned long *) (0x10418))
36#define OLDMEM_SIZE (*(unsigned long *) (0x10420))
33#endif /* __s390x__ */ 37#endif /* __s390x__ */
34#define COMMAND_LINE ((char *) (0x10480)) 38#define COMMAND_LINE ((char *) (0x10480))
35 39
36#define CHUNK_READ_WRITE 0 40#define CHUNK_READ_WRITE 0
37#define CHUNK_READ_ONLY 1 41#define CHUNK_READ_ONLY 1
42#define CHUNK_OLDMEM 4
43#define CHUNK_CRASHK 5
38 44
39struct mem_chunk { 45struct mem_chunk {
40 unsigned long addr; 46 unsigned long addr;
@@ -48,6 +54,8 @@ extern int memory_end_set;
48extern unsigned long memory_end; 54extern unsigned long memory_end;
49 55
50void detect_memory_layout(struct mem_chunk chunk[]); 56void detect_memory_layout(struct mem_chunk chunk[]);
57void create_mem_hole(struct mem_chunk memory_chunk[], unsigned long addr,
58 unsigned long size, int type);
51 59
52#define PRIMARY_SPACE_MODE 0 60#define PRIMARY_SPACE_MODE 0
53#define ACCESS_REGISTER_MODE 1 61#define ACCESS_REGISTER_MODE 1
@@ -106,6 +114,7 @@ extern unsigned int user_mode;
106#endif /* __s390x__ */ 114#endif /* __s390x__ */
107 115
108#define ZFCPDUMP_HSA_SIZE (32UL<<20) 116#define ZFCPDUMP_HSA_SIZE (32UL<<20)
117#define ZFCPDUMP_HSA_SIZE_MAX (64UL<<20)
109 118
110/* 119/*
111 * Console mode. Override with conmode= 120 * Console mode. Override with conmode=
@@ -134,10 +143,14 @@ extern char kernel_nss_name[];
134#define IPL_DEVICE 0x10404 143#define IPL_DEVICE 0x10404
135#define INITRD_START 0x1040C 144#define INITRD_START 0x1040C
136#define INITRD_SIZE 0x10414 145#define INITRD_SIZE 0x10414
146#define OLDMEM_BASE 0x1041C
147#define OLDMEM_SIZE 0x10424
137#else /* __s390x__ */ 148#else /* __s390x__ */
138#define IPL_DEVICE 0x10400 149#define IPL_DEVICE 0x10400
139#define INITRD_START 0x10408 150#define INITRD_START 0x10408
140#define INITRD_SIZE 0x10410 151#define INITRD_SIZE 0x10410
152#define OLDMEM_BASE 0x10418
153#define OLDMEM_SIZE 0x10420
141#endif /* __s390x__ */ 154#endif /* __s390x__ */
142#define COMMAND_LINE 0x10480 155#define COMMAND_LINE 0x10480
143 156