Commit 7b758389 authored by Heiko Carstens's avatar Heiko Carstens
Browse files

[S390] Export stfle.



Make stfle visible so other code can call this.

Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: default avatarHeiko Carstens <heiko.carstens@de.ibm.com>
parent cbce70e6
Loading
Loading
Loading
Loading
+9 −2
Original line number Diff line number Diff line
@@ -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;
	}
+2 −0
Original line number Diff line number Diff line
@@ -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);