Commit graph

2126 commits

Author SHA1 Message Date
Michael Scire
5370c7b150 Implement LP0-Entry BPMP Firmware 2018-02-23 04:13:18 -08:00
Michael Scire
f7598cb433 Implement smcConfigureCarveout 2018-02-23 01:12:38 -08:00
Michael Scire
b2dc858738 Implement smcReadWriteRegister 2018-02-23 00:20:51 -08:00
Mat M
765ae2c06a se: Fix compilation issues (#36)
* se: Correct excess argument errors with se_perform_aes_block_operation

* se: Fix excess arguments with set_se_ctr

* se: Correct variable identifiers in se_synchronous_exp_mod

* se: Correct offset variable identifier in se_get_exp_mod_output
2018-02-22 23:12:44 -08:00
Mat M
3596032869 package2: Silence a -Wcomment warning (#35) 2018-02-22 23:11:51 -08:00
Mat M
7ab0acf656 package2: Correct -> to . in load_package2 (#34)
header is a local on the stack, so this should just be regular member accessing
2018-02-22 23:11:15 -08:00
Mat M
06c8b7a764 package2: Fix buffer variable name in rsa2048_pss_verify (#32) 2018-02-22 20:40:41 -08:00
Mat M
4131a61d00 package2: Use assignment instead of memcpy in decrypt_and_validate_header (#33)
This is more concise and also compiles (the previous code was missing an & on the source argument)
2018-02-22 20:31:13 -08:00
Mat M
7d777a0e59 package2: Fix loop index in decrypt_and_validate_header (#31) 2018-02-22 20:18:18 -08:00
Mat M
83216409d2 all: Use bool where applicable (#30) 2018-02-22 19:58:39 -08:00
Mat M
1d8f443f68 gcm: Convert source data to a uint8_t pointer before subscripting it (#29)
It's not well-formed to subscript a pointer to void
2018-02-22 18:44:27 -08:00
Mat M
3020faf8a2 mmu: Pass missing tbl argument to mmu_map_page in mmu_map_page_range (#28) 2018-02-22 18:28:30 -08:00
Lioncash
6fb3c77764
Add missing string.h includes 2018-02-22 21:09:02 -05:00
Mat M
a798df5a2c cpu_context: Add missing include (#25) 2018-02-22 18:08:57 -08:00
Mat M
c6158d7d64 mmu: Fix loop index variable name in mmio_get_device_address (#24) 2018-02-22 18:05:43 -08:00
Mat M
0597fe887a package2: Correct variable name for new device key source (#19)
Identifiers can't begin with a number
2018-02-22 18:03:22 -08:00
Merry
a6c91ffe4e se: fix infinite loop in shift_left_xor_rb (#21) 2018-02-22 18:03:05 -08:00
Merry
220e574ff7 mmu: Correct TCR_ORGN_WBWA typo 2018-02-22 18:02:45 -08:00
Michael Scire
a007e98e17 Fix SE access typo 2018-02-22 17:58:48 -08:00
Michael Scire
d1d8d3da34 Switch all MMIO to the new access style 2018-02-22 17:50:37 -08:00
Merry
5d97ac48f2 userpage: fix declarations (#20) 2018-02-22 17:20:03 -08:00
Mat M
25a5eacb96 masterkey: Add missing semicolon to mkey_vectors (#18) 2018-02-22 17:18:28 -08:00
Michael Scire
215ae12b50 Access NX_BOOTLOADER_MAILBOXEN via mmu defs 2018-02-22 17:08:54 -08:00
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
SciresM
c032bd812c
Merge pull request #15 from MerryMage/uart
UART
2018-02-22 14:18:09 -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