Michael Scire
7bcd5c6e3b
exo: implement start of mariko fatal handler
2020-11-18 15:08:44 -08:00
Michael Scire
74da8a4885
exo: map stack region for mariko-only program
2020-11-15 08:43:55 -08:00
Michael Scire
cb7c6a5d8a
exo: load mariko-only program during boot
2020-11-15 08:35:57 -08:00
Michael Scire
fc97237447
exo: add logging to boot under debug config
2020-11-15 03:24:04 -08:00
Michael Scire
a203ac3f80
exo: free space by moving keys to volatile iram, support logging under debug config
2020-11-15 02:47:44 -08:00
Michael Scire
2ef41f0027
exo: shuffle logic around to support debug code region in iram
2020-11-15 01:36:50 -08:00
Michael Scire
ee3a7e7740
exo: disable untranslated gpu accesses on mariko
2020-11-15 00:45:41 -08:00
Michael Scire
3c595994df
exosphere: release, debug, audit configs
2020-11-14 14:40:16 -08:00
Michael Scire
b4c908ba9f
exo/program: release, debug, audit configs
2020-11-14 14:14:07 -08:00
Michael Scire
c572024a5e
rebootstub: audit/debug/release
2020-11-14 12:19:01 -08:00
Michael Scire
71a38ae74d
libexo/sc7fw: support release/debug/audit
2020-11-14 12:17:38 -08:00
Michael Scire
72f83ea43e
exo: reserve a portion of iram for secure monitor debug (including code)
2020-11-14 11:11:41 -08:00
SciresM
166318ba77
sdmmc: implement driver suitable for fs + bootloader
...
* sdmmc: begin skeletoning sdmmc driver
* sdmmc: add most of SdHostStandardController
* sdmmc: implement most of SdmmcController
* sdmmc: Sdmmc2Controller
* sdmmc: skeleton implementation of Sdmmc1Controller
* sdmmc: complete abstract logic for Sdmmc1 power controller
* sdmmc: implement gpio handling for sdmmc1-register-control
* sdmmc: implement pinmux handling for sdmmc1-register-control
* sdmmc: fix building for arm32 and in stratosphere context
* sdmmc: implement voltage enable/set for sdmmc1-register-control
* util: move T(V)SNPrintf from kernel to util
* sdmmc: implement BaseDeviceAccessor
* sdmmc: implement MmcDeviceAccessor
* sdmmc: implement clock reset controller for register api
* sdmmc: fix bug in WaitWhileCommandInhibit, add mmc accessors
* exo: add sdmmc test program
* sdmmc: fix speed mode extension, add CheckMmcConnection for debug
* sdmmc: add DeviceDetector, gpio: implement client api
* gpio: modernize client api instead of doing it the lazy way
* sdmmc: SdCardDeviceAccessor impl
* sdmmc: update test program to read first two sectors of sd card
* sdmmc: fix vref sel
* sdmmc: finish outward-facing api (untested)
* ams: changes for libvapours including tegra register defs
* sdmmc: remove hwinit
2020-10-30 11:54:30 -07:00
Michael Scire
48b4dd48a4
ams: expose reboot payload for kernel panic
2020-09-18 00:43:55 -07:00
Michael Scire
cc6b8ea4d1
exo/kern: 1.0.0 requires access to bpmp smmu regs, userland (am) needs to map bpmp exception vectors
2020-09-07 10:43:35 -07:00
Michael Scire
e435f56367
exo: build with -Wextra
2020-08-17 14:39:18 -07:00
Michael Scire
51b5c3d87d
ams: avoid UB infinite loops
2020-08-13 17:28:29 -07:00
Michael Scire
420bc7df9b
ams: update build system to add generic-fallback support
2020-08-11 11:22:56 -07:00
Michael Scire
9bd6916646
ams: bump version to 0.14.0, add emummc info configitem
2020-07-08 17:36:52 -07:00
Michael Scire
aa2d1e15ab
exo: integrate multiple PRs' split_program changes
2020-07-07 20:28:42 -07:00
Michael Scire
b08ccd7341
exo: fixes, now tested working on mariko hardware
2020-07-02 14:06:42 -07:00
Michael Scire
828b170aac
exo: add mariko spare reg write during setup
2020-06-29 05:40:09 -07:00
Michael Scire
1084817d84
exo: kernel saves dbg* registers
2020-06-29 05:14:49 -07:00
Michael Scire
f7f284e5c0
exo: add note to mariko keygen for future sciresm
2020-06-28 21:14:32 -07:00
Michael Scire
bf92daf055
exo: implement remaining SE changes for mariko support
2020-06-28 21:11:29 -07:00
Michael Scire
5cb9fa510e
exo: implement mariko se/tzram context save
2020-06-28 20:32:45 -07:00
Michael Scire
1473adf5c4
fusee/exo: correct device key management for newer consoles ( closes #1053 )
2020-06-28 05:39:25 -07:00
Michael Scire
0698338312
exo2: resolve remaining erista TODOs, clean up debugging code
2020-06-14 22:07:45 -07:00
Michael Scire
b966345b25
exo2: correct pkg2 encryption key load
2020-06-14 22:07:45 -07:00
Michael Scire
c129256dd0
exo: amend pk21 restrictions
2020-06-14 22:07:45 -07:00
Michael Scire
43f5a0ef45
exo2: account for sleep/wake enabling jtag
2020-06-14 22:07:45 -07:00
Michael Scire
73c1615cda
exo2: only enforce soc device preconditions when they are guaranteed to apply
2020-06-14 22:07:45 -07:00
Michael Scire
c827c0d599
exo2: properly perform smc restriction
2020-06-14 22:07:45 -07:00
Michael Scire
79e4c0ef6e
exo2: add security checks, full 2.0.0 support
2020-06-14 22:07:45 -07:00
Michael Scire
1047ceab98
exo2/fusee: full 1.0.0 support.
2020-06-14 22:07:45 -07:00
Michael Scire
597bdded69
fusee/exo2: more fixes to boot lower firmwares
2020-06-14 22:07:45 -07:00
Michael Scire
6780b096ca
exo2: address volca review commentary
2020-06-14 22:07:45 -07:00
Michael Scire
da4107996a
exo2: first pass at backwards-compat
2020-06-14 22:07:45 -07:00
Michael Scire
42f1a3bf60
exo2: rename exosphere2 -> exosphere
2020-06-14 22:07:45 -07:00
Michael Scire
282f8f6612
ams: delete exo1
2020-06-14 22:07:45 -07:00
Michael Scire
95d38a1a94
exo2: suspend fixes (sleep/wake now works on hardware)
2020-06-14 22:07:45 -07:00
Michael Scire
f66b41c027
exo2: Initial work on the exosphere rewrite.
...
exo2: Implement uncompressor stub and boot code up to Main().
exo2: implement some more init (uart/gic)
exo2: implement more of init
exo2: improve reg api, add keyslot flag setters
exo2: implement se aes decryption/enc
exo2: fix bugs in loader stub/mmu mappings
exo2: start skeletoning bootconfig/global context types
arch: fix makefile flags
exo2: implement through master key derivation
exo2: implement device master keygen
exo2: more init through start of SetupSocSecurity
exo2: implement pmc secure scratch management
se: implement sticky bit validation
libexosphere: fix building for arm32
libexo: fix makefile flags
libexo: support building for arm64/arm
sc7fw: skeleton binary
sc7fw: skeleton a little more
sc7fw: implement all non-dram functionality
exo2: fix DivideUp error
sc7fw: implement more dram code, fix reg library errors
sc7fw: complete sc7fw impl.
exo2: skeleton the rest of SetupSocSecurity
exo2: implement fiq interrupt handler
exo2: implement all exception handlers
exo2: skeleton the entire smc api, implement the svc invoker
exo2: implement rest of SetupSocSecurity
exo2: correct slave security errors
exo2: fix register definition
exo2: minor fixes
2020-06-14 22:07:45 -07:00
Michael Scire
a2496e5462
exo: fix warmboot memory address error
2020-05-18 08:57:20 -07:00
SciresM
3a1ccdd919
Switch atmosphere's build target to C++20. ( #952 )
...
* ams: update to build with gcc10/c++20
* remove mno-outline-atomics
* ams: take care of most TODO C++20s
* fusee/sept: update for gcc10
* whoosh, your code now uses pre-compiled headers
* make: dependency fixes
2020-05-11 15:02:10 -07:00
Michael Scire
8e75a4169d
ams: revamp target firmware
2020-05-06 22:29:07 -07:00
Michael Scire
7bc0250cea
exosphere: correct reencryption of rsa private keys
2020-04-24 17:36:37 -07:00
SciresM
3bc2d79384
PRODINFO: Revamp blanking/write disallow policy. ( #913 )
...
* exo/fusee: hookup new prodinfo settings
* fusee: new scheme doesn't need FLAGS_DEFAULT
* fusee: fix c/p errors
* ams.mitm: completely revamp prodinfo backup mechanism
* ams.mitm: Implement revamped blanking/write policy
* strat: make early boot more debuggable
* exo: condense flag logic
2020-04-22 16:22:14 -07:00
Michael Scire
1d9a4f47fd
exosphere: set cpuactlr to guarantee it holds non reset value
2020-04-15 01:26:28 -07:00
Michael Scire
3f5f9b60ea
exosphere: ...
2020-04-15 00:14:36 -07:00
Michael Scire
7d30460214
exosphere: fix reentrancy of se interrupt handler
2020-04-14 12:23:08 -07:00