Marc Jones wrote: > How should this work in V3? The current implementation doesn't really > make sense to me. See do_normal_boot() in V2. > > I think that stage0+1 is the equivalent of V2 failover. > In stage1 the normal boot flag cmos byte is checked to see if the normal > or the fallback image should be loaded. > > The cmos byte is not documented well. I think it is as follows: > [7-4] - boot count > [3-2] - not defined > [1] - last boot flag > [0] - normal boot flag > > Boot count increments until reset if normal boot flag is set. > > Last boot flag is set anytime boot count is less than max boot count. > > Normal boot flag is cleared if boot count exceeds max boot count. Normal > boot flag doesn't seem that it can ever be set? > > Currently in V3, if CMOS checksum is invalid (CMOS is cleared/not setup) > then the boot count is maxed and the fallback image is forced. I don't > think this is the correct thing to do. If checksum is bad we should > clear cmos, set the boot count to 0, and try to do a normal boot. If > normal boot fails the CMOS will checksum this time around. The boot > count flag should be incremented should try again until max boot count > is exceeded. Then the normal boot flag should be cleared and fallback > image used. The last item is about the last boot flag. I don't think > that it is needed. > > > Thoughts and comments? > Marc >
Also, the boot count needs to be cleared at the end of LinuxBIOS. I think that this what the last boot flag was trying to do. Marc -- Marc Jones Senior Software Engineer (970) 226-9684 Office mailto:[EMAIL PROTECTED] http://www.amd.com/embeddedprocessors -- linuxbios mailing list linuxbios@linuxbios.org http://www.linuxbios.org/mailman/listinfo/linuxbios