From 2424ecc4f043427fda9ee4b2ca85286c1e612d44 Mon Sep 17 00:00:00 2001 From: CTCaer Date: Wed, 2 Dec 2020 00:57:32 +0200 Subject: [PATCH] Disable coreboot.rom chainloading for T210B01 Unlike all RCM payloads that are based on hekate's hwinit, coreboot does full power management before sdram init is run. Because of that and because it doesn't support T210B01, it does not hang as expected and configures all regulators and pins which can be dangerous! --- bootloader/main.c | 9 +++++++++ nyx/nyx_gui/nyx.c | 8 ++++++++ 2 files changed, 17 insertions(+) diff --git a/bootloader/main.c b/bootloader/main.c index 4c1e5f6..54be61f 100644 --- a/bootloader/main.c +++ b/bootloader/main.c @@ -233,6 +233,15 @@ int launch_payload(char *path, bool update) { coreboot_addr = (void *)(COREBOOT_END_ADDR - size); buf = coreboot_addr; + if (h_cfg.t210b01) + { + f_close(&fp); + + gfx_con.mute = 0; + EPRINTF("T210B01: Coreboot not allowed!"); + + goto out; + } } if (f_read(&fp, buf, size, NULL)) diff --git a/nyx/nyx_gui/nyx.c b/nyx/nyx_gui/nyx.c index 79263d9..25d7653 100644 --- a/nyx/nyx_gui/nyx.c +++ b/nyx/nyx_gui/nyx.c @@ -169,6 +169,14 @@ lv_res_t launch_payload(lv_obj_t *list) { coreboot_addr = (void *)(COREBOOT_END_ADDR - size); buf = coreboot_addr; + if (h_cfg.t210b01) + { + f_close(&fp); + + EPRINTF("T210B01: Coreboot not allowed!"); + + goto out; + } } if (f_read(&fp, buf, size, NULL))