Commit Graph
100 Commits
Author SHA1 Message Date
CTCaer e2f6e925c4 nyx: info: show total size of fat partition 2022-06-19 12:39:02 +03:00
CTCaer 258a343e21 bdk: usb: support deconfiguration of endpoints
TODO: Signal that to userspace and manage it.
2022-06-14 18:48:21 +03:00
CTCaer f6c9e636d1 bdk: usb: improve USB2/XUSB power down
TODO: add more power downs on XUSB stack
2022-06-14 18:46:46 +03:00
CTCaer 605f270f98 bdk: usb: fix a race condition in USB2 stack
When RAM is slow (no training), it's possible to have the stack failing to negotiate configuration successfully.

The race condition is caused by not flushing cache before sending a configuration packet reply.
Although, cache is write-through, this needs to happen.
2022-06-14 18:41:33 +03:00
CTCaer 3fa01a1975 hekate: fix a bug in low battery monitor
Do not try to deinit display if it's not enabled.

Can happen if LBM disables display to reserve power while charging and user presses both VOL buttons to exit the mode.
2022-06-04 22:03:47 +03:00
CTCaer 0e526bf9e8 nyx: tools: fix hybrid mbr changes
- MBR is now checked if it has GPT partition, in order to avoid revival of a dead but valid GPT
- MBR secret attributes can now be cleared even if there's no GPT
2022-05-27 04:44:42 +03:00
CTCaer c77c741c07 bdk: sdmmc: correct lower speed mode checks
Both bus widths of 8 and 4 should be checked for HS200 support and host type support, instead of giving 8-bit bus width a free pass.
2022-05-26 03:04:27 +03:00
CTCaer 358896eb7d nyx: tools: inform user on erros in archive bit fixer 2022-05-21 14:24:43 +03:00
CTCaer 10205b17dd hekate: remove sd mount/unmout management for payload launch
Callers manage it anyway.
Fixes a case where missing the payload would result to Nyx not relaunching because sd was unmount.
2022-05-21 13:10:12 +03:00
CTCaer 75b7d91abf hekate: always init sublist on section creation
Even if there are no edge cases here
2022-05-21 13:08:46 +03:00
CTCaer 369df25cd3 nyx: fatfs: add failsafes for wrong mkfs usage 2022-05-19 15:17:54 +03:00
CTCaer af22085172 nyx: move emuMMC backup folder to {emmc_sn}/emummc 2022-05-19 15:15:36 +03:00
CTCaer 38010ce65e nyx: utilize ini free and fix various memleaks
With the new changes the heap and heap node usage drops 95% on boot. Subsequent accesses to Launch/More config keep the counter the same.
2022-05-19 15:14:05 +03:00
CTCaer 8428ce1a2e hekate/nyx: gfx: changes to putn 2022-05-19 15:06:37 +03:00
CTCaer bf00c79edb bdk: ini: add ini free
Additionally, fix a bug where a list could not be initialized if section type is comment or caption.
2022-05-19 15:03:00 +03:00
CTCaer 429074293a bdk: sprintf: no support for lower case hex and base that is not 10/16 2022-05-19 15:01:10 +03:00
CTCaer 2c768db542 bdk: heap: add nodes info 2022-05-19 14:53:02 +03:00
CTCaer 889317da58 bdk: sdmmc: add missing sd block size define 2022-05-16 13:34:36 +03:00
CTCaer e09710e3eb bdk: fatfs: mkfs alignment changes
- Default data alignment is now 1MB **when it's not set**
- Default volume alignment is now based on data alignment and not hardcoded to 16MB.
- Change max allowed alignment to 64MB.

The above changes allow selecting alignments for volume and data between 1MB and 64MB.
(From the previous 1 to 16MB for data and 16MB for volume).
2022-05-16 13:33:38 +03:00
CTCaer fb45804adf nyx: refactor various functions and add comments
Emphasis on partition manager deduplication and remove of some magic numbers.
2022-05-16 13:28:38 +03:00
CTCaer 796207a41b nyx: do not allow joycon pairing info dump on Hoag 2022-05-16 13:12:45 +03:00
CTCaer 1649d446cd nyx: options: set min year for clock offset to 2022 2022-05-16 13:12:11 +03:00
CTCaer 7459214fed nyx: info: add mov r1 print for patched t210 2022-05-16 13:06:40 +03:00
CTCaer e9587a325c bdk: fuse: add ipatch support for T210B01 2022-05-16 13:05:12 +03:00
CTCaer 331f1926d1 bdk: display: remove unneeded pinmuxing on Aula 2022-05-16 10:16:24 +03:00
CTCaer 87fe374b3b bdk: uart: use 2 STOP bits based on baudrate 2022-05-14 12:25:02 +03:00
CTCaer b56e788d12 bdk: pinmux: more proper uart pinmuxing 2022-05-14 12:20:57 +03:00
CTCaer abdf621ad5 nyx: simplify uart debug port path 2022-05-13 03:57:09 +03:00
CTCaer 9e613a7600 bdk: hwinit: simplify uart debug port paths 2022-05-13 03:56:59 +03:00
CTCaer c2ff5dbd1c nyx: add no box and 5 entries per line support
Icons that have `_nobox.bmp` in their name will make the grey background disappear.

Additionally a new option was added in Nyx Options called `Extended Boot Entries` that allows user to have a total of 10 entries showing up in Launch and More configs menus.
2022-05-13 03:49:32 +03:00
CTCaer b9cdf5d697 nyx: fix s_printf bugs pointed by format checker 2022-05-12 16:43:18 +03:00
CTCaer b6384d5da5 bdk: utils: Set format attribute for s_printf
This allows the custom sprintf to be recognized as printf by gcc and effectively doing format checking.

NOTE: 64bit formatting is not supported for now, even if gcc asks to be set.
2022-05-12 16:40:34 +03:00
CTCaer 7df76bff4a nyx: input: add Sio support (for Hoag) 2022-05-09 06:13:10 +03:00
CTCaer 54b054c940 bdk: usb: add Sio support to hid gadget 2022-05-09 06:10:49 +03:00
CTCaer f31170bb51 bdk: joycon: add Sio support (for Hoag) 2022-05-09 06:09:06 +03:00
CTCaer f452d916c9 bdk: clock: add ext peripheral clock control 2022-05-09 06:08:39 +03:00
CTCaer 47d06d0e8a bdk: joycon: use flow control to improve packet integrity 2022-05-09 05:55:06 +03:00
CTCaer 2aed1b3b83 bdk: joycon: add 3 mbaud support and full init
Additionally use states for proper init
2022-05-09 05:48:10 +03:00
CTCaer 12aac3a0fc bdk: clock: add 3 megabaud support for UART 2022-05-09 05:47:08 +03:00
CTCaer 833a115eb2 bdk: joycon: improve and streamline jc detect 2022-05-09 05:39:45 +03:00
CTCaer 9f30c51bd1 bdk: joycon: refactor driver 2022-05-09 05:32:32 +03:00
CTCaer 62d68b33c3 nyx: tools: use actual gpt entries num in part manager 2022-05-08 05:59:57 +03:00
CTCaer c51877d588 nyx: tools: add mbr hidden attr fixer in hybrid mbr fixer 2022-05-08 05:59:32 +03:00
CTCaer 471f3c50ea nyx: tools: do not allow part manager backup/restore to hang on corruption 2022-05-08 05:57:59 +03:00
CTCaer 6d66bfc168 nyx: tools: do not allow arc bit fixer to hang on corruption
Check if path exceeds 1024 characters.
2022-05-08 05:56:44 +03:00
CTCaer 9163151dd0 nyx: info: add battery lot and another old panel rev 2022-05-08 05:55:46 +03:00
CTCaer 334d89973f hekate/nyx: adhere to uart driver changes 2022-05-08 05:46:23 +03:00
CTCaer f7bf4af3ec bdk: uart: refactor and add new functionality
- Allow to set CTS/RTS mode (only specific combos supported for now)
- Support the above modes in receiving
- Set 2 stop bits to decreases errors on high baudrates
2022-05-08 05:45:16 +03:00
CTCaer ae394d9f37 nyx: remove negative decimal external handling 2022-05-08 05:32:21 +03:00
CTCaer c2869703af hekate: gfx: add negative decimals printing
And remove external handling
2022-05-08 05:29:30 +03:00
CTCaer ebe7b5a603 bdk: utils: add approx. square root calc for u64 2022-05-08 05:27:05 +03:00
CTCaer ebf0db77ee bdk: sprintf: add negative number support for %d
This will now force a number as negative if bit31 is set and properly create the relevant string.

That means that external handling in order to show sign is now not needed.
2022-05-08 05:26:01 +03:00
CTCaer 81730c5f7e bdk: pinmux/pmc: add more defines 2022-05-08 05:22:41 +03:00
CTCaer 76d1b4e221 bdk: sdmmc: refactor defines
And fix a bug with tuning trim values
2022-05-08 05:21:29 +03:00
CTCaer 4a1cb1f2ea bdk: fan: add Hoag and Aula SKUs support
Now that what was hanging Aula is found (using PWM with its clock disabled), add full support for fan control on both SKUs.
2022-05-08 05:07:38 +03:00
CTCaer 58a2094448 bdk: reg 5v: add support for Hoag and Aula SKUs
Add support back and make it more proper.
Also add fan regulator support also.
2022-05-08 05:05:39 +03:00
CTCaer 1b7b7ab7f5 nyx: info: add new hynix chip model info 2022-05-08 05:00:46 +03:00
CTCaer 37de367fef bdk: sdram: deduplicate dram configs
Additionally add info about new hynix chip and correct ids 3 and 5 on T210B01 based Switch.
2022-05-08 04:58:36 +03:00
CTCaer 450d95e573 bdk: di: correct samsung backlight set
Now that vblank writes are fixed we can return to proper backlight set.

Additionally, account for the pwm smoothing when backlight is turned off. That's to avoid visible green tint glitches when display is also turned off.
2022-05-08 04:53:13 +03:00
CTCaer 969a49edba bdk: di: reselect winA when done with winD config 2022-05-08 04:49:28 +03:00
CTCaer 9908eb8bb3 bdk: di: samsung panel: better init
- Set display color profile to natural (it's still vivid but not overblown.)
- Enable PWM slope and set it to 6 frames in order to have smooth backlight transitions
2022-05-08 04:48:55 +03:00
CTCaer 56dcbb2b23 bdk: di: cleanup configs
Nintendo or Nvidia copied pasted the dynamic display code into static arrays in order to do the static hw init in bootloader and boot sysmodule.

Ofc that does double the work that is not needed at all, making it suboptimal.

Clean up every single config based on how tegra display interface hw works in order to save up space and make the process a bit faster.
2022-05-08 04:45:03 +03:00
CTCaer b9f40fed7a bdk: di: move plld setup code out of display obj 2022-05-08 04:41:05 +03:00
CTCaer 6ae4904c8f bdk: di: make dsi normal/vblank writes more robust 2022-05-08 04:36:20 +03:00
CTCaer dd2bb0f555 bdk: di: refractor configs 2022-05-08 04:34:44 +03:00
CTCaer 0b8cdaf0ea bdk: di: split normal and vblank dsi reads
And also make vblank reads more robust
2022-05-08 04:23:31 +03:00
CTCaer 8f540b2543 Bump hekate to v5.7.2 and Nyx to v1.2.2 2022-03-23 19:34:59 +02:00
CTCaer f687c4f6da hos: add support for HOS 14.0.0 2022-03-23 02:21:59 +02:00
CTCaer 5c4e895c35 nyx: update dram/touch info for HOS 14.0.0 2022-03-23 02:21:21 +02:00
CTCaer 83c95d8a3b bdk: sdram: update 20/21/22 ids for new dram
Dram chip is Samsung 4GB built on 1z-nm that allows for 40% lower power usage.
2022-03-23 02:20:55 +02:00
CTCaer ff214f25c1 bdk: update l4t hekatf prep functions 2022-03-23 00:58:20 +02:00
CTCaer f818d094c5 Add .exe version of the tools in .gitignore 2022-03-23 00:56:32 +02:00
CTCaer 69c312daac nyx: clear B button context on option actions
Fixes an issue that was causing an NULL pointer dereference when a certain access path was followed
2022-03-23 00:55:18 +02:00
CTCaer b7e59dfc28 nyx: print sd oemid in hex also 2022-03-23 00:53:56 +02:00
CTCaer c04d423f4b nyx: add option to use right joycon as mouse control
`jcforceright=1` in nyx.ini enables that feature.
Useful for users with broken touch screen and broken left joycon rail.
2022-03-23 00:49:47 +02:00
CTCaer af1ece903b nyx: Do not reserve alignment space if no extra partitions 2022-03-23 00:24:51 +02:00
CTCaer 547c90a0a9 hekate: remove ipatches info from main hekate 2022-03-23 00:24:13 +02:00
CTCaer 0fef90dc4c bdk: sd: return proper error for sd file save 2022-02-15 00:36:23 +02:00
CTCaer a76ad9838e nyx: cosmetics 2022-02-15 00:29:23 +02:00
CTCaer 499a9cf5f3 hekate: disable heap defrag 2022-02-15 00:27:17 +02:00
CTCaer cfd6567f5d pkg1: move warmboot rsa patching into pkg1
And create a function for hekatf to be used
2022-02-15 00:26:07 +02:00
CTCaer ee465b98af bdk: sdmmc correct exit on eMMC < 4.0 modules 2022-02-15 00:24:53 +02:00
CTCaer 9aa55c2d76 hekate/nyx: correct type on heap_init 2022-02-15 00:23:23 +02: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 ad4014f295 hekate: sd info: always reset mode after done 2022-02-15 00:18:24 +02:00
CTCaer ce8d1eca91 bdk: remove sd mounts from ianos and check if sd is mounted in sd ops 2022-02-15 00:17:53 +02:00
CTCaer 73d38e1183 hos: loop through counter instead of explicit sets 2022-02-15 00:16:42 +02:00
CTCaer 3f65a30b2e bdk: more atf prep 2022-02-15 00:14:53 +02:00
CTCaer 7c74391754 bdk: bpmp: do not use full maintenance
Instead use proper clean/invalidation of dcache.
2022-02-15 00:14:14 +02:00
CTCaer 70ee61f0da More 2022 copyright updates 2022-01-29 01:43:35 +02:00
CTCaer b0b538f8f2 build: force dwarf v4 2022-01-29 01:43:16 +02:00
CTCaer 52bb6a96e5 bdk: nx emmc bis: fix out of cluster bounds accesses 2022-01-29 01:40:38 +02:00
CTCaer 6666dd4b46 bdk: fatfs: better PrFILE2 SAFE record creation 2022-01-29 01:40:05 +02:00
CTCaer 4a13a1d190 nyx: fix aula full emummc creation (for real this time) 2022-01-29 01:39:01 +02:00
CTCaer 2b7217242d nyx: align down resized emu sectors to cluster size 2022-01-29 01:37:57 +02:00
CTCaer ce16a08694 main: check pstore log size if 0 2022-01-29 01:37:02 +02:00
CTCaer 0ad42762e7 main: rename logo buffer 2022-01-29 01:36:35 +02:00
CTCaer 5f337bffd6 config: do not unmount on exit
Fixes Nyx not found for new users without hekate_ipl.ini
2022-01-29 01:35:09 +02:00
CTCaer 3fdb72ce37 bdk: i2c: correct order of spinlock wait 2022-01-29 01:34:01 +02:00
CTCaer 9a80f8b4b5 bdk: minerva: fix fsp op/wr check for l4t 2022-01-29 01:31:28 +02:00