Commit Graph
9 Commits
Author SHA1 Message Date
CTCaer 378d38b850 bdk: add missing header guards 2026-03-27 19:38:45 +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 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 d687b53249 bdk: heap: add zalloc and utilize it 2024-03-27 09:00:53 +02:00
CTCaer 70523e404f bdk: whitespace refactor 2022-07-11 22:10:11 +03:00
CTCaer 2c768db542 bdk: heap: add nodes info 2022-05-19 14:53:02 +03:00
CTCaer 83b895a062 bdk: heap: improvements
Correct types everywhere.
Add BDK_MALLOC_NO_DEFRAG that disables defragmentation on the heap.
2022-02-15 00:22:38 +02:00
CTCaer 6e256d29c7 Utilize hekate's BDK for hekate main and Nyx 2020-06-14 16:45:45 +03:00
CTCaer 185526d134 Introducing Bootloader Development Kit (BDK)
BDK will allow developers to use the full collection of drivers,
with limited editing, if any, for making payloads for Nintendo Switch.

Using a single source for everything will also help decoupling
Switch specific code and easily port it to other Tegra X1/X1+ platforms.
And maybe even to lower targets.

Everything is now centrilized into bdk folder.
Every module or project can utilize it by simply including it.

This is just the start and it will continue to improve.
2020-06-14 15:25:21 +03:00