Home
last modified time | relevance | path

Searched full:sme (Results 1 – 25 of 190) sorted by relevance

12345678

/kernel/linux/linux-5.10/Documentation/x86/
Damd-memory-encryption.rst7 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_K8_SYSCFG) can be used to
57 determine if SME is enabled and/or to enable memory encryption::
[all …]
/kernel/linux/linux-6.6/tools/testing/selftests/arm64/abi/
Dsyscall-abi.c331 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 …]
Dsyscall-abi-asm.S12 // 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
/kernel/linux/linux-6.6/Documentation/arch/x86/
Damd-memory-encryption.rst7 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 …]
/kernel/linux/linux-6.6/Documentation/arch/arm64/
Dsme.rst6 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 …]
/kernel/linux/linux-5.10/drivers/staging/wlan-ng/
Dcfg80211.c433 struct cfg80211_connect_params *sme) in prism2_connect() argument
436 struct ieee80211_channel *channel = sme->channel; in prism2_connect()
439 int length = sme->ssid_len; in prism2_connect()
441 int is_wep = (sme->crypto.cipher_group == WLAN_CIPHER_SUITE_WEP40) || in prism2_connect()
442 (sme->crypto.cipher_group == WLAN_CIPHER_SUITE_WEP104); in prism2_connect()
457 if ((sme->auth_type == NL80211_AUTHTYPE_OPEN_SYSTEM) || in prism2_connect()
458 ((sme->auth_type == NL80211_AUTHTYPE_AUTOMATIC) && !is_wep)) in prism2_connect()
460 else if ((sme->auth_type == NL80211_AUTHTYPE_SHARED_KEY) || in prism2_connect()
461 ((sme->auth_type == NL80211_AUTHTYPE_AUTOMATIC) && is_wep)) in prism2_connect()
466 sme->auth_type); in prism2_connect()
[all …]
/kernel/linux/linux-6.6/drivers/staging/wlan-ng/
Dcfg80211.c438 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 …]
/kernel/linux/linux-5.10/arch/x86/kernel/
Dcc_platform.c26 * SME and SEV are very similar but they are not the same, so there are
27 * times that the kernel will need to distinguish between SME and SEV. The
32 * paging is activated, SME will access all memory as decrypted, but SEV
34 * up under SME the trampoline area cannot be encrypted, whereas under SEV
Dhead64.c167 /* Activate Secure Memory Encryption (SME) if supported and enabled */ in __startup_64()
170 /* Include the SME encryption mask in the fixup value */ in __startup_64()
280 /* Encrypt the kernel and related (if SME is active) */ in __startup_64()
299 * Return the SME encryption mask (if SME is active) to be used as a in __startup_64()
308 * Return the SME encryption mask (if SME is active) to be used as a in __startup_secondary_64()
441 * If SME is active, this will create decrypted mappings of the in copy_bootdata()
456 * freeing up that memory for use by the system. If SME is active, in copy_bootdata()
489 * SME support may update early_pmd_flags to include the memory in x86_64_start_kernel()
/kernel/linux/linux-5.10/drivers/net/wireless/microchip/wilc1000/
Dcfg80211.c300 struct cfg80211_connect_params *sme) in connect() argument
319 cipher_group = sme->crypto.cipher_group; in connect()
324 priv->wep_key_len[sme->key_idx] = sme->key_len; in connect()
325 memcpy(priv->wep_key[sme->key_idx], sme->key, in connect()
326 sme->key_len); in connect()
328 wilc_set_wep_default_keyid(vif, sme->key_idx); in connect()
329 wilc_add_wep_key_bss_sta(vif, sme->key, sme->key_len, in connect()
330 sme->key_idx); in connect()
334 priv->wep_key_len[sme->key_idx] = sme->key_len; in connect()
335 memcpy(priv->wep_key[sme->key_idx], sme->key, in connect()
[all …]
/kernel/linux/linux-5.10/drivers/net/wireless/marvell/libertas/
Dcfg.c1020 struct cfg80211_connect_params *sme) in lbs_set_authtype() argument
1036 if (sme->bssid) in lbs_set_authtype()
1037 memcpy(cmd.bssid, sme->bssid, ETH_ALEN); in lbs_set_authtype()
1039 ret = lbs_auth_to_authtype(sme->auth_type); in lbs_set_authtype()
1065 struct cfg80211_connect_params *sme) in lbs_associate() argument
1127 pos += lbs_add_auth_type_tlv(pos, sme->auth_type); in lbs_associate()
1130 if (sme->ie && sme->ie_len) in lbs_associate()
1131 pos += lbs_add_wpa_tlv(pos, sme->ie, sme->ie_len); in lbs_associate()
1206 sme->ie, sme->ie_len, in lbs_associate()
1225 _new_connect_scan_req(struct wiphy *wiphy, struct cfg80211_connect_params *sme) in _new_connect_scan_req() argument
[all …]
/kernel/linux/linux-6.6/drivers/net/wireless/marvell/libertas/
Dcfg.c1069 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 …]
/kernel/linux/linux-6.6/arch/x86/coco/
Dcore.c38 * 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
/kernel/linux/linux-6.6/drivers/net/wireless/microchip/wilc1000/
Dcfg80211.c302 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 …]
/kernel/linux/linux-6.6/drivers/net/wireless/ath/wil6210/
Dcfg80211.c35 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 …]
/kernel/linux/linux-5.10/drivers/net/wireless/ath/wil6210/
Dcfg80211.c35 MODULE_PARM_DESC(disable_ap_sme, " let user space handle AP mode SME");
1083 struct cfg80211_connect_params *sme) in wil_print_connect_params() argument
1086 if (sme->channel) { in wil_print_connect_params()
1088 sme->channel->hw_value, sme->channel->center_freq); in wil_print_connect_params()
1090 if (sme->bssid) in wil_print_connect_params()
1091 wil_info(wil, " BSSID: %pM\n", sme->bssid); in wil_print_connect_params()
1092 if (sme->ssid) in wil_print_connect_params()
1094 16, 1, sme->ssid, sme->ssid_len, true); in wil_print_connect_params()
1095 if (sme->prev_bssid) in wil_print_connect_params()
1096 wil_info(wil, " Previous BSSID=%pM\n", sme->prev_bssid); in wil_print_connect_params()
[all …]
/kernel/linux/linux-5.10/arch/x86/mm/
Dmem_encrypt.c37 * Since SME related variables are set early in the boot process they must
335 * SME and SEV are very similar but they are not the same, so there are
336 * times that the kernel will need to distinguish between SME and SEV. The
341 * paging is activated, SME will access all memory as decrypted, but SEV
343 * up under SME the trampoline area cannot be encrypted, whereas under SEV
373 * For SME, all DMA must be to unencrypted addresses if the in force_dma_unencrypted()
420 * SME is mutually exclusive with any of the SEV in print_mem_encrypt_feature_info()
423 pr_cont(" SME\n"); in print_mem_encrypt_feature_info()
Dmem_encrypt_identity.c338 * SME encryption workarea using rip-relative addressing. in sme_encrypt_kernel()
506 /* Check for the SME/SEV support leaf */ in sme_enable()
517 * Check for the SME/SEV feature: in sme_enable()
527 /* Check whether SEV or SME is supported */ in sme_enable()
533 /* Check the SEV MSR whether SEV or SME is enabled */ in sme_enable()
540 * No SME if Hypervisor bit is set. This check is here to in sme_enable()
541 * prevent a guest from trying to enable SME. For running as a in sme_enable()
554 /* For SME, check the SYSCFG MSR */ in sme_enable()
568 * identity mapped, so we must obtain the address to the SME command in sme_enable()
/kernel/linux/linux-6.6/tools/testing/selftests/arm64/signal/testcases/
Dsme_vl.c5 * 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",
/kernel/linux/linux-6.6/arch/x86/mm/
Dmem_encrypt.c26 * 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()
Dmem_encrypt_identity.c299 * 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()
/kernel/linux/linux-6.6/tools/testing/selftests/arm64/fp/
DMakefile13 rdvl-sme rdvl-sve \
30 $(OUTPUT)/rdvl-sme: rdvl-sme.c $(OUTPUT)/rdvl.o
/kernel/linux/linux-5.10/drivers/net/wireless/quantenna/qtnfmac/
Dcommands.c2106 struct cfg80211_connect_params *sme) in qtnf_cmd_send_connect() argument
2125 if (sme->bssid_hint) in qtnf_cmd_send_connect()
2126 ether_addr_copy(cmd->bssid_hint, sme->bssid_hint); in qtnf_cmd_send_connect()
2130 if (sme->prev_bssid) in qtnf_cmd_send_connect()
2131 ether_addr_copy(cmd->prev_bssid, sme->prev_bssid); in qtnf_cmd_send_connect()
2135 if ((sme->bg_scan_period >= 0) && in qtnf_cmd_send_connect()
2136 (sme->bg_scan_period <= SHRT_MAX)) in qtnf_cmd_send_connect()
2137 cmd->bg_scan_period = cpu_to_le16(sme->bg_scan_period); in qtnf_cmd_send_connect()
2141 if (sme->flags & ASSOC_REQ_DISABLE_HT) in qtnf_cmd_send_connect()
2143 if (sme->flags & ASSOC_REQ_DISABLE_VHT) in qtnf_cmd_send_connect()
[all …]
/kernel/linux/linux-6.6/drivers/net/wireless/quantenna/qtnfmac/
Dcommands.c2075 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 …]
/kernel/linux/linux-5.10/drivers/net/wireless/ath/ath6kl/
Dcfg80211.c455 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 …]

12345678