Has anyone done this already for MS7308E?
- Levi

On Mon, 11 Dec 2000, you wrote:
> On Mon, Dec 11, 2000 at 02:07:50PM -0500, Levi Khatskevitch wrote:
> > Hi,
> > I see that software reset (like 'reboot') doesn't work with linuxbios. Is it a
> > known issue? Can it theoreticaly be fixed?
> 
> I found and fixed this problem on my board quite a while back.  With some
> explanation, it shouldn't be too hard for you guys to figure out something
> that works.
> 
> First thing you need to do is go and read arch/i386/kernel/process.c,
> where the software reset functions live.  Look at machine_restart().
> There you'll find the linux kernel approach toward rebooting the machine.
> It can use the BIOS to reboot the machine, or try to do it itself.
> Obviously the BIOS attack won't work, so I suggest you go and check that
> your kernel isn't trying to do that.
> 
> If it's not trying to use the bios, this is what the kernel does:
> 
>       do this a bunch of times:  outb(0xfe,0x64);
>       (I have no idea what that does).
>       otherwise, try and triple-fault the CPU to force a reset.
> 
> None of these worked on my board (custom embedded stuff), but all you need
> to do is figure out how your board is _supposed_ to be reset, and punch
> that code into machine_restart().  In my case, I bang on the reset
> register in the southbridge chip:
> 
>        const unsigned short PIIX4_RESET_REGISTER=0xCF9;
>        outb_p(2, PIIX4_RESET_REGISTER);
>        outb_p(6, PIIX4_RESET_REGISTER);
> 
> Good luck.
> 
> Eric
-- 
Levi Khatskevitch
CTO
Cachier, Corp.
575 Grand St., Suite E306
New York, NY 10002

Reply via email to