High Availability Software for the Intel® NetStructureTM ZT 4901 Technical Product Specification 75
Redundant Host API
SlotPath - the slot path from the root bus to the device; represented as a null-
terminated character string
BusNumber - the bus number for the device. This value is 16 bit to accommodate
possible future extensions to PCI that allow more than 256 PCI buses in
the system
DeviceNumber the device number for the device
FunctionNumber the function number for the device
Device configuration attributes:
Attributes from VendorID to HeaderType represent the PCI configuration space attributes of the
device with the same names.
The field NeedsReset has a special meaning. It is set to RESET_REQUIRED or UNKNOWN
before the callback is called. The callback should set this field to RESET_NOT_REQUIRED or
RESET_REQUIRED on return.
The callback should set this field to RESET_NOT_REQUIRED if it considers that no reset is
necessary for this device before releasing the bus lock (for example, if the device can be set to a
safe state by the device driver or is in a safe state already).
The callback should set this field to RESET_REQUIRED if it considers that the reset is necessary
for the device.
No descriptors are submitted for empty slots or for the slots occupied by devices that the
infrastructure considers safe for the host.
If a PCI-PCI bridge occupies some physical slot, and some devices below this bridge are in unsafe
state, both descriptors for the bridge and for the devices below it in unsafe state are present. In the
array, the descriptor for the bridge precedes descriptors for the devices below it.
The actions of the infrastructure after the callback returns are specified by the following rules:
If the parameter SlotResetSupported = FALSE (the infrastructure does not support per-slot
resets), and at least one descriptor has NeedsReset = RESET_REQUIRED, the whole domain
is reset before releasing the bus lock.
Otherwise, for each physical slot in the domain, if SlotResetSupported = TRUE, and there is a
descriptor for the given physical slot in the array with NeedsReset = RESET_REQUIRED,
this physical slot is reset.
Otherwise, if there is a PCI-PCI bridge device in the given physical slot, and there is at least
one descriptor in the array for a device below this bridge (or for this bridge itself) with
NeedsReset = RESET_REQUIRED, this physical slot is reset.
As a consequence, there is no reset if the callback clears NeedsReset in all descriptors submitted to
it.
6.2.6.5 RhDisableNotification
Prototype: