1 | // SPDX-License-Identifier: GPL-2.0 |
---|---|
2 | /* |
3 | * Copyright IBM Corp. 2023 |
4 | */ |
5 | |
6 | #include <asm/facility.h> |
7 | |
8 | unsigned int stfle_size(void) |
9 | { |
10 | static unsigned int size; |
11 | unsigned int r; |
12 | u64 dummy; |
13 | |
14 | r = READ_ONCE(size); |
15 | if (!r) { |
16 | r = __stfle_asm(&dummy, 1) + 1; |
17 | WRITE_ONCE(size, r); |
18 | } |
19 | return r; |
20 | } |
21 | EXPORT_SYMBOL(stfle_size); |
22 |