[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: PCI reset on soft boot


No such requirement.

Many systems do not generate a PCI bus segment 
reset on a "soft" boot via CTRL-ALT-DEL.  All that happens
is the keyboard interrupt that results from Ctrl-Alt-Del
sends the BIOS to its restart vector, but many items during
POST are often different.  (For instance memory is often
not setup and tested again, since its still OK).  PCI segments
are usually not reset, because on most chipsets this causes
the keyboard controller to get reset, which tends to confuse
the BIOS.... so the BIOS simply does not do it.

Some systems do perform a PCI reset on a warm boot, usually because they
don't really perform a warm boot.  Many systems simply detect a
warm boot (ctrl-alt-del) and then hit a chipset register to 
actually reset the entire machine.  This usually gets propogated
into a PCI bus segment reset as well.  The BIOS comes up again,
and basically runs through its cold boot sequence.

But there is not requirement for a system to issue a PCI reset
except 1), when power first comes up.  2) On Hot Plug PCI when
a card is inserted. 3) when power is restored from the lower power
bus state of the PCI power management spec.  (I can't remember the 
state number).  

Your PCI device should implement a near-reset bit that resets
all of its state machines, but does not clear the BAR's and config
space.  (Well actually set the config space to what makes sense,
but BAR, INT_LINE, command, max lat., (things set by system BIOS)
should not be reset.)

Without such a feature in your silicon.  Your PCI oprom INIT routine
is going to have to do the moral equivalent of detecting and resetting
the state of your adapter, one bit at a time.... to a happy state.
On a video adapter, detecting and setting the state seems like it might
be quite a chore.

-David O'Shea
BIOS Architect
Intel Corp.

-----Original Message-----
From: Jeff Dahlin [mailto:JDahlin@appiangraphics.com]
Sent: Thursday, April 27, 2000 4:58 PM
Subject: PCI reset on soft boot

I apologize first for bringing up an OS dependant issue, but I have not been
able to find this out through other channels.

On some PC systems that we are working with we have seen no reset on the PCI
bus when a soft boot (Ctrl-Alt-Del) occurs.  This tends to wreak havoc with
our board since our device ends up in an unknown state when the boot ROM

Does anyone know of a requirement (PCI or otherwise) for a system to issue a
reset at times other than power up?

Jeff Dahlin
Senior Project Engineer
Appian Graphics