The
PCI_IOV_INIT()
method is called by the PCI Single-Root I/O Virtualization (SR-IOV)
infrastucture when the user requests that SR-IOV be enabled on a Physical
Function (PF).
The number of Virtual Functions (VFs) that will be created is passed to this
method in the
num_vfs
argument.
If the driver requested device-specific PF configuration parameters via a PF
schema in its call to
pci_iov_attach(9),
those parameters will be available in the
pf_config
argument.
All configuration parameters that were either set as required parameters or that
had a default value set in the PF schema are guaranteed to be present in
pf_config.
Configuration parameters that were neither set as required nor were given a
default value are optional and may or may not be present in
pf_config.
pf_config
will not contain any configuration parameters that were not specified in the PF
schema.
All configuration parameters will have the correct type and are in the range of
valid values specified in the schema.
If this method returns successfully, then this method will not be called again
on the same device until after a call to
PCI_IOV_UNINIT(9).