• Chang S. Bae's avatar
    x86/insn: Add Key Locker instructions to the opcode map · a5dd673a
    Chang S. Bae authored
    The x86 instruction decoder needs to know these new instructions that
    are going to be used in the crypto library as well as the x86 core
    code. Add the following:
    
    LOADIWKEY:
    	Load a CPU-internal wrapping key.
    
    ENCODEKEY128:
    	Wrap a 128-bit AES key to a key handle.
    
    ENCODEKEY256:
    	Wrap a 256-bit AES key to a key handle.
    
    AESENC128KL:
    	Encrypt a 128-bit block of data using a 128-bit AES key
    	indicated by a key handle.
    
    AESENC256KL:
    	Encrypt a 128-bit block of data using a 256-bit AES key
    	indicated by a key handle.
    
    AESDEC128KL:
    	Decrypt a 128-bit block of data using a 128-bit AES key
    	indicated by a key handle.
    
    AESDEC256KL:
    	Decrypt a 128-bit block of data using a 256-bit AES key
    	indicated by a key handle.
    
    AESENCWIDE128KL:
    	Encrypt 8 128-bit blocks of data using a 128-bit AES key
    	indicated by a key handle.
    
    AESENCWIDE256KL:
    	Encrypt 8 128-bit blocks of data using a 256-bit AES key
    	indicated by a key handle.
    
    AESDECWIDE128KL:
    	Decrypt 8 128-bit blocks of data using a 128-bit AES key
    	indicated by a key handle.
    
    AESDECWIDE256KL:
    	Decrypt 8 128-bit blocks of data using a 256-bit AES key
    	indicated by a key handle.
    
    The detail can be found in Intel Software Developer Manual.
    Signed-off-by: default avatarChang S. Bae <chang.seok.bae@intel.com>
    Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
    Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
    Reviewed-by: default avatarDan Williams <dan.j.williams@intel.com>
    Link: https://lore.kernel.org/r/20240502105853.5338-2-adrian.hunter@intel.com
    a5dd673a
x86-opcode-map.txt 37.2 KB