Commit graph

499 commits

Author SHA1 Message Date
Michael Scire 72da8dcf5a Finish SE API operations other than context-saving. 2018-02-22 17:05:36 -08:00
TuxSH 5e1c137e26 Add mmio handling to mmu.h 2018-02-23 01:45:26 +01:00
Michael Scire 0ef8f1db2e Implement SE secure AES API. 2018-02-22 16:17:12 -08:00
Michael Scire ead0e2ba86 Implement RSA2048-PSS validation. 2018-02-22 15:19:29 -08:00
Mat M 32238984bf smc_user: Fix syntax (#16)
* smc_user: Fix syntax for size assignment in user_load_secure_exp_mod_key() and user_load_rsa_oaep_key()

* smc_user: Fix include directive
2018-02-22 14:18:34 -08:00
MerryMage a290932034 uart: transmit string and hex 2018-02-22 19:27:22 +00:00
MerryMage 71b76c153d Add uart 2018-02-22 19:27:01 +00:00
Michael Scire b00df2032d Clarify package2 relocation comment 2018-02-21 13:48:36 -08:00
Michael Scire d0e28890b0 Finish actual Package2 loading code. 2018-02-21 13:38:55 -08:00
Michael Scire 896d167b64 Add more WIP Package2 loading code. 2018-02-21 11:52:39 -08:00
Michael Scire 904ed3ad4e Fix mangled register name. 2018-02-21 10:58:50 -08:00
Michael Scire f0d0ec0dca Push WIP NX_BOOTLOADER sync code (for coldboots) 2018-02-21 10:57:51 -08:00
Michael Scire 330f8a0f8b Fix SMC names. 2018-02-20 18:48:09 -08:00
TuxSH 663c446439 Mention that Nintendo copy-pasted some startup code from arm-trusted-firmware 2018-02-21 00:53:23 +01:00
TuxSH 5681622f65 Add mmu table builder functions (mmu.h) 2018-02-20 23:44:10 +01:00
Michael Scire 9baab1aebc Clarify PASLR commentary 2018-02-20 13:51:17 -08:00
Michael Scire d3d65f4800 smcGenerateSpecificAesKey, smcLoadRsaPrivateKey, smcLoadRsaOaepKey 2018-02-20 13:25:57 -08:00
Michael Scire 3d80b4edbc smcDecryptRsaPrivateKey 2018-02-20 12:56:41 -08:00
TuxSH 81b874cc14 Fix minor build issues in gcm.c, etc. 2018-02-20 19:29:44 +01:00
Michael Scire 25e6317272 Fix GHASH comment. 2018-02-20 09:41:16 -08:00
Michael Scire 77c93221e9 Implement Nintendo's non-standard AES-GCM. 2018-02-20 09:39:50 -08:00
Michael Scire cec055a44b smcGetRandomFor{User,Priv} Implementations. 2018-02-20 03:19:35 -08:00
Michael Scire 34667a65f9 Implement titlekey unwrapping. 2018-02-20 01:49:10 -08:00
Michael Scire cbdd130917 Fix Seal Key sources. 2018-02-20 01:03:53 -08:00
Michael Scire 4030c6eb20 smcGenerateAesKek + Key sealing. 2018-02-20 01:02:01 -08:00
Michael Scire 07f9e9500e Implement masterkey logic, KEYSLOT defines. 2018-02-19 23:41:27 -08:00
Michael Scire 61f8886879 Implement titlekey SMCs (with skeleton tkey API) 2018-02-19 21:47:11 -08:00
Michael Scire 59281c5a97 Implement smcRsaOaep 2018-02-19 21:09:53 -08:00
Michael Scire f1c521a5d6 Implement smcExpMod. 2018-02-19 20:56:12 -08:00
Michael Scire 9b54bc536b Add missing userToSecure args in smcComputeCmac 2018-02-19 20:31:04 -08:00
Michael Scire 0340085c67 smcComputeCmac implementation. 2018-02-19 20:28:37 -08:00
Michael Scire ff07451280 Outline user<->secure page copying. 2018-02-19 20:18:53 -08:00
TuxSH a01d2c92b2 Add the crt0s 2018-02-20 01:27:15 +01:00
Michael Scire d0beae376f SMCCryptAes + Skeleton blocking AES API 2018-02-19 13:27:18 -08:00
Michael Scire 21c2405f15 Async SE AES API 2018-02-19 13:00:12 -08:00
Michael Scire 83fd2c43a3 Flesh out more of the SE driver 2018-02-19 01:27:50 -08:00
Michael Scire f77cae48d0 Skeleton for smcGetConfig and smcSetConfig 2018-02-19 00:41:19 -08:00
TuxSH f629a629d1 Change argument types in se.c/h, implement read32le/be, etc. 2018-02-19 00:02:37 +01:00
TuxSH 9c588d4965 ic iallu doesn't broadcast at all, replace the "icache invalidate all" function 2018-02-18 23:45:44 +01:00
TuxSH 0cc2cf0dc0 Add cache+tlb functions 2018-02-18 23:11:11 +01:00
Michael Scire a800c3c2e7 Add some more MMIO, smcCpuOn 2018-02-17 18:50:39 -08:00
Michael Scire 5c24f58402 Example SMC implementation (load_aes_key) 2018-02-17 16:34:31 -08:00
Michael Scire 49e1e6f41e Add wrapper for async SMCs 2018-02-17 16:00:53 -08:00
Michael Scire 8ea1ac0ecc Basic API for SMC handlers. 2018-02-17 15:48:49 -08:00
SciresM 049553aa91
Merge pull request #14 from Thog/exosphère-fix-french
Improve french for Exosphère
2018-02-17 14:58:57 -08:00
Michael Scire 77ff68a69d Flesh out the SE driver, some 2018-02-17 14:54:00 -08:00
Thomas Guillemard e9b0041ea9
Improve french for Exosphère
Exosphere isn't a french word, we need to fix that!
2018-02-17 11:44:31 +01:00
Michael Scire 4b2d17a42a Fix definition for crypt_data_into_keyslot 2018-02-16 23:58:34 -08:00
Michael Scire 6c5d425528 Make exosphere subdir, start outlining SE driver API. 2018-02-16 23:55:08 -08:00