Messages in this thread | | | From | Jos Hulzink <> | Subject | Re: [PATCH] Use correct x86 reboot vector | Date | Sun, 11 May 2003 11:37:29 +0200 |
| |
On Sunday 11 May 2003 05:50, Linus Torvalds wrote: > On Sat, 10 May 2003, Jamie Lokier wrote: > > Jos Hulzink wrote: > > > For the sake of bad behaving BIOSes however, I'd vote for the f000:fff0 > > > vector, unless someone can hand me a paper that says it is wrong. > > > > I agree, for the simple reason that it is what the chip does on a > > hardware reset signal. > > Hmm.. Doesnt' a _real_ hardware reset actually use a magic segment that > isn't even really true real mode? I have this memory that the reset value > for a i386 has CS=0xf000, but the shadow base register actually contains > 0xffff0000. In other words, the CPU actually starts up in "unreal" mode, > and will fetch the first instruction from physical address 0xfffffff0. > > At least that was true on an original 386. It's something that could > easily have changed since. > > In other words, you're all wrong. Nyaah, nyaah. > > Linus
Source: 80386 Programmers Reference Manual, Intel (1986)
EIP is set 0000FFF0H CS is set F000H
After RESET, lines A31-A20 are FORCED high till a far JMP is done.
So, unfortunately we have to say Linus is right once again. Damn ;-) My conclusion is that we are unable to use the CPU reset as the reference for warm boots, for we can't control A312-A20 in real mode. But as far as I can see, my arguments still hold...
Jos Jos - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |