[coreboot] the seabios reboot in the post process

Kevin O'Connor kevin at koconnor.net
Thu Mar 5 01:32:06 CET 2009


On Wed, Mar 04, 2009 at 10:15:21AM +0000, wei yang wrote:
> When I use the seabios as the payload, I got a strange issue.
> In the seabios flow:
> 
> Post->timer_setup->rtc_updating->inb_cmos function
> 
> when run the inb_cmos, it will reboot on the inb operation.
> 
> inb_cmos disassemables to fllowing:
> out 0x70, value
> in value, 0x71.   ----> run here to make the reboot happen.
> 
> 0x70 is the CMOS index port, 0x71 is the CMOS data port.
> 
> I suspect the "in value, 0x71" operation causes a exception and the
> seabios doesn't have real IDT, so it then make the reboot.
> 
> but why it cause the exception is a question for me?
> 
> since IO port 0x70 also reponsible for the NMI enble/disable, is it
> caused the error?

I haven't seen this before.  It would be odd for port 0x70 to control
NMI, because it is usually used for rtc access.

-Kevin




More information about the coreboot mailing list