Title: Functions for Virtualization API
1Functions for Virtualization API
- T11/07-427v0
- 25 July 2007
- Bob Nixon
2Review The HBA API virtualization model
?
Green borders carryover from SM-HBA
Bold borders physical objects
3Goals
?
- Flexibility to permit a variety of support
options - from legacy SM-HBA
- to fully dynamic application controlled
virtualization - For all virtual objects, functions to
- Create
- Delete
- Link and unlink
- Traverse links in either direction
- For all physical objects
- Automatically maintained by driver/library
- No create/delete
- There are all the necessary events for tracking
changes in virtual element configuration and
status - But I dont know what they are yet
4A use case Discovery of physical inventory
?
Bold borders physical objects
SMHBA_GetAllPAdapters
SMHBA_GetPhysForAdapter
SMHBA_GetBusAddress
SMHBA_GetPhyStatistics
5SMHBA_AddFabric
?
6SMHBA_LinkFabricToPhy
?
7Add and link another Fabric (we got VSAN!)
?
8SMHBA_StartFabricsOnPhy (start VSANs)
?
9Another HBA on the same Fabrics?
?
but for now, Lets not go there
just link the Phys to the existing Fabrics
10SMHBA_AddAdapter
?
11SMHBA_LinkAdapterToPAdapter
?
12SMHBA_AddBusAddr
?
13SMHBA_AddPort
?
14SMHBA_LinkPortToAdapter
?
15SMHBA_LinkPortToFabric
?
16SMHBA_LinkPortToPhy (which enables it)
?
17Add and link up another port
?
SMHBA_AddPort
SMHBA_LinkPortToHBA
SMHBA_LinkPortToFabric
SMHBA_LinkPortToPhy
18Migrate Port to another HBA!
?
SMHBA_RemovePortFromHBA
SMHBA_RemovePortFromFabric
SMHBA_RemovePortFromPhy
19Migrate Port to another HBA!
?
SMHBA_LinkPortToHBA
SMHBA_LinkPortToFabric
SMHBA_LinkPortToPhy
20Enumerations There are a Ton of New Ones
- For Phys
- For Adapters
- For Ports
- For Fabrics
21Enumerating PHYs
?
SMHBA_GetAllPhys
SMHBA_GetFCPhyAttributes
SMHBA_GetPhyStatistics
22Enumerations for PHYs and Adapters
?
SMHBA_GetAdaptersForPhy
SMHBA_GetPhysForAdapter
23Enumerations for PHYs and Fabrics
?
SMHBA_GetFabricsForPhy
SMHBA_GetPhysForFabric
SMHBA_GetFabricAttributesForPhy
24Enumerations for PHYs and Ports
?
SMHBA_GetPortsOnPhy
SMHBA_GetPhysOnPort
Note SAS would reverse these A port may have
several PHYs, but a PHY supports just one port.
25Enumerations for Adapters
?
SMHBA_GetAllAdapters
SMHBA_GetAllPAdapters
SMHBA_GetAdapterAttributes
SMHBA_GetBusAddress
26Enumerations for Adapters and PAdapters
?
SMHBA_GetAdaptersForPAdapter
SMHBA_GetPAdapterForAdapter
27Enumerations for Adapters and Ports
?
SMHBA_GetPortsOnAdapter
SMHBA_GetAdapterForPort
28Enumerations for Ports and Fabrics
?
SMHBA_GetAllPorts
SMHBA_GetAllFabrics
SMHBA_GetPortsOnFabric
SMHBA_GetPortAttributesByWWN
SMHBA_GetFabricAttributesForPort
29Enumerations for other things
?
SMHBA_GetAdaptersForPhy
SMHBA_GetPhysForAdapter
SMHBA_GetFabricsForPhy
SMHBA_GetPhysForFabric
SMHBA_GetPortsOnPhy
SMHBA_GetPhysOnPort