Commit graph

604 commits

Author SHA1 Message Date
Michael Scire a6ea490615 fusee: delete fusee (this will break build temporarily) 2021-09-06 16:26:50 -07:00
Michael Scire d43bc68d0b fusee: fix MSELECT clkrst values 2021-08-30 07:24:36 -07:00
Michael Scire c5edb031fa fusee: restore DRAM to 204MHz before starting main cpu on Mariko (closes #1600).
Nintendo's Mariko tables result in trained frequency of 1599999 instead of 1600000.

PCV checks for rate == 1600000 exactly, when doing EMC init.

Thus EMC init does not succeed if we are trained to 1600000.

PCV has a fudge factor of 1000 used in SetEmcDvfsFreq, but this is not used in InitEmcDvfs.

This failure means that PCV cannot change rate back to 204MHz before sleep, and then after
wake extremely degraded performance is observed.

Restoring DRAM to 204MHz before boot causes EMC init to succeed/fixes performance degradation.
2021-08-30 07:19:28 -07:00
SciresM 17ca463c3f
ams: replace sept with tsec firmware (#1594)
* ams: replace sept with tsec firmware

This replaces sept with a custom tsec key derivation firmware.

NOTE: This does not use any TSEC exploits whatsoever; it is a well-signed
TSEC binary assembled with envyas and signed with the real cauth key.

For more details, contact SciresM#0524.

* fusee: only set SBK if it's readable
2021-08-20 13:13:29 -07:00
SciresM aee89db748
mtc: implement memory training for mariko (#1593)
* mtc: implement memory training for mariko

* mtc: fix apply_periodic_compensation_trimmer, train_wr_vref results

* mtc: fix clktree calculations
2021-08-17 17:27:12 -07:00
Michael Scire f863164648 ams: basic support for 12.1.0 2021-07-06 07:13:56 -07:00
Michael Scire e086022b77 build: use DWARFv4 explicitly for IDA compatibility with debug elfs 2021-06-25 23:48:41 -07:00
Michael Scire 3dbc79dd5c ams: bump version to 0.19.4 2021-06-08 08:09:05 -07:00
Michael Scire bb4c7a390b ams: update for 12.0.2 2021-05-12 09:08:47 -07:00
Michael Scire 2c332d1cf8 ams: bump api version to 0.19.2 2021-04-30 05:00:25 -07:00
Michael Scire 36f6bdc3a0 fusee/sept: update to suppress spurious gcc warnings 2021-04-29 01:13:48 -07:00
Michael Scire dc6a0d7562 ams: add target firmware 12.0.0, fusee recognition 2021-04-11 03:42:16 -07:00
Michael Scire 279bb863df fusee: add support for 12.0.0 kernel 2021-04-11 03:42:16 -07:00
SciresM a6729171d3
set.mitm: fake compatibility for usb!usb30_force_enabled on 9.0.0+ (#1391)
* set.mitm: fake compatibility for usb!usb30_force_enabled on 9.0.0+

* set.mitm: add value meaning comment for usb!usb30_force_enabled

* loader: pretend to be polite about patch ordering
2021-03-01 14:18:27 -08:00
Michael Scire 99e4920d9d fusee: pass along lcd vendor to exosphere (needed for mariko fatal) 2021-01-05 11:05:33 -08:00
Michael Scire 2b48743265 fusee: perform only pmic reboots on mariko 2021-01-05 11:05:33 -08:00
Michael Scire 8b1835368a sept: fixes to work with new hwinit/etc 2021-01-05 11:05:33 -08:00
Michael Scire 07202f7c88 fusee: fix overcorrection for boot reason address 2021-01-05 11:05:33 -08:00
Michael Scire 97157577ab fusee: sdram scratch fixes 2021-01-05 11:05:33 -08:00
Michael Scire 6d65aa7e72 fusee: implement mariko warmboot firmware cache 2021-01-05 11:05:33 -08:00
Michael Scire 601c4516bf fusee/exo: fixes to allow booting (sleep broken until warmboot cache implemented) 2021-01-05 11:05:33 -08:00
Michael Scire 192ea926f6 fusee: commit pre-rendered splash binary 2021-01-05 11:05:33 -08:00
hexkyz f1d320b6b6 fusee: fix regulator configuration 2021-01-05 11:05:33 -08:00
Michael Scire 6b3a3ecb44 fusee: execute more ccplex boot code out of iram 2021-01-05 11:05:33 -08:00
Michael Scire dcfd01cf59 fusee: use pre-rendered splash screen instead of bmp 2021-01-05 11:05:33 -08:00
Michael Scire 4b09b5d5ce fusee: minor hwinit fixes 2021-01-05 11:05:33 -08:00
hexkyz f6833a794a fusee: fix cluster bringup for mariko 2021-01-05 11:05:33 -08:00
Michael Scire b7895ff2a7 fusee: fix support for mariko key derivation/package1 parsing 2021-01-05 11:05:33 -08:00
Michael Scire f7898f3519 fusee: add special log level for sd card debug 2021-01-05 11:05:33 -08:00
Michael Scire 96f3c0c387 fusee/sept: build fixes 2021-01-05 11:05:33 -08:00
hexkyz f4e763ce40 fusee: fix mariko master key derivation 2021-01-05 11:05:33 -08:00
hexkyz a05e87f78a fusee: cleanup code and start fleshing out mariko keygen 2021-01-05 11:05:33 -08:00
hexkyz 4809ced64d fusee: start fleshing out nxboot for Mariko 2021-01-05 11:05:33 -08:00
hexkyz 222300d03c fusee: accurately match Mariko pk1ldr 2021-01-05 11:05:33 -08:00
hexkyz b918d4b2aa fusee: 11.0.0 support 2021-01-05 11:05:33 -08:00
hexkyz 53c684a17a fusee/sept: delegate SoC selection to individual components and keep common code SoC-agnostic 2021-01-05 11:05:33 -08:00
hexkyz 4ffdf8d525 fusee: artificially raise main length to avoid elf compilation issues (final size will be much smaller) 2021-01-05 11:05:33 -08:00
hexkyz 7480b6bb80 fusee: move dsi register write to the proper configuration list 2021-01-05 11:05:33 -08:00
hexkyz 3e8688e19e fusee: update display code for mariko 2021-01-05 11:05:33 -08:00
Michael Scire 3b05315616 fusee: fixup extents for chainloader/stack 2021-01-05 11:05:33 -08:00
Michael Scire 2b81ed7315 fusee-primary: fix reboot-to-self for decompressed code 2021-01-05 11:05:33 -08:00
Michael Scire ff7e52a1c1 fusee/sept: fix fuse driver to not infinitely recurse on get_soc_type() 2021-01-05 11:05:33 -08:00
Michael Scire e391f593de fusee: fixup common for primary 2021-01-05 11:05:33 -08:00
Michael Scire f600dff961 fusee: uncompress fusee-primary, which is now getting pretty big. 2021-01-05 11:05:33 -08:00
hexkyz 8104beb2e0 fusee: implement mariko sdram params saving 2021-01-05 11:05:33 -08:00
hexkyz 4cd56f8423 fusee: mariko sdram initialization 2021-01-05 11:05:33 -08:00
hexkyz 198bdacaf4 fusee: initial mariko hwinit 2021-01-05 11:05:33 -08:00
hexkyz 35ab0939fa fusee: support mariko in sdmmc 2021-01-05 11:05:33 -08:00
hexkyz 4958d01153 fusee/sept: support mariko fuses 2021-01-05 11:05:33 -08:00
hexkyz b625fd324e fusee/sept: update fuse driver code 2021-01-05 11:05:33 -08:00
hexkyz 5e342d8c52 fusee: fix sdmmc speed modes 2021-01-05 11:05:33 -08:00
hexkyz d233b482fb fusee: update FatFs to R0.14 2021-01-05 11:05:33 -08:00
hexkyz 3e2f776184 fusee/sept: isolate common code for mariko preparation (to be revised during C++ rewrite) 2021-01-05 11:05:33 -08:00
Michael Scire f2a6a4a6e6 fusee: fix sept enc header dependency 2020-12-29 13:07:48 -08:00
Michael Scire d7b14f48d2 fusee: fix no-BCT.ini for fusee-secondary 2020-12-19 12:08:05 -08:00
Michael Scire 0bf2ade76f ams: use default bct0 by default 2020-12-18 13:27:52 -08:00
Michael Scire 63e3c02688 fusee/exo: support dynamic control of invert flag for logging 2020-12-11 03:18:21 -08:00
Michael Scire 734122f20a fusee: update for 11.0.1 2020-12-11 03:06:17 -08:00
Michael Scire 58c3c8c19a fusee: take three tries for a basic assignment 2020-12-07 19:34:13 -08:00
Michael Scire f62330c73b fusee: update for exo flags arr-type 2020-12-07 19:33:29 -08:00
Michael Scire 2de85c633a exo/meso/fusee: support dynamic control of log port/baud rate 2020-12-07 19:25:06 -08:00
Michael Scire 4f1a4e7499 kernel patches: fuck armconverter.com 2020-12-02 06:43:37 -08:00
Michael Scire 18099e19b1 fusee: recognize/support 11.x kernel 2020-12-02 06:43:37 -08:00
Michael Scire a0a45853dd nogc: update for new lafw 2020-12-02 06:43:37 -08:00
Michael Scire fe9a4cd2fc fusee: whoops 2020-12-02 06:43:37 -08:00
Michael Scire 88a66c89e2 fusee: fix 11.x pk21 support 2020-12-02 06:43:37 -08:00
Michael Scire 93128b6b17 fusee-secondary: update for 11.0.0 erista 2020-12-02 06:43:37 -08:00
Lusamine 77d7e6b121
Correct some occurrences of "occured" (#1213)
* Correct all occurrences of "occured"

* Correct some occurrences of "occured"
2020-11-25 06:29:09 -08:00
Michael Scire 078a42f80c fusee: integrate mariko fatal. 2020-11-22 10:28:23 -08:00
Michael Scire f24171dc41 ams: build experimental zip in addition to standard one 2020-10-15 09:41:01 -07:00
Michael Scire ff310a0647 fusee: try to alleviate a little suffering 2020-09-22 13:54:23 -07:00
Michael Scire 1930880270 fusee: change ncm from opt-in to opt-out 2020-09-17 21:04:43 -07:00
Michael Scire 4acdc899f5 kern: generate fatal error on panic 2020-09-17 08:26:08 -07:00
Michael Scire 47d0d5c6ab ams: support 10.2.0 (bump vers to 0.14.3) 2020-09-14 18:13:18 -07:00
Michael Scire cd62d83586 fusee: fix sleep/wake on 6.x 2020-09-07 10:43:35 -07:00
Michael Scire bb1cdd8c87 fusee: fixes for sd meso on lower firmwares 2020-09-07 10:43:35 -07:00
Michael Scire ff9b9fc5ff fusee: change meso loading to parse INI from Nintendo's kernel 2020-09-07 10:43:35 -07:00
Michael Scire b65707efd9 ams: add support for 10.1.1 2020-08-01 15:29:59 -07:00
hexkyz 98ca5e2927 fusee: re-design and fix emummc handling 2020-08-01 17:20:56 +01:00
Michael Scire 1c5b58ce66 fusee: add support for booting mesosphere 2020-07-31 14:50:52 -07:00
Michael Scire 9beb05da50 kern: retrieve target firmware from exosphere instead of hardcoding 2020-07-31 14:50:52 -07:00
Hthh 65b42497d7 Fix building with devkitarm-rules 1.1.0 2020-07-26 22:46:01 -07:00
misson20000 9382ff0939 Add stack overflow detection to fatal error code 2020-07-15 20:45:47 -07:00
hexkyz f71ad5ac2c fusee/sept: ensure proper array initialization in exception handling 2020-07-14 18:58:19 +01:00
hexkyz 72afe34cf9 fusee/sept: fix error printing 2020-07-14 18:12:31 +01:00
Michael Scire c01753370a ams: update to know about 10.1.0 2020-07-13 17:34:48 -07:00
Michael Scire 1473adf5c4 fusee/exo: correct device key management for newer consoles (closes #1053) 2020-06-28 05:39:25 -07:00
hexkyz fdc7ef62f7
fusee: handle case where saving a fatal report fails (thanks @HookedBehemoth) 2020-06-26 18:36:30 +01:00
Michael Scire 37d13f92a8 ams: bump to 0.13.0, add 10.0.4 recognition 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 47512cc8a2 fusee: always use the exo2 (modern tz) key layout 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 c75e61a40b fusee: switch to use exo2 instead of exo1 2020-06-14 22:07:45 -07:00
Michael Scire 1fb9407d5d fusee/sept: changes for exo2 (note: not final) 2020-06-14 22:07:45 -07:00
Michael Scire 80e49696ea ams: update for 10.0.3 2020-05-25 19:33:21 -07:00
Michael Scire 8052dd6249 fusee: fix boot support on < 7.x 2020-05-16 16:00:45 -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
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