mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-12 13:55:32 +00:00
[S390] Export stfle.
Make stfle visible so other code can call this. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
This commit is contained in:
parent
cbce70e687
commit
7b758389a2
2 changed files with 11 additions and 2 deletions
|
@ -687,7 +687,7 @@ static __init unsigned int stfl(void)
|
|||
return S390_lowcore.stfl_fac_list;
|
||||
}
|
||||
|
||||
static __init int stfle(unsigned long long *list, int doublewords)
|
||||
static int __init __stfle(unsigned long long *list, int doublewords)
|
||||
{
|
||||
typedef struct { unsigned long long _[doublewords]; } addrtype;
|
||||
register unsigned long __nr asm("0") = doublewords - 1;
|
||||
|
@ -697,6 +697,13 @@ static __init int stfle(unsigned long long *list, int doublewords)
|
|||
return __nr + 1;
|
||||
}
|
||||
|
||||
int __init stfle(unsigned long long *list, int doublewords)
|
||||
{
|
||||
if (!(stfl() & (1UL << 24)))
|
||||
return -EOPNOTSUPP;
|
||||
return __stfle(list, doublewords);
|
||||
}
|
||||
|
||||
/*
|
||||
* Setup hardware capabilities.
|
||||
*/
|
||||
|
@ -741,7 +748,7 @@ static void __init setup_hwcaps(void)
|
|||
* HWCAP_S390_DFP bit 6.
|
||||
*/
|
||||
if ((elf_hwcap & (1UL << 2)) &&
|
||||
stfle(&facility_list_extended, 1) > 0) {
|
||||
__stfle(&facility_list_extended, 1) > 0) {
|
||||
if (facility_list_extended & (1ULL << (64 - 43)))
|
||||
elf_hwcap |= 1UL << 6;
|
||||
}
|
||||
|
|
|
@ -406,6 +406,8 @@ __set_psw_mask(unsigned long mask)
|
|||
#define local_mcck_enable() __set_psw_mask(psw_kernel_bits)
|
||||
#define local_mcck_disable() __set_psw_mask(psw_kernel_bits & ~PSW_MASK_MCHECK)
|
||||
|
||||
int stfle(unsigned long long *list, int doublewords);
|
||||
|
||||
#ifdef CONFIG_SMP
|
||||
|
||||
extern void smp_ctl_set_bit(int cr, int bit);
|
||||
|
|
Loading…
Reference in a new issue