CTCaer
e4c0756ded
nyx: Add DRAM names info + Mariko new ram codes
2020-06-26 22:41:34 +03:00
CTCaer
1c9efa327c
Correct RCM patched status for Mariko
...
This also disallows AutoRCM for Mariko.
2020-06-26 22:40:06 +03:00
CTCaer
cabaa6cfb8
Utilize BIT macro everywhere
2020-11-26 01:41:45 +02:00
CTCaer
a84f1e5ee5
usb: Split descriptors to object and header
2020-11-15 14:10:00 +02:00
CTCaer
e45ffab5d8
Remove stray hekate cfg set. It's handled by default.
2020-11-15 14:00:35 +02:00
CTCaer
55568b037f
nyx: Properly calculate Ranks and Channels in hw info
2020-11-15 13:50:19 +02:00
CTCaer
b5df428e43
nyx: Create bootloader folder on screenshots if missing
2020-11-15 13:47:47 +02:00
CTCaer
67a03bbd85
eks: Use LOT0 for identification
2020-11-15 13:43:22 +02:00
CTCaer
32955380c7
nyx: Fix icons for backup/restore swap
2020-11-15 13:40:53 +02:00
CTCaer
485edb4883
emc: Rename Device to Rank
2020-11-15 13:23:37 +02:00
CTCaer
8f222fd0bd
main: Fix update.bin creation on first boot
2020-10-27 21:27:51 +02:00
CTCaer
1f5b371608
Refactor some names
...
Additionally:
- Do not retry to init sd if all modes failed in Nyx.
- Do not try to read/write if sdmmc controller and card are not initialized.
2020-10-23 06:32:24 +03:00
CTCaer
ce156ab4e7
hos: Automate some eks and bis checks
2020-10-20 11:53:28 +03:00
CTCaer
94235dd005
bm92t30: Add proper info
...
The driver will now show more charger supported profiles and will also show selected profile.
2020-10-20 10:42:57 +03:00
CTCaer
27b1f0e843
Various small fixes
2020-10-20 10:32:32 +03:00
CTCaer
dae7be8ec4
nyx: Allow disabling of Joycon
...
Setting `jcdisable=1` in nyx.ini disables the usage of Joycon completely.
This also disables the BT pairing data dumping tool.
2020-10-20 10:21:48 +03:00
CTCaer
2f5b52223c
config: Add bootloader protection
...
`bootprotect=1` enables protection of the `bootloader` folder inside HOS.
This disallows any reading/writing of the folder and its contents inside HOS, preventing any corruption of it.
This of course has the side-effect of homebrew that depend on it (e.g. hekate Toolbox) to not work fully.
2020-10-20 10:16:12 +03:00
CTCaer
85d43147ee
Bump hekate to v5.3.3 and Nyx to v0.9.4
2020-09-15 20:24:56 +03:00
CTCaer
e3e5dab0fc
nyx: Add USB Charger info
2020-09-15 20:14:56 +03:00
CTCaer
e7900b11b4
nyx: Allow L4T last part to be unaligned
2020-09-02 13:11:03 +03:00
CTCaer
461d14c39a
di: Correct panel id for AUO A062TAN02
2020-08-28 05:26:18 +03:00
CTCaer
3d05b58856
nyx: Add eMMC NAND cells life estimation
2020-08-15 12:33:11 +03:00
CTCaer
78c4e6510d
hos: Add backup bootloader support
2020-08-15 12:30:18 +03:00
CTCaer
cd76d5ac09
nyx: Fix hang on using B button after Launch window
2020-08-15 12:22:01 +03:00
CTCaer
9c2a064817
nyx: Allow SD removal without reloading Nyx
2020-08-15 12:21:25 +03:00
CTCaer
db2da89f69
nyx: Remove delay on JC calibration
...
This does not help with drifting as the logged values are always changing drastically.
2020-08-15 12:19:43 +03:00
CTCaer
4fc420616d
nyx: Control UART debug completely via makefile
...
Also enables LvGL log.
2020-08-13 10:21:00 +03:00
CTCaer
5140992a7b
nyx: Add proper info about SD write protect
2020-07-19 20:56:08 +03:00
CTCaer
b8ca88ee0a
exo: Change fatal names and add stack overflow
2020-07-18 12:53:05 +03:00
CTCaer
adfa7c0780
fuse: Use fuse count function for burnt fuses
2020-07-18 01:15:28 +03:00
CTCaer
11df6030f9
Various fixes
2020-07-18 00:54:35 +03:00
CTCaer
45ca2938f5
pmc: Move rail power function to its own object
2020-07-18 00:42:53 +03:00
CTCaer
32e58d2bb3
hw init: Cosmetic refactoring
2020-07-17 18:08:27 +03:00
CTCaer
638a3909c5
Refactor various variables and names
2020-07-17 18:00:32 +03:00
CTCaer
3c2d86ef7b
sdmmc: Add protected area info (Content Protection)
2020-07-17 17:01:40 +03:00
CTCaer
f559017aeb
di: Update display panels and info
2020-07-17 16:57:45 +03:00
CTCaer
3ddd1c26ad
pkg1: Fix PK11 component split in pkg1/2 dump tool
2020-07-14 23:29:48 +03:00
CTCaer
ab5b59e10d
Refactor fatal/hard error names
2020-07-14 22:41:48 +03:00
CTCaer
1f67251331
nyx: Use strcat whenever possible
2020-07-14 22:26:40 +03:00
CTCaer
4eecdfa553
nyx: Add decrypted CAL0 dumping
2020-07-14 21:16:52 +03:00
CTCaer
80dd0f1580
joycon: Skip first 4 packets for calibration
2020-07-14 21:13:37 +03:00
CTCaer
4e0c70a402
nyx: Do not timeout joycon with screenshot
...
Additionally, screenshots are allowed only every 2s instead per second.
2020-07-14 21:12:09 +03:00
CTCaer
ffd5a198f9
Beautify make size prints
2020-07-14 20:56:56 +03:00
CTCaer
ddc89c9f49
hos: Reduce size of pkg1 id array
2020-06-22 12:04:49 +03:00
CTCaer
3214fc2f93
nyx: Fix validation check for emuMMC restore
...
When checking a partition for enough size for emuMMC restore, always check against the extra 16MB.
2020-06-18 01:23:06 +03:00
CTCaer
3b0925b912
touch: Check if init failed and stop parsing if yes
2020-06-17 00:41:37 +03:00
CTCaer
c5f032fcb2
Fix building on msys2
2020-06-16 12:41:42 +03:00
CTCaer
564f36fc8b
hos: Fix mkey validation on BIS derivation
2020-06-15 17:31:29 +03:00
CTCaer
6159284be6
nyx: Check for huge files in part manager backup
2020-06-15 15:05:47 +03:00
CTCaer
9afc6f0a4e
joycon: Add bigger deadzone for virtual mouse
2020-06-15 15:04:46 +03:00
CTCaer
f689bb253e
nyx: Add simple CAL0 info
2020-06-15 15:03:14 +03:00
CTCaer
0738c96867
nyx: Fix pkg1/2 dumping with new changes
2020-06-15 15:01:18 +03:00
CTCaer
edba8ca986
hos: Add BIS keys derivation
2020-06-15 14:59:45 +03:00
CTCaer
2aa9055fae
Various fixes
2020-06-15 14:58:50 +03:00
CTCaer
029d66bd95
Fix build for lvgl UART log
2020-06-14 17:33:57 +03:00
CTCaer
c73b4ad6ba
nyx: Include Hoag as Mariko in fuses info
2020-06-14 16:51:06 +03: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
CTCaer
9b1c61fbcf
storage: Add cal0 struct
2020-06-14 14:11:15 +03:00
CTCaer
ae7ef7d79a
fuse: Add get odm keygen type
2020-06-14 14:10:29 +03:00
CTCaer
273f11cd59
sdram: Extend sdram id
2020-06-14 14:07:21 +03:00
CTCaer
f5092bc981
heap: Add heap object copy
2020-06-14 14:02:13 +03:00
CTCaer
d607a8830b
hos: Support new sept/exo keyslots
2020-06-14 13:53:21 +03:00
CTCaer
92d013dd65
eks: Upgrade to new version and support BIS keys
2020-06-14 13:42:48 +03:00
CTCaer
242bbdada5
storage: Better BIS support
...
It now supports more than one crypto block and keys are expected to slot 0 and up to slot 5.
2020-06-14 13:36:36 +03:00
CTCaer
d90f5b7e7c
ccplex: Renable cluster object to ccplex in makefile
2020-06-14 13:34:13 +03:00
CTCaer
d95449c22d
usb: Fix some issues with usb descriptors
2020-06-14 13:33:13 +03:00
CTCaer
4d8dbe068d
sept: Remove support for obsolete no _00/01 suffix
2020-06-14 13:25:08 +03:00
CTCaer
157e415636
uart: Decreases timeouts to reduce latency
2020-06-14 13:21:59 +03:00
CTCaer
48f84c5cf4
gpio: Remove dependency to irq driver
2020-06-14 13:20:56 +03:00
CTCaer
1d3d1c8454
clock: Prevent PLLC4 from glitching
2020-06-14 13:19:53 +03:00
CTCaer
bb2b339b54
ianos: Remove sd (un)mount usage
2020-06-14 13:17:26 +03:00
CTCaer
5790c585f5
nyx: Reduce idle power draw by 280mW
2020-06-14 13:14:32 +03:00
CTCaer
a2655912d4
nyx: Auto center cursor based on its size
2020-06-14 13:13:27 +03:00
CTCaer
e2c905e9b2
joycon: More robust spi dumping for bd addr/ltk
2020-06-14 13:13:04 +03:00
CTCaer
9619417b07
nyx: Allow arc bits tool to work on all compat folders
2020-06-14 13:09:10 +03:00
CTCaer
b0bcdeafac
nyx: Find best cluster size automatically
2020-06-14 13:07:42 +03:00
CTCaer
7b76015fd1
nyx: Fix an issue with hos partition initial size
2020-06-14 13:07:21 +03:00
CTCaer
465955c8f5
nyx: Use sd actual size for partition making
2020-06-14 13:06:43 +03:00
CTCaer
90a759b98e
Use reconfig workaround for power off and reboots
2020-06-14 13:05:51 +03:00
CTCaer
0096b91146
Add corrupted bmp protection
2020-06-14 13:04:13 +03:00
CTCaer
125f000894
nyx: Use date/time for screenshot names
...
Now that RTC clock can be offset in software it's good to have actual dates on screenshots.
2020-06-14 13:02:54 +03:00
CTCaer
f9a0e6ce4f
nyx: Show clock edit on boot if 0 offset
2020-06-14 13:00:55 +03:00
CTCaer
0d5a1416d0
nyx: Show SD card total blocks in info
2020-06-14 12:59:41 +03:00
CTCaer
43f3132069
nyx: Do not show SFD partitions as valid for emuMMC
2020-06-14 12:53:35 +03:00
CTCaer
3d00a1be21
nyx: Support multiple backup based emuMMC
2020-06-14 12:52:54 +03:00
CTCaer
87ce09f4b1
Some fixes
2020-06-14 12:50:54 +03:00
CTCaer
31f90a0a47
se: Fix CBC encryption
2020-06-14 03:10:30 +03:00
CTCaer
af30904624
se: Simplify oneshot execute calls
2020-06-14 03:10:04 +03:00
CTCaer
f2f995af17
se: Allow sha256 continuation without saving the msg
2020-06-14 03:08:27 +03:00
CTCaer
3dcd2ad15f
hos: Header for pkg2 is now more proper
2020-06-14 02:23:02 +03:00
CTCaer
eb2c8a032f
power: Enable charger unconditionally
2020-06-14 02:04:50 +03:00
CTCaer
416db840ec
power: Refactor max17050 driver
2020-06-14 02:03:43 +03:00
CTCaer
b0c4cef077
power: Fix max77621 DVS voltage reg names
2020-06-14 02:02:26 +03:00
CTCaer
58d12e5754
power: Refactor bq24193 driver
2020-06-14 02:01:26 +03:00
CTCaer
bcda64a5df
tsec: Decouple hos header dependency
2020-06-14 01:32:54 +03:00
CTCaer
ba77de3dc5
exo: Refactor exo_cfg context to exo_ctx
2020-06-14 01:29:41 +03:00
CTCaer
53325617bb
hos: Small refactoring
2020-06-14 01:27:08 +03:00
CTCaer
8e836d958f
Rename cluster to ccplex
2020-06-14 01:09:17 +03:00
CTCaer
8ce6bf82a9
Minimize make info noise during building
2020-06-13 18:39:17 +03:00
CTCaer
21548545fc
Equalize hekate main and Nyx sd based functions
2020-06-13 18:32:40 +03:00
CTCaer
7dd3178d48
Equalize hekate main and Nyx common functions
2020-06-13 18:16:29 +03:00
Dave Murphy
cc54df87d7
fixes for compiling with gcc 10
...
gcc 10 no longer lets you get away with not externing global variables in header files. This adds the necessary extern and adds defines in appropriate c files
2020-05-08 23:32:44 +01:00
CTCaer
9698cbc9d7
nyx: Fix archive bits fixer and extention folders
2020-05-05 21:24:28 +03:00
CTCaer
d8b6aa3831
nyx: Correct the error message for format
2020-05-05 19:28:34 +03:00
CTCaer
3e5ef39686
nyx: Fix emummc slider when there's not enough space
2020-05-05 19:28:15 +03:00
CTCaer
bc7c65447d
nyx: Add start clearing for ext4 partitions
2020-05-05 19:27:45 +03:00
CTCaer
a91378b9c1
nyx: Allow always writeable emmc via config
...
The key is `umsemmcrw` and resides in nyx.ini
2020-05-05 19:26:10 +03:00
CTCaer
5b91c54936
fatfs: Backport some fixes
2020-05-05 19:21:07 +03:00
CTCaer
322280757f
nyx: Fix time offset parsing
2020-05-05 19:20:04 +03:00
CTCaer
b1636fbb96
nyx: Add unsaved config changes pop up
2020-05-05 19:19:12 +03:00
CTCaer
cc18a7b146
nyx: Allow changing Date/Time via tickers
2020-05-05 19:17:29 +03:00
CTCaer
5fe84a78ac
rtc: Remove custom encoding
2020-05-05 19:16:16 +03:00
CTCaer
822e0dcd98
Various small fixes
2020-05-05 19:11:39 +03:00
CTCaer
a6be3714a3
ums: Update Nyx status bar during UMS
2020-05-05 19:02:01 +03:00
CTCaer
f56d1bad04
nyx: Allow hue icons from section names
2020-05-05 19:01:08 +03:00
CTCaer
e8f41a03f3
res: Fix name of colorized lakka icon
2020-05-03 02:52:51 +03:00
CTCaer
8edc9971f9
nyx: Refactor launch icon colorization
...
The Switch and Payload icons will be colorized by default, because they are system icons.
Users can still replace them with icons named `icon_switch_custom.bmp` and `icon_payload_custom.bmp` that do not get colorized.
2020-05-03 01:57:15 +03:00
Nichole Mattera
afb820202d
Small fix to make sure icon_path is long enough.
2020-05-02 16:34:06 -04:00
Nichole Mattera
0ce973966f
Add support for launch icons changing color with theme.
2020-05-02 16:16:38 -04:00
CTCaer
11ca71cbc7
joycon: Wait for disconnect cmd reply
2020-05-01 17:29:05 +03:00
CTCaer
3794c61ab2
Mitigate a L4T Joy-Cond driver issue
2020-05-01 17:28:24 +03:00
CTCaer
dde3ca2d73
sdmmc: Properly disable parent clock
2020-05-01 03:41:00 +03:00
CTCaer
4d1b59c05b
Update Readme
2020-04-30 16:33:14 +03:00
CTCaer
a0c3323b7c
nyx: Allow emuMMC backup now that is working
2020-04-30 16:29:03 +03:00
CTCaer
c9e53d4b1d
nyx: Decrease idle power drain
2020-04-30 16:27:40 +03:00
CTCaer
4b62b1f69f
nyx: Introducing Partition Manager for SD Card
...
Allow you to select up to 2 emuMMC + Linux + Android.
Any combo is allowed, even if you just want to repartition it back to one FAT partition.
The procedure is automatic on selecting sizes and offsets.
The tool is also able to backup your SD Card into Ramdisk and then get restored, if the total used size is less than 1GB.
If you have more files than that, you will be asked to copy your files to your PC via UMS.
It also allows you to flash L4T Linux images and Android Twrp images.
The Flash Android can be also used to reboot into Twrp if a file to flash is not found.
2020-04-30 16:12:55 +03:00
CTCaer
91c2c891fd
nyx: Fix verification bar/percent not updating
2020-04-30 15:13:12 +03:00
CTCaer
1ba0a7d264
nyx: Allow restoring eMMC backup of different size
...
You will get a warn. If you choose to skip without reading it, then you are toasted.
2020-04-30 15:12:34 +03:00
CTCaer
5f6bf332d3
nyx: Add emuMMC partition backup
...
For now it will automatically dump the first found and the size will be based on its GPT.
2020-04-30 15:11:18 +03:00
CTCaer
448cc49cff
hwinit: Add proper deinit for new components
2020-04-30 15:09:25 +03:00
CTCaer
81f0c0a0dc
touch: Add FB SRAM read function
2020-04-30 15:06:31 +03:00
CTCaer
95c1046765
nyx: Add eMMC and SD read benchmarks
2020-04-30 15:05:41 +03:00
CTCaer
2a8c27115c
fatfs: Use RTC clock for date/time
2020-04-30 15:04:52 +03:00
CTCaer
b6933013be
storage: Add primitive BIS support
2020-04-30 15:04:20 +03:00
CTCaer
a2bb576c03
fatfs: Add Ramdisk support
2020-04-30 15:03:25 +03:00
CTCaer
c8d6da5a23
storage: Add Ramdisk driver
2020-04-30 14:58:53 +03:00
CTCaer
f09263d3be
nyx: Add Update r2p option
2020-04-30 14:56:44 +03:00
CTCaer
fdfd383c34
nyx: Add Joy-Con Bluetooth pair info dump
2020-04-30 14:55:51 +03:00
CTCaer
39a32fc83d
nyx: Add Nyx Options (Theme, Homescreen, Time)
2020-04-30 14:55:15 +03:00
CTCaer
c072041039
nyx: Add time offset
...
The epoch is based on HOS format.
An automatic time set will be implemented in a later version.
2020-04-30 14:51:48 +03:00
CTCaer
6d75f96ed5
nyx: Add Home Screen selection
...
You can now choose between Main menu and Launch/More Cfg as home screens.
2020-04-30 14:49:28 +03:00
CTCaer
ab304c9178
nyx: Small fixes in init
2020-04-30 14:45:59 +03:00
CTCaer
abcb1dec46
boot cfg: Allow Launching UMS from boot.
...
By using `BOOT_CFG_AUTOBOOT_EN` in `boot_cfg` and `EXTRA_CFG_NYX_UMS` in `extra_cfg` you can launch UMS from boot.
The `ums` variable must be populated with one of the following:
```
NYX_UMS_SD_CARD 0
NYX_UMS_EMMC_BOOT0 1
NYX_UMS_EMMC_BOOT1 2
NYX_UMS_EMMC_GPP 3
NYX_UMS_EMUMMC_BOOT0 4
NYX_UMS_EMUMMC_BOOT1 5
NYX_UMS_EMUMMC_GPP 6
```
2020-04-30 14:44:27 +03:00
CTCaer
ac4bf9cf2c
nyx: Add tab separator for Tools tabs
2020-04-30 14:32:52 +03:00
CTCaer
72a51f9506
nyx: Add Touch Panel Calibration tool
2020-04-30 14:31:32 +03:00
CTCaer
d50a77f861
nyx: Fix Archive bits tool v3
2020-04-30 14:30:37 +03:00
CTCaer
0ecd6b16b0
nyx: USB Gamepad emulation (Joy-Con)
...
This allows you to use your joycon as a free gamepad for your PC. Often paired with tools like x360ce.
2020-04-30 14:28:16 +03:00
CTCaer
4dcbaa8c2b
Update Clocks and Fuses for USB
2020-04-30 14:25:58 +03:00
CTCaer
2261dbce83
nyx: USB Mass Storage support (SD/eMMC/emuMMC)
2020-04-30 14:25:43 +03:00
CTCaer
53ff1102df
usbd: Add device descriptors
2020-04-30 14:15:50 +03:00
CTCaer
b01b49aff4
usbd: Add USB Gadget HID driver
2020-04-30 14:15:26 +03:00
CTCaer
c9a7659d93
usbd: Add USB Gadget UMS driver
2020-04-30 14:14:58 +03:00
CTCaer
4f75cd62e5
usb: Add USB Device driver
2020-04-30 14:14:16 +03:00
CTCaer
2a74715c3c
Update some copyrights
2020-04-30 14:10:08 +03:00
CTCaer
1210c3e689
nyx: Add log window screenshots for debugging
2020-04-30 14:09:11 +03:00
CTCaer
a3f430c224
nyx: Add capture effect on screenshots
2020-04-30 14:08:25 +03:00
CTCaer
2f7be43ccb
nyx: Allow screenshots only every 2s
2020-04-30 14:08:06 +03:00
CTCaer
f5432c734c
nyx: Utilize Log Window
...
- or + on Joy-Con displays the log screen.
If there are errors somewhere, they are normally also logged in there.
2020-04-30 14:07:26 +03:00
CTCaer
5ca35aa4fc
memory map: Repartition RAM based on new needs
2020-04-30 14:03:57 +03:00
CTCaer
2dd474ad26
gfx: Switch Nyx gfx prints to landscape
2020-04-30 14:01:10 +03:00
CTCaer
97e45346ea
display v2: Utilize Window D as log window
2020-04-30 13:58:41 +03:00
CTCaer
6c1ce41900
display v2: Add Cursor Window
2020-04-30 13:57:43 +03:00
CTCaer
4a57901746
display v2: Always check if already initialized
2020-04-30 13:55:26 +03:00
CTCaer
c32636b8cb
nyx: Fuses info is now HW and Fuses info
...
Additionally add chip revision info
2020-04-30 13:54:11 +03:00
CTCaer
190ffdaa5a
nyx: Add DRAM modules info
2020-04-30 13:51:46 +03:00
CTCaer
bdd2b40c96
nyx: Add Touch panel info
2020-04-30 13:51:25 +03:00
CTCaer
53f54cf23b
nyx: Add display panel info
2020-04-30 13:50:58 +03:00
CTCaer
474d531788
display v2: Add multiple panel support
2020-04-30 13:49:03 +03:00
CTCaer
3db55df0a6
display v2: Refactor everything
2020-04-30 13:45:28 +03:00
CTCaer
1483a61f11
nyx: Add joycon fallback support as a virtual mouse
...
Cursor Movement: Left Stick
Click: A / ZL / ZR
Back: B
2020-04-30 13:16:30 +03:00
CTCaer
7b715f7be9
input: Add Joy-Con UART driver
2020-04-30 13:02:14 +03:00
CTCaer
56034f9aac
nyx: Ensure that close button var always gets nulled
2020-04-30 04:32:55 +03:00
CTCaer
7e96a4dd3a
nyx: Keep last close button to a var
2020-04-30 04:25:51 +03:00
CTCaer
523c81f797
nyx: Add theme colors for highlight text
2020-04-30 04:04:24 +03:00
CTCaer
f540c8250b
nyx: Disallow eMMC ops with low battery
2020-04-30 03:59:16 +03:00
CTCaer
e89b7f12dd
nyx: Update hekate theme
2020-04-30 03:57:10 +03:00
CTCaer
11f1f65ed1
rtc: Fix hour parsing
2020-04-30 03:53:29 +03:00
CTCaer
071dfa9792
lvgl: Enable keyboard and add HEX mode
2020-04-30 03:53:04 +03:00
CTCaer
3cecb03dac
nyx: Fix a long standing heap corruption issue
2020-04-30 03:51:13 +03:00
CTCaer
a7c64f8ba2
lvgl: Better heap alignment
2020-04-30 03:49:40 +03:00
CTCaer
6749dad1a4
lvgl: Fix HSV to RGB calculation
2020-04-30 03:49:10 +03:00
CTCaer
aadb88eeea
regulators: Enable 5V to missing GPIO AO IO rails
2020-04-30 03:46:21 +03:00
CTCaer
2c4d6552e9
Fixes to battery charger and fuel gauge ICs
2020-04-30 03:45:19 +03:00
CTCaer
c2e8d51115
hos: Add EKS
2020-04-30 03:43:29 +03:00
CTCaer
1d69809022
sdram: Allow killing ram clock source if desired
2020-04-30 03:39:18 +03:00
CTCaer
093f14923c
sdram: Document cfg and use vendor patches
2020-04-30 03:37:40 +03:00
CTCaer
63768ccc99
uart: Add rounded clocking for 1 mbaud
2020-04-30 03:34:05 +03:00
CTCaer
54faa38920
utils: Add normal CRC32
2020-04-30 03:30:51 +03:00
CTCaer
ae1bb909b6
se: Add prng128 generator and get aes keys
2020-04-30 03:29:05 +03:00
CTCaer
ecb616e411
sdram: Add MR read request
2020-04-30 03:27:39 +03:00
CTCaer
8c762c52e2
Various fixes and whitespace removal
2020-04-30 03:25:22 +03:00
CTCaer
e14a7d1d4d
nyx: Clear partition start when creating emuMMC
2020-04-30 02:05:24 +03:00
CTCaer
08c81fe1f8
Move verification config to nyx config
2020-04-30 02:00:33 +03:00
CTCaer
63be93be64
nyx: Use a static color for verifying bar indicator
2020-04-30 01:35:18 +03:00
CTCaer
de4891e133
nyx: Correct label styles set
2020-04-30 01:33:14 +03:00
CTCaer
8fd398f213
nyx: Fix heap corruption while parsing emmc gpt
2020-04-30 01:31:01 +03:00
CTCaer
ec53aa86dd
emmc: Use gpt struct and only add valid entries
...
Additionally keep track of partition index
2020-04-30 01:29:58 +03:00
CTCaer
51985ed2ca
sdmmc v2: Bus/IO clock refactoring and fixes
...
Use the exact same clocks with HOS and utilize low jitter clock parents.
Add back our compatibility mode and the missing timeout clock parent.
Hekate main will continue to use PLLP clock parent for all.
2020-04-30 01:26:55 +03:00
CTCaer
67ae7b9dcb
nyx: Add SD Card error report in Console Info
2020-04-30 01:09:48 +03:00
CTCaer
96654d9620
nyx: Throw a warning if SD Card in 1 bit mode
2020-04-30 01:05:22 +03:00
CTCaer
ce97b97c8d
sdmmc v2: Add full SD card fallback initialization
...
hekate main always runs in compatibility mode (SDR82).
This ensures speed on boot process.
Nyx will first try SDR104.
If the sd card is a sandisk U1 and fails, it will try the compatibility mode.
After that it fallbacks to lower bus speeds.
Both support 1bit mode for broken sd card readers.
Having the new error checking in the sdmmc driver, allows for all that to work.
It can now fail instead of continuing, like how HOS reacts.
2020-04-30 00:00:00 +03:00
CTCaer
034f680a8e
sd fs: Move sd init/mount/helpers to their own object
2020-04-29 23:20:18 +03:00
CTCaer
7d17e34dee
sdmmc v2: Add eMMC overclocking
2020-04-29 22:11:23 +03:00
CTCaer
d0a16a49b6
sdmmc v2: Add error checking for all cases
2020-04-29 22:09:36 +03:00
CTCaer
5442547a59
sdmmc v2: Name eMMC physical partitions
2020-04-29 22:06:33 +03:00
CTCaer
10e7e06048
sdmmc v2: Move address alignment check in driver
2020-04-29 21:46:25 +03:00
CTCaer
eac6426125
sdmmc v2: Driver fixes
2020-04-29 21:43:07 +03:00
CTCaer
88b01994bd
sdmmc v2: HW driver fixes
2020-04-29 21:39:03 +03:00
CTCaer
66780bb4c2
sdmmc v2: Refactor and fix registers
2020-04-29 21:23:28 +03:00
CTCaer
7f26981fa1
sdmmc v2: Refactor function names and vars
2020-04-29 21:16:44 +03:00
CTCaer
5b0a0070c7
sdmmc v2: Refactor everything
2020-04-29 18:53:29 +03:00
CTCaer
0462f3b252
Add simple exception handling
...
This adds support for exception handling.
It should provide simple and fast reporting of crucial info and full restoration without powering off.
2020-04-27 09:56:19 +03:00
CTCaer
9a5cfdff4c
gpio: Upgrade GPIO driver
...
Use macros to get bank addresses and add full configuration support.
2020-04-27 09:51:25 +03:00
CTCaer
cb3b1bf6e1
irq: Add Legacy Interrupt Controller driver
2020-04-27 09:49:00 +03:00
CTCaer
b4d2df8111
Name various t210 registers
2020-04-27 09:47:47 +03:00
CTCaer
4160037c81
emummc: Add boot entry emuMMC selection
...
Using the key `emupath` on a boot entry will load the selected emuMMC.
This can also be forced by using the correct boot cfg storage bit and writing the path at the emummc path offset. Check readme for these.
This can only be used if the emuMMC was created via Nyx. because of the raw_based and file_based files that have emuMMC info.
(emupath=emuMMC/RAW1, emupath=emuMMC/SD00, etc)
2020-04-27 09:30:53 +03:00
CTCaer
3fa537e54a
nyx: Move emummc cfg load function
2020-04-27 09:18:31 +03:00
CTCaer
f35c18a0c2
nyx: Refresh emuMMC status after a creation
2020-04-27 09:13:22 +03:00
CTCaer
aff137ac34
nyx: Allow partition selection for emuMMC raw
2020-04-27 09:09:52 +03:00
CTCaer
6236b0ab00
nyx: Use mbr context for emuMMC partition
2020-04-27 09:06:53 +03:00
CTCaer
ae656a0f81
types: User a proper struct for MBR partition table
2020-04-27 08:58:37 +03:00
CTCaer
6a6648d3b3
nyx: Change many lvgl static labels to dynamic
2020-04-27 08:47:00 +03:00
CTCaer
da149c296f
touch: Reinitialize up to 3 times if failed
2020-04-14 17:52:22 +03:00
CTCaer
9af4c717a8
util: Add btn_read_vol
2020-04-14 17:51:42 +03:00
CTCaer
281e5a138e
sept: Create sept folder if missing
2020-04-14 17:45:34 +03:00
CTCaer
e7f8b2c6c2
hos: Add HOS 10.0.0 support
2020-04-14 17:43:43 +03:00
CTCaer
3d9c64d548
hos: Use a new method to get kernel/ini1 offsets
2020-04-14 17:40:41 +03:00
CTCaer
5f142b4c86
main: Add empty battery screen
...
This disables low battery monitor shutdown (LBM shutdown) on boot and checks if battery is enough.
The logic is as follows:
If battery is not enough:
- If not charging and 15s pass, it will re enable LBM shutdown and power off.
- If charging, it will wait until it is charged above the limit.
Screen will auto turn off to save power. A press on Power button or a change on charger, will enable it for another 15s.
If battery is enough:
- Enables LBM shutdown and continues with the boot process.
2020-04-06 05:54:45 +03:00
CTCaer
dc9c7fd95c
touch: Do a panel HW test before calibration
...
In case the panel or the panel connection has issues, abort the calibration.
2020-03-25 01:38:16 +02:00
CTCaer
4ec7befe82
touch: Small refactor
2020-03-25 01:31:58 +02:00
CTCaer
a39ba2cd71
lvgl: Fix edge case in lv_label_set_text
...
This fixes an edge case where the original label set was done with set_static_text, the next one with set_text and the text is at the same address.
The incomplete check would think that the text resides on heap and it would reallocate it as such, effectively corrupting .data on the next sets.
2020-03-22 04:48:50 +02:00
CTCaer
9c6931a17c
Bugfixes
...
The fan driver change ensures power off in any situation where a chainload software re-enables the 5V regulator.
2020-03-21 22:28:50 +02:00
CTCaer
976925c697
nyx: Allow cancellation of emuMMC creation
2020-03-21 22:27:17 +02:00
CTCaer
d50af46b03
chnldr: Support variable sizes of coreboot.rom
2020-03-21 22:18:40 +02:00
CTCaer
52874f9113
minerva: More protections
2020-03-21 22:10:06 +02:00
CTCaer
91a241dafa
touch: Add Tuning Calibration
...
This, for now, can be done at Nyx boot by holding VOL- and VOL+.
Make sure that you don't touch the touchscreen.
2020-03-21 22:03:51 +02:00
CTCaer
76676f3a2e
nyx: Allow for big filepaths for archive bit fixer
...
It also fixes corruptions/hangs when path is bigger than 255 chars
2020-03-18 06:30:11 +02:00
CTCaer
f5040f1e41
Update and add missing copyrights
...
Probably more need to change.
2020-03-14 09:24:24 +02:00
CTCaer
c9c3c8f716
touch: Add context based ready checks on init
2020-03-13 17:36:44 +02:00
CTCaer
144d6fd3f6
i2c: Update drivers
...
Adds support for 8 byte transfers needed by touch driver changes.
2020-03-13 10:25:27 +02:00
CTCaer
9697067466
touch: Add fw info
2020-03-13 08:48:20 +02:00
CTCaer
8539095bdb
touch: Proper init
...
This patch applies the simpler init from HOS driver.
The most important change is enabling a feature that the fw supports:
Automatic tuning and calibration based on saved tuning values (running HOS only once saves these).
2020-03-13 08:39:38 +02:00
CTCaer
95e3159fe9
touch: Correct pressure calculation
...
Fingertip S for Nintendo Switch uses a custom spatial calculation. It now allows to identify area of touch.
2020-03-13 08:34:16 +02:00
CTCaer
8d5c52f087
lvgl heap: Fix critical issue with node header size
...
This fixes a critical issue where the node header was 28 bytes instead of 32, causing misalignment and heap corruption.
2020-03-09 08:39:31 +02:00
CTCaer
e6c1d9bf66
nyx: Simplify label sets
...
- Use only lv_label_set_text to simplify label sets
- Fix an issue with a label cut
- Add more maintenance functions for DRAM training
2020-03-09 08:37:41 +02:00
CTCaer
a52af1bf41
Fix building on make 4.3
2020-03-04 01:34:35 +02:00
CTCaer
ac92ca220f
fan: Better thermal logic based on HOS patterns
2020-03-03 04:37:59 +02:00
CTCaer
ab8801d0de
touch: Add edge compensation
...
Switch touch panels have a 10-15px offset around the edges.
(10-1269, 10-709) / (15-1264, 15-704)
This allows touch driver to report a max of 0-1279, 0-719.
2020-03-03 04:28:12 +02:00
CTCaer
f3802ec464
lists: Fix list member iteration with no entries
2020-03-03 04:24:38 +02:00
CTCaer
bc7a7bcfa0
info: Allow dumping of battery characterization table
2020-03-03 04:22:59 +02:00
CTCaer
6a52d44da6
heap: Fix edge case of reusing first node
...
There is an edge case fixed where the whole would be freed and this would make use of a nullptr.
Additionally, remove usage of reserved names for vars and add comments on how it works.
2020-03-03 04:16:20 +02:00
CTCaer
03a8a11933
Small fixes and changes
...
- Allow printing of more log on HOS boot when LOGS are OFF.
- A small name refactoring
- Add battery warning symbol when battery < 3200mV
2020-03-03 04:11:13 +02:00
CTCaer
4c1f67d022
Fix build errors
2020-01-19 15:22:59 +02:00
CTCaer
2a161b572b
sdmmc: Set power cycle wait to 0 at boot
2020-01-17 09:19:58 +02:00
CTCaer
422852795f
ini: Remove \r stripping as is done by FatFS
2020-01-17 09:18:31 +02:00
CTCaer
4d53f21387
mtc: Clear init magic on chainload
...
Fixes a hang caused when rebooting 2 payload from L4T with old hekate in vendor partition.
L4T does not overwrite the nyx storage where the Minerva configuration is stored.
This makes new Minerva parse the wrong tables from old hekate and eventually hang the RAM, which causes an exception on BPMP.
2020-01-14 23:41:15 +02:00
CTCaer
9263e2192f
nyx: Fix low battery voltage color
2020-01-07 06:50:33 +02:00
CTCaer
c99a87dd09
clock: Move PLLC config from bpmp.c to clock.c
2020-01-07 06:46:22 +02:00
CTCaer
009db77426
bpmp: Switch to PLLC for SCLK/BPMP clock source
2020-01-07 06:26:29 +02:00
CTCaer
2f43145131
uart: Add invert, get/set IIR and fifo empty functions
2019-12-16 22:16:40 +02:00
CTCaer
e3fca2bce5
uart: Add timeout and len report to uart receive
2019-12-16 22:15:21 +02:00
CTCaer
da112a0ae9
uart: Proper uart init
2019-12-16 22:12:09 +02:00
CTCaer
90060d1d83
mtc: Don't rely on clean BSS for Minerva lib
2019-12-16 22:06:13 +02:00
CTCaer
1ccce5f1a2
gfx: Fix off-by-one in right half of 16px rendering
2019-12-16 21:49:54 +02:00
CTCaer
2aaa0331ac
rtc: Add epoch convertion functions
...
Thanks @shchmue for the HOS conversion
2019-12-14 22:27:07 +02:00
CTCaer
7604239237
bpmp: Update driver to latest
2019-12-14 22:21:42 +02:00
CTCaer
1e4d63731b
nyx: Fix about screen 2nd pane left margin
2019-12-12 00:20:14 +02:00
CTCaer
a664118fc7
r2p: Update r2p payload
...
2 modes:
- With updater2p; Forces the reboot to payload binary to be hekate
- Without; Checks if hekate and then if old
2019-12-12 00:13:32 +02:00
CTCaer
c6e92311f9
Add error printing for issues with libraries
...
It will now show erros for the following:
- Missing or old libsys_minerva.bso (DRAM training).
- Missing libsys_lp0.bso (LP0 sleep mode).
- Missing or old Nyx version
2019-12-11 11:22:11 +02:00
CTCaer
24d30a40f9
hos: Add Atmosphere's system mem increase patches
2019-12-10 19:20:02 +02:00
CTCaer
e4f7928513
minerva: Fix compatibility check for hekate main
...
Init now also returns status.
2019-12-09 22:27:01 +02:00
CTCaer
bd8a5ece58
heap: Fix type for heap monitor memset size
2019-12-09 19:30:45 +02:00
CTCaer
d0850516ab
Bump hekate to v5.1.0 and Nyx to v0.8.3
2019-12-08 18:59:00 +02:00
CTCaer
4c5a78de6f
hos: Fix pkg2 keygen with newer sept
...
This change also adds support for older sept binaries.
2019-12-08 18:32:09 +02:00
CTCaer
c12c696e53
hos: Add 9.1.0 support
2019-12-08 03:01:21 +02:00
CTCaer
f256bd5909
Move all I/DRAM addresses into a memory map
...
Many addresses were moved around to pack the memory usage!
2019-12-08 02:23:03 +02:00
CTCaer
0290892b23
nyx hw reconfig: Add fan and 5V regulators deinit
...
Additionally re-arrange minerva and mmu after these.
2019-12-08 01:41:57 +02:00
CTCaer
643a8ea8f9
fan: Update driver
...
Make use of 5V regulator driver and fixe some bugs
2019-12-08 01:38:12 +02:00
CTCaer
a6d8854499
power: Add 5V regulator driver
2019-12-08 01:36:35 +02:00
CTCaer
96bafd8bd7
nyx: Use color when battery voltage < 3200mV
...
For status bar and Battery Info.
2019-12-08 01:32:26 +02:00
CTCaer
65ee728939
nyx: Enable fan when temps are high
2019-12-08 01:26:26 +02:00
CTCaer
e1748a0727
nyx: Boost eMMC backup/restore verification times
...
This change allows SE to start verifying the first buffer while the 2nd is populated. Effectively cutting verification down to almost half.
2019-12-08 01:20:05 +02:00
CTCaer
35e853fd03
touch: Change I2C4 pinmuxing as per HOS
2019-12-07 23:23:01 +02:00
CTCaer
7e26be6587
lvgl: Optimize color blending
...
The manual optimization done dramatically increases performance in software color blending.
Isolated gains reach 20-30%.
Color blending calculates 2 +1 color channels instead of the expensive 1+1+1 calculations.
This is as best as it gets without going in asm optimizations.
2019-12-07 20:47:19 +02:00
CTCaer
733da0f4d5
nyx: Remove compiler flags to gain extra perf
...
- Removing no-inline produces 30-50% performance gains on specific real time sensitive functions used for rendering.
On overall, this will give 5-10% observed performance gains.
- Strict aliasing produces some extra small gains.
2019-12-07 20:35:17 +02:00
Kostas Missos
a357395cc6
nyx: Remove LTO in order to increase performance
...
Perf gains from removing LTO linker flag amounts to actually more than 5% average in real usage scenarios in Nyx.
(These include overall timings with static waits included. So basically as observed by user.)
Gains observed, on many isolated cases, were between 15-35%.
Additionally, this will make compiling fast again.
2019-12-07 20:26:51 +02:00
Kostas Missos
48c15a8fde
nyx: Release the shackles
2019-12-07 20:16:38 +02:00
Kostas Missos
0b45a5a11a
bpmp: Reduce freq to 589MHz
...
3 users had issues with 602MHz.
This will probably bring the SoC binning compatibility to 100%.
Additionally, make it easy to change default boost frequency.
The tiny loss in perf, will be mitigated in Nyx. (It's actually even faster)
2019-12-07 02:01:29 +02:00
Kostas Missos
bc7dec2e61
bpmp: Add forcable maintenance
...
+ Fix build issues
2019-12-07 01:47:44 +02:00
CTCaer
9811ba53e0
pmic: Enable Low Battery Shutdown for 2.8V
...
There's an increasing ammount of users that kill their batteries when forgetting their devices into AutoRCM / RCM mode.
This will now force a shutdown the moment the battery reaches 2.8V. Even if device is inside RCM mode.
Notice: We might need to increase the limit.
2019-12-04 22:06:34 +02:00
CTCaer
a16b1af698
pmic: Always ensure that values were written
2019-12-04 22:02:17 +02:00
CTCaer
641a57a4f6
hos/mtc: Add FSP WAR and boost HOS booting times
...
By implementing FSP WAR we can allow HOS to boot in 1600MHz and be able to switch frequency without hanging.
2019-12-04 21:59:58 +02:00
CTCaer
84328aa676
minerva: Make use of new minerva
...
- Training and switch is now faster
- Compatibility checks: New Minerva does not allow old binaries. New binaries do not allow old Minerva
- MTC table is now in a safe region
- Periodic training period increased to every 250ms
2019-12-04 21:56:45 +02:00
CTCaer
dd8ec0d28b
clock: Always wait 2us before deasserting reset
2019-12-04 21:32:51 +02:00
CTCaer
0b1eebefe1
Small refactor and bugfixes
2019-12-04 21:31:39 +02:00
CTCaer
168de9ddd8
sdmmc: Ensure aligned DMA buffers
2019-12-04 19:42:25 +02:00
CTCaer
b61b212218
lvgl heap: Align addresses & sizes to cache line size
2019-12-04 19:04:11 +02:00
CTCaer
ec10b572d1
heap: Quality updates to heap management
...
- Allow reuse of unused sections that fit exactly to selected allocation size. Decreases fragmentation dramatically.
- Always allocate and align mapped memory to selected alignment. Avoids having fragmented unused maps that are not aligned.
- Use a static alignment based on BPMP and generally average cache line size. Boosts performance when MMU is used.
2019-12-04 19:02:28 +02:00
CTCaer
d1e50c558e
sdram: Refactor and fix some bugs in init
2019-12-04 18:53:36 +02:00