diff options
Diffstat (limited to 'include/asm-s390/ipl.h')
-rw-r--r-- | include/asm-s390/ipl.h | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/include/asm-s390/ipl.h b/include/asm-s390/ipl.h index 15bb0b529551..bdcd448d43fb 100644 --- a/include/asm-s390/ipl.h +++ b/include/asm-s390/ipl.h | |||
@@ -8,6 +8,8 @@ | |||
8 | #define _ASM_S390_IPL_H | 8 | #define _ASM_S390_IPL_H |
9 | 9 | ||
10 | #include <asm/types.h> | 10 | #include <asm/types.h> |
11 | #include <asm/cio.h> | ||
12 | #include <asm/setup.h> | ||
11 | 13 | ||
12 | #define IPL_PARMBLOCK_ORIGIN 0x2000 | 14 | #define IPL_PARMBLOCK_ORIGIN 0x2000 |
13 | 15 | ||
@@ -79,6 +81,7 @@ struct ipl_parameter_block { | |||
79 | extern u32 ipl_flags; | 81 | extern u32 ipl_flags; |
80 | 82 | ||
81 | extern u32 dump_prefix_page; | 83 | extern u32 dump_prefix_page; |
84 | |||
82 | extern void do_reipl(void); | 85 | extern void do_reipl(void); |
83 | extern void ipl_save_parameters(void); | 86 | extern void ipl_save_parameters(void); |
84 | 87 | ||
@@ -88,6 +91,35 @@ enum { | |||
88 | IPL_NSS_VALID = 4, | 91 | IPL_NSS_VALID = 4, |
89 | }; | 92 | }; |
90 | 93 | ||
94 | enum ipl_type { | ||
95 | IPL_TYPE_UNKNOWN = 1, | ||
96 | IPL_TYPE_CCW = 2, | ||
97 | IPL_TYPE_FCP = 4, | ||
98 | IPL_TYPE_FCP_DUMP = 8, | ||
99 | IPL_TYPE_NSS = 16, | ||
100 | }; | ||
101 | |||
102 | struct ipl_info | ||
103 | { | ||
104 | enum ipl_type type; | ||
105 | union { | ||
106 | struct { | ||
107 | struct ccw_dev_id dev_id; | ||
108 | } ccw; | ||
109 | struct { | ||
110 | struct ccw_dev_id dev_id; | ||
111 | u64 wwpn; | ||
112 | u64 lun; | ||
113 | } fcp; | ||
114 | struct { | ||
115 | char name[NSS_NAME_SIZE + 1]; | ||
116 | } nss; | ||
117 | } data; | ||
118 | }; | ||
119 | |||
120 | extern struct ipl_info ipl_info; | ||
121 | extern void setup_ipl_info(void); | ||
122 | |||
91 | /* | 123 | /* |
92 | * DIAG 308 support | 124 | * DIAG 308 support |
93 | */ | 125 | */ |