hekate/nyx: adhere to hw_deinit change

This commit is contained in:
CTCaer 2024-05-19 10:49:46 +03:00
parent ae29f359ee
commit 5453c593a3
5 changed files with 9 additions and 12 deletions

View file

@ -1151,7 +1151,7 @@ void launch_l4t(const ini_sec_t *ini_sec, int entry_idx, int is_list, bool t210b
_l4t_mc_config_carveout(t210b01); _l4t_mc_config_carveout(t210b01);
// Deinit any unneeded HW. // Deinit any unneeded HW.
hw_reinit_workaround(false, BL_MAGIC_L4TLDR_SLD); hw_deinit(false, BL_MAGIC_L4TLDR_SLD);
// Do late hardware config. // Do late hardware config.
_l4t_late_hw_config(t210b01); _l4t_late_hw_config(t210b01);

View file

@ -252,7 +252,7 @@ static void _launch_payload(char *path, bool update, bool clear_screen)
else else
_reloc_patcher(PATCHED_RELOC_ENTRY, EXT_PAYLOAD_ADDR, ALIGN(size, 0x10)); _reloc_patcher(PATCHED_RELOC_ENTRY, EXT_PAYLOAD_ADDR, ALIGN(size, 0x10));
hw_reinit_workaround(false, byte_swap_32(*(u32 *)(buf + size - sizeof(u32)))); hw_deinit(false, byte_swap_32(*(u32 *)(buf + size - sizeof(u32))));
} }
else else
{ {
@ -262,7 +262,7 @@ static void _launch_payload(char *path, bool update, bool clear_screen)
u32 magic = 0; u32 magic = 0;
char *magic_ptr = buf + COREBOOT_VER_OFF; char *magic_ptr = buf + COREBOOT_VER_OFF;
memcpy(&magic, magic_ptr + strlen(magic_ptr) - 4, 4); memcpy(&magic, magic_ptr + strlen(magic_ptr) - 4, 4);
hw_reinit_workaround(true, magic); hw_deinit(true, magic);
} }
// Some cards (Sandisk U1), do not like a fast power cycle. Wait min 100ms. // Some cards (Sandisk U1), do not like a fast power cycle. Wait min 100ms.
@ -1372,7 +1372,7 @@ static void _r2p_get_config_t210b01()
static void _ipl_reload() static void _ipl_reload()
{ {
hw_reinit_workaround(false, 0); hw_deinit(false, 0);
// Reload hekate. // Reload hekate.
void (*ipl_ptr)() = (void *)IPL_LOAD_ADDR; void (*ipl_ptr)() = (void *)IPL_LOAD_ADDR;

View file

@ -923,7 +923,7 @@ static void _launch_hos(u8 autoboot, u8 autoboot_list)
sd_end(); sd_end();
hw_reinit_workaround(false, 0); hw_deinit(false, 0);
(*main_ptr)(); (*main_ptr)();
} }
@ -939,10 +939,7 @@ void reload_nyx()
sd_end(); sd_end();
hw_reinit_workaround(false, 0); hw_deinit(false, 0);
// Some cards (Sandisk U1), do not like a fast power cycle. Wait min 100ms.
sdmmc_storage_init_wait_sd();
(*main_ptr)(); (*main_ptr)();
} }

View file

@ -985,7 +985,7 @@ static lv_res_t _action_reboot_recovery(lv_obj_t * btns, const char * txt)
// Deinit hardware. // Deinit hardware.
sd_end(); sd_end();
hw_reinit_workaround(false, 0); hw_deinit(false, 0);
// Chainload to hekate main. // Chainload to hekate main.
(*main_ptr)(); (*main_ptr)();

View file

@ -179,12 +179,12 @@ lv_res_t launch_payload(lv_obj_t *list)
if (size < 0x30000) if (size < 0x30000)
{ {
reloc_patcher(PATCHED_RELOC_ENTRY, EXT_PAYLOAD_ADDR, ALIGN(size, 0x10)); reloc_patcher(PATCHED_RELOC_ENTRY, EXT_PAYLOAD_ADDR, ALIGN(size, 0x10));
hw_reinit_workaround(false, byte_swap_32(*(u32 *)(buf + size - sizeof(u32)))); hw_deinit(false, byte_swap_32(*(u32 *)(buf + size - sizeof(u32))));
} }
else else
{ {
reloc_patcher(PATCHED_RELOC_ENTRY, EXT_PAYLOAD_ADDR, 0x7000); reloc_patcher(PATCHED_RELOC_ENTRY, EXT_PAYLOAD_ADDR, 0x7000);
hw_reinit_workaround(true, 0); hw_deinit(true, 0);
} }
void (*ext_payload_ptr)() = (void *)EXT_PAYLOAD_ADDR; void (*ext_payload_ptr)() = (void *)EXT_PAYLOAD_ADDR;