diff options
author | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2007-05-04 12:48:28 -0400 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2007-05-04 12:48:35 -0400 |
commit | cf8ba7a95511b86608acb481ad96219fe2da4b3a (patch) | |
tree | f2a4fcba2c7ad7f29500eaaadc4a8488d8855cdd /include/asm-s390 | |
parent | e29630627702571eb2b2a0955605b7f8971c82c1 (diff) |
[S390] add hardware capability support (ELF_HWCAP).
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'include/asm-s390')
-rw-r--r-- | include/asm-s390/elf.h | 7 | ||||
-rw-r--r-- | include/asm-s390/lowcore.h | 10 |
2 files changed, 11 insertions, 6 deletions
diff --git a/include/asm-s390/elf.h b/include/asm-s390/elf.h index c0d629d61d3e..91d06325cc79 100644 --- a/include/asm-s390/elf.h +++ b/include/asm-s390/elf.h | |||
@@ -188,7 +188,8 @@ static inline int dump_task_fpu(struct task_struct *tsk, elf_fpregset_t *fpregs) | |||
188 | /* This yields a mask that user programs can use to figure out what | 188 | /* This yields a mask that user programs can use to figure out what |
189 | instruction set this CPU supports. */ | 189 | instruction set this CPU supports. */ |
190 | 190 | ||
191 | #define ELF_HWCAP (0) | 191 | extern unsigned long elf_hwcap; |
192 | #define ELF_HWCAP (elf_hwcap) | ||
192 | 193 | ||
193 | /* This yields a string that ld.so will use to load implementation | 194 | /* This yields a string that ld.so will use to load implementation |
194 | specific libraries for optimization. This is more specific in | 195 | specific libraries for optimization. This is more specific in |
@@ -197,7 +198,9 @@ static inline int dump_task_fpu(struct task_struct *tsk, elf_fpregset_t *fpregs) | |||
197 | For the moment, we have only optimizations for the Intel generations, | 198 | For the moment, we have only optimizations for the Intel generations, |
198 | but that could change... */ | 199 | but that could change... */ |
199 | 200 | ||
200 | #define ELF_PLATFORM (NULL) | 201 | #define ELF_PLATFORM_SIZE 8 |
202 | extern char elf_platform[]; | ||
203 | #define ELF_PLATFORM (elf_platform) | ||
201 | 204 | ||
202 | #ifndef __s390x__ | 205 | #ifndef __s390x__ |
203 | #define SET_PERSONALITY(ex, ibcs2) set_personality((ibcs2)?PER_SVR4:PER_LINUX) | 206 | #define SET_PERSONALITY(ex, ibcs2) set_personality((ibcs2)?PER_SVR4:PER_LINUX) |
diff --git a/include/asm-s390/lowcore.h b/include/asm-s390/lowcore.h index ffc9788a21a7..801a6fd35b5b 100644 --- a/include/asm-s390/lowcore.h +++ b/include/asm-s390/lowcore.h | |||
@@ -229,17 +229,19 @@ struct _lowcore | |||
229 | __u16 subchannel_nr; /* 0x0ba */ | 229 | __u16 subchannel_nr; /* 0x0ba */ |
230 | __u32 io_int_parm; /* 0x0bc */ | 230 | __u32 io_int_parm; /* 0x0bc */ |
231 | __u32 io_int_word; /* 0x0c0 */ | 231 | __u32 io_int_word; /* 0x0c0 */ |
232 | __u8 pad3[0xD4-0xC4]; /* 0x0c4 */ | 232 | __u8 pad3[0xc8-0xc4]; /* 0x0c4 */ |
233 | __u32 stfl_fac_list; /* 0x0c8 */ | ||
234 | __u8 pad4[0xd4-0xcc]; /* 0x0cc */ | ||
233 | __u32 extended_save_area_addr; /* 0x0d4 */ | 235 | __u32 extended_save_area_addr; /* 0x0d4 */ |
234 | __u32 cpu_timer_save_area[2]; /* 0x0d8 */ | 236 | __u32 cpu_timer_save_area[2]; /* 0x0d8 */ |
235 | __u32 clock_comp_save_area[2]; /* 0x0e0 */ | 237 | __u32 clock_comp_save_area[2]; /* 0x0e0 */ |
236 | __u32 mcck_interruption_code[2]; /* 0x0e8 */ | 238 | __u32 mcck_interruption_code[2]; /* 0x0e8 */ |
237 | __u8 pad4[0xf4-0xf0]; /* 0x0f0 */ | 239 | __u8 pad5[0xf4-0xf0]; /* 0x0f0 */ |
238 | __u32 external_damage_code; /* 0x0f4 */ | 240 | __u32 external_damage_code; /* 0x0f4 */ |
239 | __u32 failing_storage_address; /* 0x0f8 */ | 241 | __u32 failing_storage_address; /* 0x0f8 */ |
240 | __u8 pad5[0x100-0xfc]; /* 0x0fc */ | 242 | __u8 pad6[0x100-0xfc]; /* 0x0fc */ |
241 | __u32 st_status_fixed_logout[4];/* 0x100 */ | 243 | __u32 st_status_fixed_logout[4];/* 0x100 */ |
242 | __u8 pad6[0x120-0x110]; /* 0x110 */ | 244 | __u8 pad7[0x120-0x110]; /* 0x110 */ |
243 | __u32 access_regs_save_area[16];/* 0x120 */ | 245 | __u32 access_regs_save_area[16];/* 0x120 */ |
244 | __u32 floating_pt_save_area[8]; /* 0x160 */ | 246 | __u32 floating_pt_save_area[8]; /* 0x160 */ |
245 | __u32 gpregs_save_area[16]; /* 0x180 */ | 247 | __u32 gpregs_save_area[16]; /* 0x180 */ |