Commit graph

2379 commits

Author SHA1 Message Date
Michael Scire bb3a8a888f exo2: fix a number of bugs, add temp debug-log code 2020-06-14 22:07:45 -07:00
Michael Scire aa50944568 exo2: tentative (read: bugged) SmcComputeCmac, SmcGenerateSpecificAesKey, SmcGetSecureData 2020-06-14 22:07:45 -07:00
Michael Scire e0dbfc69a8 exo2: implement SmcComputeAes, SmcGetResult, SmcGetResultData 2020-06-14 22:07:45 -07:00
Michael Scire b6b114ec40 exo2: implement SmcSetKernelCarveoutRegion 2020-06-14 22:07:45 -07:00
Michael Scire bf546d5fb3 exo2: implement SmcGenerateAesKek, SmcLoadAesKey 2020-06-14 22:07:45 -07:00
Michael Scire 864b6085a8 exo2: fix bugs in non-core0 bootup 2020-06-14 22:07:45 -07:00
Michael Scire fa64bf4951 exo2: implement GenerateRandomBytes 2020-06-14 22:07:45 -07:00
Michael Scire 6bf283ec2e exo2: implement SmcGetConfig 2020-06-14 22:07:45 -07:00
Michael Scire e3eadcd2e3 exo2: Implement SmcReadWriteRegister 2020-06-14 22:07:45 -07:00
Michael Scire 8c4c1db506 exo2: minor fixes, now completes main and receives SMCs on hw 2020-06-14 22:07:45 -07:00
Michael Scire 27843314a4 exo2: minor stack/mmu fixes, now gets to main on hw 2020-06-14 22:07:45 -07:00
Michael Scire 1fdd83628e exo2: fix typo bug 2020-06-14 22:07:45 -07:00
Michael Scire 3d6baf96a3 exo2: implement SmcPowerCpuOn 2020-06-14 22:07:45 -07:00
Michael Scire ab703646d5 exo2: by default, map end of iram for debug 2020-06-14 22:07:45 -07:00
Michael Scire 435d2fb0c3 exo2: remove unused lvars 2020-06-14 22:07:45 -07:00
Michael Scire 63629b22a1 exo2: use N's strategy for randcache, it's better 2020-06-14 22:07:45 -07:00
Michael Scire b7ff9e8fcc exo2: reorganize to save >0x300 bytes and 0x100 of stack in main 2020-06-14 22:07:45 -07:00
Michael Scire ad664daea5 exo2: implement remainder of warmboot tz code 2020-06-14 22:07:45 -07:00
Michael Scire 97ab282351 exo2: update configitem names to match wiki 2020-06-14 22:07:45 -07:00
Michael Scire 81846fa5c3 exo2: implement warmboot through start of virtual exec 2020-06-14 22:07:45 -07:00
Michael Scire dc6abf9f68 exo2: Implement the rest of main/return-to-el1 2020-06-14 22:07:45 -07:00
Michael Scire 87bdc46beb exo2: implement rest of main other than SetupSocProtections 2020-06-14 22:07:45 -07:00
Michael Scire f391354415 exo2: implement through package2 decryption 2020-06-14 22:07:45 -07:00
Michael Scire 9ddcbe9dc3 exo2: implement main through sync-for-pk21-load 2020-06-14 22:07:45 -07:00
Michael Scire e11fad6598 exo2: implement through boot config load/validate 2020-06-14 22:07:45 -07:00
Michael Scire cbcd1d87fb exo2: implement through end of random cache init 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 71e0102f7a boot2: correct service access for mitm-forward-declare 2020-05-27 03:58:10 -07:00
Michael Scire fe0bd03feb strat: use 1 fewer fs session at runtime (and match official ncm usage) 2020-05-27 03:51:11 -07:00
Michael Scire 80e49696ea ams: update for 10.0.3 2020-05-25 19:33:21 -07:00
Michael Scire f215da3b37 fs: miscellaneous bucket tree fixes 2020-05-19 09:48:44 -07:00
Michael Scire a2496e5462 exo: fix warmboot memory address error 2020-05-18 08:57:20 -07:00
Michael Scire de9a3c6dfc git subrepo push libraries
subrepo:
  subdir:   "libraries"
  merged:   "797dfa78"
upstream:
  origin:   "https://github.com/Atmosphere-NX/Atmosphere-libs"
  branch:   "master"
  commit:   "797dfa78"
git-subrepo:
  version:  "0.4.1"
  origin:   "???"
  commit:   "???"
2020-05-18 08:22:36 -07:00
Adubbz 79ae47f028
ncm: implement firmware downgrading (#958)
* ncm: implement firmware downgrading

* ncm: make storage list const
2020-05-18 08:03:38 -07:00
Michael Scire 19d8a0fc2b os: use ported libnx mutex impl 2020-05-17 23:20:21 -07:00
Michael Scire 8052dd6249 fusee: fix boot support on < 7.x 2020-05-16 16:00:45 -07:00
Michael Scire 9baf096a10 dmnt: make debug event result handling more robust (closes #938) 2020-05-16 15:05:46 -07:00
jam1garner 9598da0a0b
Tweak default settings to allow nro replacement mods for smash (#956) 2020-05-15 14:28:51 -07:00
Michael Scire c8e5461e3f git subrepo push libraries
subrepo:
  subdir:   "libraries"
  merged:   "bbbe6793"
upstream:
  origin:   "https://github.com/Atmosphere-NX/Atmosphere-libs"
  branch:   "master"
  commit:   "bbbe6793"
git-subrepo:
  version:  "0.4.1"
  origin:   "???"
  commit:   "???"
2020-05-14 02:22:58 -07:00
Michael Scire 53a47e07fd nca-pr: update for c++20 2020-05-14 02:22:24 -07:00
Michael Scire 311d2678c7 git subrepo push libraries
subrepo:
  subdir:   "libraries"
  merged:   "b38939ad"
upstream:
  origin:   "https://github.com/Atmosphere-NX/Atmosphere-libs"
  branch:   "master"
  commit:   "b38939ad"
git-subrepo:
  version:  "0.4.1"
  origin:   "???"
  commit:   "???"
2020-05-12 15:44:47 -07:00
SciresM 81f91803ec
Implement support for parsing/interacting with NCAs. (#942)
* fs: implement support for interacting with ncas.

* spl: extend to use virtual keyslots
2020-05-11 15:04:51 -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 17b6bcfd37 loader: correct anti-downgrade tables for new version scheme 2020-05-06 22:39:11 -07:00
Michael Scire 0e289461bb ams: use psc acknowledge_ex on 5.1.0+ (fixes wake-from-sleep on 5.1.0) 2020-05-06 22:34:34 -07:00
Michael Scire 8e75a4169d ams: revamp target firmware 2020-05-06 22:29:07 -07:00
Michael Scire 85cd2c97a0 ams:bpc: allow programatically setting reboot payload 2020-05-04 23:29:54 -07:00
hexkyz 3e6031b8f4
docs: fix wrong link (thanks @jul2003) 2020-05-03 15:49:23 +01:00
Michael Scire 9ddc6e596b kern: fix link error 2020-05-02 22:30:34 -07:00
hexkyz b56f9966b7
Merge pull request #929 from hexkyz/master
docs: re-write documentation
2020-05-01 18:10:56 +01:00