22 lines
321 B
C
22 lines
321 B
C
|
// SPDX-License-Identifier: GPL-2.0
|
||
|
/*
|
||
|
* Copyright IBM Corp. 2023
|
||
|
*/
|
||
|
|
||
|
#include <asm/facility.h>
|
||
|
|
||
|
unsigned int stfle_size(void)
|
||
|
{
|
||
|
static unsigned int size;
|
||
|
unsigned int r;
|
||
|
u64 dummy;
|
||
|
|
||
|
r = READ_ONCE(size);
|
||
|
if (!r) {
|
||
|
r = __stfle_asm(&dummy, 1) + 1;
|
||
|
WRITE_ONCE(size, r);
|
||
|
}
|
||
|
return r;
|
||
|
}
|
||
|
EXPORT_SYMBOL(stfle_size);
|