This will fix everything that uses a timer (or sleep).
Without this any function like eMMC/SD read/write/verify, TSEC/SE, etc can break when the time reaches the max value of the u32 microsecond timer (71minutes).
This fixes every possible breakage, including backup and restore (read/write/verify errors) that takes a lot of time.
The new max before a timer reset is now 48 days (the old one was 71 minutes)
* [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