Can XP embedded re-enumerate the PCI bus when a system has booted?

I'm about to design a PC104+ board for a client with a largish FPGA on it, this will be driven by an SBC running XP embedded.

A couple of factors mean there could be a delay of ~1 second until the FPGA has fully configured and I'm worried the SBC could have enumerated the PCI bus before the FPGA is ready to respond.

I know in Linux you can force the system to re-enumerate the bus fairly easily, can this be done in XP embedded too?

Thanks for any pointers,

Nial.

Reply to
Nial Stewart
Loading thread data ...

I've never seen it done.

Reply to
Jim Stewart

I don't run XP so take this for what it's worth...

In W2K, the *user* can force a SCSI bus to be re-enumerated under Device Manager (scan for hardare changes). Have you tried something like this?

Can you also just have your BIOS pause for a second or two during the boot sequence? Or, other similar tricks to delay when the enumeration happens (is this process documented in detail anywhere that you could examine)?

Reply to
D Yuniskis

The simple way out of your predicament - which will not be broken by future OS updates or driver incompatibilities - is to have the FPGA hold the system in reset until it is ready for action.

Having said that, yes, XPe *should* support doing this, but I do not know exactly how you would do it programmatically.

Reply to
larwe

The FPGA would not be able to hold the system in reset before it's loaded, without external hardware. It could be a simple capacitor, timer or micro. A micro can also handle the FPGA loading if necessary.

Reply to
linnix

The "external hardware" to which you refer could be as little as a resistor and a FET connected to a spare FPGA pin, to keep the system in reset until the FPGA's output goes from tristate to asserted.

Reply to
larwe

(BTW we can safely infer that there is hardware loading the FPGA- it's not being loaded from Windows - no way could Windows start and init the FPGA within 1 second!)

Reply to
larwe

But we don't know if the reset signal will also reset the FPGA. If depends on the design.

Reply to
linnix

Thanks for the feedback guys.

Aye, I'm planning on Active Serial config for simplicity so the FPGA self loads from a serial flash device.

Nial.

Reply to
Nial Stewart

This is early days of the project, I'm just thinking ahead.

Is the SCSI bus not a special case to allow hot swapping of drives?

This might be an option if we did have a problem.

Hopefully with a bit of forward planning we won't.

Nial.

Reply to
Nial Stewart

Some boards have a watchdog timer that could help(perhaps with a 'latch-out' on the FPGA board to disallow a second reset?). Best approach is probably configure/customize the bios somehow.

Reply to
1 Lucky Texan

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.