on MrChromebox's Custom Firmware

while using the SeaBios payload

with MrChromebox's SMM variable in coreboot.

This is required even if we are booting off of a USB,

since it will give MMC errors in Linux and Windows 10

won't see it.

See comments and code in ./src/boot.c for more information.

Signed-off-by: Christopher Lentocha <christopherericlento...@gmail.com>
---
src/boot.c | 15 +++++++++++++++
1 file changed, 15 insertions(+)

diff --git a/src/boot.c b/src/boot.c
index 1effd80..8433f51 100644
--- a/src/boot.c
+++ b/src/boot.c
@@ -871,6 +871,21 @@ call_boot_entry(struct segoff_s bootsegip, u8 bootdrv)
// Set the magic number in ax and the boot drive in dl.
br.dl = bootdrv;
br.ax = 0xaa55;
+ // Fix Bay Trail Chromebook Bootup
+ // on MrChromebox's Custom Firmware
+ // while using the SeaBios payload
+ // with MrChromebox's SMM variable in coreboot.
+ // This is required even if we are booting off of a USB,
+ // since it will give MMC errors in Linux and Windows 10
+ // won't see it.
+ outb(0xcd, 0xb2);
+ // Don't Add the line above this comment to CBFS booting,
+ // because EDK2 as 2nd payload breaks,
+ // since its already being applied there too,
+ // and we should expect all CBFS payloads in ROM to do
+ // what we are doing here.
+ // The same bug is also in EDK2, so this line would need to be
+ // added in a similar way for EDK2 code.
farcall16(&br);
}

--
2.35.1


_______________________________________________
SeaBIOS mailing list -- seabios@seabios.org
To unsubscribe send an email to seabios-le...@seabios.org

Reply via email to