Hi Guys,
I am trying to implement SRIOV_DEVICE_INTERFACE_STANDARD_2 for my SRIOV physical function and need some clarification. There is a function called SRIOV_GET_RESOURCE_FOR_BAR which I am not sure how it could work. The function needs the PF function driver to return the CM_PARTIAL_RESOURCE_DESCRIPTOR for the specified VFs and specified BarIndex. Here is how the function looks like:-
SRIOV_GET_RESOURCE_FOR_BAR SriovGetResourceForBar;
NTSTATUS SriovGetResourceForBar(
[in] PVOID Context,
[in] USHORT VfIndex,
[in] USHORT BarIndex,
[out] PCM_PARTIAL_RESOURCE_DESCRIPTOR Resource
);
My question is very basic. How does the PF function driver get the resource list for the VFs? The PF and VF function drivers would not have access to each other’s PARTIAL_RESOURCE_DESCRIPTOR that comes in “PrepareHardware” for each driver.
Are the calls different in HyperV environment or something?
How does this work?
Thanks,
Aj