- Initial checkin of the freebios2 tree
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@784 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
25
src/lib/fallback_boot.c
Normal file
25
src/lib/fallback_boot.c
Normal file
@ -0,0 +1,25 @@
|
||||
#include <console/console.h>
|
||||
#include <part/fallback_boot.h>
|
||||
#include <pc80/mc146818rtc.h>
|
||||
#include <arch/io.h>
|
||||
|
||||
void boot_successful(void)
|
||||
{
|
||||
/* Remember I succesfully booted by setting
|
||||
* the initial boot direction
|
||||
* to the direction that I booted.
|
||||
*/
|
||||
unsigned char index, byte;
|
||||
index = inb(RTC_PORT(0)) & 0x80;
|
||||
index |= RTC_BOOT_BYTE;
|
||||
outb(index, RTC_PORT(0));
|
||||
|
||||
byte = inb(RTC_PORT(1));
|
||||
byte &= 0xfe;
|
||||
byte |= (byte & 2) >> 1;
|
||||
|
||||
/* If we are in normal mode set the boot count to 0 */
|
||||
if(byte & 1)
|
||||
byte &= 0x0f;
|
||||
outb(byte, RTC_PORT(1));
|
||||
}
|
Reference in New Issue
Block a user