gitextract_jxt2uhi3/ ├── README.md ├── cryptomini/ │ ├── .vscode/ │ │ └── settings.json │ ├── README.md │ ├── aes/ │ │ ├── aes_cbc.c │ │ ├── aes_core.c │ │ └── aes_local.h │ ├── bn/ │ │ ├── README.pod │ │ ├── bn_add.c │ │ ├── bn_asm.c │ │ ├── bn_ctx.c │ │ ├── bn_div.c │ │ ├── bn_exp.c │ │ ├── bn_gcd.c │ │ ├── bn_intern.c │ │ ├── bn_lib.c │ │ ├── bn_local.h │ │ ├── bn_mod.c │ │ ├── bn_mont.c │ │ ├── bn_mul.c │ │ ├── bn_nist.c │ │ ├── bn_rand.c │ │ ├── bn_recp.c │ │ ├── bn_shift.c │ │ ├── bn_sqr.c │ │ ├── bn_word.c │ │ └── rsaz_exp.h │ ├── camellia/ │ │ ├── camellia.c │ │ ├── cmll_local.h │ │ └── cmll_misc.c │ ├── cryptlib.c │ ├── e_os.h │ ├── ec/ │ │ ├── ec_cvt.c │ │ ├── ec_key.c │ │ ├── ec_lib.c │ │ ├── ec_local.h │ │ ├── ec_mult.c │ │ ├── ecdh_ossl.c │ │ ├── ecp_mont.c │ │ ├── ecp_nist.c │ │ └── ecp_smpl.c │ ├── include/ │ │ ├── crypto/ │ │ │ ├── __DECC_INCLUDE_EPILOGUE.H │ │ │ ├── __DECC_INCLUDE_PROLOGUE.H │ │ │ ├── aria.h │ │ │ ├── asn1.h │ │ │ ├── async.h │ │ │ ├── bn.h │ │ │ ├── bn_conf.h │ │ │ ├── bn_conf.h.in │ │ │ ├── bn_dh.h │ │ │ ├── bn_srp.h │ │ │ ├── chacha.h │ │ │ ├── cryptlib.h │ │ │ ├── ctype.h │ │ │ ├── dso_conf.h │ │ │ ├── dso_conf.h.in │ │ │ ├── ec.h │ │ │ ├── engine.h │ │ │ ├── err.h │ │ │ ├── evp.h │ │ │ ├── lhash.h │ │ │ ├── md32_common.h │ │ │ ├── objects.h │ │ │ ├── poly1305.h │ │ │ ├── rand.h │ │ │ ├── sha.h │ │ │ ├── siphash.h │ │ │ ├── sm2.h │ │ │ ├── sm2err.h │ │ │ ├── sm3.h │ │ │ ├── sm4.h │ │ │ ├── store.h │ │ │ └── x509.h │ │ ├── intercept/ │ │ │ └── intercept.h │ │ ├── internal/ │ │ │ ├── __DECC_INCLUDE_EPILOGUE.H │ │ │ ├── __DECC_INCLUDE_PROLOGUE.H │ │ │ ├── bio.h │ │ │ ├── comp.h │ │ │ ├── conf.h │ │ │ ├── constant_time.h │ │ │ ├── cryptlib.h │ │ │ ├── dane.h │ │ │ ├── dso.h │ │ │ ├── dsoerr.h │ │ │ ├── err.h │ │ │ ├── nelem.h │ │ │ ├── numbers.h │ │ │ ├── o_dir.h │ │ │ ├── o_str.h │ │ │ ├── refcount.h │ │ │ ├── sockets.h │ │ │ ├── sslconf.h │ │ │ ├── thread_once.h │ │ │ └── tsan_assist.h │ │ └── openssl/ │ │ ├── __DECC_INCLUDE_EPILOGUE.H │ │ ├── __DECC_INCLUDE_PROLOGUE.H │ │ ├── aes.h │ │ ├── asn1.h │ │ ├── asn1_mac.h │ │ ├── asn1err.h │ │ ├── asn1t.h │ │ ├── async.h │ │ ├── asyncerr.h │ │ ├── bio.h │ │ ├── bioerr.h │ │ ├── blowfish.h │ │ ├── bn.h │ │ ├── bnerr.h │ │ ├── buffer.h │ │ ├── buffererr.h │ │ ├── camellia.h │ │ ├── cast.h │ │ ├── cmac.h │ │ ├── cms.h │ │ ├── cmserr.h │ │ ├── comp.h │ │ ├── comperr.h │ │ ├── conf.h │ │ ├── conf_api.h │ │ ├── conferr.h │ │ ├── crypto.h │ │ ├── cryptoerr.h │ │ ├── ct.h │ │ ├── cterr.h │ │ ├── des.h │ │ ├── dh.h │ │ ├── dherr.h │ │ ├── dsa.h │ │ ├── dsaerr.h │ │ ├── dtls1.h │ │ ├── e_os2.h │ │ ├── ebcdic.h │ │ ├── ec.h │ │ ├── ecdh.h │ │ ├── ecdsa.h │ │ ├── ecerr.h │ │ ├── engine.h │ │ ├── engineerr.h │ │ ├── err.h │ │ ├── evp.h │ │ ├── evperr.h │ │ ├── hmac.h │ │ ├── idea.h │ │ ├── kdf.h │ │ ├── kdferr.h │ │ ├── lhash.h │ │ ├── md2.h │ │ ├── md4.h │ │ ├── md5.h │ │ ├── mdc2.h │ │ ├── modes.h │ │ ├── obj_mac.h │ │ ├── objects.h │ │ ├── objectserr.h │ │ ├── ocsp.h │ │ ├── ocsperr.h │ │ ├── opensslconf.h │ │ ├── opensslconf.h.in │ │ ├── opensslv.h │ │ ├── ossl_typ.h │ │ ├── pem.h │ │ ├── pem2.h │ │ ├── pemerr.h │ │ ├── pkcs12.h │ │ ├── pkcs12err.h │ │ ├── pkcs7.h │ │ ├── pkcs7err.h │ │ ├── rand.h │ │ ├── rand_drbg.h │ │ ├── randerr.h │ │ ├── rc2.h │ │ ├── rc4.h │ │ ├── rc5.h │ │ ├── ripemd.h │ │ ├── rsa.h │ │ ├── rsaerr.h │ │ ├── safestack.h │ │ ├── seed.h │ │ ├── sha.h │ │ ├── srp.h │ │ ├── srtp.h │ │ ├── ssl.h │ │ ├── ssl2.h │ │ ├── ssl3.h │ │ ├── sslerr.h │ │ ├── stack.h │ │ ├── store.h │ │ ├── storeerr.h │ │ ├── symhacks.h │ │ ├── tls1.h │ │ ├── ts.h │ │ ├── tserr.h │ │ ├── txt_db.h │ │ ├── ui.h │ │ ├── uierr.h │ │ ├── whrlpool.h │ │ ├── x509.h │ │ ├── x509_vfy.h │ │ ├── x509err.h │ │ ├── x509v3.h │ │ └── x509v3err.h │ ├── intercept/ │ │ ├── err.c │ │ ├── intercept.c │ │ └── rand.c │ ├── makefile │ ├── mem.c │ ├── mem_clr.c │ ├── mem_sec.c │ ├── sha/ │ │ ├── sha1_one.c │ │ ├── sha1dgst.c │ │ ├── sha256.c │ │ ├── sha512.c │ │ └── sha_local.h │ └── threads_none.c ├── ftpm-driver/ │ ├── .vscode/ │ │ └── settings.json │ ├── Makefile │ ├── ftpm-driver.mod │ ├── ftpm-ioctl.c │ ├── ftpm-sbi.c │ ├── ftpm-sbi.h │ ├── ftpm.c │ ├── ftpm.h │ ├── ftpm_user.h │ ├── rtpm-controller.c │ └── rtpm-driver.mod ├── ftpm-opensbi/ │ ├── .clang-format │ ├── .gitignore │ ├── .vscode/ │ │ └── settings.json │ ├── CONTRIBUTORS.md │ ├── COPYING.BSD │ ├── Kconfig │ ├── ThirdPartyNotices.md │ ├── docs/ │ │ ├── contributing.md │ │ ├── domain_support.md │ │ ├── doxygen.cfg │ │ ├── external/ │ │ │ └── coreboot.md │ │ ├── firmware/ │ │ │ ├── fw.md │ │ │ ├── fw_dynamic.md │ │ │ ├── fw_jump.md │ │ │ ├── fw_payload.md │ │ │ ├── payload_linux.md │ │ │ └── payload_uboot.md │ │ ├── library_usage.md │ │ ├── platform/ │ │ │ ├── andes-ae350.md │ │ │ ├── fpga-ariane.md │ │ │ ├── fpga-openpiton.md │ │ │ ├── generic.md │ │ │ ├── nuclei_ux600.md │ │ │ ├── platform.md │ │ │ ├── qemu_virt.md │ │ │ ├── renesas-rzfive.md │ │ │ ├── shakti_cclass.md │ │ │ ├── sifive_fu540.md │ │ │ ├── spike.md │ │ │ └── thead-c9xx.md │ │ ├── platform_guide.md │ │ ├── platform_requirements.md │ │ └── pmu_support.md │ ├── firmware/ │ │ ├── Kconfig │ │ ├── external_deps.mk │ │ ├── fw_base.S │ │ ├── fw_base.ldS │ │ ├── fw_dynamic.S │ │ ├── fw_dynamic.elf.ldS │ │ ├── fw_jump.S │ │ ├── fw_jump.elf.ldS │ │ ├── fw_payload.S │ │ ├── fw_payload.elf.ldS │ │ ├── objects.mk │ │ └── payloads/ │ │ ├── objects.mk │ │ ├── test.elf.ldS │ │ ├── test_head.S │ │ └── test_main.c │ ├── include/ │ │ ├── fatfs/ │ │ │ ├── diskio.h │ │ │ ├── ff.h │ │ │ └── ffconf.h │ │ ├── ftpm/ │ │ │ ├── ACT.h │ │ │ ├── ACT_SetTimeout_fp.h │ │ │ ├── ACT_spt_fp.h │ │ │ ├── ActivateCredential_fp.h │ │ │ ├── AlgorithmCap_fp.h │ │ │ ├── AlgorithmTests_fp.h │ │ │ ├── Attest_spt_fp.h │ │ │ ├── BaseTypes.h │ │ │ ├── Bits_fp.h │ │ │ ├── BnConvert.h │ │ │ ├── BnConvert_fp.h │ │ │ ├── BnMath_fp.h │ │ │ ├── BnMemory_fp.h │ │ │ ├── BnOssl.h │ │ │ ├── BnSupport_Interface.h │ │ │ ├── BnToOsslMath.h │ │ │ ├── BnToOsslMath_fp.h │ │ │ ├── BnToOsslSupport.h │ │ │ ├── BnToOsslSym.h │ │ │ ├── BnUtil_fp.h │ │ │ ├── BnValues.h │ │ │ ├── Capabilities.h │ │ │ ├── CertifyCreation_fp.h │ │ │ ├── CertifyX509_fp.h │ │ │ ├── Certify_fp.h │ │ │ ├── ChangeEPS_fp.h │ │ │ ├── ChangePPS_fp.h │ │ │ ├── ClearControl_fp.h │ │ │ ├── Clear_fp.h │ │ │ ├── ClockRateAdjust_fp.h │ │ │ ├── ClockSet_fp.h │ │ │ ├── CommandAttributeData.h │ │ │ ├── CommandAttributes.h │ │ │ ├── CommandAudit_fp.h │ │ │ ├── CommandCodeAttributes_fp.h │ │ │ ├── CommandDispatchData.h │ │ │ ├── CommandDispatcher_fp.h │ │ │ ├── Commands.h │ │ │ ├── Commit_fp.h │ │ │ ├── CompilerDependencies.h │ │ │ ├── CompilerDependencies_gcc.h │ │ │ ├── CompilerDependencies_msvc.h │ │ │ ├── ContextLoad_fp.h │ │ │ ├── ContextSave_fp.h │ │ │ ├── Context_spt_fp.h │ │ │ ├── CreateLoaded_fp.h │ │ │ ├── CreatePrimary_fp.h │ │ │ ├── Create_fp.h │ │ │ ├── CryptCmac_fp.h │ │ │ ├── CryptDes_fp.h │ │ │ ├── CryptEcc.h │ │ │ ├── CryptEccCrypt_fp.h │ │ │ ├── CryptEccKeyExchange_fp.h │ │ │ ├── CryptEccMain_fp.h │ │ │ ├── CryptEccSignature_fp.h │ │ │ ├── CryptHash.h │ │ │ ├── CryptHash_fp.h │ │ │ ├── CryptPrimeSieve_fp.h │ │ │ ├── CryptPrime_fp.h │ │ │ ├── CryptRand.h │ │ │ ├── CryptRand_fp.h │ │ │ ├── CryptRsa.h │ │ │ ├── CryptRsa_fp.h │ │ │ ├── CryptSelfTest_fp.h │ │ │ ├── CryptSmac_fp.h │ │ │ ├── CryptSym.h │ │ │ ├── CryptSym_fp.h │ │ │ ├── CryptTest.h │ │ │ ├── CryptUtil_fp.h │ │ │ ├── DA_fp.h │ │ │ ├── DebugHelpers_fp.h │ │ │ ├── DictionaryAttackLockReset_fp.h │ │ │ ├── DictionaryAttackParameters_fp.h │ │ │ ├── Duplicate_fp.h │ │ │ ├── ECC_Decrypt_fp.h │ │ │ ├── ECC_Encrypt_fp.h │ │ │ ├── ECC_Parameters_fp.h │ │ │ ├── ECDH_KeyGen_fp.h │ │ │ ├── ECDH_ZGen_fp.h │ │ │ ├── EC_Ephemeral_fp.h │ │ │ ├── EccTestData.h │ │ │ ├── EncryptDecrypt2_fp.h │ │ │ ├── EncryptDecrypt_fp.h │ │ │ ├── EncryptDecrypt_spt_fp.h │ │ │ ├── Entity_fp.h │ │ │ ├── EventSequenceComplete_fp.h │ │ │ ├── EvictControl_fp.h │ │ │ ├── ExecCommand_fp.h │ │ │ ├── FlushContext_fp.h │ │ │ ├── GetCapability_fp.h │ │ │ ├── GetCommandAuditDigest_fp.h │ │ │ ├── GetRandom_fp.h │ │ │ ├── GetSessionAuditDigest_fp.h │ │ │ ├── GetTestResult_fp.h │ │ │ ├── GetTime_fp.h │ │ │ ├── Global.h │ │ │ ├── GpMacros.h │ │ │ ├── HMAC_Start_fp.h │ │ │ ├── HMAC_fp.h │ │ │ ├── Handle_fp.h │ │ │ ├── HashSequenceStart_fp.h │ │ │ ├── HashTestData.h │ │ │ ├── Hash_fp.h │ │ │ ├── HierarchyChangeAuth_fp.h │ │ │ ├── HierarchyControl_fp.h │ │ │ ├── Hierarchy_fp.h │ │ │ ├── Import_fp.h │ │ │ ├── IncrementalSelfTest_fp.h │ │ │ ├── InternalRoutines.h │ │ │ ├── IoBuffers_fp.h │ │ │ ├── KdfTestData.h │ │ │ ├── LibSupport.h │ │ │ ├── LoadExternal_fp.h │ │ │ ├── Load_fp.h │ │ │ ├── Locality_fp.h │ │ │ ├── MAC_Start_fp.h │ │ │ ├── MAC_fp.h │ │ │ ├── MakeCredential_fp.h │ │ │ ├── Manufacture_fp.h │ │ │ ├── Marshal.h │ │ │ ├── Marshal_fp.h │ │ │ ├── MathLibraryInterface.h │ │ │ ├── MathLibraryInterfaceTypes.h │ │ │ ├── MathOnByteBuffers_fp.h │ │ │ ├── Memory_fp.h │ │ │ ├── MinMax.h │ │ │ ├── NV.h │ │ │ ├── NVDynamic_fp.h │ │ │ ├── NVReserved_fp.h │ │ │ ├── NV_Certify_fp.h │ │ │ ├── NV_ChangeAuth_fp.h │ │ │ ├── NV_DefineSpace2_fp.h │ │ │ ├── NV_DefineSpace_fp.h │ │ │ ├── NV_Extend_fp.h │ │ │ ├── NV_GlobalWriteLock_fp.h │ │ │ ├── NV_Increment_fp.h │ │ │ ├── NV_ReadLock_fp.h │ │ │ ├── NV_ReadPublic2_fp.h │ │ │ ├── NV_ReadPublic_fp.h │ │ │ ├── NV_Read_fp.h │ │ │ ├── NV_SetBits_fp.h │ │ │ ├── NV_UndefineSpaceSpecial_fp.h │ │ │ ├── NV_UndefineSpace_fp.h │ │ │ ├── NV_WriteLock_fp.h │ │ │ ├── NV_Write_fp.h │ │ │ ├── NV_spt_fp.h │ │ │ ├── OIDs.h │ │ │ ├── ObjectChangeAuth_fp.h │ │ │ ├── Object_fp.h │ │ │ ├── Object_spt_fp.h │ │ │ ├── PCR_Allocate_fp.h │ │ │ ├── PCR_Event_fp.h │ │ │ ├── PCR_Extend_fp.h │ │ │ ├── PCR_Read_fp.h │ │ │ ├── PCR_Reset_fp.h │ │ │ ├── PCR_SetAuthPolicy_fp.h │ │ │ ├── PCR_SetAuthValue_fp.h │ │ │ ├── PCR_fp.h │ │ │ ├── PP_Commands_fp.h │ │ │ ├── PP_fp.h │ │ │ ├── PRNG_TestVectors.h │ │ │ ├── Platform.h │ │ │ ├── PlatformACT.h │ │ │ ├── PlatformACT_fp.h │ │ │ ├── PlatformClock.h │ │ │ ├── PlatformData.h │ │ │ ├── Platform_fp.h │ │ │ ├── PolicyAuthValue_fp.h │ │ │ ├── PolicyAuthorizeNV_fp.h │ │ │ ├── PolicyAuthorize_fp.h │ │ │ ├── PolicyCapability_fp.h │ │ │ ├── PolicyCommandCode_fp.h │ │ │ ├── PolicyCounterTimer_fp.h │ │ │ ├── PolicyCpHash_fp.h │ │ │ ├── PolicyDuplicationSelect_fp.h │ │ │ ├── PolicyGetDigest_fp.h │ │ │ ├── PolicyLocality_fp.h │ │ │ ├── PolicyNV_fp.h │ │ │ ├── PolicyNameHash_fp.h │ │ │ ├── PolicyNvWritten_fp.h │ │ │ ├── PolicyOR_fp.h │ │ │ ├── PolicyPCR_fp.h │ │ │ ├── PolicyParameters_fp.h │ │ │ ├── PolicyPassword_fp.h │ │ │ ├── PolicyPhysicalPresence_fp.h │ │ │ ├── PolicyRestart_fp.h │ │ │ ├── PolicySecret_fp.h │ │ │ ├── PolicySigned_fp.h │ │ │ ├── PolicyTemplate_fp.h │ │ │ ├── PolicyTicket_fp.h │ │ │ ├── Policy_spt_fp.h │ │ │ ├── Power_fp.h │ │ │ ├── PropertyCap_fp.h │ │ │ ├── Quote_fp.h │ │ │ ├── RSA_Decrypt_fp.h │ │ │ ├── RSA_Encrypt_fp.h │ │ │ ├── RTPM.h │ │ │ ├── ReadClock_fp.h │ │ │ ├── ReadPublic_fp.h │ │ │ ├── ResponseCodeProcessing_fp.h │ │ │ ├── Response_fp.h │ │ │ ├── Rewrap_fp.h │ │ │ ├── RsaKeyCache_fp.h │ │ │ ├── RsaTestData.h │ │ │ ├── SelfTest.h │ │ │ ├── SelfTest_fp.h │ │ │ ├── SequenceComplete_fp.h │ │ │ ├── SequenceUpdate_fp.h │ │ │ ├── SessionProcess_fp.h │ │ │ ├── Session_fp.h │ │ │ ├── SetAlgorithmSet_fp.h │ │ │ ├── SetCapability_fp.h │ │ │ ├── SetCommandCodeAuditStatus_fp.h │ │ │ ├── SetPrimaryPolicy_fp.h │ │ │ ├── Shutdown_fp.h │ │ │ ├── Sign_fp.h │ │ │ ├── Simulator_fp.h │ │ │ ├── StartAuthSession_fp.h │ │ │ ├── Startup_fp.h │ │ │ ├── StirRandom_fp.h │ │ │ ├── SymmetricTest.h │ │ │ ├── SymmetricTestData.h │ │ │ ├── TPMB.h │ │ │ ├── TableMarshal.h │ │ │ ├── TableMarshalDefines.h │ │ │ ├── TableMarshalTypes.h │ │ │ ├── TcpServerPosix_fp.h │ │ │ ├── TcpServer_fp.h │ │ │ ├── TestParms_fp.h │ │ │ ├── Ticket_fp.h │ │ │ ├── Time_fp.h │ │ │ ├── Tpm.h │ │ │ ├── TpmASN1.h │ │ │ ├── TpmASN1_fp.h │ │ │ ├── TpmAlgorithmDefines.h │ │ │ ├── TpmBigNum.h │ │ │ ├── TpmBuildSwitches.h │ │ │ ├── TpmCalculatedAttributes.h │ │ │ ├── TpmEcc_Signature_ECDAA_fp.h │ │ │ ├── TpmEcc_Signature_ECDSA_fp.h │ │ │ ├── TpmEcc_Signature_SM2_fp.h │ │ │ ├── TpmEcc_Signature_Schnorr_fp.h │ │ │ ├── TpmEcc_Signature_Util_fp.h │ │ │ ├── TpmEcc_Util_fp.h │ │ │ ├── TpmError.h │ │ │ ├── TpmFail_fp.h │ │ │ ├── TpmMath_Debug_fp.h │ │ │ ├── TpmMath_Util_fp.h │ │ │ ├── TpmProfile.h │ │ │ ├── TpmProfile_CommandList.h │ │ │ ├── TpmProfile_Common.h │ │ │ ├── TpmProfile_ErrorCodes.h │ │ │ ├── TpmProfile_Misc.h │ │ │ ├── TpmSizeChecks_fp.h │ │ │ ├── TpmTcpProtocol.h │ │ │ ├── TpmToOsslHash.h │ │ │ ├── TpmToOsslSupport_fp.h │ │ │ ├── TpmToOsslSym.h │ │ │ ├── TpmToTpmBigNumMath.h │ │ │ ├── TpmTypes.h │ │ │ ├── Unmarshal_fp.h │ │ │ ├── Unseal_fp.h │ │ │ ├── VendorInfo.h │ │ │ ├── Vendor_TCG_Test_fp.h │ │ │ ├── VerifyConfiguration.h │ │ │ ├── VerifySignature_fp.h │ │ │ ├── X509.h │ │ │ ├── X509_ECC_fp.h │ │ │ ├── X509_RSA_fp.h │ │ │ ├── X509_spt_fp.h │ │ │ ├── ZGen_2Phase_fp.h │ │ │ ├── _TPM_Hash_Data_fp.h │ │ │ ├── _TPM_Hash_End_fp.h │ │ │ ├── _TPM_Hash_Start_fp.h │ │ │ ├── _TPM_Init_fp.h │ │ │ ├── endian_swap.h │ │ │ ├── ftpm.h │ │ │ ├── intercept.h │ │ │ ├── mprv.h │ │ │ ├── ntc2_fp.h │ │ │ ├── ntc2lib.h │ │ │ ├── pcrstruct.h │ │ │ ├── platform_pcr_fp.h │ │ │ ├── platform_public_interface.h │ │ │ ├── platform_to_tpm_interface.h │ │ │ ├── simulatorPrivate.h │ │ │ ├── simulator_sysheaders.h │ │ │ ├── tpm_public.h │ │ │ ├── tpm_radix.h │ │ │ ├── tpm_to_platform_interface.h │ │ │ └── tpm_to_tpm_interface.h │ │ ├── sbi/ │ │ │ ├── fw_dynamic.h │ │ │ ├── riscv_asm.h │ │ │ ├── riscv_atomic.h │ │ │ ├── riscv_barrier.h │ │ │ ├── riscv_elf.h │ │ │ ├── riscv_encoding.h │ │ │ ├── riscv_fp.h │ │ │ ├── riscv_io.h │ │ │ ├── riscv_locks.h │ │ │ ├── sbi_bitmap.h │ │ │ ├── sbi_bitops.h │ │ │ ├── sbi_console.h │ │ │ ├── sbi_const.h │ │ │ ├── sbi_csr_detect.h │ │ │ ├── sbi_domain.h │ │ │ ├── sbi_ecall.h │ │ │ ├── sbi_ecall_interface.h │ │ │ ├── sbi_emulate_csr.h │ │ │ ├── sbi_error.h │ │ │ ├── sbi_fifo.h │ │ │ ├── sbi_hart.h │ │ │ ├── sbi_hartmask.h │ │ │ ├── sbi_hfence.h │ │ │ ├── sbi_hsm.h │ │ │ ├── sbi_illegal_insn.h │ │ │ ├── sbi_init.h │ │ │ ├── sbi_ipi.h │ │ │ ├── sbi_irqchip.h │ │ │ ├── sbi_list.h │ │ │ ├── sbi_math.h │ │ │ ├── sbi_misaligned_ldst.h │ │ │ ├── sbi_platform.h │ │ │ ├── sbi_pmu.h │ │ │ ├── sbi_scratch.h │ │ │ ├── sbi_string.h │ │ │ ├── sbi_system.h │ │ │ ├── sbi_timer.h │ │ │ ├── sbi_tlb.h │ │ │ ├── sbi_trap.h │ │ │ ├── sbi_types.h │ │ │ ├── sbi_unpriv.h │ │ │ └── sbi_version.h │ │ └── sbi_utils/ │ │ ├── fdt/ │ │ │ ├── fdt_domain.h │ │ │ ├── fdt_fixup.h │ │ │ ├── fdt_helper.h │ │ │ └── fdt_pmu.h │ │ ├── gpio/ │ │ │ ├── fdt_gpio.h │ │ │ └── gpio.h │ │ ├── i2c/ │ │ │ ├── fdt_i2c.h │ │ │ └── i2c.h │ │ ├── ipi/ │ │ │ ├── aclint_mswi.h │ │ │ ├── andes_plicsw.h │ │ │ └── fdt_ipi.h │ │ ├── irqchip/ │ │ │ ├── aplic.h │ │ │ ├── fdt_irqchip.h │ │ │ ├── fdt_irqchip_plic.h │ │ │ ├── imsic.h │ │ │ └── plic.h │ │ ├── reset/ │ │ │ └── fdt_reset.h │ │ ├── serial/ │ │ │ ├── cadence-uart.h │ │ │ ├── fdt_serial.h │ │ │ ├── gaisler-uart.h │ │ │ ├── litex-uart.h │ │ │ ├── renesas-scif.h │ │ │ ├── semihosting.h │ │ │ ├── shakti-uart.h │ │ │ ├── sifive-uart.h │ │ │ ├── uart8250.h │ │ │ └── xlnx_uartlite.h │ │ ├── sys/ │ │ │ ├── htif.h │ │ │ └── sifive_test.h │ │ └── timer/ │ │ ├── aclint_mtimer.h │ │ ├── andes_plmt.h │ │ └── fdt_timer.h │ ├── lib/ │ │ ├── sbi/ │ │ │ ├── Kconfig │ │ │ ├── objects.mk │ │ │ ├── riscv_asm.c │ │ │ ├── riscv_atomic.c │ │ │ ├── riscv_hardfp.S │ │ │ ├── riscv_locks.c │ │ │ ├── sbi_bitmap.c │ │ │ ├── sbi_bitops.c │ │ │ ├── sbi_console.c │ │ │ ├── sbi_domain.c │ │ │ ├── sbi_ecall.c │ │ │ ├── sbi_ecall_base.c │ │ │ ├── sbi_ecall_exts.carray │ │ │ ├── sbi_ecall_hsm.c │ │ │ ├── sbi_ecall_ipi.c │ │ │ ├── sbi_ecall_legacy.c │ │ │ ├── sbi_ecall_pmu.c │ │ │ ├── sbi_ecall_rfence.c │ │ │ ├── sbi_ecall_srst.c │ │ │ ├── sbi_ecall_time.c │ │ │ ├── sbi_ecall_vendor.c │ │ │ ├── sbi_emulate_csr.c │ │ │ ├── sbi_expected_trap.S │ │ │ ├── sbi_fifo.c │ │ │ ├── sbi_hart.c │ │ │ ├── sbi_hfence.S │ │ │ ├── sbi_hsm.c │ │ │ ├── sbi_illegal_insn.c │ │ │ ├── sbi_init.c │ │ │ ├── sbi_ipi.c │ │ │ ├── sbi_irqchip.c │ │ │ ├── sbi_math.c │ │ │ ├── sbi_misaligned_ldst.c │ │ │ ├── sbi_platform.c │ │ │ ├── sbi_pmu.c │ │ │ ├── sbi_scratch.c │ │ │ ├── sbi_string.c │ │ │ ├── sbi_system.c │ │ │ ├── sbi_timer.c │ │ │ ├── sbi_tlb.c │ │ │ ├── sbi_trap.c │ │ │ └── sbi_unpriv.c │ │ └── utils/ │ │ ├── Kconfig │ │ ├── fdt/ │ │ │ ├── Kconfig │ │ │ ├── fdt_domain.c │ │ │ ├── fdt_fixup.c │ │ │ ├── fdt_helper.c │ │ │ ├── fdt_pmu.c │ │ │ └── objects.mk │ │ ├── gpio/ │ │ │ ├── Kconfig │ │ │ ├── fdt_gpio.c │ │ │ ├── fdt_gpio_drivers.carray │ │ │ ├── fdt_gpio_sifive.c │ │ │ ├── gpio.c │ │ │ └── objects.mk │ │ ├── i2c/ │ │ │ ├── Kconfig │ │ │ ├── fdt_i2c.c │ │ │ ├── fdt_i2c_adapter_drivers.carray │ │ │ ├── fdt_i2c_sifive.c │ │ │ ├── i2c.c │ │ │ └── objects.mk │ │ ├── ipi/ │ │ │ ├── Kconfig │ │ │ ├── aclint_mswi.c │ │ │ ├── andes_plicsw.c │ │ │ ├── fdt_ipi.c │ │ │ ├── fdt_ipi_drivers.carray │ │ │ ├── fdt_ipi_mswi.c │ │ │ ├── fdt_ipi_plicsw.c │ │ │ └── objects.mk │ │ ├── irqchip/ │ │ │ ├── Kconfig │ │ │ ├── aplic.c │ │ │ ├── fdt_irqchip.c │ │ │ ├── fdt_irqchip_aplic.c │ │ │ ├── fdt_irqchip_drivers.carray │ │ │ ├── fdt_irqchip_imsic.c │ │ │ ├── fdt_irqchip_plic.c │ │ │ ├── imsic.c │ │ │ ├── objects.mk │ │ │ └── plic.c │ │ ├── libfdt/ │ │ │ ├── .clang-format │ │ │ ├── Kconfig │ │ │ ├── Makefile.libfdt │ │ │ ├── TODO │ │ │ ├── fdt.c │ │ │ ├── fdt.h │ │ │ ├── fdt_addresses.c │ │ │ ├── fdt_check.c │ │ │ ├── fdt_empty_tree.c │ │ │ ├── fdt_overlay.c │ │ │ ├── fdt_ro.c │ │ │ ├── fdt_rw.c │ │ │ ├── fdt_strerror.c │ │ │ ├── fdt_sw.c │ │ │ ├── fdt_wip.c │ │ │ ├── libfdt.h │ │ │ ├── libfdt_env.h │ │ │ ├── libfdt_internal.h │ │ │ ├── objects.mk │ │ │ └── version.lds │ │ ├── libquad/ │ │ │ ├── divdi3.c │ │ │ ├── include/ │ │ │ │ ├── limits.h │ │ │ │ └── sys/ │ │ │ │ ├── cdefs.h │ │ │ │ └── types.h │ │ │ ├── moddi3.c │ │ │ ├── objects.mk │ │ │ ├── qdivrem.c │ │ │ ├── quad.h │ │ │ ├── udivdi3.c │ │ │ └── umoddi3.c │ │ ├── reset/ │ │ │ ├── Kconfig │ │ │ ├── fdt_reset.c │ │ │ ├── fdt_reset_atcwdt200.c │ │ │ ├── fdt_reset_drivers.carray │ │ │ ├── fdt_reset_gpio.c │ │ │ ├── fdt_reset_htif.c │ │ │ ├── fdt_reset_sifive_test.c │ │ │ ├── fdt_reset_sunxi_wdt.c │ │ │ ├── fdt_reset_thead.c │ │ │ ├── fdt_reset_thead.h │ │ │ ├── fdt_reset_thead_asm.S │ │ │ └── objects.mk │ │ ├── serial/ │ │ │ ├── Kconfig │ │ │ ├── cadence-uart.c │ │ │ ├── fdt_serial.c │ │ │ ├── fdt_serial_cadence.c │ │ │ ├── fdt_serial_drivers.carray │ │ │ ├── fdt_serial_gaisler.c │ │ │ ├── fdt_serial_htif.c │ │ │ ├── fdt_serial_litex.c │ │ │ ├── fdt_serial_renesas_scif.c │ │ │ ├── fdt_serial_shakti.c │ │ │ ├── fdt_serial_sifive.c │ │ │ ├── fdt_serial_uart8250.c │ │ │ ├── fdt_serial_xlnx_uartlite.c │ │ │ ├── gaisler-uart.c │ │ │ ├── litex-uart.c │ │ │ ├── objects.mk │ │ │ ├── renesas_scif.c │ │ │ ├── semihosting.c │ │ │ ├── shakti-uart.c │ │ │ ├── sifive-uart.c │ │ │ ├── uart8250.c │ │ │ └── xlnx-uartlite.c │ │ ├── sys/ │ │ │ ├── Kconfig │ │ │ ├── htif.c │ │ │ ├── objects.mk │ │ │ └── sifive_test.c │ │ └── timer/ │ │ ├── Kconfig │ │ ├── aclint_mtimer.c │ │ ├── andes_plmt.c │ │ ├── fdt_timer.c │ │ ├── fdt_timer_drivers.carray │ │ ├── fdt_timer_mtimer.c │ │ ├── fdt_timer_plmt.c │ │ └── objects.mk │ ├── platform/ │ │ ├── fpga/ │ │ │ ├── ariane/ │ │ │ │ ├── Kconfig │ │ │ │ ├── configs/ │ │ │ │ │ └── defconfig │ │ │ │ ├── objects.mk │ │ │ │ └── platform.c │ │ │ └── openpiton/ │ │ │ ├── Kconfig │ │ │ ├── configs/ │ │ │ │ └── defconfig │ │ │ ├── objects.mk │ │ │ └── platform.c │ │ ├── generic/ │ │ │ ├── Kconfig │ │ │ ├── allwinner/ │ │ │ │ ├── objects.mk │ │ │ │ └── sun20i-d1.c │ │ │ ├── andes/ │ │ │ │ ├── ae350.c │ │ │ │ └── objects.mk │ │ │ ├── configs/ │ │ │ │ └── defconfig │ │ │ ├── include/ │ │ │ │ ├── platform_override.h │ │ │ │ └── thead_c9xx.h │ │ │ ├── objects.mk │ │ │ ├── platform.c │ │ │ ├── platform_override_modules.carray │ │ │ ├── renesas/ │ │ │ │ └── rzfive/ │ │ │ │ ├── objects.mk │ │ │ │ └── rzfive.c │ │ │ └── sifive/ │ │ │ ├── fu540.c │ │ │ ├── fu740.c │ │ │ └── objects.mk │ │ ├── kendryte/ │ │ │ └── k210/ │ │ │ ├── Kconfig │ │ │ ├── configs/ │ │ │ │ └── defconfig │ │ │ ├── k210.dts │ │ │ ├── objects.mk │ │ │ ├── platform.c │ │ │ └── platform.h │ │ ├── nuclei/ │ │ │ └── ux600/ │ │ │ ├── Kconfig │ │ │ ├── configs/ │ │ │ │ └── defconfig │ │ │ ├── objects.mk │ │ │ └── platform.c │ │ ├── template/ │ │ │ ├── Kconfig │ │ │ ├── configs/ │ │ │ │ └── defconfig │ │ │ ├── objects.mk │ │ │ └── platform.c │ │ └── vivado-risc-v/ │ │ ├── Kconfig │ │ ├── configs/ │ │ │ └── defconfig │ │ ├── fatfs/ │ │ │ ├── diskio.c │ │ │ ├── ffsystem.c │ │ │ └── ffunicode.c │ │ ├── objects.mk │ │ └── platform.c │ ├── scripts/ │ │ ├── Kconfiglib/ │ │ │ ├── LICENSE.txt │ │ │ ├── allnoconfig.py │ │ │ ├── allyesconfig.py │ │ │ ├── defconfig.py │ │ │ ├── genconfig.py │ │ │ ├── kconfiglib.py │ │ │ ├── menuconfig.py │ │ │ ├── oldconfig.py │ │ │ ├── olddefconfig.py │ │ │ ├── savedefconfig.py │ │ │ └── setconfig.py │ │ ├── carray.sh │ │ ├── create-binary-archive.sh │ │ └── d2c.sh │ └── src/ │ ├── ACTCommands.c │ ├── ACT_spt.c │ ├── AlgorithmCap.c │ ├── AlgorithmTests.c │ ├── AsymmetricCommands.c │ ├── Attest_spt.c │ ├── AttestationCommands.c │ ├── AuditCommands.c │ ├── Bits.c │ ├── BnConvert.c │ ├── BnEccConstants.c │ ├── BnMath.c │ ├── BnMemory.c │ ├── BnToOsslMath.c │ ├── BnUtil.c │ ├── Cancel.c │ ├── CapabilityCommands.c │ ├── Clock.c │ ├── ClockCommands.c │ ├── CommandAudit.c │ ├── CommandCodeAttributes.c │ ├── CommandDispatcher.c │ ├── ContextCommands.c │ ├── Context_spt.c │ ├── CryptCmac.c │ ├── CryptDes.c │ ├── CryptEccCrypt.c │ ├── CryptEccData.c │ ├── CryptEccKeyExchange.c │ ├── CryptEccMain.c │ ├── CryptEccSignature.c │ ├── CryptHash.c │ ├── CryptPrime.c │ ├── CryptPrimeSieve.c │ ├── CryptRand.c │ ├── CryptRsa.c │ ├── CryptSelfTest.c │ ├── CryptSmac.c │ ├── CryptSym.c │ ├── CryptUtil.c │ ├── DA.c │ ├── DebugHelpers.c │ ├── DictionaryCommands.c │ ├── DuplicationCommands.c │ ├── EACommands.c │ ├── EccConstantData.inl │ ├── EncryptDecrypt_spt.c │ ├── Entity.c │ ├── Entropy.c │ ├── EphemeralCommands.c │ ├── ExecCommand.c │ ├── ExtraData.c │ ├── Global.c │ ├── Handle.c │ ├── HashCommands.c │ ├── Hierarchy.c │ ├── HierarchyCommands.c │ ├── IntegrityCommands.c │ ├── IoBuffers.c │ ├── LICENSE │ ├── Locality.c │ ├── LocalityPlat.c │ ├── ManagementCommands.c │ ├── Manufacture.c │ ├── Marshal.c │ ├── MathOnByteBuffers.c │ ├── Memory.c │ ├── NVCommands.c │ ├── NVDynamic.c │ ├── NVMem.c │ ├── NVMem.c.bak │ ├── NVReserved.c │ ├── NV_spt.c │ ├── Object.c │ ├── ObjectCommands.c │ ├── Object_spt.c │ ├── PCR.c │ ├── PP.c │ ├── PPPlat.c │ ├── PlatformACT.c │ ├── PlatformData.c │ ├── PlatformPCR.c │ ├── Policy_spt.c │ ├── Power.c │ ├── PowerPlat.c │ ├── PrimeData.c │ ├── PropertyCap.c │ ├── RandomCommands.c │ ├── Response.c │ ├── ResponseCodeProcessing.c │ ├── RsaKeyCache.c │ ├── RunCommand.c │ ├── Session.c │ ├── SessionCommands.c │ ├── SessionProcess.c │ ├── SigningCommands.c │ ├── StartupCommands.c │ ├── SymmetricCommands.c │ ├── TPMCmdp.c │ ├── TableDrivenMarshal.c │ ├── TableMarshalData.c │ ├── TestingCommands.c │ ├── Ticket.c │ ├── Time.c │ ├── TpmAsn1.c │ ├── TpmBigNumThunks.c │ ├── TpmEcc_Signature_ECDAA.c │ ├── TpmEcc_Signature_ECDSA.c │ ├── TpmEcc_Signature_SM2.c │ ├── TpmEcc_Signature_Schnorr.c │ ├── TpmEcc_Signature_Util.c │ ├── TpmEcc_Util.c │ ├── TpmFail.c │ ├── TpmMath_Debug.c │ ├── TpmMath_Util.c │ ├── TpmSizeChecks.c │ ├── TpmToOsslSupport.c │ ├── Unique.c │ ├── Unmarshal.c │ ├── VendorInfo.c │ ├── Vendor_TCG_Test.c │ ├── X509_ECC.c │ ├── X509_RSA.c │ ├── X509_spt.c │ ├── ftpm-sbi-opensbi.c │ ├── ftpm.c │ ├── intercept.c │ ├── makefile.mac │ ├── makefile.mak │ ├── makefile11 │ ├── mprv.S │ ├── ntc2.c │ └── ntc2lib.c └── ibmtss-ftpm/ ├── .gitignore ├── CommandAttributeData.c ├── CommandAttributeData12.c ├── Commands.c ├── Commands12.c ├── Makefile.am ├── Unmarshal.c ├── Unmarshal12.c ├── activatecredential.c ├── applink.c ├── certify.c ├── certifycreation.c ├── certifyx509.c ├── changeeps.c ├── changepps.c ├── clear.c ├── clearcontrol.c ├── clockrateadjust.c ├── clockset.c ├── commit.c ├── contextload.c ├── contextsave.c ├── create.c ├── createek.c ├── createekcert.c ├── createloaded.c ├── createprimary.c ├── cryptoutils.c ├── dictionaryattacklockreset.c ├── dictionaryattackparameters.c ├── duplicate.c ├── eccdecrypt.c ├── eccencrypt.c ├── eccparameters.c ├── ecephemeral.c ├── efilib.c ├── ekutils.c ├── encryptdecrypt.c ├── eventextend.c ├── eventlib.c ├── eventsequencecomplete.c ├── evictcontrol.c ├── flushcontext.c ├── getcapability.c ├── getcommandauditdigest.c ├── getcryptolibrary.c ├── getrandom.c ├── getsessionauditdigest.c ├── gettestresult.c ├── gettime.c ├── hash.c ├── hashsequencestart.c ├── hierarchychangeauth.c ├── hierarchycontrol.c ├── hmac.c ├── hmacstart.c ├── imaextend.c ├── imalib.c ├── import.c ├── importpem.c ├── load.c ├── loadexternal.c ├── makecredential.c ├── makefile-common ├── makefile-common12 ├── makefile-common20 ├── makefile.mac ├── makefile.mak ├── makefile.min ├── makefile.nofile ├── makefiletpm12 ├── makefiletpm20 ├── makefiletpmc ├── ntc2getconfig.c ├── ntc2lib.c ├── ntc2lockconfig.c ├── ntc2preconfig.c ├── nvcertify.c ├── nvchangeauth.c ├── nvdefinespace.c ├── nvextend.c ├── nvglobalwritelock.c ├── nvincrement.c ├── nvread.c ├── nvreadlock.c ├── nvreadpublic.c ├── nvsetbits.c ├── nvundefinespace.c ├── nvundefinespacespecial.c ├── nvwrite.c ├── nvwritelock.c ├── objectchangeauth.c ├── objecttemplates.c ├── pcrallocate.c ├── pcrevent.c ├── pcrextend.c ├── pcrread.c ├── pcrreset.c ├── policyauthorize.c ├── policyauthorizenv.c ├── policyauthvalue.c ├── policycapability.c ├── policycommandcode.c ├── policycountertimer.c ├── policycphash.c ├── policyduplicationselect.c ├── policygetdigest.c ├── policymaker.c ├── policymakerpcr.c ├── policynamehash.c ├── policynv.c ├── policynvwritten.c ├── policyor.c ├── policyparameters.c ├── policypassword.c ├── policypcr.c ├── policyrestart.c ├── policysecret.c ├── policysigned.c ├── policytemplate.c ├── policyticket.c ├── powerup.c ├── printattr.c ├── publicname.c ├── quote.c ├── readclock.c ├── readpublic.c ├── returncode.c ├── rewrap.c ├── rsadecrypt.c ├── rsaencrypt.c ├── sequencecomplete.c ├── sequenceupdate.c ├── setcommandcodeauditstatus.c ├── setprimarypolicy.c ├── shutdown.c ├── sign.c ├── signapp.c ├── startauthsession.c ├── startup.c ├── stirrandom.c ├── timepacket.c ├── tpm2pem.c ├── tpmcmd.c ├── tpmproxy.c ├── tpmpublic2eccpoint.c ├── tss.c ├── tss12.c ├── tss20.c ├── tssauth.c ├── tssauth12.c ├── tssauth20.c ├── tssccattributes.c ├── tssccattributes12.c ├── tsscrypto.c ├── tsscryptoh.c ├── tssdev.c ├── tssdevskiboot.c ├── tssfile.c ├── tssftpm.c ├── tssmarshal.c ├── tssmarshal12.c ├── tssntc.c ├── tssprint.c ├── tssprintcmd.c ├── tssproperties.c ├── tssresponsecode.c ├── tsssocket.c ├── tsstbsi.c ├── tsstransmit.c ├── tssutils.c ├── tssutilsverbose.c ├── unseal.c ├── verifysignature.c ├── writeapp.c └── zgen2phase.c