/openbmc/linux/tools/testing/selftests/arm64/abi/ |
H A D | syscall-abi.c | 331 ksft_print_msg("SME VL %d ZA does not match\n", sme_vl); in check_za() 360 ksft_print_msg("SME VL %d ZT does not match\n", sme_vl); in check_zt() 412 int sve, sme; in test_one_syscall() local 428 for (sme = 0; sme < sme_vl_count; sme++) { in test_one_syscall() 429 ret = prctl(PR_SME_SET_VL, sme_vls[sme]); in test_one_syscall() 435 sme_vls[sme], in test_one_syscall() 437 "%s SVE VL %d/SME VL %d SM+ZA\n", in test_one_syscall() 439 sme_vls[sme]); in test_one_syscall() 441 sme_vls[sme], SVCR_SM_MASK), in test_one_syscall() 442 "%s SVE VL %d/SME VL %d SM\n", in test_one_syscall() [all …]
|
H A D | syscall-abi-asm.S | 12 // x1: SME VL 83 // Set SVCR if we're doing SME 89 // Load ZA and ZT0 if enabled - uses x12 as scratch due to SME LDR 152 // Load the SVE registers if we're doing SVE/SME 257 // Save SVCR if we're doing SME 263 // Save ZA if it's enabled - uses x12 as scratch due to SME STR 338 // Only save FFR if we wrote a value for SME 355 // Clear SVCR if we were doing SME so future tests don't have ZA
|
/openbmc/linux/Documentation/arch/x86/ |
H A D | amd-memory-encryption.rst | 7 Secure Memory Encryption (SME) and Secure Encrypted Virtualization (SEV) are 10 SME provides the ability to mark individual pages of memory as encrypted using 13 DRAM. SME can therefore be used to protect the contents of DRAM from physical 20 memory may be encrypted with hypervisor key. When SME is enabled, the hypervisor 21 key is the same key which is used in SME. 42 Support for SME and SEV can be determined through the CPUID instruction. The 43 CPUID function 0x8000001f reports information related to SME:: 46 Bit[0] indicates support for SME 56 If support for SME is present, MSR 0xc00100010 (MSR_AMD64_SYSCFG) can be used to 57 determine if SME is enabled and/or to enable memory encryption:: [all …]
|
/openbmc/linux/Documentation/arch/arm64/ |
H A D | sme.rst | 6 order to support use of the ARM Scalable Matrix Extension (SME). 11 included in SME. 13 This document does not aim to describe the SME architecture or programmer's 15 model features for SME is included in Appendix A. 24 * The presence of SME is reported to userspace via HWCAP2_SME in the aux vector 25 AT_HWCAP2 entry. Presence of this flag implies the presence of the SME 27 described in this document. SME is reported in /proc/cpuinfo as "sme". 34 * Support for the execution of SME instructions in userspace can also be 36 instruction, and checking that the value of the SME field is nonzero. [3] 42 * There are a number of optional SME features, presence of these is reported [all …]
|
H A D | sve.rst | 12 (SME). 63 * On hardware that supports the SME extensions, HWCAP2_SME will also be 64 reported in the AT_HWCAP2 aux vector entry. Among other things SME adds 66 separate SME vector length and the same Z/V registers. See sme.rst 72 ptrace(PTRACE_GETREGSET, pid, NT_ARM_SVE, &iov). Note that when SME is 367 payload is available, this is only possible when SME is implemented. 385 * In systems supporting SME when in streaming mode a GETREGSET for 401 * Where SME is implemented it is not possible to GETREGSET the register
|
/openbmc/linux/drivers/staging/wlan-ng/ |
H A D | cfg80211.c | 438 struct cfg80211_connect_params *sme) in prism2_connect() argument 441 struct ieee80211_channel *channel = sme->channel; in prism2_connect() 444 int length = sme->ssid_len; in prism2_connect() 446 int is_wep = (sme->crypto.cipher_group == WLAN_CIPHER_SUITE_WEP40) || in prism2_connect() 447 (sme->crypto.cipher_group == WLAN_CIPHER_SUITE_WEP104); in prism2_connect() 462 if ((sme->auth_type == NL80211_AUTHTYPE_OPEN_SYSTEM) || in prism2_connect() 463 ((sme->auth_type == NL80211_AUTHTYPE_AUTOMATIC) && !is_wep)) in prism2_connect() 465 else if ((sme->auth_type == NL80211_AUTHTYPE_SHARED_KEY) || in prism2_connect() 466 ((sme->auth_type == NL80211_AUTHTYPE_AUTOMATIC) && is_wep)) in prism2_connect() 471 sme->auth_type); in prism2_connect() [all …]
|
/openbmc/qemu/tests/tcg/aarch64/ |
H A D | Makefile.target | 31 … $(call cc-option,-Wa$(COMMA)-march=armv9-a+sme $$fnia, CROSS_AS_HAS_ARMV9_SME)) 3> config-cc.mak 71 # SME Tests 73 SME_TESTS = sme-outprod1 sme-smopa-1 sme-smopa-2 sme-fmopa-1 sme-fmopa-2 sme-fmopa-3
|
/openbmc/qemu/target/arm/tcg/ |
H A D | sme.decode | 1 # AArch64 SME instruction descriptions 22 ### SME Misc 26 ### SME Move into/from Array 41 ### SME Memory 57 ### SME Add Vector to Array 68 ### SME Outer Product
|
H A D | meson.build | 4 decodetree.process('sme.decode', extra_args: '--decode=disas_sme'), 5 decodetree.process('sme-fa64.decode', extra_args: '--static-decode=disas_sme_fa64'), 49 'translate-sme.c',
|
/openbmc/linux/drivers/net/wireless/marvell/libertas/ |
H A D | cfg.c | 1069 struct cfg80211_connect_params *sme) in lbs_set_authtype() argument 1085 if (sme->bssid) in lbs_set_authtype() 1086 memcpy(cmd.bssid, sme->bssid, ETH_ALEN); in lbs_set_authtype() 1088 ret = lbs_auth_to_authtype(sme->auth_type); in lbs_set_authtype() 1113 struct cfg80211_connect_params *sme) in lbs_associate() argument 1175 pos += lbs_add_auth_type_tlv(pos, sme->auth_type); in lbs_associate() 1178 if (sme->ie && sme->ie_len) in lbs_associate() 1179 pos += lbs_add_wpa_tlv(pos, sme->ie, sme->ie_len); in lbs_associate() 1253 sme->ie, sme->ie_len, in lbs_associate() 1272 _new_connect_scan_req(struct wiphy *wiphy, struct cfg80211_connect_params *sme) in _new_connect_scan_req() argument [all …]
|
/openbmc/linux/arch/x86/coco/ |
H A D | core.c | 38 * the other levels of SME/SEV functionality, including C-bit 53 * SME and SEV are very similar but they are not the same, so there are 54 * times that the kernel will need to distinguish between SME and SEV. The 59 * paging is activated, SME will access all memory as decrypted, but SEV 61 * up under SME the trampoline area cannot be encrypted, whereas under SEV
|
/openbmc/linux/drivers/net/wireless/microchip/wilc1000/ |
H A D | cfg80211.c | 302 struct cfg80211_connect_params *sme) in connect() argument 319 cipher_group = sme->crypto.cipher_group; in connect() 321 if (sme->crypto.wpa_versions & NL80211_WPA_VERSION_2) { in connect() 326 } else if (sme->crypto.wpa_versions & NL80211_WPA_VERSION_1) { in connect() 339 if ((sme->crypto.wpa_versions & NL80211_WPA_VERSION_1) || in connect() 340 (sme->crypto.wpa_versions & NL80211_WPA_VERSION_2)) { in connect() 341 for (i = 0; i < sme->crypto.n_ciphers_pairwise; i++) { in connect() 342 u32 ciphers_pairwise = sme->crypto.ciphers_pairwise[i]; in connect() 351 switch (sme->auth_type) { in connect() 358 if (sme->ssid_len) { in connect() [all …]
|
/openbmc/linux/drivers/net/wireless/ath/wil6210/ |
H A D | cfg80211.c | 35 MODULE_PARM_DESC(disable_ap_sme, " let user space handle AP mode SME"); 1107 struct cfg80211_connect_params *sme) in wil_print_connect_params() argument 1110 if (sme->channel) { in wil_print_connect_params() 1112 sme->channel->hw_value, sme->channel->center_freq); in wil_print_connect_params() 1114 if (sme->bssid) in wil_print_connect_params() 1115 wil_info(wil, " BSSID: %pM\n", sme->bssid); in wil_print_connect_params() 1116 if (sme->ssid) in wil_print_connect_params() 1118 16, 1, sme->ssid, sme->ssid_len, true); in wil_print_connect_params() 1119 if (sme->prev_bssid) in wil_print_connect_params() 1120 wil_info(wil, " Previous BSSID=%pM\n", sme->prev_bssid); in wil_print_connect_params() [all …]
|
/openbmc/linux/tools/testing/selftests/arm64/signal/testcases/ |
H A D | sme_vl.c | 5 * Check that the SME vector length reported in signal contexts is the 62 .name = "SME VL", 63 .descr = "Check that we get the right SME VL reported",
|
/openbmc/linux/arch/x86/mm/ |
H A D | mem_encrypt.c | 26 * For SME, all DMA must be to unencrypted addresses if the in force_dma_unencrypted() 56 * SME is mutually exclusive with any of the SEV in print_mem_encrypt_feature_info() 59 pr_cont(" SME\n"); in print_mem_encrypt_feature_info()
|
H A D | mem_encrypt_identity.c | 299 * This is early code, use an open coded check for SME instead of in sme_encrypt_kernel() 503 /* Check for the SME/SEV support leaf */ in sme_enable() 514 * Check for the SME/SEV feature: in sme_enable() 524 /* Check whether SEV or SME is supported */ in sme_enable() 530 /* Check the SEV MSR whether SEV or SME is enabled */ in sme_enable() 544 * No SME if Hypervisor bit is set. This check is here to in sme_enable() 545 * prevent a guest from trying to enable SME. For running as a in sme_enable() 558 /* For SME, check the SYSCFG MSR */ in sme_enable()
|
/openbmc/qemu/docs/system/arm/ |
H A D | cpu-features.rst | 372 SME CPU Property Examples 375 1) Disable SME:: 377 $ qemu-system-aarch64 -M virt -cpu max,sme=off 413 SME CPU Properties 416 The SME CPU properties are much like the SVE properties: ``sme`` is 417 used to enable or disable the entire SME feature, and ``sme<N>`` is 423 SME is not supported by KVM at this time. 425 At least one vector length must be enabled when ``sme`` is enabled, 428 additional constraints on the set of vector lengths supported by SME. 430 SME User-mode Default Vector Length Property [all …]
|
/openbmc/linux/tools/testing/selftests/arm64/fp/ |
H A D | Makefile | 13 rdvl-sme rdvl-sve \ 30 $(OUTPUT)/rdvl-sme: rdvl-sme.c $(OUTPUT)/rdvl.o
|
/openbmc/linux/drivers/net/wireless/quantenna/qtnfmac/ |
H A D | commands.c | 2075 struct cfg80211_connect_params *sme) in qtnf_cmd_send_connect() argument 2095 if (sme->bssid_hint) in qtnf_cmd_send_connect() 2096 ether_addr_copy(cmd->bssid_hint, sme->bssid_hint); in qtnf_cmd_send_connect() 2100 if (sme->prev_bssid) in qtnf_cmd_send_connect() 2101 ether_addr_copy(cmd->prev_bssid, sme->prev_bssid); in qtnf_cmd_send_connect() 2105 if ((sme->bg_scan_period >= 0) && in qtnf_cmd_send_connect() 2106 (sme->bg_scan_period <= SHRT_MAX)) in qtnf_cmd_send_connect() 2107 cmd->bg_scan_period = cpu_to_le16(sme->bg_scan_period); in qtnf_cmd_send_connect() 2111 if (sme->flags & ASSOC_REQ_DISABLE_HT) in qtnf_cmd_send_connect() 2113 if (sme->flags & ASSOC_REQ_DISABLE_VHT) in qtnf_cmd_send_connect() [all …]
|
/openbmc/linux/arch/arm64/kvm/ |
H A D | fpsimd.c | 103 * enabled and the guest does not enable SME via in kvm_arch_vcpu_load_fp() 105 * may generate SME traps from EL1 to EL1 which we in kvm_arch_vcpu_load_fp() 148 * Currently we do not support SME guests so SVCR is in kvm_arch_vcpu_ctxsync_fp() 183 * the default value and we need to reenable SME. in kvm_arch_vcpu_put_fp()
|
/openbmc/linux/drivers/net/wireless/ath/ath6kl/ |
H A D | cfg80211.c | 455 struct cfg80211_connect_params *sme) in ath6kl_cfg80211_connect() argument 476 ((sme->channel && sme->channel->center_freq == 0) || in ath6kl_cfg80211_connect() 477 (sme->bssid && is_zero_ether_addr(sme->bssid)))) { in ath6kl_cfg80211_connect() 507 status = ath6kl_set_assoc_req_ies(vif, sme->ie, sme->ie_len); in ath6kl_cfg80211_connect() 513 if (sme->ie == NULL || sme->ie_len == 0) in ath6kl_cfg80211_connect() 517 vif->ssid_len == sme->ssid_len && in ath6kl_cfg80211_connect() 518 !memcmp(vif->ssid, sme->ssid, vif->ssid_len)) { in ath6kl_cfg80211_connect() 530 } else if (vif->ssid_len == sme->ssid_len && in ath6kl_cfg80211_connect() 531 !memcmp(vif->ssid, sme->ssid, vif->ssid_len)) { in ath6kl_cfg80211_connect() 536 vif->ssid_len = sme->ssid_len; in ath6kl_cfg80211_connect() [all …]
|
/openbmc/linux/tools/testing/selftests/arm64/signal/ |
H A D | sve_helpers.c | 5 * Common helper functions for SVE and SME functionality. 33 * Unlike SVE, SME does not require the minimum vector length in sve_fill_vls()
|
/openbmc/qemu/target/arm/ |
H A D | cpu64.c | 321 error_setg(errp, "cannot disable sme%d", vq * 128); in arm_cpu_sme_finalize() 322 error_append_hint(errp, "All SME vector lengths are disabled.\n"); in arm_cpu_sme_finalize() 323 error_append_hint(errp, "With SME enabled, at least one " in arm_cpu_sme_finalize() 330 error_setg(errp, "cannot enable sme%d", vq * 128); in arm_cpu_sme_finalize() 331 error_append_hint(errp, "SME must be enabled to enable " in arm_cpu_sme_finalize() 333 error_append_hint(errp, "Add sme=on to the CPU property list.\n"); in arm_cpu_sme_finalize() 354 t = FIELD_DP64(t, ID_AA64PFR1, SME, value); in cpu_arm_set_sme() 376 /* Mirror linux /proc/sys/abi/{sve,sme}_default_vector_length. */ 404 (ptr_default_vq == &cpu->sve_default_vq ? "sve" : "sme"); in cpu_arm_set_default_vec_len() 460 object_property_add_bool(obj, "sme", cpu_arm_get_sme, cpu_arm_set_sme); in aarch64_add_sme_properties() [all …]
|
/openbmc/linux/arch/arm64/kernel/ |
H A D | fpsimd.c | 137 .name = "SME", 300 * TIF_SME controls whether a task can use SME without trapping while 421 /* Restore SME, override SVE register configuration if needed */ in task_fpsimd_load() 907 * We are changing the SME VL or weren't using in vec_set_vector_length() 908 * SME anyway, discard the state and force a in vec_set_vector_length() 924 * Free the changed states if they are not in use, SME will be in vec_set_vector_length() 947 * SVE and SME use the same bits for _ONEXEC and _INHERIT. 1307 /* Allow SME in kernel */ in sme_kernel_enable() 1342 * Use only if SME is present. 1343 * This function clobbers the SME vector length. [all …]
|
/openbmc/linux/drivers/net/wireless/broadcom/brcm80211/brcmfmac/ |
H A D | cfg80211.c | 1938 struct cfg80211_connect_params *sme) in brcmf_set_wpa_version() argument 1947 if (sme->crypto.wpa_versions & NL80211_WPA_VERSION_1) in brcmf_set_wpa_version() 1949 else if (sme->crypto.wpa_versions & NL80211_WPA_VERSION_2) in brcmf_set_wpa_version() 1951 else if (sme->crypto.wpa_versions & NL80211_WPA_VERSION_3) in brcmf_set_wpa_version() 1962 sec->wpa_versions = sme->crypto.wpa_versions; in brcmf_set_wpa_version() 1967 struct cfg80211_connect_params *sme) in brcmf_set_auth_type() argument 1976 switch (sme->auth_type) { in brcmf_set_auth_type() 1991 brcmf_dbg(CONN, "automatic, auth type (%d)\n", sme->auth_type); in brcmf_set_auth_type() 2001 sec->auth_type = sme->auth_type; in brcmf_set_auth_type() 2007 struct cfg80211_connect_params *sme) in brcmf_set_wsec_mode() argument [all …]
|