| /Linux-v5.15/Documentation/x86/ |
| 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 …]
|
| /Linux-v5.15/drivers/staging/wlan-ng/ |
| D | cfg80211.c | 437 struct cfg80211_connect_params *sme) in prism2_connect() argument 440 struct ieee80211_channel *channel = sme->channel; in prism2_connect() 443 int length = sme->ssid_len; in prism2_connect() 445 int is_wep = (sme->crypto.cipher_group == WLAN_CIPHER_SUITE_WEP40) || in prism2_connect() 446 (sme->crypto.cipher_group == WLAN_CIPHER_SUITE_WEP104); in prism2_connect() 461 if ((sme->auth_type == NL80211_AUTHTYPE_OPEN_SYSTEM) || in prism2_connect() 462 ((sme->auth_type == NL80211_AUTHTYPE_AUTOMATIC) && !is_wep)) in prism2_connect() 464 else if ((sme->auth_type == NL80211_AUTHTYPE_SHARED_KEY) || in prism2_connect() 465 ((sme->auth_type == NL80211_AUTHTYPE_AUTOMATIC) && is_wep)) in prism2_connect() 470 sme->auth_type); in prism2_connect() [all …]
|
| /Linux-v5.15/drivers/net/wireless/microchip/wilc1000/ |
| D | cfg80211.c | 301 struct cfg80211_connect_params *sme) in connect() argument 320 cipher_group = sme->crypto.cipher_group; in connect() 325 priv->wep_key_len[sme->key_idx] = sme->key_len; in connect() 326 memcpy(priv->wep_key[sme->key_idx], sme->key, in connect() 327 sme->key_len); in connect() 329 wilc_set_wep_default_keyid(vif, sme->key_idx); in connect() 330 wilc_add_wep_key_bss_sta(vif, sme->key, sme->key_len, in connect() 331 sme->key_idx); in connect() 335 priv->wep_key_len[sme->key_idx] = sme->key_len; in connect() 336 memcpy(priv->wep_key[sme->key_idx], sme->key, in connect() [all …]
|
| /Linux-v5.15/drivers/net/wireless/marvell/libertas/ |
| D | cfg.c | 1020 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 …]
|
| /Linux-v5.15/drivers/net/wireless/ath/wil6210/ |
| D | cfg80211.c | 35 MODULE_PARM_DESC(disable_ap_sme, " let user space handle AP mode SME"); 1105 struct cfg80211_connect_params *sme) in wil_print_connect_params() argument 1108 if (sme->channel) { in wil_print_connect_params() 1110 sme->channel->hw_value, sme->channel->center_freq); in wil_print_connect_params() 1112 if (sme->bssid) in wil_print_connect_params() 1113 wil_info(wil, " BSSID: %pM\n", sme->bssid); in wil_print_connect_params() 1114 if (sme->ssid) in wil_print_connect_params() 1116 16, 1, sme->ssid, sme->ssid_len, true); in wil_print_connect_params() 1117 if (sme->prev_bssid) in wil_print_connect_params() 1118 wil_info(wil, " Previous BSSID=%pM\n", sme->prev_bssid); in wil_print_connect_params() [all …]
|
| /Linux-v5.15/arch/x86/mm/ |
| D | mem_encrypt.c | 37 * Since SME related variables are set early in the boot process they must 364 * SME and SEV are very similar but they are not the same, so there are 365 * times that the kernel will need to distinguish between SME and SEV. The 370 * paging is activated, SME will access all memory as decrypted, but SEV 372 * up under SME the trampoline area cannot be encrypted, whereas under SEV 402 * For SME, all DMA must be to unencrypted addresses if the in force_dma_unencrypted() 449 * SME is mutually exclusive with any of the SEV in print_mem_encrypt_feature_info() 452 pr_cont(" SME\n"); in print_mem_encrypt_feature_info()
|
| D | mem_encrypt_identity.c | 329 * SME encryption workarea using rip-relative addressing. in sme_encrypt_kernel() 497 /* Check for the SME/SEV support leaf */ in sme_enable() 508 * Check for the SME/SEV feature: in sme_enable() 518 /* Check whether SEV or SME is supported */ in sme_enable() 524 /* Check the SEV MSR whether SEV or SME is enabled */ in sme_enable() 531 * No SME if Hypervisor bit is set. This check is here to in sme_enable() 532 * prevent a guest from trying to enable SME. For running as a in sme_enable() 545 /* For SME, check the SYSCFG MSR */ in sme_enable() 558 * identity mapped, so we must obtain the address to the SME command in sme_enable()
|
| /Linux-v5.15/arch/x86/kernel/ |
| D | head64.c | 166 /* Activate Secure Memory Encryption (SME) if supported and enabled */ in __startup_64() 169 /* Include the SME encryption mask in the fixup value */ in __startup_64() 279 /* Encrypt the kernel and related (if SME is active) */ in __startup_64() 298 * Return the SME encryption mask (if SME is active) to be used as a in __startup_64() 307 * Return the SME encryption mask (if SME is active) to be used as a in __startup_secondary_64() 438 * If SME is active, this will create decrypted mappings of the in copy_bootdata() 453 * freeing up that memory for use by the system. If SME is active, in copy_bootdata() 486 * SME support may update early_pmd_flags to include the memory in x86_64_start_kernel()
|
| D | pci-swiotlb.c | 38 * If 4GB or more detected (and iommu=off not set) or if SME is active 48 * If SME is active then swiotlb will be set to 1 so that bounce in pci_swiotlb_detect_4gb()
|
| D | machine_kexec_64.c | 562 * During a traditional boot under SME, SME will encrypt the kernel, 563 * so the SME kexec kernel also needs to be un-encrypted in order to 564 * replicate a normal SME boot. 576 * If SME is active we need to be sure that kexec pages are in arch_kexec_post_alloc_pages() 589 * If SME is active we need to reset the pages back to being in arch_kexec_pre_free_pages()
|
| D | head_64.S | 85 * Perform pagetable fixups. Additionally, if SME is active, encrypt 86 * the kernel and retrieve the modifier (SME encryption mask if SME 132 * Retrieve the modifier (SME encryption mask if SME is active) to be
|
| D | relocate_kernel_64.S | 78 /* Save SME active flag */ 150 * If SME is active, there could be old encrypted cache line
|
| /Linux-v5.15/drivers/net/wireless/quantenna/qtnfmac/ |
| D | commands.c | 2072 struct cfg80211_connect_params *sme) in qtnf_cmd_send_connect() argument 2091 if (sme->bssid_hint) in qtnf_cmd_send_connect() 2092 ether_addr_copy(cmd->bssid_hint, sme->bssid_hint); in qtnf_cmd_send_connect() 2096 if (sme->prev_bssid) in qtnf_cmd_send_connect() 2097 ether_addr_copy(cmd->prev_bssid, sme->prev_bssid); in qtnf_cmd_send_connect() 2101 if ((sme->bg_scan_period >= 0) && in qtnf_cmd_send_connect() 2102 (sme->bg_scan_period <= SHRT_MAX)) in qtnf_cmd_send_connect() 2103 cmd->bg_scan_period = cpu_to_le16(sme->bg_scan_period); in qtnf_cmd_send_connect() 2107 if (sme->flags & ASSOC_REQ_DISABLE_HT) in qtnf_cmd_send_connect() 2109 if (sme->flags & ASSOC_REQ_DISABLE_VHT) in qtnf_cmd_send_connect() [all …]
|
| /Linux-v5.15/drivers/net/wireless/ath/ath6kl/ |
| 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 …]
|
| /Linux-v5.15/drivers/net/wireless/broadcom/brcm80211/brcmfmac/ |
| D | cfg80211.c | 1604 struct cfg80211_connect_params *sme) in brcmf_set_wpa_version() argument 1613 if (sme->crypto.wpa_versions & NL80211_WPA_VERSION_1) in brcmf_set_wpa_version() 1615 else if (sme->crypto.wpa_versions & NL80211_WPA_VERSION_2) in brcmf_set_wpa_version() 1617 else if (sme->crypto.wpa_versions & NL80211_WPA_VERSION_3) in brcmf_set_wpa_version() 1628 sec->wpa_versions = sme->crypto.wpa_versions; in brcmf_set_wpa_version() 1633 struct cfg80211_connect_params *sme) in brcmf_set_auth_type() argument 1642 switch (sme->auth_type) { in brcmf_set_auth_type() 1657 brcmf_dbg(CONN, "automatic, auth type (%d)\n", sme->auth_type); in brcmf_set_auth_type() 1667 sec->auth_type = sme->auth_type; in brcmf_set_auth_type() 1673 struct cfg80211_connect_params *sme) in brcmf_set_wsec_mode() argument [all …]
|
| /Linux-v5.15/arch/x86/include/asm/ |
| D | processor-flags.h | 28 * On systems with SME, one bit (in a variable position!) is stolen to indicate 37 /* Mask off the address space ID and SME encryption bits. */
|
| /Linux-v5.15/drivers/net/wireless/ |
| D | rndis_wlan.c | 481 struct cfg80211_connect_params *sme); 2131 struct cfg80211_connect_params *sme) in rndis_connect() argument 2135 struct ieee80211_channel *channel = sme->channel; in rndis_connect() 2145 groupwise = rndis_cipher_to_alg(sme->crypto.cipher_group); in rndis_connect() 2146 for (i = 0; i < sme->crypto.n_ciphers_pairwise; i++) in rndis_connect() 2148 rndis_cipher_to_alg(sme->crypto.ciphers_pairwise[i]); in rndis_connect() 2150 if (sme->crypto.n_ciphers_pairwise > 0 && in rndis_connect() 2156 for (i = 0; i < sme->crypto.n_akm_suites; i++) in rndis_connect() 2158 rndis_akm_suite_to_key_mgmt(sme->crypto.akm_suites[i]); in rndis_connect() 2160 if (sme->crypto.n_akm_suites > 0 && in rndis_connect() [all …]
|
| /Linux-v5.15/net/wireless/ |
| D | Makefile | 14 cfg80211-y += mlme.o ibss.o sme.o chan.o ethtool.o mesh.o ap.o trace.o ocb.o 18 cfg80211-$(CONFIG_CFG80211_WEXT) += wext-compat.o wext-sme.o
|
| /Linux-v5.15/drivers/staging/rtl8723bs/os_dep/ |
| D | ioctl_cfg80211.c | 1782 struct cfg80211_connect_params *sme) in cfg80211_rtw_connect() argument 1810 if (!sme->ssid || !sme->ssid_len) { in cfg80211_rtw_connect() 1815 if (sme->ssid_len > IW_ESSID_MAX_SIZE) { in cfg80211_rtw_connect() 1822 ndis_ssid.ssid_length = sme->ssid_len; in cfg80211_rtw_connect() 1823 memcpy(ndis_ssid.ssid, (u8 *)sme->ssid, sme->ssid_len); in cfg80211_rtw_connect() 1839 ret = rtw_cfg80211_set_wpa_version(psecuritypriv, sme->crypto.wpa_versions); in cfg80211_rtw_connect() 1843 ret = rtw_cfg80211_set_auth_type(psecuritypriv, sme->auth_type); in cfg80211_rtw_connect() 1848 ret = rtw_cfg80211_set_wpa_ie(padapter, (u8 *)sme->ie, sme->ie_len); in cfg80211_rtw_connect() 1852 if (sme->crypto.n_ciphers_pairwise) { in cfg80211_rtw_connect() 1853 ret = rtw_cfg80211_set_cipher(psecuritypriv, sme->crypto.ciphers_pairwise[0], true); in cfg80211_rtw_connect() [all …]
|
| /Linux-v5.15/drivers/staging/ks7010/ |
| D | ks_wlan.h | 62 /* SME flag */ 81 /* SME Event */ 160 /* SME Status */ 446 /* trx device & sme */
|
| /Linux-v5.15/arch/x86/realmode/rm/ |
| D | trampoline_64.S | 119 * the MSR for this AP. If SME is active and we've gotten this far 132 * Memory encryption is enabled but the SME enable bit for this
|
| /Linux-v5.15/arch/x86/kvm/mmu/ |
| D | spte.c | 219 * boot_cpu_data.x86_phys_bits is reduced when MKTME or SME are detected in kvm_get_shadow_phys_bits() 230 * aren't virtualizable (SME/SEV also require CPUIDs higher than 0x80000008). in kvm_get_shadow_phys_bits() 275 * can trigger this condition, e.g. SME/SEV CPUs that require a custom in kvm_mmu_set_mmio_spte_mask()
|
| /Linux-v5.15/drivers/net/wireless/marvell/mwifiex/ |
| D | cfg80211.c | 2176 struct cfg80211_connect_params *sme, bool privacy, in mwifiex_cfg80211_assoc() argument 2235 /* Now handle infra mode. "sme" is valid for infra mode only */ in mwifiex_cfg80211_assoc() 2236 if (sme->auth_type == NL80211_AUTHTYPE_AUTOMATIC) { in mwifiex_cfg80211_assoc() 2240 auth_type = sme->auth_type; in mwifiex_cfg80211_assoc() 2243 if (sme->crypto.n_ciphers_pairwise) { in mwifiex_cfg80211_assoc() 2245 sme->crypto.ciphers_pairwise[0]; in mwifiex_cfg80211_assoc() 2249 if (sme->crypto.cipher_group) { in mwifiex_cfg80211_assoc() 2250 priv->sec_info.encryption_mode = sme->crypto.cipher_group; in mwifiex_cfg80211_assoc() 2253 if (sme->ie) in mwifiex_cfg80211_assoc() 2254 ret = mwifiex_set_gen_ie(priv, sme->ie, sme->ie_len); in mwifiex_cfg80211_assoc() [all …]
|
| /Linux-v5.15/Documentation/admin-guide/kdump/ |
| D | vmcoreinfo.rst | 395 AMD-specific with SME support: it indicates the secure memory encryption 397 encrypted. If SME is enabled in the first kernel, the crash kernel's 399 mask. This is used to remove the SME mask and obtain the true physical 403 additional SME-relevant info can be placed in that variable. 407 [ misc ][ enc bit ][ other misc SME info ]
|
| /Linux-v5.15/arch/x86/kernel/cpu/ |
| D | amd.c | 583 * BIOS support is required for SME and SEV. in early_detect_mem_encrypt() 584 * For SME: If BIOS has enabled SME then adjust x86_phys_bits by in early_detect_mem_encrypt() 585 * the SME physical address space reduction value. in early_detect_mem_encrypt() 586 * If BIOS has not enabled SME then don't advertise the in early_detect_mem_encrypt() 587 * SME feature (set in scattered.c). in early_detect_mem_encrypt() 591 * In all cases, since support for SME and SEV requires long mode, in early_detect_mem_encrypt()
|