|
| enum class | basic_machine_cfg_ccr : u8 {
nominal_capacity = 0
, changed_manual_control = 1
, changed_machine_exception = 2
, changed_nonexception_machine = 3
,
changed_external_condition = 4
} |
| enum class | cpu_polarization : u8 { horizontal = 0
, vertical_low = 1
, vertical_medium = 2
, vertical_high = 3
} |
| enum class | extended_vm_name_enc : u8 { not_provided = 0
, ebcdic = 1
, utf_8 = 2
} |
| enum class | selector1 : u8 { configuration_level_fc = 1
, configuration_level_multi_cpu = 2
} |
| enum class | selector2_1 : u8 { configuration_level = 1
, configuration_level_topology = 2
} |
| enum class | selector2_2 : u8 { configuration_level_current_cpu = 1
, configuration_level_all_cpu = 2
} |
| enum class | stsi_fc : u8 { basic_machine_information = 1
, logical_partition_information = 2
, virtual_machine_information = 3
, current_configuration_level = 15
} |
| enum class | topology_parse_error : u8 { none = 0
, truncated_entry
, reserved_nl
} |
| enum class | virtual_server_name_enc : u8 { not_provided = 0
, ebcdic = 1
, utf_8 = 2
} |
|
|
| __endian__ (BIG) |
|
| arch::s390x::cpu::stsi::assert_size (adjustment_factor, 2) |
|
| arch::s390x::cpu::stsi::assert_size (alternate_capability, 4) |
|
| arch::s390x::cpu::stsi::assert_size (basic_machine_cfg, PAGE_SIZE) |
|
| arch::s390x::cpu::stsi::assert_size (basic_machine_cpu, PAGE_SIZE) |
|
| arch::s390x::cpu::stsi::assert_size (basic_machine_cpus, 44) |
|
| arch::s390x::cpu::stsi::assert_size (extended_vm_name_enc, 1) |
|
| arch::s390x::cpu::stsi::assert_size (lpar_cpu, PAGE_SIZE) |
|
| arch::s390x::cpu::stsi::assert_size (lpar_cpus, PAGE_SIZE) |
|
| arch::s390x::cpu::stsi::assert_size (topology_container, 8) |
|
| arch::s390x::cpu::stsi::assert_size (topology_core, 16) |
|
| arch::s390x::cpu::stsi::assert_size (virtual_server_name_enc, 1) |
|
| arch::s390x::cpu::stsi::assert_size (vm_cpus, PAGE_SIZE) |
|
| arch::s390x::cpu::stsi::assert_size (vm_descriptor_block, 64) |
|
auto | arch::s390x::cpu::stsi::current_configuration_number () -> u4 |
| | Get current configuration level.
|
|
auto | arch::s390x::cpu::stsi::detail::invoke (void *sysinfo, u4 fc, u8 sel1, u8 sel2, u4 &curr_level) noexcept -> std::expected< condition_code, lib::kernel_error > |
| | Issue STSI instruction to store system information.
|
template<typename Out, stsi_fc Fc, selector1 Sel1, selector2_2 Sel2>
requires ValidStsiArguments<Out, Fc, Sel1, static_cast<u8>(Sel2)> && (Sel1 == selector1::configuration_level_multi_cpu) |
| auto | arch::s390x::cpu::stsi::invoke (Out &sysinfo) noexcept -> std::expected< condition_code, lib::kernel_error > |
| | Issue STSI instruction to store system information.
|
template<typename Out, stsi_fc Fc, selector1 Sel1, selector2_1 Sel2>
requires ValidStsiArguments<Out, Fc, Sel1, static_cast<u8>(Sel2)> && (Sel1 == selector1::configuration_level_fc) |
| auto | arch::s390x::cpu::stsi::invoke (Out &sysinfo) noexcept -> std::expected< condition_code, lib::kernel_error > |
| | Issue STSI instruction to store system information.
|
template<typename Out, stsi_fc Fc, selector1 Sel1>
requires (Fc == stsi_fc::current_configuration_level) && (Sel1 == selector1::configuration_level_fc) |
| auto | arch::s390x::cpu::stsi::invoke (Out &sysinfo, u8 sel2) noexcept -> std::expected< condition_code, lib::kernel_error > |
| | Issue STSI instruction to store system information.
|
|
consteval bool | arch::s390x::cpu::stsi::detail::is_valid_stsi (u8 fc, u8 sel1, u8 sel2) |
STSI (STore System Information) API.
SPDX-License-Identifier: Apache 2.0
template<typename Out, stsi_fc Fc, selector1 Sel1, selector2_2 Sel2>
requires ValidStsiArguments<Out, Fc, Sel1, static_cast<u8>(Sel2)> && (Sel1 == selector1::configuration_level_multi_cpu)
| auto arch::s390x::cpu::stsi::invoke |
( |
Out & | sysinfo | ) |
->std::expected< condition_code, lib::kernel_error > |
|
exportnoexcept |
Issue STSI instruction to store system information.
- Template Parameters
-
| Out | Output block type. |
| Fc | Function code |
| Sel1 | Selector 1 (Selector1 == 2) |
| Sel2 | Selector 2 (Selector1 == 2) |
- Parameters
-
- Returns
- condition code or kernel error
template<typename Out, stsi_fc Fc, selector1 Sel1, selector2_1 Sel2>
requires ValidStsiArguments<Out, Fc, Sel1, static_cast<u8>(Sel2)> && (Sel1 == selector1::configuration_level_fc)
| auto arch::s390x::cpu::stsi::invoke |
( |
Out & | sysinfo | ) |
->std::expected< condition_code, lib::kernel_error > |
|
exportnoexcept |
Issue STSI instruction to store system information.
- Template Parameters
-
| Out | Output block type. |
| Fc | Function code |
| Sel1 | Selector 1 (Selector1 == 1) |
| Sel2 | Selector 2 (Selector1 == 1) |
- Parameters
-
- Returns
- condition code or kernel error