- Maybe we should hard code the Normal / Fallback ("BOOT_BYTE") into
the cmos.layout parser tool so anyone who tries to use that byte gets a decent error.
It seems more flexible to use the value from cmos.layout unless there isn't one, then hard code it. But I agree we don't want it to be part of the checksum.
- Should Fallback always ignore CMOS? I think it would make more sense
if Normal and Fallback were the same and both would write a decent set of CMOS defaults in the case of a bad checksum.
Agreed. The way we build each image separately now, you could have a different set of defaults for Normal and Fallback.
- Ok, so what should happen when bad settings are detected?
2.1 Go back to fallback (the same path like when the normal rom image is corrupted)? 2.1.1 leave BOOT_BYTE alone ...? 2.1.2 dump a set of cmos default values 2.2 Stay in Normal 2.2.1 leave BOOT_BYTE alone ...? 2.2.2 dump a set of cmos default values
Stay in Normal, set boot count to maximum, set CMOS to default.
Then if it fails, fallback is tried next. I guess it would be nice to have fallback set CMOS to its default values if it gets selected because the boot count was too high. Booting fallback with normal's defaults doesn't seem wise.
- Do we want an extra "checksum" for BOOT_BYTE?
Might be good. One byte seems cheap.
Thanks, Myles