Commit graph

67 commits

Author SHA1 Message Date
Kostas Missos 94bd9a24d3 Add global configuration and saving mechanism 2018-07-01 20:45:25 +03:00
Kostas Missos a442737a59 Update ini parsing to the new version 2018-07-01 20:29:30 +03:00
Kostas Missos 9672650d1a Fix low battery shutdown tool
The real reason for the "battery de-sync" is a misconfig of MAX77620 low battery monitor.

So there's no real battery battery de-sync.

Thanks @natinusala and @perillamint for finding this
2018-07-01 16:58:59 +03:00
Kostas Missos 42d743d9d5 Fix build 2018-07-01 05:06:13 +03:00
Kostas Missos ffeb8c60df Preliminary Exosphère support 2018-07-01 05:03:17 +03:00
Kostas Missos d9dba2b182 Fix timing issues with battery desync fix 2018-07-01 04:58:37 +03:00
Kostas Missos e5a34c3818 Small unfattening 2018-07-01 04:56:58 +03:00
Kostas Missos 0c5c827d0b Add battery/charge info + bugfixes 2018-06-28 04:05:19 +03:00
Kostas Missos 6561a3e738 Preparation for adding config + restore options 2018-06-28 00:36:18 +03:00
Kostas Missos 66b6c5cdf0 Add 16px font support back 2018-06-28 00:21:05 +03:00
Kostas Missos 3175dbc1c9 Prepare about for 16px font 2018-06-26 19:09:26 +03:00
Kostas Missos 37a15ca8ff Make Backup verifying faster by using SE's SHA256 2018-06-26 19:07:34 +03:00
Kostas Missos 3f18713f53 Add seconds timer + bugfixes 2018-06-26 19:00:46 +03:00
Kostas Missos c215b1c74c Disable verification for now & add memcmp32sparse
When the commit with the configuration will be a available, these 3 options will exist:

- Disable verification
- Sparse verification (Fast)
- Full (Slow)

Sparse will take approx 8 minutes for rawnand.bin and Full will take 4.5 hours.
2018-06-24 23:02:35 +03:00
Kostas Missos 52506def30 Add Battery Charger & Fuel Gauge dirvers
* Add Fuel gauge configuration fix
* Add Battery de-sync fix
* Fuel gauge registers dumping
* Add help and battery status in menu
2018-06-24 22:38:32 +03:00
Kostas Missos 6961769a86 Name more hardcoded values 2018-06-24 22:31:24 +03:00
Kostas Missos df30512fd9 [Info] Add current bus maximum rate and refactor a bit 2018-06-23 07:18:53 +03:00
Kostas Missos 532a9f9949 [Tools] dump_emmc_verify() :/
With a working verify functions, the speed is 10.5 times slower.
(A 2.5 seconds operation takes now 28 minutes)

TODO: Find a faster way!
2018-06-23 07:12:30 +03:00
Kostas Missos f3149e0be3 FatFS and general file operations fixes
* Make FatFS thread safe via malloc and remove alloca.
* Fix memory leak from emmc gpt parsing
* Always unmount SD card in menu and when launching
* Use folders for Backup/Dump/Restore operations
* Add error report for some important f_opens
* Don't let partial dumping if backup chosen is not GPP or USER.
2018-06-23 07:04:41 +03:00
Kostas Missos 901f2bb5bd Replace hardcoded values 2018-06-23 06:37:58 +03:00
Kostas Missos 171e5ba30f Compile time configurable menu logo 2018-06-19 17:10:59 +03:00
Kostas Missos d2291a78e2 Switch Framebuffer to ARGB by default 2018-06-19 16:53:41 +03:00
Kostas Missos e76c2b4cb6 General additions, fixes and bugfixes 2018-06-18 09:04:13 +03:00
Kostas Missos 9d50a13ef0 Update GNU copyright for big changes
Additionally change the readme
2018-06-18 09:00:53 +03:00
Kostas Missos b2dd070d10 [INI] Fix memory leaks + other fixes (#38)
* [INI] Fix memory leaks + other fixes

* Add ini_free
* check and return if NULL pointer in free()
* Add button check with timeout
* Fix a bug in menu rendering that tries to parse a string without existing
* Change initial cnt value to max (fixes menus with first entry not a selectable entry)
* Some & ? clarifications

* [INI] Add get selected boot cfg

- This allows to free ini as we launch the firmware and have the lowest mem leak

* [INI] Rename ini section clone/free functions
2018-06-13 11:34:32 +12:00
Kostas Missos 0f23f9baec [Tools] Fix SD files archive bit tool
Switch's filesystem sys module has a bug which rejects files if the archive bit is set.

This tool, clears this attribute and will help users using Windows to edit/copy/create files in SD card.
2018-06-11 18:28:04 +03:00
nwert 24e172b5fb Refactored the firmware loader and LP0 config. 2018-06-08 23:07:25 +12:00
nwert 120e8f5870 Fix all warning. 2018-06-08 21:42:24 +12:00
Kostas Missos 16ac26f583 [DP/GFX/SDMMC] Bugfixes
- Sanitize framebuffer. Original idea from @StevenMattera
- Change clear framebuffer to memset (for grey colors), for performance (we don't use alpha blending, so it does not matter to set it to 0xFF).
- Enable screen backlight after gfx init
- Reduce wait time for emmc/sd read/write retries to 100ms.
2018-06-06 13:29:38 +03:00
Kostas Missos b299cb40c7 [PKG2] Switch kernel patching to crc32c based kernel id
This provides support for the 3.0.2 kernel, where pkg1 has the same id with 3.0.1.

Thanks @roblabla for noticing and providing the Debug mode kernel patch.
2018-06-05 02:04:08 +03:00
Kostas Missos fb9e91ed0c Better dump of pkg1 + Wording 2018-06-05 01:55:32 +03:00
Kostas Missos c43b6f8a5d SD errata, bugfixes, replace hardcoded values 2018-06-03 22:27:15 +12:00
Kostas Missos 4b806f1e7d Oups. Remove unmerged functions 2018-06-03 22:27:15 +12:00
Kostas Missos 54a0a353bc Bug fixes, wording, etc 2018-06-03 22:27:15 +12:00
Kostas Missos d8251ab28b [Backup] Add dump verification 2018-06-03 22:27:15 +12:00
Kostas Missos 7a771f4855 [sdmmc] Change internal read/write retries
This can fix busy errors when writing to sd cards.
Additionally it now returns properly on success
2018-05-28 18:27:02 -07:00
Kostas Missos b2762d737d Small cosmetic fixes 2018-05-28 18:27:02 -07:00
Kostas Missos e268222dae [Main] Small fixes 2018-05-25 01:28:03 -07:00
Kostas Missos 81eb1d0972 [Main] Filter POWER button down
And remove uneeded double press protection through sleep().
2018-05-25 01:28:03 -07:00
Kostas Missos 997e250c43 [Menu] Add captions and seperators
Additionally, skip selection of them to retain flow and maintain auto scroll.
2018-05-25 01:28:03 -07:00
Kostas Missos 03729bddd5 [Main] Back/text color to subtle dark/light grey 2018-05-25 01:28:03 -07:00
Rei 4fd6d90c7f Added AutoRCM (#22)
* Added AutoRCM

* cosmetic changes
2018-05-23 16:37:16 -07:00
Kostas Missos 875d65033a [Tools] Fix stray message 2018-05-22 04:13:10 -07:00
Kostas Missos 6e82dabb22 [Tools] Dump in 1GB parts if sd <=8GB + tui tweak
Tui tweak:
Support auto scroll.
2018-05-21 12:34:03 -07:00
Kostas Missos f0d88f61ca [Main] Remove redundant
And change some divisions into bitshifting
2018-05-21 12:34:03 -07:00
Kostas Missos 8fdfb55f74 [Tools+Info] Utilize sd_save_to_file 2018-05-21 12:34:03 -07:00
Kostas Missos 08a7511760 [Main] Use printf macros to reduce clutter 2018-05-21 12:34:03 -07:00
Kostas Missos dcb77115c9 Whitespace/typo cleanup + others
Others:
*Add cluster size in SD card info
*Add error message for emmc read failure. Also fix return value.
*Added more comments and more constant naming
2018-05-17 15:42:01 -07:00
Kostas Missos 34981763a5 [Tools] Better dumping
*Remove option to ignore errors and abort right away.
 In the end what's the point if you end up with corrupted backup.
*Always create partial.idx before running on errors.
*Allow forced partial dumping on exFAT with large space, by creating the correct patial.idx file
*Some cleanup
2018-05-17 15:42:01 -07:00
Kostas Missos 645df34367 [Main] Unmount SD before reboot/power off 2018-05-17 15:42:01 -07:00