Commit Graph

1993 Commits

Author SHA1 Message Date
CTCaer
ef2247a3f0 Bump hekate to v6.5.0 and Nyx to v1.9.0 2026-03-27 10:01:21 +01:00
CTCaer
0f4636546c hos: add 21.2.0 support 2026-03-27 10:01:20 +01:00
CTCaer
22dd1a42c7 hekate/nyx: remove coreboot support
Everything external is finally updated and beyond parity with old things that needed it.
2026-03-27 10:01:20 +01:00
CTCaer
4daa02fe85 bdk: hwinit: remove coreboot support
Everything external is finally updated and beyond parity with old things that needed it.
2026-03-27 10:00:26 +01:00
CTCaer
8c8ca53ab7 bdk: joycon: more refactoring 2026-03-27 10:00:26 +01:00
CTCaer
e6a3c80f4d bdk: joycon: generalize _jc_packet_add_uart_hdr
Correct its header construction in case it's used in the future.
Plus some unhardcoding of lengths.
2026-03-27 10:00:26 +01:00
CTCaer
2a0617dbf6 bdk: joycon: increase connection timeout to 1.8s 2026-03-27 10:00:26 +01:00
CTCaer
690beb0de7 bdk: joycon: refactor some fields
And add better comments.
2026-03-27 10:00:26 +01:00
CTCaer
6bcc2e082f bdk: joycon: use packed structs and bitfields 2026-03-27 10:00:26 +01:00
CTCaer
c605e924ed bdk: joycon: correct crc8 offsets
By luck the current offset and length of the calculation always worked.
Correct it though because the function might be used fully in the future.
2026-03-27 10:00:26 +01:00
CTCaer
d252dd7e52 bdk: joycon: maintain consistent naming styles 2026-03-27 10:00:26 +01:00
CTCaer
2d3b6e1a39 nyx: always show console stats
When main Joy-Con or all are disconnected, always show Joy-Con debug info.
Additionally, always allow opening/closing console window with the secondary one,
in the same conditions.
2026-03-27 10:00:26 +01:00
CTCaer
b414e6b35f nyx: make sure ram is set to 1600 MHz
No matter how Nyx was launched.
2026-03-27 10:00:26 +01:00
CTCaer
1651316f72 nyx: options: make sure var has a value in all -O# 2026-03-27 10:00:26 +01:00
CTCaer
c200ef3f4a bdk: joycon: optimize rumble enable 2026-03-27 10:00:26 +01:00
CTCaer
5fe649d7dd bdk: display: add OLED status pin
Code is commented out for now until it gets used.
Status is set when RST is enabled.
2026-03-27 10:00:26 +01:00
CTCaer
d5a1bdf9bf nyx: update rng calls based on new bdk 2026-03-27 10:00:26 +01:00
CTCaer
8e2a776e73 bdk: se: support multiple/partial blocks for RNG 2026-03-27 09:59:42 +01:00
CTCaer
57e6875b42 hekate/nyx: update ctx keys calls based on new bdk 2026-03-27 09:59:42 +01:00
CTCaer
d0dcfd0008 bdk: se: use proper naming for ctx keys 2026-03-27 09:59:42 +01:00
CTCaer
0cd9a5c80e hekate/nyx: update sha calls based on new bdk 2026-03-27 09:59:42 +01:00
CTCaer
a258c726dc bdk: se: refactor and optimize SHA256
- Simplify config and fix partial hashing
- Add partial function calls
- All partial state is handled internally
- All functions now use the classic naming convention.
2026-03-27 09:59:42 +01:00
CTCaer
89795a4c96 bdk: se: use classic naming convention for XTS 2026-03-27 09:59:42 +01:00
CTCaer
5a40f26010 bdk: se: add AES OFB encryption/decryption support 2026-03-27 09:59:42 +01:00
CTCaer
ab794bc61d hekate/nyx: update aes calls based on new bdk 2026-03-27 09:59:42 +01:00
CTCaer
6c7370bec3 bdk: se: remove dst/src size argument requirement
All operations expect the destination buffer to fit the selected size.
And for simplicity STATE_WAIT is not supported.

Additionally, remove single block ECB and just use the normal function.
2026-03-27 09:59:42 +01:00
CTCaer
ba71fb0dba bdk: se: optimize and update aes cmac hashing
`se_aes_cmac_128` was also renamed to `se_aes_hash_cmac`.
By following the convention of 128bit functions not having size in their name.
2026-03-27 09:59:42 +01:00
CTCaer
d1066da9fa bdk: se: handle original and updated IV in one go
IV set now requires a size where the second block is updated IV
IV clear now clears both.
2026-03-27 09:59:42 +01:00
CTCaer
542fba6fbd bdk: se: support partial blocks for all aes modes 2026-03-27 09:59:42 +01:00
CTCaer
1295152f20 bdk: se: do a trivial refactor pass 2026-03-27 09:59:42 +01:00
CTCaer
9ebd03802f bdk: heap: use ultra fast defragmentation
The defragmentation runs on every free and it only merges subsequent nodes.
So there's no point of looping all nodes.
So, just check if previous and next nodes are mergeable.
This makes free performant and achieves the same exact functionality.
2026-03-27 09:59:42 +01:00
CTCaer
07229f1002 Restructure and refactor makefiles
- Allow rebuilds without rebuilding everything
 By detecting changes everywhere that matters (flags, objects and headers).
- Add progress bar
- Fully clean everything when clean goal is used
2026-03-27 09:59:42 +01:00
CTCaer
d391ef3b0f bdk: max17050: simplify calculations
And make current readings a tiny bit (±0.16%) more accurate.
2026-03-27 09:58:48 +01:00
CTCaer
18a3dd6374 nyx: add joycon charging debug info 2026-03-27 09:58:48 +01:00
CTCaer
8a25c8294f minerva: update rate_from if clock the same 2026-03-27 09:58:48 +01:00
CTCaer
9ef684037b bdk: max17050: remove unused cached batt voltage 2026-03-27 09:58:48 +01:00
CTCaer
19279fa57d bdk: joycon: improve charger config
Utilize charger config set command which allows for supplement mode.
Additionally, remove ping config when SIO and parse buttons/sticks on subcmd reports.
2026-03-27 09:58:48 +01:00
CTCaer
0edd5295d6 fatfs: set default date to 1/1/2026 2026-03-27 09:58:48 +01:00
CTCaer
992245f044 l4t: make mselect config common for t210/t210b01
It's already handled in soc powerdown exit in ATF but it doesn't hurt to have it generally.
2026-03-27 09:57:59 +01:00
CTCaer
2004b38f41 bdk: ccplex: do not disable mselect on cpu pwrgate 2026-03-27 09:57:59 +01:00
CTCaer
64a4f9db16 hekate/nyx: remove last calloc references 2026-03-27 09:57:59 +01:00
CTCaer
8220466523 bdk: heap: add more safe guards
- Use magic for used regions
- Deduplicate calloc
Enable a print/abort in _heap_free() for debugging.
2026-03-27 09:57:59 +01:00
CTCaer
d379a17444 bdk: display: improve and deduplicate more
- Add delay after a DSI soft reset
- Remove more duplicated configs
- Improve code to save code size
- Improve comments
- Do not allow display_backlight to be used with OLED
2026-03-27 09:57:59 +01:00
CTCaer
db4c6a0b69 bdk: util: use volatile base for reg_write_array 2026-03-27 09:57:59 +01:00
CTCaer
8b86bf3808 bdk: display: use a scratch reg for backlight
Spare registers normally have hidden hw config usage, so avoid them just in case.
2026-03-27 09:57:59 +01:00
CTCaer
46fa18be89 bdk: display: simplify macros
Expand register index in parent macro and remove _DI/_DSIREG macros.
2026-03-27 09:57:59 +01:00
CTCaer
c17881f2c3 bdk: display: use spare reg to store dcs bl duty
And also remove backlight pwm restoring from coreboot hw deinit path.
2026-03-27 09:57:59 +01:00
CTCaer
c907d143b7 bdk: fatfs: improve fat read/write
- Convert access from min cluster size to block size
  Also allow read/writes to less than cluster size
- In case of intercluster access throw an error
- Do not error on zero size

On reads buffer still needs to be block (instead of cluster) aligned.
On writes, buffer still needs to be readable out of bounds.
2026-03-27 09:57:59 +01:00
CTCaer
a8db6470ea nyx: info: update 20nm wafer bounds 2026-03-27 09:57:59 +01:00
CTCaer
e50a7c8bfd nyx: info: unlocked T210B01 fuses dumping support 2026-03-27 09:57:59 +01:00