summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeorge Liu <liuxiwei@inspur.com>2023-02-21 09:38:49 +0300
committerGeorge Liu <liuxiwei@inspur.com>2023-02-24 03:18:25 +0300
commit7da1c58890e82194ff83ca6c8d55b5c327f2444a (patch)
tree23e1981c3d1622435d931169c38d0580a4647b6b
parent03457a9c803cfd000093ba842a38876e384c7452 (diff)
downloadbmcweb-7da1c58890e82194ff83ca6c8d55b5c327f2444a.tar.xz
Add Ports schema
Based on DSP8010_2022.3 and adds the Ports schema. The port is a child of the FabricAdapters schema, and the PortCollection schema will collect all Ports information, each Port contains Location, LocationIndicatorActive, etc., and these functions will be implemented in the next patch. Tested: built bmcweb successfully and validator passes. Signed-off-by: George Liu <liuxiwei@inspur.com> Change-Id: I9adfa852c3b9c5deaace0c958e477a67d49f4939
-rw-r--r--redfish-core/include/schemas.hpp2
-rwxr-xr-xscripts/update_schemas.py2
-rw-r--r--static/redfish/v1/$metadata/index.xml49
-rw-r--r--static/redfish/v1/JsonSchemas/Port/Port.json2158
-rw-r--r--static/redfish/v1/JsonSchemas/PortCollection/PortCollection.json136
-rw-r--r--static/redfish/v1/schema/PortCollection_v1.xml106
-rw-r--r--static/redfish/v1/schema/Port_v1.xml1597
7 files changed, 4050 insertions, 0 deletions
diff --git a/redfish-core/include/schemas.hpp b/redfish-core/include/schemas.hpp
index e9e5fe5f7f..8267338867 100644
--- a/redfish-core/include/schemas.hpp
+++ b/redfish-core/include/schemas.hpp
@@ -79,6 +79,8 @@ namespace redfish
"PCIeFunctionCollection",
"PCIeSlots",
"PhysicalContext",
+ "Port",
+ "PortCollection",
"Power",
"PowerSubsystem",
"PowerSupply",
diff --git a/scripts/update_schemas.py b/scripts/update_schemas.py
index 022396d1e6..da7c3acc6e 100755
--- a/scripts/update_schemas.py
+++ b/scripts/update_schemas.py
@@ -87,6 +87,8 @@ include_list = [
"PCIeFunctionCollection",
"PhysicalContext",
"PCIeSlots",
+ "Port",
+ "PortCollection",
"Power",
"PowerSubsystem",
"PowerSupply",
diff --git a/static/redfish/v1/$metadata/index.xml b/static/redfish/v1/$metadata/index.xml
index 36901d0e3c..dcf7de3940 100644
--- a/static/redfish/v1/$metadata/index.xml
+++ b/static/redfish/v1/$metadata/index.xml
@@ -1896,6 +1896,55 @@
<edmx:Reference Uri="/redfish/v1/schema/PhysicalContext_v1.xml">
<edmx:Include Namespace="PhysicalContext"/>
</edmx:Reference>
+ <edmx:Reference Uri="/redfish/v1/schema/Port_v1.xml">
+ <edmx:Include Namespace="Port"/>
+ <edmx:Include Namespace="Port.v1_0_0"/>
+ <edmx:Include Namespace="Port.v1_0_1"/>
+ <edmx:Include Namespace="Port.v1_0_2"/>
+ <edmx:Include Namespace="Port.v1_0_3"/>
+ <edmx:Include Namespace="Port.v1_0_4"/>
+ <edmx:Include Namespace="Port.v1_0_5"/>
+ <edmx:Include Namespace="Port.v1_0_6"/>
+ <edmx:Include Namespace="Port.v1_0_7"/>
+ <edmx:Include Namespace="Port.v1_0_8"/>
+ <edmx:Include Namespace="Port.v1_0_9"/>
+ <edmx:Include Namespace="Port.v1_0_10"/>
+ <edmx:Include Namespace="Port.v1_1_0"/>
+ <edmx:Include Namespace="Port.v1_1_1"/>
+ <edmx:Include Namespace="Port.v1_1_2"/>
+ <edmx:Include Namespace="Port.v1_1_3"/>
+ <edmx:Include Namespace="Port.v1_1_4"/>
+ <edmx:Include Namespace="Port.v1_1_5"/>
+ <edmx:Include Namespace="Port.v1_1_6"/>
+ <edmx:Include Namespace="Port.v1_1_7"/>
+ <edmx:Include Namespace="Port.v1_2_0"/>
+ <edmx:Include Namespace="Port.v1_2_1"/>
+ <edmx:Include Namespace="Port.v1_2_2"/>
+ <edmx:Include Namespace="Port.v1_2_3"/>
+ <edmx:Include Namespace="Port.v1_2_4"/>
+ <edmx:Include Namespace="Port.v1_2_5"/>
+ <edmx:Include Namespace="Port.v1_2_6"/>
+ <edmx:Include Namespace="Port.v1_3_0"/>
+ <edmx:Include Namespace="Port.v1_3_1"/>
+ <edmx:Include Namespace="Port.v1_3_2"/>
+ <edmx:Include Namespace="Port.v1_3_3"/>
+ <edmx:Include Namespace="Port.v1_3_4"/>
+ <edmx:Include Namespace="Port.v1_4_0"/>
+ <edmx:Include Namespace="Port.v1_4_1"/>
+ <edmx:Include Namespace="Port.v1_4_2"/>
+ <edmx:Include Namespace="Port.v1_4_3"/>
+ <edmx:Include Namespace="Port.v1_5_0"/>
+ <edmx:Include Namespace="Port.v1_5_1"/>
+ <edmx:Include Namespace="Port.v1_5_2"/>
+ <edmx:Include Namespace="Port.v1_6_0"/>
+ <edmx:Include Namespace="Port.v1_6_1"/>
+ <edmx:Include Namespace="Port.v1_6_2"/>
+ <edmx:Include Namespace="Port.v1_7_0"/>
+ <edmx:Include Namespace="Port.v1_8_0"/>
+ </edmx:Reference>
+ <edmx:Reference Uri="/redfish/v1/schema/PortCollection_v1.xml">
+ <edmx:Include Namespace="PortCollection"/>
+ </edmx:Reference>
<edmx:Reference Uri="/redfish/v1/schema/Power_v1.xml">
<edmx:Include Namespace="Power"/>
<edmx:Include Namespace="Power.v1_0_0"/>
diff --git a/static/redfish/v1/JsonSchemas/Port/Port.json b/static/redfish/v1/JsonSchemas/Port/Port.json
new file mode 100644
index 0000000000..da42a84b91
--- /dev/null
+++ b/static/redfish/v1/JsonSchemas/Port/Port.json
@@ -0,0 +1,2158 @@
+{
+ "$id": "http://redfish.dmtf.org/schemas/v1/Port.v1_8_0.json",
+ "$ref": "#/definitions/Port",
+ "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
+ "copyright": "Copyright 2014-2022 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
+ "definitions": {
+ "Actions": {
+ "additionalProperties": false,
+ "description": "The available actions for this resource.",
+ "longDescription": "This type shall contain the available actions for this resource.",
+ "patternProperties": {
+ "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
+ "description": "This property shall specify a valid odata or Redfish property.",
+ "type": [
+ "array",
+ "boolean",
+ "integer",
+ "number",
+ "null",
+ "object",
+ "string"
+ ]
+ }
+ },
+ "properties": {
+ "#Port.Reset": {
+ "$ref": "#/definitions/Reset"
+ },
+ "#Port.ResetPPB": {
+ "$ref": "#/definitions/ResetPPB"
+ },
+ "Oem": {
+ "$ref": "#/definitions/OemActions",
+ "description": "The available OEM-specific actions for this resource.",
+ "longDescription": "This property shall contain the available OEM-specific actions for this resource."
+ }
+ },
+ "type": "object"
+ },
+ "CXL": {
+ "additionalProperties": false,
+ "description": "CXL properties for a port.",
+ "longDescription": "This type shall contain CXL-specific properties for a port.",
+ "patternProperties": {
+ "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
+ "description": "This property shall specify a valid odata or Redfish property.",
+ "type": [
+ "array",
+ "boolean",
+ "integer",
+ "number",
+ "null",
+ "object",
+ "string"
+ ]
+ }
+ },
+ "properties": {
+ "Congestion": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/Congestion"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The congestion properties for this CXL port.",
+ "longDescription": "This property shall contain the congestion properties for this CXL port.",
+ "versionAdded": "v1_8_0"
+ },
+ "ConnectedDeviceMode": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/ConnectedDeviceMode"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The connected device mode.",
+ "longDescription": "This property shall contain the CXL Specification-defined 'Connected Device Mode'.",
+ "readonly": true,
+ "versionAdded": "v1_8_0"
+ },
+ "ConnectedDeviceType": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/ConnectedDeviceType"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The connected device type.",
+ "longDescription": "This property shall contain the CXL Specification-defined 'Connected Device Type'.",
+ "readonly": true,
+ "versionAdded": "v1_8_0"
+ },
+ "CurrentPortConfigurationState": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/CurrentPortConfigurationState"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The current port configuration state.",
+ "longDescription": "This property shall contain the CXL Specification-defined 'Current Port Configuration State'.",
+ "readonly": true,
+ "versionAdded": "v1_8_0"
+ },
+ "MaxLogicalDeviceCount": {
+ "description": "The maximum number of logical devices supported.",
+ "longDescription": "This property shall contain the CXL Specification-defined 'Supported LD Count'.",
+ "readonly": true,
+ "type": [
+ "integer",
+ "null"
+ ],
+ "versionAdded": "v1_8_0"
+ },
+ "QoSTelemetryCapabilities": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/QoSTelemetryCapabilities"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The quality of service telemetry capabilities for this CXL port.",
+ "longDescription": "This property shall contain the quality of service telemetry capabilities for this CXL port.",
+ "versionAdded": "v1_8_0"
+ },
+ "TemporaryThroughputReductionEnabled": {
+ "description": "Indicates whether temporary throughput reduction is enabled.",
+ "longDescription": "This property shall indicate whether the CXL Specification-defined 'Temporary Throughput Reduction' mechanism is enabled.",
+ "readonly": false,
+ "type": [
+ "boolean",
+ "null"
+ ],
+ "versionAdded": "v1_8_0"
+ }
+ },
+ "type": "object"
+ },
+ "ConfiguredNetworkLink": {
+ "additionalProperties": false,
+ "description": "A set of link settings that a port is configured to use for autonegotiation.",
+ "longDescription": "This type shall contain a set of link settings that a port is configured to use for autonegotiation.",
+ "patternProperties": {
+ "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
+ "description": "This property shall specify a valid odata or Redfish property.",
+ "type": [
+ "array",
+ "boolean",
+ "integer",
+ "number",
+ "null",
+ "object",
+ "string"
+ ]
+ }
+ },
+ "properties": {
+ "ConfiguredLinkSpeedGbps": {
+ "description": "The link speed per lane this port is configured to use for autonegotiation.",
+ "longDescription": "This property shall contain the network link speed per lane this port is configured to allow for autonegotiation purposes. This value includes overhead associated with the protocol.",
+ "readonly": false,
+ "type": [
+ "number",
+ "null"
+ ],
+ "units": "Gbit/s",
+ "versionAdded": "v1_3_0"
+ },
+ "ConfiguredWidth": {
+ "description": "The link width this port is configured to use for autonegotiation in conjunction with the link speed.",
+ "longDescription": "This property shall contain the network link width this port is configured to use for autonegotiation purposes.",
+ "readonly": false,
+ "type": [
+ "integer",
+ "null"
+ ],
+ "versionAdded": "v1_3_0"
+ }
+ },
+ "type": "object"
+ },
+ "Congestion": {
+ "additionalProperties": false,
+ "description": "The congestion properties for a CXL port.",
+ "longDescription": "This type shall contain the congestion properties for a CXL port.",
+ "patternProperties": {
+ "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
+ "description": "This property shall specify a valid odata or Redfish property.",
+ "type": [
+ "array",
+ "boolean",
+ "integer",
+ "number",
+ "null",
+ "object",
+ "string"
+ ]
+ }
+ },
+ "properties": {
+ "BackpressureSampleInterval": {
+ "description": "The interval for the CXL Specification-defined 'Egress Port Congestion' mechanism to take samples in nanoseconds.",
+ "longDescription": "This property shall contain the CXL Specification-defined 'Backpressure Sample Interval' in nanoseconds.",
+ "readonly": false,
+ "type": [
+ "integer",
+ "null"
+ ],
+ "versionAdded": "v1_8_0"
+ },
+ "CompletionCollectionInterval": {
+ "description": "The interval for the CXL Specification-defined 'Completion Counting' mechanism to collect the number of transmitted responses in a single counter in nanoseconds.",
+ "longDescription": "This property shall contain the CXL Specification-defined 'Completion Collection Interval' in nanoseconds.",
+ "readonly": false,
+ "type": [
+ "integer",
+ "null"
+ ],
+ "versionAdded": "v1_8_0"
+ },
+ "CongestionTelemetryEnabled": {
+ "description": "Indicates whether congestion telemetry collection is enabled for this port.",
+ "longDescription": "This property shall indicate whether congestion telemetry collection is enabled for this port.",
+ "readonly": false,
+ "type": [
+ "boolean",
+ "null"
+ ],
+ "versionAdded": "v1_8_0"
+ },
+ "EgressModeratePercentage": {
+ "description": "The threshold for moderate egress port congestion as a percentage.",
+ "longDescription": "This property shall contain the threshold for moderate egress port congestion for the CXL Specification-defined 'Egress Port Congestion' mechanism as a percentage.",
+ "readonly": false,
+ "type": [
+ "integer",
+ "null"
+ ],
+ "units": "%",
+ "versionAdded": "v1_8_0"
+ },
+ "EgressSeverePercentage": {
+ "description": "The threshold for severe egress port congestion as a percentage.",
+ "longDescription": "This property shall contain the CXL Specification-defined 'Egress Severe Percentage' as a percentage.",
+ "readonly": false,
+ "type": [
+ "integer",
+ "null"
+ ],
+ "units": "%",
+ "versionAdded": "v1_8_0"
+ },
+ "MaxSustainedRequestCmpBias": {
+ "description": "The estimated maximum sustained sum of requests and recent responses across the entire device, serving as the basis for the CXL Specification-defined 'QoS Limit Fraction'.",
+ "longDescription": "This property shall contain the CXL Specification-defined 'ReqCmpBasis'.",
+ "readonly": false,
+ "type": [
+ "integer",
+ "null"
+ ],
+ "versionAdded": "v1_8_0"
+ }
+ },
+ "type": "object"
+ },
+ "ConnectedDeviceMode": {
+ "enum": [
+ "Disconnected",
+ "RCD",
+ "CXL68BFlitAndVH",
+ "Standard256BFlit",
+ "CXLLatencyOptimized256BFlit",
+ "PBR"
+ ],
+ "enumDescriptions": {
+ "CXL68BFlitAndVH": "CXL 68B flit and VH.",
+ "CXLLatencyOptimized256BFlit": "CXL latency-optimized 256B flit.",
+ "Disconnected": "The connection is not CXL or is disconnected.",
+ "PBR": "Port-based routing (PBR).",
+ "RCD": "Restricted CXL device (RCD).",
+ "Standard256BFlit": "Standard 256B flit."
+ },
+ "enumLongDescriptions": {
+ "CXL68BFlitAndVH": "This value shall indicate the connected device mode is CXL 68B flit and VH.",
+ "CXLLatencyOptimized256BFlit": "This value shall indicate the connected device mode is CXL latency-optimized 256B flit.",
+ "Disconnected": "This value shall indicate the connection is not CXL or is disconnected.",
+ "PBR": "This value shall indicate the connected device mode is port-based routing (PBR).",
+ "RCD": "This value shall indicate the connected device mode is restricted CXL device (RCD).",
+ "Standard256BFlit": "This value shall indicate the connected device mode is standard 256B flit."
+ },
+ "type": "string"
+ },
+ "ConnectedDeviceType": {
+ "enum": [
+ "None",
+ "PCIeDevice",
+ "Type1",
+ "Type2",
+ "Type3SLD",
+ "Type3MLD"
+ ],
+ "enumDescriptions": {
+ "None": "No device detected.",
+ "PCIeDevice": "PCIe device.",
+ "Type1": "CXL Type 1 device.",
+ "Type2": "CXL Type 2 device.",
+ "Type3MLD": "CXL Type 3 multi-logical device (MLD).",
+ "Type3SLD": "CXL Type 3 single logical device (SLD)."
+ },
+ "enumLongDescriptions": {
+ "None": "This value shall indicate no device is detected.",
+ "PCIeDevice": "This value shall indicate the connected device is a PCIe device.",
+ "Type1": "This value shall indicate the connected device is a CXL Type 1 device.",
+ "Type2": "This value shall indicate the connected device is a CXL Type 2 device.",
+ "Type3MLD": "This value shall indicate the connected device is a CXL Type 3 multi-logical device (MLD).",
+ "Type3SLD": "This value shall indicate the connected device is a CXL Type 3 single logical device (SLD)."
+ },
+ "type": "string"
+ },
+ "CurrentPortConfigurationState": {
+ "enum": [
+ "Disabled",
+ "BindInProgress",
+ "UnbindInProgress",
+ "DSP",
+ "USP",
+ "Reserved"
+ ],
+ "enumDescriptions": {
+ "BindInProgress": "Bind in progress.",
+ "DSP": "Downstream port (DSP).",
+ "Disabled": "Disabled.",
+ "Reserved": "Reserved.",
+ "USP": "Upstream port (USP).",
+ "UnbindInProgress": "Unbind in progress."
+ },
+ "enumLongDescriptions": {
+ "BindInProgress": "This value shall indicate a bind is in progress for the port.",
+ "DSP": "This value shall indicate the port is enabled as a downstream port (DSP).",
+ "Disabled": "This value shall indicate the port is disabled.",
+ "Reserved": "This value shall indicate the port is in a reserved state.",
+ "USP": "This value shall indicate the port is enabled as an upstream port (USP).",
+ "UnbindInProgress": "This value shall indicate an unbind is in progress for the port."
+ },
+ "type": "string"
+ },
+ "EthernetProperties": {
+ "additionalProperties": false,
+ "description": "Ethernet-specific properties for a port.",
+ "longDescription": "This type shall contain Ethernet-specific properties for a port.",
+ "patternProperties": {
+ "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
+ "description": "This property shall specify a valid odata or Redfish property.",
+ "type": [
+ "array",
+ "boolean",
+ "integer",
+ "number",
+ "null",
+ "object",
+ "string"
+ ]
+ }
+ },
+ "properties": {
+ "AssociatedMACAddresses": {
+ "description": "An array of configured MAC addresses that are associated with this network port, including the programmed address of the lowest numbered network device function, the configured but not active address, if applicable, the address for hardware port teaming, or other network addresses.",
+ "items": {
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "longDescription": "This property shall contain an array of configured MAC addresses that are associated with this network port, including the programmed address of the lowest numbered network device function, the configured but not active address if applicable, the address for hardware port teaming, or other network addresses.",
+ "pattern": "^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$",
+ "readonly": true,
+ "type": "array",
+ "versionAdded": "v1_4_0"
+ },
+ "EEEEnabled": {
+ "description": "Indicates whether IEEE 802.3az Energy-Efficient Ethernet (EEE) is enabled on this port.",
+ "longDescription": "This property shall indicate whether IEEE 802.3az Energy-Efficient Ethernet (EEE) is enabled on this port.",
+ "readonly": false,
+ "type": [
+ "boolean",
+ "null"
+ ],
+ "versionAdded": "v1_5_0"
+ },
+ "FlowControlConfiguration": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/FlowControl"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The locally configured 802.3x flow control setting for this port.",
+ "longDescription": "This property shall contain the locally configured 802.3x flow control setting for this port.",
+ "readonly": false,
+ "versionAdded": "v1_3_0"
+ },
+ "FlowControlStatus": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/FlowControl"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The 802.3x flow control behavior negotiated with the link partner for this port.",
+ "longDescription": "This property shall contain the 802.3x flow control behavior negotiated with the link partner for this port.",
+ "readonly": true,
+ "versionAdded": "v1_3_0"
+ },
+ "LLDPEnabled": {
+ "description": "Enable/disable LLDP for this port.",
+ "longDescription": "This property shall contain the state indicating whether to enable LLDP for a port. If LLDP is disabled at the adapter level, this property shall be ignored.",
+ "readonly": false,
+ "type": "boolean",
+ "versionAdded": "v1_4_0"
+ },
+ "LLDPReceive": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/LLDPReceive"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "LLDP data being received on this link.",
+ "longDescription": "This property shall contain the LLDP data being received on this link.",
+ "versionAdded": "v1_4_0"
+ },
+ "LLDPTransmit": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/LLDPTransmit"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "LLDP data being transmitted on this link.",
+ "longDescription": "This property shall contain the LLDP data being transmitted on this link.",
+ "versionAdded": "v1_4_0"
+ },
+ "SupportedEthernetCapabilities": {
+ "deprecated": "This property has been deprecated in favor of individual fields for the various properties.",
+ "description": "The set of Ethernet capabilities that this port supports.",
+ "items": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/SupportedEthernetCapabilities"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "longDescription": "This property shall contain an array of Ethernet capabilities supported by this port.",
+ "readonly": true,
+ "type": "array",
+ "versionAdded": "v1_3_0",
+ "versionDeprecated": "v1_5_0"
+ },
+ "WakeOnLANEnabled": {
+ "description": "Indicates whether Wake on LAN (WoL) is enabled on this port.",
+ "longDescription": "This property shall indicate whether Wake on LAN (WoL) is enabled on this port.",
+ "readonly": false,
+ "type": [
+ "boolean",
+ "null"
+ ],
+ "versionAdded": "v1_5_0"
+ }
+ },
+ "type": "object"
+ },
+ "FiberConnectionType": {
+ "enum": [
+ "SingleMode",
+ "MultiMode"
+ ],
+ "enumDescriptions": {
+ "MultiMode": "The connection is using multi mode operation.",
+ "SingleMode": "The connection is using single mode operation."
+ },
+ "type": "string"
+ },
+ "FibreChannelProperties": {
+ "additionalProperties": false,
+ "description": "Fibre Channel-specific properties for a port.",
+ "longDescription": "This type shall contain Fibre Channel-specific properties for a port.",
+ "patternProperties": {
+ "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
+ "description": "This property shall specify a valid odata or Redfish property.",
+ "type": [
+ "array",
+ "boolean",
+ "integer",
+ "number",
+ "null",
+ "object",
+ "string"
+ ]
+ }
+ },
+ "properties": {
+ "AssociatedWorldWideNames": {
+ "description": "An array of configured World Wide Names (WWN) that are associated with this network port, including the programmed address of the lowest numbered network device function, the configured but not active address, if applicable, the address for hardware port teaming, or other network addresses.",
+ "items": {
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "longDescription": "This property shall contain an array of configured World Wide Names (WWN) that are associated with this network port, including the programmed address of the lowest numbered network device function, the configured but not active address if applicable, the address for hardware port teaming, or other network addresses.",
+ "pattern": "^([0-9A-Fa-f]{2}[:-]){7}([0-9A-Fa-f]{2})$",
+ "readonly": true,
+ "type": "array",
+ "versionAdded": "v1_4_0"
+ },
+ "FabricName": {
+ "description": "The Fibre Channel Fabric Name provided by the switch.",
+ "longDescription": "This property shall indicate the Fibre Channel Fabric Name provided by the switch.",
+ "readonly": true,
+ "type": [
+ "string",
+ "null"
+ ],
+ "versionAdded": "v1_3_0"
+ },
+ "NumberDiscoveredRemotePorts": {
+ "description": "The number of ports not on the associated device that the associated device has discovered through this port.",
+ "longDescription": "This property shall contain the number of ports not on this associated device that this port has discovered.",
+ "readonly": true,
+ "type": [
+ "integer",
+ "null"
+ ],
+ "versionAdded": "v1_3_0"
+ },
+ "PortConnectionType": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/PortConnectionType"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The connection type of this port.",
+ "longDescription": "This property shall contain the connection type for this port.",
+ "readonly": true,
+ "versionAdded": "v1_3_0"
+ }
+ },
+ "type": "object"
+ },
+ "FlowControl": {
+ "enum": [
+ "None",
+ "TX",
+ "RX",
+ "TX_RX"
+ ],
+ "enumDescriptions": {
+ "None": "No IEEE 802.3x flow control is enabled on this port.",
+ "RX": "IEEE 802.3x flow control may be initiated by the link partner.",
+ "TX": "IEEE 802.3x flow control may be initiated by this station.",
+ "TX_RX": "IEEE 802.3x flow control may be initiated by this station or the link partner."
+ },
+ "type": "string"
+ },
+ "FunctionMaxBandwidth": {
+ "additionalProperties": false,
+ "description": "A maximum bandwidth allocation percentage for a network device functions associated a port.",
+ "longDescription": "This type shall describe a maximum bandwidth percentage allocation for a network device function associated with a port.",
+ "patternProperties": {
+ "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
+ "description": "This property shall specify a valid odata or Redfish property.",
+ "type": [
+ "array",
+ "boolean",
+ "integer",
+ "number",
+ "null",
+ "object",
+ "string"
+ ]
+ }
+ },
+ "properties": {
+ "AllocationPercent": {
+ "description": "The maximum bandwidth allocation percentage allocated to the corresponding network device function instance.",
+ "longDescription": "This property shall contain the maximum bandwidth percentage allocation for the associated network device function.",
+ "readonly": false,
+ "type": [
+ "integer",
+ "null"
+ ],
+ "units": "%",
+ "versionAdded": "v1_4_0"
+ },
+ "NetworkDeviceFunction": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/NetworkDeviceFunction.json#/definitions/NetworkDeviceFunction",
+ "description": "The link to the network device function associated with this bandwidth setting of this network port.",
+ "longDescription": "This property shall contain a link to a resource of type NetworkDeviceFunction that represents the network device function associated with this bandwidth setting of this network port.",
+ "readonly": true,
+ "versionAdded": "v1_4_0"
+ }
+ },
+ "type": "object"
+ },
+ "FunctionMinBandwidth": {
+ "additionalProperties": false,
+ "description": "A minimum bandwidth allocation percentage for a network device functions associated a port.",
+ "longDescription": "This type shall describe a minimum bandwidth percentage allocation for a network device function associated with a port.",
+ "patternProperties": {
+ "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
+ "description": "This property shall specify a valid odata or Redfish property.",
+ "type": [
+ "array",
+ "boolean",
+ "integer",
+ "number",
+ "null",
+ "object",
+ "string"
+ ]
+ }
+ },
+ "properties": {
+ "AllocationPercent": {
+ "description": "The minimum bandwidth allocation percentage allocated to the corresponding network device function instance.",
+ "longDescription": "This property shall contain the minimum bandwidth percentage allocation for the associated network device function. The sum total of all minimum percentages shall not exceed 100.",
+ "readonly": false,
+ "type": [
+ "integer",
+ "null"
+ ],
+ "units": "%",
+ "versionAdded": "v1_4_0"
+ },
+ "NetworkDeviceFunction": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/NetworkDeviceFunction.json#/definitions/NetworkDeviceFunction",
+ "description": "The link to the network device function associated with this bandwidth setting of this network port.",
+ "longDescription": "This property shall contain a link to a resource of type NetworkDeviceFunction that represents the network device function associated with this bandwidth setting of this network port.",
+ "readonly": true,
+ "versionAdded": "v1_4_0"
+ }
+ },
+ "type": "object"
+ },
+ "GenZ": {
+ "additionalProperties": false,
+ "description": "This type defines Gen-Z specific port properties.",
+ "longDescription": "This type shall contain Gen-Z specific port properties.",
+ "patternProperties": {
+ "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
+ "description": "This property shall specify a valid odata or Redfish property.",
+ "type": [
+ "array",
+ "boolean",
+ "integer",
+ "number",
+ "null",
+ "object",
+ "string"
+ ]
+ }
+ },
+ "properties": {
+ "LPRT": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/RouteEntryCollection.json#/definitions/RouteEntryCollection",
+ "description": "The Linear Packet Relay Table for the port.",
+ "longDescription": "This property shall contain a link to a resource collection of type RouteEntryCollection, and shall represent the Gen-Z Core Specification-defined Linear Packet Relay Table for this port.",
+ "readonly": true,
+ "versionAdded": "v1_2_0"
+ },
+ "MPRT": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/RouteEntryCollection.json#/definitions/RouteEntryCollection",
+ "description": "the Multi-subnet Packet Relay Table for the port.",
+ "longDescription": "This property shall contain a link to a resource collection of type RouteEntryCollection, and shall represent the Gen-Z Core Specification-defined Multi-subnet Packet Relay Table for this port.",
+ "readonly": true,
+ "versionAdded": "v1_2_0"
+ },
+ "VCAT": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/VCATEntryCollection.json#/definitions/VCATEntryCollection",
+ "description": "the Virtual Channel Action Table for the port.",
+ "longDescription": "This property shall contain a link to a resource collection of type VCATEntryCollection.",
+ "readonly": true,
+ "versionAdded": "v1_2_0"
+ }
+ },
+ "type": "object"
+ },
+ "IEEE802IdSubtype": {
+ "enum": [
+ "ChassisComp",
+ "IfAlias",
+ "PortComp",
+ "MacAddr",
+ "NetworkAddr",
+ "IfName",
+ "AgentId",
+ "LocalAssign",
+ "NotTransmitted"
+ ],
+ "enumDescriptions": {
+ "AgentId": "Agent circuit ID, based on the agent-local identifier of the circuit as defined in RFC3046.",
+ "ChassisComp": "Chassis component, based in the value of entPhysicalAlias in RFC4133.",
+ "IfAlias": "Interface alias, based on the ifAlias MIB object.",
+ "IfName": "Interface name, based on the ifName MIB object.",
+ "LocalAssign": "Locally assigned, based on a alpha-numeric value locally assigned.",
+ "MacAddr": "MAC address, based on an agent detected unicast source address as defined in IEEE Std. 802.",
+ "NetworkAddr": "Network address, based on an agent detected network address.",
+ "NotTransmitted": "No data to be sent to/received from remote partner.",
+ "PortComp": "Port component, based in the value of entPhysicalAlias in RFC4133."
+ },
+ "type": "string"
+ },
+ "InfiniBandProperties": {
+ "additionalProperties": false,
+ "description": "InfiniBand-specific properties for a port.",
+ "longDescription": "This type shall contain InfiniBand-specific properties for a port.",
+ "patternProperties": {
+ "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
+ "description": "This property shall specify a valid odata or Redfish property.",
+ "type": [
+ "array",
+ "boolean",
+ "integer",
+ "number",
+ "null",
+ "object",
+ "string"
+ ]
+ }
+ },
+ "properties": {
+ "AssociatedNodeGUIDs": {
+ "description": "An array of configured node GUIDs that are associated with this network port, including the programmed address of the lowest numbered network device function, the configured but not active address, if applicable, the address for hardware port teaming, or other network addresses.",
+ "items": {
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "longDescription": "This property shall contain an array of configured node GUIDs that are associated with this network port, including the programmed address of the lowest numbered network device function, the configured but not active address if applicable, the address for hardware port teaming, or other network addresses.",
+ "pattern": "^([0-9A-Fa-f]{4}[:-]){3}([0-9A-Fa-f]{4})$",
+ "readonly": true,
+ "type": "array",
+ "versionAdded": "v1_6_0"
+ },
+ "AssociatedPortGUIDs": {
+ "description": "An array of configured port GUIDs that are associated with this network port, including the programmed address of the lowest numbered network device function, the configured but not active address, if applicable, the address for hardware port teaming, or other network addresses.",
+ "items": {
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "longDescription": "This property shall contain an array of configured port GUIDs that are associated with this network port, including the programmed address of the lowest numbered network device function, the configured but not active address if applicable, the address for hardware port teaming, or other network addresses.",
+ "pattern": "^([0-9A-Fa-f]{4}[:-]){3}([0-9A-Fa-f]{4})$",
+ "readonly": true,
+ "type": "array",
+ "versionAdded": "v1_6_0"
+ },
+ "AssociatedSystemGUIDs": {
+ "description": "An array of configured system GUIDs that are associated with this network port, including the programmed address of the lowest numbered network device function, the configured but not active address, if applicable, the address for hardware port teaming, or other network addresses.",
+ "items": {
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "longDescription": "This property shall contain an array of configured system GUIDs that are associated with this network port, including the programmed address of the lowest numbered network device function, the configured but not active address if applicable, the address for hardware port teaming, or other network addresses.",
+ "pattern": "^([0-9A-Fa-f]{4}[:-]){3}([0-9A-Fa-f]{4})$",
+ "readonly": true,
+ "type": "array",
+ "versionAdded": "v1_6_0"
+ }
+ },
+ "type": "object"
+ },
+ "LLDPReceive": {
+ "additionalProperties": false,
+ "description": "Link Layer Data Protocol (LLDP) data received from the remote partner across this link.",
+ "longDescription": "This type shall contain the LLDP data from the remote partner across this link.",
+ "patternProperties": {
+ "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
+ "description": "This property shall specify a valid odata or Redfish property.",
+ "type": [
+ "array",
+ "boolean",
+ "integer",
+ "number",
+ "null",
+ "object",
+ "string"
+ ]
+ }
+ },
+ "properties": {
+ "ChassisId": {
+ "description": "Link Layer Data Protocol (LLDP) chassis ID received from the remote partner across this link.",
+ "longDescription": "This property shall contain the chassis ID received from the remote partner across this link. If no such chassis ID has been received, this property should not be present.",
+ "readonly": true,
+ "type": [
+ "string",
+ "null"
+ ],
+ "versionAdded": "v1_4_0"
+ },
+ "ChassisIdSubtype": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/IEEE802IdSubtype"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The type of identifier used for the chassis ID received from the remote partner across this link.",
+ "longDescription": "This property shall contain the IEEE 802.1AB-2009 chassis ID subtype received from the remote partner across this link. If no such chassis ID subtype has been received, this property should not be present.",
+ "readonly": true,
+ "versionAdded": "v1_4_0"
+ },
+ "ManagementAddressIPv4": {
+ "description": "The IPv4 management address received from the remote partner across this link.",
+ "longDescription": "This property shall contain the IPv4 management address received from the remote partner across this link. If no such management address has been received, this property should not be present.",
+ "pattern": "^(?:[0-9]{1,3}\\.){3}[0-9]{1,3}$",
+ "readonly": true,
+ "type": [
+ "string",
+ "null"
+ ],
+ "versionAdded": "v1_4_0"
+ },
+ "ManagementAddressIPv6": {
+ "description": "The IPv6 management address received from the remote partner across this link.",
+ "longDescription": "This property shall contain the IPv6 management address received from the remote partner across this link. If no such management address has been received, this property should not be present.",
+ "readonly": true,
+ "type": [
+ "string",
+ "null"
+ ],
+ "versionAdded": "v1_4_0"
+ },
+ "ManagementAddressMAC": {
+ "description": "The management MAC address received from the remote partner across this link.",
+ "longDescription": "This property shall contain the management MAC address received from the remote partner across this link. If no such management address has been received, this property should not be present.",
+ "pattern": "^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$",
+ "readonly": true,
+ "type": [
+ "string",
+ "null"
+ ],
+ "versionAdded": "v1_4_0"
+ },
+ "ManagementVlanId": {
+ "description": "The management VLAN ID received from the remote partner across this link.",
+ "longDescription": "This property shall contain the management VLAN ID received from the remote partner across this link. If no such management VLAN ID has been received, this property should not be present.",
+ "maximum": 4095,
+ "minimum": 0,
+ "readonly": true,
+ "type": [
+ "integer",
+ "null"
+ ],
+ "versionAdded": "v1_4_0"
+ },
+ "PortId": {
+ "description": "A colon delimited string of hexadecimal octets identifying a port.",
+ "longDescription": "This property shall contain a colon delimited string of hexadecimal octets identifying the port received from the remote partner across this link. If no such port ID has been received, this property should not be present.",
+ "pattern": "^([0-9A-F]{2})([:]([0-9A-F]){2}){0,63}$",
+ "readonly": true,
+ "type": [
+ "string",
+ "null"
+ ],
+ "versionAdded": "v1_4_0"
+ },
+ "PortIdSubtype": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/IEEE802IdSubtype"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The port ID subtype received from the remote partner across this link.",
+ "longDescription": "This property shall contain the port ID subtype from IEEE 802.1AB-2009 Table 8-3 received from the remote partner across this link. If no such port ID subtype has been received, this property should not be present.",
+ "readonly": true,
+ "versionAdded": "v1_4_0"
+ },
+ "SystemCapabilities": {
+ "description": "The system capabilities received from the remote partner across this link.",
+ "items": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/LLDPSystemCapabilities"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "longDescription": "This property shall contain the system capabilities received from the remote partner across this link. If no such system capabilities have been received, this property shall not be present. This property shall not contain the value `None`.",
+ "readonly": true,
+ "type": "array",
+ "versionAdded": "v1_8_0"
+ },
+ "SystemDescription": {
+ "description": "The system description received from the remote partner across this link.",
+ "longDescription": "This property shall contain the system description received from the remote partner across this link. If no such system description has been received, this property shall not be present.",
+ "readonly": true,
+ "type": [
+ "string",
+ "null"
+ ],
+ "versionAdded": "v1_8_0"
+ },
+ "SystemName": {
+ "description": "The system name received from the remote partner across this link.",
+ "longDescription": "This property shall contain the system name received from the remote partner across this link. If no such system name has been received, this property shall not be present.",
+ "readonly": true,
+ "type": [
+ "string",
+ "null"
+ ],
+ "versionAdded": "v1_8_0"
+ }
+ },
+ "type": "object"
+ },
+ "LLDPSystemCapabilities": {
+ "enum": [
+ "None",
+ "Bridge",
+ "DOCSISCableDevice",
+ "Other",
+ "Repeater",
+ "Router",
+ "Station",
+ "Telephone",
+ "WLANAccessPoint"
+ ],
+ "enumDescriptions": {
+ "Bridge": "Bridge.",
+ "DOCSISCableDevice": "DOCSIS cable device.",
+ "None": "The system capabilities are transmitted, but no capabilities are set.",
+ "Other": "Other.",
+ "Repeater": "Repeater.",
+ "Router": "Router.",
+ "Station": "Station.",
+ "Telephone": "Telephone.",
+ "WLANAccessPoint": "WLAN access point."
+ },
+ "enumLongDescriptions": {
+ "Bridge": "This value shall indicate the IEEE802.1AB-defined 'bridge' capability.",
+ "DOCSISCableDevice": "This value shall indicate the IEEE802.1AB-defined 'DOCSIS cable device' capability.",
+ "None": "This value shall indicate the system capabilities are transmitted, but no capabilities are set.",
+ "Other": "This value shall indicate the IEEE802.1AB-defined 'other' capability.",
+ "Repeater": "This value shall indicate the IEEE802.1AB-defined 'repeater' capability.",
+ "Router": "This value shall indicate the IEEE802.1AB-defined 'router' capability.",
+ "Station": "This value shall indicate the IEEE802.1AB-defined 'station' capability.",
+ "Telephone": "This value shall indicate the IEEE802.1AB-defined 'telephone' capability.",
+ "WLANAccessPoint": "This value shall indicate the IEEE802.1AB-defined 'WLAN access point' capability."
+ },
+ "type": "string"
+ },
+ "LLDPTransmit": {
+ "additionalProperties": false,
+ "description": "Link Layer Data Protocol (LLDP) data being transmitted on this link.",
+ "longDescription": "This type shall contain the LLDP data to be transmitted from this endpoint.",
+ "patternProperties": {
+ "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
+ "description": "This property shall specify a valid odata or Redfish property.",
+ "type": [
+ "array",
+ "boolean",
+ "integer",
+ "number",
+ "null",
+ "object",
+ "string"
+ ]
+ }
+ },
+ "properties": {
+ "ChassisId": {
+ "description": "Link Layer Data Protocol (LLDP) chassis ID.",
+ "longDescription": "This property shall contain the chassis ID to be transmitted from this endpoint. If no such chassis ID is to be transmitted, this value shall be an empty string.",
+ "readonly": false,
+ "type": [
+ "string",
+ "null"
+ ],
+ "versionAdded": "v1_4_0"
+ },
+ "ChassisIdSubtype": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/IEEE802IdSubtype"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The type of identifier used for the chassis ID.",
+ "longDescription": "This property shall contain the IEEE 802.1AB-2009 chassis ID subtype to be transmitted from this endpoint. If no such chassis ID subtype is to be transmitted, this value shall be `NotTransmitted`.",
+ "readonly": false,
+ "versionAdded": "v1_4_0"
+ },
+ "ManagementAddressIPv4": {
+ "description": "The IPv4 management address to be transmitted from this endpoint.",
+ "longDescription": "This property shall contain the IPv4 management address to be transmitted from this endpoint. If no such management address is to be transmitted, this value shall be an empty string.",
+ "pattern": "(^(?:[0-9]{1,3}\\.){3}[0-9]{1,3}$)|(^$)",
+ "readonly": false,
+ "type": [
+ "string",
+ "null"
+ ],
+ "versionAdded": "v1_4_0"
+ },
+ "ManagementAddressIPv6": {
+ "description": "The IPv6 management address to be transmitted from this endpoint.",
+ "longDescription": "This property shall contain the IPv6 management address to be transmitted from this endpoint. If no such management address is to be transmitted, this value shall be an empty string.",
+ "readonly": false,
+ "type": [
+ "string",
+ "null"
+ ],
+ "versionAdded": "v1_4_0"
+ },
+ "ManagementAddressMAC": {
+ "description": "The management MAC address to be transmitted from this endpoint.",
+ "longDescription": "This property shall contain the management MAC address to be transmitted from this endpoint. If no such management address is to be transmitted, this value shall be an empty string.",
+ "pattern": "(^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$)|(^$)",
+ "readonly": false,
+ "type": [
+ "string",
+ "null"
+ ],
+ "versionAdded": "v1_4_0"
+ },
+ "ManagementVlanId": {
+ "description": "The management VLAN ID to be transmitted from this endpoint.",
+ "longDescription": "This property shall contain the management VLAN ID to be transmitted from this endpoint. If no such port ID is to be transmitted, this value shall be `4095`.",
+ "maximum": 4095,
+ "minimum": 0,
+ "readonly": false,
+ "type": [
+ "integer",
+ "null"
+ ],
+ "versionAdded": "v1_4_0"
+ },
+ "PortId": {
+ "description": "A colon delimited string of hexadecimal octets identifying a port to be transmitted from this endpoint.",
+ "longDescription": "This property shall contain a colon delimited string of hexadecimal octets identifying the port for an LLDP endpoint. If no such port ID is to be transmitted, this value shall be an empty string.",
+ "pattern": "(^([0-9A-F]{2})([:]([0-9A-F]){2}){0,63}$)|(^$)",
+ "readonly": false,
+ "type": [
+ "string",
+ "null"
+ ],
+ "versionAdded": "v1_4_0"
+ },
+ "PortIdSubtype": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/IEEE802IdSubtype"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The port ID subtype to be transmitted from this endpoint.",
+ "longDescription": "This property shall contain the port ID subtype from IEEE 802.1AB-2009 Table 8-3 to be transmitted from this endpoint. If no such port ID subtype is to be transmitted, this value shall be `NotTransmitted`.",
+ "readonly": false,
+ "versionAdded": "v1_4_0"
+ },
+ "SystemCapabilities": {
+ "description": "The system capabilities to be transmitted from this endpoint.",
+ "items": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/LLDPSystemCapabilities"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "longDescription": "This property shall contain the system capabilities to be transmitted from this endpoint. If no such system capabilities are to be transmitted, this value shall be an empty array. If this property contains the value `None`, an empty set of system capabilities is transmitted from this endpoint.",
+ "readonly": false,
+ "type": "array",
+ "versionAdded": "v1_8_0"
+ },
+ "SystemDescription": {
+ "description": "The system description to be transmitted from this endpoint.",
+ "longDescription": "This property shall contain the system description to be transmitted from this endpoint. If no such system description is to be transmitted, this value shall be an empty string.",
+ "readonly": false,
+ "type": [
+ "string",
+ "null"
+ ],
+ "versionAdded": "v1_8_0"
+ },
+ "SystemName": {
+ "description": "The system name to be transmitted from this endpoint.",
+ "longDescription": "This property shall contain the system name to be transmitted from this endpoint. If no such system name is to be transmitted, this value shall be an empty string.",
+ "readonly": false,
+ "type": [
+ "string",
+ "null"
+ ],
+ "versionAdded": "v1_8_0"
+ }
+ },
+ "type": "object"
+ },
+ "LinkConfiguration": {
+ "additionalProperties": false,
+ "description": "Properties of the link for which this port is configured.",
+ "longDescription": "This type shall contain properties of the link for which port has been configured.",
+ "patternProperties": {
+ "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
+ "description": "This property shall specify a valid odata or Redfish property.",
+ "type": [
+ "array",
+ "boolean",
+ "integer",
+ "number",
+ "null",
+ "object",
+ "string"
+ ]
+ }
+ },
+ "properties": {
+ "AutoSpeedNegotiationCapable": {
+ "description": "An indication of whether the port is capable of autonegotiating speed.",
+ "longDescription": "This property shall indicate whether the port is capable of autonegotiating speed.",
+ "readonly": true,
+ "type": [
+ "boolean",
+ "null"
+ ],
+ "versionAdded": "v1_3_0"
+ },
+ "AutoSpeedNegotiationEnabled": {
+ "description": "Controls whether this port is configured to enable autonegotiating speed.",
+ "longDescription": "This property shall indicate whether the port is configured to autonegotiate speed.",
+ "readonly": false,
+ "type": [
+ "boolean",
+ "null"
+ ],
+ "versionAdded": "v1_3_0"
+ },
+ "CapableLinkSpeedGbps": {
+ "description": "The set of link speed capabilities of this port.",
+ "items": {
+ "type": [
+ "number",
+ "null"
+ ]
+ },
+ "longDescription": "This property shall contain all of the possible network link speed capabilities of this port. This value includes overhead associated with the protocol.",
+ "readonly": true,
+ "type": "array",
+ "units": "Gbit/s",
+ "versionAdded": "v1_3_0"
+ },
+ "ConfiguredNetworkLinks": {
+ "description": "The set of link speed and width pairs this port is configured to use for autonegotiation.",
+ "items": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/ConfiguredNetworkLink"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "longDescription": "This property shall contain the set of link speed and width pairs to which this port is restricted for autonegotiation purposes.",
+ "type": "array",
+ "versionAdded": "v1_3_0"
+ }
+ },
+ "type": "object"
+ },
+ "LinkNetworkTechnology": {
+ "enum": [
+ "Ethernet",
+ "InfiniBand",
+ "FibreChannel",
+ "GenZ",
+ "PCIe"
+ ],
+ "enumDescriptions": {
+ "Ethernet": "The port is capable of connecting to an Ethernet network.",
+ "FibreChannel": "The port is capable of connecting to a Fibre Channel network.",
+ "GenZ": "The port is capable of connecting to a Gen-Z fabric.",
+ "InfiniBand": "The port is capable of connecting to an InfiniBand network.",
+ "PCIe": "The port is capable of connecting to PCIe and CXL fabrics."
+ },
+ "enumVersionAdded": {
+ "PCIe": "v1_8_0"
+ },
+ "type": "string"
+ },
+ "LinkState": {
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "enumDescriptions": {
+ "Disabled": "This link is disabled.",
+ "Enabled": "This link is enabled."
+ },
+ "type": "string"
+ },
+ "LinkStatus": {
+ "enum": [
+ "LinkUp",
+ "Starting",
+ "Training",
+ "LinkDown",
+ "NoLink"
+ ],
+ "enumDescriptions": {
+ "LinkDown": "The link on this interface is down.",
+ "LinkUp": "This link on this interface is up.",
+ "NoLink": "No physical link detected on this interface.",
+ "Starting": "This link on this interface is starting. A physical link has been established, but the port is not able to transfer data.",
+ "Training": "This physical link on this interface is training."
+ },
+ "type": "string"
+ },
+ "Links": {
+ "additionalProperties": false,
+ "description": "The links to other resources that are related to this resource.",
+ "longDescription": "This Redfish Specification-described type shall contain links to resources that are related to but are not contained by, or subordinate to, this resource.",
+ "patternProperties": {
+ "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
+ "description": "This property shall specify a valid odata or Redfish property.",
+ "type": [
+ "array",
+ "boolean",
+ "integer",
+ "number",
+ "null",
+ "object",
+ "string"
+ ]
+ }
+ },
+ "properties": {
+ "AssociatedEndpoints": {
+ "description": "An array of links to the endpoints at the other end of the link.",
+ "items": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Endpoint.json#/definitions/Endpoint"
+ },
+ "longDescription": "This property shall contain an array of links to resources of type Endpoint that represent the endpoints to which this port is connected.",
+ "readonly": true,
+ "type": "array"
+ },
+ "AssociatedEndpoints@odata.count": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
+ },
+ "Cables": {
+ "description": "An array of links to the cables connected to this port.",
+ "items": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Cable.json#/definitions/Cable"
+ },
+ "longDescription": "This property shall contain an array of links to resources of type Cable that represent the cables connected to this port.",
+ "readonly": true,
+ "type": "array",
+ "versionAdded": "v1_5_0"
+ },
+ "Cables@odata.count": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
+ },
+ "ConnectedPorts": {
+ "description": "An array of links to the remote device ports at the other end of the link.",
+ "items": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Port.json#/definitions/Port"
+ },
+ "longDescription": "This property shall contain an array of links to resources of type Port that represent the remote device ports to which this port is connected.",
+ "readonly": true,
+ "type": "array",
+ "versionAdded": "v1_2_0"
+ },
+ "ConnectedPorts@odata.count": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
+ },
+ "ConnectedSwitchPorts": {
+ "description": "An array of links to the switch ports at the other end of the link.",
+ "items": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Port.json#/definitions/Port"
+ },
+ "longDescription": "This property shall contain an array of links to resources of type Port that represent the switch ports to which this port is connected.",
+ "readonly": true,
+ "type": "array"
+ },
+ "ConnectedSwitchPorts@odata.count": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
+ },
+ "ConnectedSwitches": {
+ "description": "An array of links to the switches at the other end of the link.",
+ "items": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Switch.json#/definitions/Switch"
+ },
+ "longDescription": "This property shall contain an array of links to resources of type Switch that represent the switches to which this port is connected.",
+ "readonly": true,
+ "type": "array"
+ },
+ "ConnectedSwitches@odata.count": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
+ },
+ "EthernetInterfaces": {
+ "description": "The links to the Ethernet interfaces this port provides.",
+ "items": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/EthernetInterface.json#/definitions/EthernetInterface"
+ },
+ "longDescription": "This property shall contain an array of links to resources of type EthernetInterface that represent the Ethernet interfaces this port provides. This property shall not include Ethernet interfaces that are not directly associated to a physical port.",
+ "readonly": true,
+ "type": "array",
+ "versionAdded": "v1_7_0"
+ },
+ "EthernetInterfaces@odata.count": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
+ },
+ "Oem": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
+ "description": "The OEM extension property.",
+ "longDescription": "This property shall contain the OEM extensions. All values for properties contained in this object shall conform to the Redfish Specification-described requirements."
+ }
+ },
+ "type": "object"
+ },
+ "MediumType": {
+ "enum": [
+ "Copper",
+ "FiberOptic"
+ ],
+ "enumDescriptions": {
+ "Copper": "The medium connected is copper.",
+ "FiberOptic": "The medium connected is fiber optic."
+ },
+ "type": "string"
+ },
+ "OemActions": {
+ "additionalProperties": true,
+ "description": "The available OEM-specific actions for this resource.",
+ "longDescription": "This type shall contain the available OEM-specific actions for this resource.",
+ "patternProperties": {
+ "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
+ "description": "This property shall specify a valid odata or Redfish property.",
+ "type": [
+ "array",
+ "boolean",
+ "integer",
+ "number",
+ "null",
+ "object",
+ "string"
+ ]
+ }
+ },
+ "properties": {},
+ "type": "object"
+ },
+ "Port": {
+ "additionalProperties": false,
+ "description": "The Port schema contains properties that describe a port of a switch, controller, chassis, or any other device that could be connected to another entity.",
+ "longDescription": "This resource contains a simple port for a Redfish implementation.",
+ "patternProperties": {
+ "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
+ "description": "This property shall specify a valid odata or Redfish property.",
+ "type": [
+ "array",
+ "boolean",
+ "integer",
+ "number",
+ "null",
+ "object",
+ "string"
+ ]
+ }
+ },
+ "properties": {
+ "@odata.context": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/context"
+ },
+ "@odata.etag": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/etag"
+ },
+ "@odata.id": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
+ },
+ "@odata.type": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/type"
+ },
+ "Actions": {
+ "$ref": "#/definitions/Actions",
+ "description": "The available actions for this resource.",
+ "longDescription": "This property shall contain the available actions for this resource."
+ },
+ "ActiveWidth": {
+ "description": "The number of active lanes for this interface.",
+ "longDescription": "This property shall contain the number of active lanes for this interface.",
+ "readonly": true,
+ "type": "integer",
+ "versionAdded": "v1_2_0"
+ },
+ "CXL": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/CXL"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "CXL properties for this port.",
+ "longDescription": "This property shall contain CXL-specific properties for this port.",
+ "versionAdded": "v1_8_0"
+ },
+ "CapableProtocolVersions": {
+ "description": "The protocol versions capable of being sent over this port.",
+ "items": {
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "longDescription": "This property shall contain the protocol versions capable of being sent over this port. This property should only be used for protocols where the version and not the speed is of primary interest such as USB, DisplayPort, or HDMI.",
+ "readonly": true,
+ "type": "array",
+ "versionAdded": "v1_4_0"
+ },
+ "CurrentProtocolVersion": {
+ "description": "The protocol version being sent over this port.",
+ "longDescription": "This property shall contain the protocol version being sent over this port. This property should only be used for protocols where the version and not the speed is of primary interest such as USB, DisplayPort, or HDMI.",
+ "readonly": true,
+ "type": [
+ "string",
+ "null"
+ ],
+ "versionAdded": "v1_4_0"
+ },
+ "CurrentSpeedGbps": {
+ "description": "The current speed of this port.",
+ "longDescription": "This property shall contain the speed of this port currently negotiated and running. This value includes overhead associated with the protocol.",
+ "readonly": true,
+ "type": [
+ "number",
+ "null"
+ ],
+ "units": "Gbit/s"
+ },
+ "Description": {
+ "anyOf": [
+ {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Description"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "readonly": true
+ },
+ "Enabled": {
+ "description": "An indication of whether this port is enabled.",
+ "longDescription": "The value of this property shall indicate if this port is enabled. Disabling a port will disconnect any devices only connected to the system through this port.",
+ "readonly": false,
+ "type": "boolean",
+ "versionAdded": "v1_4_0"
+ },
+ "EnvironmentMetrics": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/EnvironmentMetrics.json#/definitions/EnvironmentMetrics",
+ "description": "The link to the environment metrics for this port or any attached small form-factor pluggable (SFP) device.",
+ "longDescription": "This property shall contain a link to a resource of type EnvironmentMetrics that represents the environment metrics for this port or any attached small form-factor pluggable (SFP) device.",
+ "readonly": true,
+ "versionAdded": "v1_4_0"
+ },
+ "Ethernet": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/EthernetProperties"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Ethernet properties for this port.",
+ "longDescription": "This property shall contain Ethernet-specific properties of the port.",
+ "versionAdded": "v1_3_0"
+ },
+ "FibreChannel": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/FibreChannelProperties"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Fibre Channel properties for this port.",
+ "longDescription": "This property shall contain Fibre Channel-specific properties of the port.",
+ "versionAdded": "v1_3_0"
+ },
+ "FunctionMaxBandwidth": {
+ "description": "An array of maximum bandwidth allocation percentages for the functions associated with this port.",
+ "items": {
+ "$ref": "#/definitions/FunctionMaxBandwidth"
+ },
+ "longDescription": "This property shall contain an array of maximum bandwidth allocation percentages for the functions associated with this port.",
+ "type": "array",
+ "versionAdded": "v1_4_0"
+ },
+ "FunctionMinBandwidth": {
+ "description": "An array of minimum bandwidth allocation percentages for the functions associated with this port.",
+ "items": {
+ "$ref": "#/definitions/FunctionMinBandwidth"
+ },
+ "longDescription": "This property shall contain an array of minimum bandwidth percentage allocations for each of the functions associated with this port.",
+ "type": "array",
+ "versionAdded": "v1_4_0"
+ },
+ "GenZ": {
+ "$ref": "#/definitions/GenZ",
+ "description": "Gen-Z specific properties.",
+ "longDescription": "This property shall contain Gen-Z specific properties for this interface.",
+ "versionAdded": "v1_2_0"
+ },
+ "Id": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Id",
+ "readonly": true
+ },
+ "InfiniBand": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/InfiniBandProperties"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "InfiniBand properties for this port.",
+ "longDescription": "This property shall contain InfiniBand-specific properties of the port.",
+ "versionAdded": "v1_6_0"
+ },
+ "InterfaceEnabled": {
+ "description": "An indication of whether the interface is enabled.",
+ "longDescription": "This property shall indicate whether the interface is enabled.",
+ "readonly": false,
+ "type": [
+ "boolean",
+ "null"
+ ],
+ "versionAdded": "v1_2_0"
+ },
+ "LinkConfiguration": {
+ "description": "The link configuration of this port.",
+ "items": {
+ "$ref": "#/definitions/LinkConfiguration"
+ },
+ "longDescription": "This property shall contain the static capabilities and configuration settings of the port.",
+ "type": "array",
+ "versionAdded": "v1_3_0"
+ },
+ "LinkNetworkTechnology": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/LinkNetworkTechnology"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The link network technology capabilities of this port.",
+ "longDescription": "This property shall contain a network technology capability of this port.",
+ "readonly": true,
+ "versionAdded": "v1_2_0"
+ },
+ "LinkState": {
+ "$ref": "#/definitions/LinkState",
+ "description": "The desired link state for this interface.",
+ "longDescription": "This property shall contain the desired link state for this interface.",
+ "readonly": false,
+ "versionAdded": "v1_2_0"
+ },
+ "LinkStatus": {
+ "$ref": "#/definitions/LinkStatus",
+ "description": "The link status for this interface.",
+ "longDescription": "This property shall contain the link status for this interface.",
+ "readonly": true,
+ "versionAdded": "v1_2_0"
+ },
+ "LinkTransitionIndicator": {
+ "description": "The number of link state transitions for this interface.",
+ "longDescription": "This property shall contain the number of link state transitions for this interface.",
+ "readonly": false,
+ "type": "integer",
+ "versionAdded": "v1_2_0"
+ },
+ "Links": {
+ "$ref": "#/definitions/Links",
+ "description": "The links to other resources that are related to this resource.",
+ "longDescription": "This property shall contain links to resources that are related to but are not contained by, or subordinate to, this resource."
+ },
+ "Location": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Location",
+ "description": "The location of the port.",
+ "longDescription": "This property shall contain location information of the associated port.",
+ "versionAdded": "v1_1_0"
+ },
+ "LocationIndicatorActive": {
+ "description": "An indicator allowing an operator to physically locate this resource.",
+ "longDescription": "This property shall contain the state of the indicator used to physically identify or locate this resource. A write to this property shall update the value of IndicatorLED in this resource, if supported, to reflect the implementation of the locating function.",
+ "readonly": false,
+ "type": [
+ "boolean",
+ "null"
+ ],
+ "versionAdded": "v1_3_0"
+ },
+ "MaxFrameSize": {
+ "description": "The maximum frame size supported by the port.",
+ "longDescription": "This property shall contain the maximum frame size supported by the port.",
+ "readonly": true,
+ "type": [
+ "integer",
+ "null"
+ ],
+ "units": "By",
+ "versionAdded": "v1_3_0"
+ },
+ "MaxSpeedGbps": {
+ "description": "The maximum speed of this port as currently configured.",
+ "longDescription": "This property shall contain the maximum speed of which this port is capable of being configured. If capable of autonegotiation, the system shall attempt to negotiate at the maximum speed set. This value includes overhead associated with the protocol.",
+ "readonly": true,
+ "type": [
+ "number",
+ "null"
+ ],
+ "units": "Gbit/s"
+ },
+ "Metrics": {
+ "anyOf": [
+ {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/PortMetrics.json#/definitions/PortMetrics"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The link to the metrics associated with this port.",
+ "longDescription": "This property shall contain a link to the metrics associated with this port.",
+ "readonly": true,
+ "versionAdded": "v1_2_0"
+ },
+ "Name": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Name",
+ "readonly": true
+ },
+ "Oem": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
+ "description": "The OEM extension property.",
+ "longDescription": "This property shall contain the OEM extensions. All values for properties that this object contains shall conform to the Redfish Specification-described requirements."
+ },
+ "PortId": {
+ "description": "The label of this port on the physical package for this port.",
+ "longDescription": "This property shall contain the name of the port as indicated on the device containing the port.",
+ "readonly": true,
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "PortMedium": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/PortMedium"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The physical connection medium for this port.",
+ "longDescription": "This property shall contain the physical connection medium for this port.",
+ "readonly": true,
+ "versionAdded": "v1_2_0"
+ },
+ "PortProtocol": {
+ "anyOf": [
+ {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Protocol.json#/definitions/Protocol"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The protocol being sent over this port.",
+ "longDescription": "This property shall contain the protocol being sent over this port.",
+ "readonly": true
+ },
+ "PortType": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/PortType"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The type of this port.",
+ "longDescription": "This property shall contain the port type for this port.",
+ "readonly": true
+ },
+ "RemotePortId": {
+ "description": "The identifier of the remote port to which this port is connected.",
+ "longDescription": "This property shall contain the identifier of the remote port, such as a switch or device, to which this port is connected.",
+ "readonly": true,
+ "type": [
+ "string",
+ "null"
+ ],
+ "versionAdded": "v1_8_0"
+ },
+ "SFP": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/SFP"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The small form-factor pluggable (SFP) device associated with this port.",
+ "longDescription": "This property shall contain data about the small form-factor pluggable (SFP) device currently occupying this port.",
+ "versionAdded": "v1_4_0"
+ },
+ "SignalDetected": {
+ "description": "An indication of whether a signal is detected on this interface.",
+ "longDescription": "This property shall indicate whether a signal that is appropriate for this link technology is detected for this port.",
+ "readonly": true,
+ "type": [
+ "boolean",
+ "null"
+ ],
+ "versionAdded": "v1_2_0"
+ },
+ "Status": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Status",
+ "description": "The status and health of the resource and its subordinate or dependent resources.",
+ "longDescription": "This property shall contain any status or health properties of the resource."
+ },
+ "Width": {
+ "description": "The number of lanes, phys, or other physical transport links that this port contains.",
+ "longDescription": "This property shall contain the number of physical transport links that this port contains.",
+ "readonly": true,
+ "type": [
+ "integer",
+ "null"
+ ]
+ }
+ },
+ "required": [
+ "@odata.id",
+ "@odata.type",
+ "Id",
+ "Name"
+ ],
+ "type": "object"
+ },
+ "PortConnectionType": {
+ "enum": [
+ "NotConnected",
+ "NPort",
+ "PointToPoint",
+ "PrivateLoop",
+ "PublicLoop",
+ "Generic",
+ "ExtenderFabric",
+ "FPort",
+ "EPort",
+ "TEPort",
+ "NPPort",
+ "GPort",
+ "NLPort",
+ "FLPort",
+ "EXPort",
+ "UPort",
+ "DPort"
+ ],
+ "enumDescriptions": {
+ "DPort": "This port connection type is a diagnostic port.",
+ "EPort": "This port connection type is an extender fabric port.",
+ "EXPort": "This port connection type is an external fabric port.",
+ "ExtenderFabric": "This port connection type is an extender fabric port.",
+ "FLPort": "This port connects in a fabric loop configuration.",
+ "FPort": "This port connection type is a fabric port.",
+ "GPort": "This port connection type is a generic fabric port.",
+ "Generic": "This port connection type is a generic fabric port.",
+ "NLPort": "This port connects in a node loop configuration.",
+ "NPPort": "This port connection type is a proxy N port for N-Port virtualization.",
+ "NPort": "This port connects through an N-Port to a switch.",
+ "NotConnected": "This port is not connected.",
+ "PointToPoint": "This port connects in a Point-to-point configuration.",
+ "PrivateLoop": "This port connects in a private loop configuration.",
+ "PublicLoop": "This port connects in a public configuration.",
+ "TEPort": "This port connection type is an trunking extender fabric port.",
+ "UPort": "This port connection type is unassigned."
+ },
+ "enumVersionAdded": {
+ "DPort": "v1_5_0",
+ "EPort": "v1_5_0",
+ "EXPort": "v1_5_0",
+ "FLPort": "v1_5_0",
+ "FPort": "v1_5_0",
+ "GPort": "v1_5_0",
+ "NLPort": "v1_5_0",
+ "NPPort": "v1_5_0",
+ "TEPort": "v1_5_0",
+ "UPort": "v1_5_0"
+ },
+ "type": "string"
+ },
+ "PortMedium": {
+ "enum": [
+ "Electrical",
+ "Optical"
+ ],
+ "enumDescriptions": {
+ "Electrical": "This port has an electrical cable connection.",
+ "Optical": "This port has an optical cable connection."
+ },
+ "type": "string"
+ },
+ "PortType": {
+ "enum": [
+ "UpstreamPort",
+ "DownstreamPort",
+ "InterswitchPort",
+ "ManagementPort",
+ "BidirectionalPort",
+ "UnconfiguredPort"
+ ],
+ "enumDescriptions": {
+ "BidirectionalPort": "This port connects to any type of device.",
+ "DownstreamPort": "This port connects to a target device.",
+ "InterswitchPort": "This port connects to another switch.",
+ "ManagementPort": "This port connects to a switch manager.",
+ "UnconfiguredPort": "This port has not yet been configured.",
+ "UpstreamPort": "This port connects to a host device."
+ },
+ "type": "string"
+ },
+ "QoSTelemetryCapabilities": {
+ "additionalProperties": false,
+ "description": "The quality of service telemetry capabilities for a CXL port.",
+ "longDescription": "This type shall contain the quality of service telemetry capabilities for a CXL port.",
+ "patternProperties": {
+ "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
+ "description": "This property shall specify a valid odata or Redfish property.",
+ "type": [
+ "array",
+ "boolean",
+ "integer",
+ "number",
+ "null",
+ "object",
+ "string"
+ ]
+ }
+ },
+ "properties": {
+ "EgressPortBackpressureSupported": {
+ "description": "Indicates whether the port supports the CXL Specification-defined 'Egress Port Backpressure' mechanism.",
+ "longDescription": "This property shall indicate whether the port supports the CXL Specification-defined 'Egress Port Backpressure' mechanism.",
+ "readonly": true,
+ "type": [
+ "boolean",
+ "null"
+ ],
+ "versionAdded": "v1_8_0"
+ },
+ "TemporaryThroughputReductionSupported": {
+ "description": "Indicates whether the port supports the CXL Specification-defined 'Temporary Throughput Reduction' mechanism.",
+ "longDescription": "This property shall indicate whether the port supports the CXL Specification-defined 'Temporary Throughput Reduction' mechanism.",
+ "readonly": true,
+ "type": [
+ "boolean",
+ "null"
+ ],
+ "versionAdded": "v1_8_0"
+ }
+ },
+ "type": "object"
+ },
+ "Reset": {
+ "additionalProperties": false,
+ "description": "This action resets this port.",
+ "longDescription": "This action shall reset this port.",
+ "parameters": {
+ "ResetType": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/ResetType",
+ "description": "The type of reset.",
+ "longDescription": "This parameter shall contain the type of reset. The service can accept a request without the parameter and perform an implementation specific default reset."
+ }
+ },
+ "patternProperties": {
+ "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
+ "description": "This property shall specify a valid odata or Redfish property.",
+ "type": [
+ "array",
+ "boolean",
+ "integer",
+ "number",
+ "null",
+ "object",
+ "string"
+ ]
+ }
+ },
+ "properties": {
+ "target": {
+ "description": "Link to invoke action",
+ "format": "uri-reference",
+ "type": "string"
+ },
+ "title": {
+ "description": "Friendly action name",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "ResetPPB": {
+ "additionalProperties": false,
+ "description": "This action resets the PCI-to-PCI bridge (PPB) for this port.",
+ "longDescription": "This action shall reset the PCI-to-PCI bridge (PPB) for this port.",
+ "parameters": {},
+ "patternProperties": {
+ "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
+ "description": "This property shall specify a valid odata or Redfish property.",
+ "type": [
+ "array",
+ "boolean",
+ "integer",
+ "number",
+ "null",
+ "object",
+ "string"
+ ]
+ }
+ },
+ "properties": {
+ "target": {
+ "description": "Link to invoke action",
+ "format": "uri-reference",
+ "type": "string"
+ },
+ "title": {
+ "description": "Friendly action name",
+ "type": "string"
+ }
+ },
+ "type": "object",
+ "versionAdded": "v1_8_0"
+ },
+ "SFP": {
+ "additionalProperties": false,
+ "description": "A small form-factor pluggable (SFP) device attached to a port.",
+ "longDescription": "This type shall describe a small form-factor pluggable (SFP) device attached to a port.",
+ "patternProperties": {
+ "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
+ "description": "This property shall specify a valid odata or Redfish property.",
+ "type": [
+ "array",
+ "boolean",
+ "integer",
+ "number",
+ "null",
+ "object",
+ "string"
+ ]
+ }
+ },
+ "properties": {
+ "FiberConnectionType": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/FiberConnectionType"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The type of fiber connection currently used by this SFP.",
+ "longDescription": "This property shall contain the fiber connection type used by the SFP.",
+ "readonly": true,
+ "versionAdded": "v1_4_0"
+ },
+ "Manufacturer": {
+ "description": "The manufacturer of this SFP.",
+ "longDescription": "This property shall contain the name of the organization responsible for producing the SFP. This organization may be the entity from which the SFP is purchased, but this is not necessarily true.",
+ "readonly": true,
+ "type": [
+ "string",
+ "null"
+ ],
+ "versionAdded": "v1_4_0"
+ },
+ "MediumType": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/MediumType"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The medium type connected to this SFP.",
+ "longDescription": "This property shall contain the medium type used by the SFP.",
+ "readonly": true,
+ "versionAdded": "v1_4_0"
+ },
+ "PartNumber": {
+ "description": "The part number for this SFP.",
+ "longDescription": "This property shall contain the manufacturer-provided part number for the SFP.",
+ "readonly": true,
+ "type": [
+ "string",
+ "null"
+ ],
+ "versionAdded": "v1_4_0"
+ },
+ "SerialNumber": {
+ "description": "The serial number for this SFP.",
+ "longDescription": "This property shall contain a manufacturer-allocated number that identifies the SFP.",
+ "readonly": true,
+ "type": [
+ "string",
+ "null"
+ ],
+ "versionAdded": "v1_4_0"
+ },
+ "Status": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Status",
+ "description": "The status and health of the resource and its subordinate or dependent resources.",
+ "longDescription": "This property shall contain any status or health properties of the resource.",
+ "versionAdded": "v1_4_0"
+ },
+ "SupportedSFPTypes": {
+ "description": "The types of SFP devices that can be attached to this port.",
+ "items": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/SFPType"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "longDescription": "This property shall contain an array of SFP device types supported by this port.",
+ "readonly": true,
+ "type": "array",
+ "versionAdded": "v1_4_0"
+ },
+ "Type": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/SFPType"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The type of SFP device that is attached to this port.",
+ "longDescription": "This property shall contain the SFP device type currently attached to this port.",
+ "readonly": true,
+ "versionAdded": "v1_4_0"
+ }
+ },
+ "type": "object"
+ },
+ "SFPType": {
+ "enum": [
+ "SFP",
+ "SFPPlus",
+ "SFP28",
+ "cSFP",
+ "SFPDD",
+ "QSFP",
+ "QSFPPlus",
+ "QSFP14",
+ "QSFP28",
+ "QSFP56",
+ "MiniSASHD"
+ ],
+ "enumDescriptions": {
+ "MiniSASHD": "The SFP conforms to the SFF Specification SFF-8644.",
+ "QSFP": "The SFP conforms to the SFF Specification for QSFP.",
+ "QSFP14": "The SFP conforms to the SFF Specification for QSFP14.",
+ "QSFP28": "The SFP conforms to the SFF Specification for QSFP28.",
+ "QSFP56": "The SFP conforms to the SFF Specification for QSFP56.",
+ "QSFPPlus": "The SFP conforms to the SFF Specification for QSFP+.",
+ "SFP": "The SFP conforms to the SFF Specification for SFP.",
+ "SFP28": "The SFP conforms to the SFF Specification for SFP+ and IEEE 802.3by Specification.",
+ "SFPDD": "The SFP conforms to the SFP-DD MSA Specification.",
+ "SFPPlus": "The SFP conforms to the SFF Specification for SFP+.",
+ "cSFP": "The SFP conforms to the CSFP MSA Specification."
+ },
+ "type": "string"
+ },
+ "SupportedEthernetCapabilities": {
+ "enum": [
+ "WakeOnLAN",
+ "EEE"
+ ],
+ "enumDescriptions": {
+ "EEE": "IEEE 802.3az Energy-Efficient Ethernet (EEE) is supported on this port.",
+ "WakeOnLAN": "Wake on LAN (WoL) is supported on this port."
+ },
+ "type": "string"
+ }
+ },
+ "owningEntity": "DMTF",
+ "release": "2022.3",
+ "title": "#Port.v1_8_0.Port"
+} \ No newline at end of file
diff --git a/static/redfish/v1/JsonSchemas/PortCollection/PortCollection.json b/static/redfish/v1/JsonSchemas/PortCollection/PortCollection.json
new file mode 100644
index 0000000000..a296d6fd5f
--- /dev/null
+++ b/static/redfish/v1/JsonSchemas/PortCollection/PortCollection.json
@@ -0,0 +1,136 @@
+{
+ "$id": "http://redfish.dmtf.org/schemas/v1/PortCollection.json",
+ "$ref": "#/definitions/PortCollection",
+ "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
+ "copyright": "Copyright 2014-2022 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
+ "definitions": {
+ "PortCollection": {
+ "anyOf": [
+ {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/idRef"
+ },
+ {
+ "additionalProperties": false,
+ "description": "The collection of Port resource instances.",
+ "longDescription": "This resource shall represent a resource collection of Port instances for a Redfish implementation.",
+ "patternProperties": {
+ "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
+ "description": "This property shall specify a valid odata or Redfish property.",
+ "type": [
+ "array",
+ "boolean",
+ "integer",
+ "number",
+ "null",
+ "object",
+ "string"
+ ]
+ }
+ },
+ "properties": {
+ "@odata.context": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/context"
+ },
+ "@odata.etag": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/etag"
+ },
+ "@odata.id": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
+ },
+ "@odata.type": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/type"
+ },
+ "Description": {
+ "anyOf": [
+ {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Description"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "readonly": true
+ },
+ "Members": {
+ "description": "The members of this collection.",
+ "items": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Port.json#/definitions/Port"
+ },
+ "longDescription": "This property shall contain an array of links to the members of this collection.",
+ "readonly": true,
+ "type": "array"
+ },
+ "Members@odata.count": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
+ },
+ "Members@odata.nextLink": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/nextLink"
+ },
+ "Name": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Name",
+ "readonly": true
+ },
+ "Oem": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
+ "description": "The OEM extension property.",
+ "longDescription": "This property shall contain the OEM extensions. All values for properties contained in this object shall conform to the Redfish Specification-described requirements."
+ }
+ },
+ "required": [
+ "Members",
+ "Members@odata.count",
+ "@odata.id",
+ "@odata.type",
+ "Name"
+ ],
+ "type": "object"
+ }
+ ],
+ "deletable": false,
+ "insertable": false,
+ "updatable": false,
+ "uris": [
+ "/redfish/v1/Fabrics/{FabricId}/Switches/{SwitchId}/Ports",
+ "/redfish/v1/Systems/{ComputerSystemId}/Storage/{StorageId}/StorageControllers/{StorageControllerId}/Ports",
+ "/redfish/v1/Systems/{ComputerSystemId}/Storage/{StorageId}/Controllers/{StorageControllerId}/Ports",
+ "/redfish/v1/Systems/{ComputerSystemId}/FabricAdapters/{FabricAdapterId}/Ports",
+ "/redfish/v1/Systems/{ComputerSystemId}/NetworkInterfaces/{NetworkInterfaceId}/Ports",
+ "/redfish/v1/Systems/{ComputerSystemId}/GraphicsControllers/{ControllerId}/Ports",
+ "/redfish/v1/Systems/{ComputerSystemId}/USBControllers/{ControllerId}/Ports",
+ "/redfish/v1/Systems/{ComputerSystemId}/Processors/{ProcessorId}/Ports",
+ "/redfish/v1/Chassis/{ChassisId}/MediaControllers/{MediaControllerId}/Ports",
+ "/redfish/v1/Chassis/{ChassisId}/FabricAdapters/{FabricAdapterId}/Ports",
+ "/redfish/v1/Chassis/{ChassisId}/NetworkAdapters/{NetworkAdapterId}/Ports",
+ "/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Storage/{StorageId}/StorageControllers/{StorageControllerId}/Ports",
+ "/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Storage/{StorageId}/Controllers/{StorageControllerId}/Ports",
+ "/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/NetworkInterfaces/{NetworkInterfaceId}/Ports",
+ "/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Processors/{ProcessorId}/Ports",
+ "/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Storage/{StorageId}/StorageControllers/{StorageControllerId}/Ports",
+ "/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Storage/{StorageId}/Controllers/{StorageControllerId}/Ports",
+ "/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/FabricAdapters/{FabricAdapterId}/Ports",
+ "/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/NetworkInterfaces/{NetworkInterfaceId}/Ports",
+ "/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/GraphicsControllers/{ControllerId}/Ports",
+ "/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/USBControllers/{ControllerId}/Ports",
+ "/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Processors/{ProcessorId}/Ports",
+ "/redfish/v1/ResourceBlocks/{ResourceBlockId}/Storage/{StorageId}/StorageControllers/{StorageControllerId}/Ports",
+ "/redfish/v1/ResourceBlocks/{ResourceBlockId}/Storage/{StorageId}/Controllers/{StorageControllerId}/Ports",
+ "/redfish/v1/ResourceBlocks/{ResourceBlockId}/NetworkInterfaces/{NetworkInterfaceId}/Ports",
+ "/redfish/v1/ResourceBlocks/{ResourceBlockId}/Processors/{ProcessorId}/Ports",
+ "/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Storage/{StorageId}/StorageControllers/{StorageControllerId}/Ports",
+ "/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Storage/{StorageId}/Controllers/{StorageControllerId}/Ports",
+ "/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/FabricAdapters/{FabricAdapterId}/Ports",
+ "/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/NetworkInterfaces/{NetworkInterfaceId}/Ports",
+ "/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/GraphicsControllers/{ControllerId}/Ports",
+ "/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/USBControllers/{ControllerId}/Ports",
+ "/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Processors/{ProcessorId}/Ports",
+ "/redfish/v1/Storage/{StorageId}/StorageControllers/{StorageControllerId}/Ports",
+ "/redfish/v1/Storage/{StorageId}/Controllers/{StorageControllerId}/Ports",
+ "/redfish/v1/Managers/{ManagerId}/USBPorts",
+ "/redfish/v1/Managers/{ManagerId}/DedicatedNetworkPorts",
+ "/redfish/v1/Managers/{ManagerId}/SharedNetworkPorts"
+ ]
+ }
+ },
+ "owningEntity": "DMTF",
+ "title": "#PortCollection.PortCollection"
+} \ No newline at end of file
diff --git a/static/redfish/v1/schema/PortCollection_v1.xml b/static/redfish/v1/schema/PortCollection_v1.xml
new file mode 100644
index 0000000000..2d5fb7831f
--- /dev/null
+++ b/static/redfish/v1/schema/PortCollection_v1.xml
@@ -0,0 +1,106 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!---->
+<!--################################################################################ -->
+<!--# Redfish Schema: PortCollection -->
+<!--# -->
+<!--# For a detailed change log, see the README file contained in the DSP8010 bundle, -->
+<!--# available at http://www.dmtf.org/standards/redfish -->
+<!--# Copyright 2014-2022 DMTF. -->
+<!--# For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright -->
+<!--################################################################################ -->
+<!---->
+<edmx:Edmx xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx" Version="4.0">
+
+ <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Core.V1.xml">
+ <edmx:Include Namespace="Org.OData.Core.V1" Alias="OData"/>
+ </edmx:Reference>
+ <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Capabilities.V1.xml">
+ <edmx:Include Namespace="Org.OData.Capabilities.V1" Alias="Capabilities"/>
+ </edmx:Reference>
+ <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Resource_v1.xml">
+ <edmx:Include Namespace="Resource.v1_0_0"/>
+ </edmx:Reference>
+ <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/RedfishExtensions_v1.xml">
+ <edmx:Include Namespace="RedfishExtensions.v1_0_0" Alias="Redfish"/>
+ </edmx:Reference>
+ <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Port_v1.xml">
+ <edmx:Include Namespace="Port"/>
+ </edmx:Reference>
+
+ <edmx:DataServices>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PortCollection">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+
+ <EntityType Name="PortCollection" BaseType="Resource.v1_0_0.ResourceCollection">
+ <Annotation Term="OData.Description" String="The collection of Port resource instances."/>
+ <Annotation Term="OData.LongDescription" String="This resource shall represent a resource collection of Port instances for a Redfish implementation."/>
+ <Annotation Term="Capabilities.InsertRestrictions">
+ <Record>
+ <PropertyValue Property="Insertable" Bool="false"/>
+ </Record>
+ </Annotation>
+ <Annotation Term="Capabilities.UpdateRestrictions">
+ <Record>
+ <PropertyValue Property="Updatable" Bool="false"/>
+ </Record>
+ </Annotation>
+ <Annotation Term="Capabilities.DeleteRestrictions">
+ <Record>
+ <PropertyValue Property="Deletable" Bool="false"/>
+ </Record>
+ </Annotation>
+ <Annotation Term="Redfish.Uris">
+ <Collection>
+ <String>/redfish/v1/Fabrics/{FabricId}/Switches/{SwitchId}/Ports</String>
+ <String>/redfish/v1/Systems/{ComputerSystemId}/Storage/{StorageId}/StorageControllers/{StorageControllerId}/Ports</String>
+ <String>/redfish/v1/Systems/{ComputerSystemId}/Storage/{StorageId}/Controllers/{StorageControllerId}/Ports</String>
+ <String>/redfish/v1/Systems/{ComputerSystemId}/FabricAdapters/{FabricAdapterId}/Ports</String>
+ <String>/redfish/v1/Systems/{ComputerSystemId}/NetworkInterfaces/{NetworkInterfaceId}/Ports</String>
+ <String>/redfish/v1/Systems/{ComputerSystemId}/GraphicsControllers/{ControllerId}/Ports</String>
+ <String>/redfish/v1/Systems/{ComputerSystemId}/USBControllers/{ControllerId}/Ports</String>
+ <String>/redfish/v1/Systems/{ComputerSystemId}/Processors/{ProcessorId}/Ports</String>
+ <String>/redfish/v1/Chassis/{ChassisId}/MediaControllers/{MediaControllerId}/Ports</String>
+ <String>/redfish/v1/Chassis/{ChassisId}/FabricAdapters/{FabricAdapterId}/Ports</String>
+ <String>/redfish/v1/Chassis/{ChassisId}/NetworkAdapters/{NetworkAdapterId}/Ports</String>
+ <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Storage/{StorageId}/StorageControllers/{StorageControllerId}/Ports</String>
+ <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Storage/{StorageId}/Controllers/{StorageControllerId}/Ports</String>
+ <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/NetworkInterfaces/{NetworkInterfaceId}/Ports</String>
+ <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Processors/{ProcessorId}/Ports</String>
+ <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Storage/{StorageId}/StorageControllers/{StorageControllerId}/Ports</String>
+ <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Storage/{StorageId}/Controllers/{StorageControllerId}/Ports</String>
+ <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/FabricAdapters/{FabricAdapterId}/Ports</String>
+ <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/NetworkInterfaces/{NetworkInterfaceId}/Ports</String>
+ <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/GraphicsControllers/{ControllerId}/Ports</String>
+ <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/USBControllers/{ControllerId}/Ports</String>
+ <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Processors/{ProcessorId}/Ports</String>
+ <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Storage/{StorageId}/StorageControllers/{StorageControllerId}/Ports</String>
+ <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Storage/{StorageId}/Controllers/{StorageControllerId}/Ports</String>
+ <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/NetworkInterfaces/{NetworkInterfaceId}/Ports</String>
+ <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Processors/{ProcessorId}/Ports</String>
+ <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Storage/{StorageId}/StorageControllers/{StorageControllerId}/Ports</String>
+ <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Storage/{StorageId}/Controllers/{StorageControllerId}/Ports</String>
+ <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/FabricAdapters/{FabricAdapterId}/Ports</String>
+ <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/NetworkInterfaces/{NetworkInterfaceId}/Ports</String>
+ <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/GraphicsControllers/{ControllerId}/Ports</String>
+ <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/USBControllers/{ControllerId}/Ports</String>
+ <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Processors/{ProcessorId}/Ports</String>
+ <String>/redfish/v1/Storage/{StorageId}/StorageControllers/{StorageControllerId}/Ports</String>
+ <String>/redfish/v1/Storage/{StorageId}/Controllers/{StorageControllerId}/Ports</String>
+ <String>/redfish/v1/Managers/{ManagerId}/USBPorts</String>
+ <String>/redfish/v1/Managers/{ManagerId}/DedicatedNetworkPorts</String>
+ <String>/redfish/v1/Managers/{ManagerId}/SharedNetworkPorts</String>
+ </Collection>
+ </Annotation>
+ <NavigationProperty Name="Members" Type="Collection(Port.Port)">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The members of this collection."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to the members of this collection."/>
+ <Annotation Term="OData.AutoExpandReferences"/>
+ <Annotation Term="Redfish.Required"/>
+ </NavigationProperty>
+ </EntityType>
+ </Schema>
+
+ </edmx:DataServices>
+</edmx:Edmx>
diff --git a/static/redfish/v1/schema/Port_v1.xml b/static/redfish/v1/schema/Port_v1.xml
new file mode 100644
index 0000000000..ed00adda90
--- /dev/null
+++ b/static/redfish/v1/schema/Port_v1.xml
@@ -0,0 +1,1597 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!---->
+<!--################################################################################ -->
+<!--# Redfish Schema: Port v1.8.0 -->
+<!--# -->
+<!--# For a detailed change log, see the README file contained in the DSP8010 bundle, -->
+<!--# available at http://www.dmtf.org/standards/redfish -->
+<!--# Copyright 2014-2022 DMTF. -->
+<!--# For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright -->
+<!--################################################################################ -->
+<!---->
+<edmx:Edmx xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx" Version="4.0">
+
+ <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Core.V1.xml">
+ <edmx:Include Namespace="Org.OData.Core.V1" Alias="OData"/>
+ </edmx:Reference>
+ <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Capabilities.V1.xml">
+ <edmx:Include Namespace="Org.OData.Capabilities.V1" Alias="Capabilities"/>
+ </edmx:Reference>
+ <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Resource_v1.xml">
+ <edmx:Include Namespace="Resource"/>
+ <edmx:Include Namespace="Resource.v1_0_0"/>
+ </edmx:Reference>
+ <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/RedfishExtensions_v1.xml">
+ <edmx:Include Namespace="RedfishExtensions.v1_0_0" Alias="Redfish"/>
+ <edmx:Include Namespace="Validation.v1_0_0" Alias="Validation"/>
+ </edmx:Reference>
+ <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Endpoint_v1.xml">
+ <edmx:Include Namespace="Endpoint"/>
+ </edmx:Reference>
+ <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Switch_v1.xml">
+ <edmx:Include Namespace="Switch"/>
+ </edmx:Reference>
+ <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Measures.V1.xml">
+ <edmx:Include Namespace="Org.OData.Measures.V1" Alias="Measures"/>
+ </edmx:Reference>
+ <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Protocol_v1.xml">
+ <edmx:Include Namespace="Protocol"/>
+ </edmx:Reference>
+ <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/PortMetrics_v1.xml">
+ <edmx:Include Namespace="PortMetrics"/>
+ </edmx:Reference>
+ <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/RouteEntryCollection_v1.xml">
+ <edmx:Include Namespace="RouteEntryCollection"/>
+ </edmx:Reference>
+ <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/VCATEntryCollection_v1.xml">
+ <edmx:Include Namespace="VCATEntryCollection"/>
+ </edmx:Reference>
+ <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/NetworkDeviceFunction_v1.xml">
+ <edmx:Include Namespace="NetworkDeviceFunction"/>
+ </edmx:Reference>
+ <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/EnvironmentMetrics_v1.xml">
+ <edmx:Include Namespace="EnvironmentMetrics"/>
+ </edmx:Reference>
+ <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Cable_v1.xml">
+ <edmx:Include Namespace="Cable"/>
+ </edmx:Reference>
+ <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/EthernetInterface_v1.xml">
+ <edmx:Include Namespace="EthernetInterface"/>
+ </edmx:Reference>
+
+ <edmx:DataServices>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+
+ <EntityType Name="Port" BaseType="Resource.v1_0_0.Resource" Abstract="true">
+ <Annotation Term="OData.Description" String="The Port schema contains properties that describe a port of a switch, controller, chassis, or any other device that could be connected to another entity."/>
+ <Annotation Term="OData.LongDescription" String="This resource contains a simple port for a Redfish implementation."/>
+ <Annotation Term="Capabilities.InsertRestrictions">
+ <Record>
+ <PropertyValue Property="Insertable" Bool="false"/>
+ </Record>
+ </Annotation>
+ <Annotation Term="Capabilities.UpdateRestrictions">
+ <Record>
+ <PropertyValue Property="Updatable" Bool="true"/>
+ </Record>
+ </Annotation>
+ <Annotation Term="Capabilities.DeleteRestrictions">
+ <Record>
+ <PropertyValue Property="Deletable" Bool="false"/>
+ </Record>
+ </Annotation>
+ <Annotation Term="Redfish.Uris">
+ <Collection>
+ <String>/redfish/v1/Fabrics/{FabricId}/Switches/{SwitchId}/Ports/{PortId}</String>
+ <String>/redfish/v1/Systems/{ComputerSystemId}/Storage/{StorageId}/StorageControllers/{StorageControllerId}/Ports/{PortId}</String>
+ <String>/redfish/v1/Systems/{ComputerSystemId}/Storage/{StorageId}/Controllers/{StorageControllerId}/Ports/{PortId}</String>
+ <String>/redfish/v1/Systems/{ComputerSystemId}/FabricAdapters/{FabricAdapterId}/Ports/{PortId}</String>
+ <String>/redfish/v1/Systems/{ComputerSystemId}/GraphicsControllers/{ControllerId}/Ports/{PortId}</String>
+ <String>/redfish/v1/Systems/{ComputerSystemId}/USBControllers/{ControllerId}/Ports/{PortId}</String>
+ <String>/redfish/v1/Systems/{ComputerSystemId}/Processors/{ProcessorId}/Ports/{PortId}</String>
+ <String>/redfish/v1/Chassis/{ChassisId}/MediaControllers/{MediaControllerId}/Ports/{PortId}</String>
+ <String>/redfish/v1/Chassis/{ChassisId}/FabricAdapters/{FabricAdapterId}/Ports/{PortId}</String>
+ <String>/redfish/v1/Chassis/{ChassisId}/NetworkAdapters/{NetworkAdapterId}/Ports/{PortId}</String>
+ <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Storage/{StorageId}/StorageControllers/{StorageControllerId}/Ports/{PortId}</String>
+ <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Storage/{StorageId}/Controllers/{StorageControllerId}/Ports/{PortId}</String>
+ <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Processors/{ProcessorId}/Ports/{PortId}</String>
+ <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Storage/{StorageId}/StorageControllers/{StorageControllerId}/Ports/{PortId}</String>
+ <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Storage/{StorageId}/Controllers/{StorageControllerId}/Ports/{PortId}</String>
+ <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/FabricAdapters/{FabricAdapterId}/Ports/{PortId}</String>
+ <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/GraphicsControllers/{ControllerId}/Ports/{PortId}</String>
+ <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/USBControllers/{ControllerId}/Ports/{PortId}</String>
+ <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Processors/{ProcessorId}/Ports/{PortId}</String>
+ <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Storage/{StorageId}/StorageControllers/{StorageControllerId}/Ports/{PortId}</String>
+ <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Storage/{StorageId}/Controllers/{StorageControllerId}/Ports/{PortId}</String>
+ <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Processors/{ProcessorId}/Ports/{PortId}</String>
+ <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Storage/{StorageId}/StorageControllers/{StorageControllerId}/Ports/{PortId}</String>
+ <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Storage/{StorageId}/Controllers/{StorageControllerId}/Ports/{PortId}</String>
+ <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/FabricAdapters/{FabricAdapterId}/Ports/{PortId}</String>
+ <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/GraphicsControllers/{ControllerId}/Ports/{PortId}</String>
+ <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/USBControllers/{ControllerId}/Ports/{PortId}</String>
+ <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Processors/{ProcessorId}/Ports/{PortId}</String>
+ <String>/redfish/v1/Storage/{StorageId}/StorageControllers/{StorageControllerId}/Ports/{PortId}</String>
+ <String>/redfish/v1/Storage/{StorageId}/Controllers/{StorageControllerId}/Ports/{PortId}</String>
+ <String>/redfish/v1/Managers/{ManagerId}/USBPorts/{PortId}</String>
+ <String>/redfish/v1/Managers/{ManagerId}/DedicatedNetworkPorts/{PortId}</String>
+ </Collection>
+ </Annotation>
+ </EntityType>
+
+ <Action Name="Reset" IsBound="true">
+ <Annotation Term="OData.Description" String="This action resets this port."/>
+ <Annotation Term="OData.LongDescription" String="This action shall reset this port."/>
+ <Parameter Name="Port" Type="Port.v1_0_0.Actions"/>
+ <Parameter Name="ResetType" Type="Resource.ResetType">
+ <Annotation Term="OData.Description" String="The type of reset."/>
+ <Annotation Term="OData.LongDescription" String="This parameter shall contain the type of reset. The service can accept a request without the parameter and perform an implementation specific default reset."/>
+ </Parameter>
+ </Action>
+
+ <Action Name="ResetPPB" IsBound="true">
+ <Annotation Term="OData.Description" String="This action resets the PCI-to-PCI bridge (PPB) for this port."/>
+ <Annotation Term="OData.LongDescription" String="This action shall reset the PCI-to-PCI bridge (PPB) for this port."/>
+ <Parameter Name="Port" Type="Port.v1_0_0.Actions"/>
+ <Annotation Term="Redfish.Revisions">
+ <Collection>
+ <Record>
+ <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
+ <PropertyValue Property="Version" String="v1_8_0"/>
+ </Record>
+ </Collection>
+ </Annotation>
+ </Action>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_0_0">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="Redfish.Release" String="2016.2"/>
+
+ <EntityType Name="Port" BaseType="Port.Port">
+ <Property Name="Status" Type="Resource.Status" Nullable="false">
+ <Annotation Term="OData.Description" String="The status and health of the resource and its subordinate or dependent resources."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain any status or health properties of the resource."/>
+ </Property>
+ <Property Name="PortId" Type="Edm.String">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The label of this port on the physical package for this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the name of the port as indicated on the device containing the port."/>
+ </Property>
+ <Property Name="PortProtocol" Type="Protocol.Protocol">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The protocol being sent over this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the protocol being sent over this port."/>
+ </Property>
+ <Property Name="PortType" Type="Port.v1_0_0.PortType">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The type of this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the port type for this port."/>
+ </Property>
+ <Property Name="CurrentSpeedGbps" Type="Edm.Decimal">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The current speed of this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the speed of this port currently negotiated and running. This value includes overhead associated with the protocol."/>
+ <Annotation Term="Measures.Unit" String="Gbit/s"/>
+ </Property>
+ <Property Name="MaxSpeedGbps" Type="Edm.Decimal">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The maximum speed of this port as currently configured."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the maximum speed of which this port is capable of being configured. If capable of autonegotiation, the system shall attempt to negotiate at the maximum speed set. This value includes overhead associated with the protocol."/>
+ <Annotation Term="Measures.Unit" String="Gbit/s"/>
+ </Property>
+ <Property Name="Width" Type="Edm.Int64">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The number of lanes, phys, or other physical transport links that this port contains."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the number of physical transport links that this port contains."/>
+ </Property>
+ <Property Name="Links" Type="Port.v1_0_0.Links" Nullable="false">
+ <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain links to resources that are related to but are not contained by, or subordinate to, this resource."/>
+ </Property>
+ <Property Name="Actions" Type="Port.v1_0_0.Actions" Nullable="false">
+ <Annotation Term="OData.Description" String="The available actions for this resource."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the available actions for this resource."/>
+ </Property>
+ </EntityType>
+
+ <ComplexType Name="Links" BaseType="Resource.Links">
+ <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
+ <Annotation Term="OData.LongDescription" String="This Redfish Specification-described type shall contain links to resources that are related to but are not contained by, or subordinate to, this resource."/>
+ <NavigationProperty Name="AssociatedEndpoints" Type="Collection(Endpoint.Endpoint)">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="An array of links to the endpoints at the other end of the link."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to resources of type Endpoint that represent the endpoints to which this port is connected."/>
+ <Annotation Term="OData.AutoExpandReferences"/>
+ </NavigationProperty>
+ <NavigationProperty Name="ConnectedSwitches" Type="Collection(Switch.Switch)">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="An array of links to the switches at the other end of the link."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to resources of type Switch that represent the switches to which this port is connected."/>
+ <Annotation Term="OData.AutoExpandReferences"/>
+ </NavigationProperty>
+ <NavigationProperty Name="ConnectedSwitchPorts" Type="Collection(Port.Port)">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="An array of links to the switch ports at the other end of the link."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to resources of type Port that represent the switch ports to which this port is connected."/>
+ <Annotation Term="OData.AutoExpandReferences"/>
+ </NavigationProperty>
+ </ComplexType>
+
+ <ComplexType Name="Actions">
+ <Annotation Term="OData.AdditionalProperties" Bool="false"/>
+ <Annotation Term="OData.Description" String="The available actions for this resource."/>
+ <Annotation Term="OData.LongDescription" String="This type shall contain the available actions for this resource."/>
+ <Property Name="Oem" Type="Port.v1_0_0.OemActions" Nullable="false">
+ <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the available OEM-specific actions for this resource."/>
+ </Property>
+ </ComplexType>
+
+ <ComplexType Name="OemActions">
+ <Annotation Term="OData.AdditionalProperties" Bool="true"/>
+ <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
+ <Annotation Term="OData.LongDescription" String="This type shall contain the available OEM-specific actions for this resource."/>
+ </ComplexType>
+
+ <EnumType Name="PortType">
+ <Member Name="UpstreamPort">
+ <Annotation Term="OData.Description" String="This port connects to a host device."/>
+ </Member>
+ <Member Name="DownstreamPort">
+ <Annotation Term="OData.Description" String="This port connects to a target device."/>
+ </Member>
+ <Member Name="InterswitchPort">
+ <Annotation Term="OData.Description" String="This port connects to another switch."/>
+ </Member>
+ <Member Name="ManagementPort">
+ <Annotation Term="OData.Description" String="This port connects to a switch manager."/>
+ </Member>
+ <Member Name="BidirectionalPort">
+ <Annotation Term="OData.Description" String="This port connects to any type of device."/>
+ </Member>
+ <Member Name="UnconfiguredPort">
+ <Annotation Term="OData.Description" String="This port has not yet been configured."/>
+ </Member>
+ </EnumType>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_0_1">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created to show that annotations in previous namespaces were updated."/>
+ <EntityType Name="Port" BaseType="Port.v1_0_0.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_0_2">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created to remove the Nullable facet on NavigationProperties of the Collection type."/>
+ <EntityType Name="Port" BaseType="Port.v1_0_1.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_0_3">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created to change PortProtocol to use the unversioned definition, and correct the short and long descriptions in the defined actions."/>
+ <EntityType Name="Port" BaseType="Port.v1_0_2.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_0_4">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created to force the regeneration of JSON Schema so that OData properties are marked as required, and integer properties are marked as integer rather than number."/>
+ <EntityType Name="Port" BaseType="Port.v1_0_3.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_0_5">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created to force the regeneration of JSON Schema so that URI properties use the uri-reference format. It also clarifies several descriptions."/>
+ <EntityType Name="Port" BaseType="Port.v1_0_4.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_0_6">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created to update descriptions that this schema defines."/>
+ <EntityType Name="Port" BaseType="Port.v1_0_5.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_0_7">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
+ <EntityType Name="Port" BaseType="Port.v1_0_6.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_0_8">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created specify 64-bit integers in OpenAPI."/>
+ <EntityType Name="Port" BaseType="Port.v1_0_7.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_0_9">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="Clarified that speed properties include protocol overhead."/>
+ <EntityType Name="Port" BaseType="Port.v1_0_8.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_0_10">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created to clarify the usage of the AssociatedEndpoints, ConnectedSwitches, and ConnectedSwitchPorts properties inside of Links."/>
+ <EntityType Name="Port" BaseType="Port.v1_0_9.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_1_0">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="Redfish.Release" String="2017.3"/>
+
+ <EntityType Name="Port" BaseType="Port.v1_0_3.Port">
+ <Property Name="Location" Type="Resource.Location" Nullable="false">
+ <Annotation Term="OData.Description" String="The location of the port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain location information of the associated port."/>
+ </Property>
+ </EntityType>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_1_1">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created to force the regeneration of JSON Schema so that OData properties are marked as required, and integer properties are marked as integer rather than number."/>
+ <EntityType Name="Port" BaseType="Port.v1_1_0.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_1_2">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created to force the regeneration of JSON Schema so that URI properties use the uri-reference format. It also clarifies several descriptions."/>
+ <EntityType Name="Port" BaseType="Port.v1_1_1.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_1_3">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created to update descriptions that this schema defines."/>
+ <EntityType Name="Port" BaseType="Port.v1_1_2.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_1_4">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
+ <EntityType Name="Port" BaseType="Port.v1_1_3.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_1_5">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created specify 64-bit integers in OpenAPI."/>
+ <EntityType Name="Port" BaseType="Port.v1_1_4.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_1_6">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="Clarified that speed properties include protocol overhead."/>
+ <EntityType Name="Port" BaseType="Port.v1_1_5.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_1_7">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created to clarify the usage of the AssociatedEndpoints, ConnectedSwitches, and ConnectedSwitchPorts properties inside of Links."/>
+ <EntityType Name="Port" BaseType="Port.v1_1_6.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_2_0">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="Redfish.Release" String="2019.4"/>
+
+ <EntityType Name="Port" BaseType="Port.v1_1_3.Port">
+ <Property Name="PortMedium" Type="Port.v1_2_0.PortMedium">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The physical connection medium for this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the physical connection medium for this port."/>
+ </Property>
+ <Property Name="LinkNetworkTechnology" Type="Port.v1_2_0.LinkNetworkTechnology">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The link network technology capabilities of this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain a network technology capability of this port."/>
+ </Property>
+ <Property Name="InterfaceEnabled" Type="Edm.Boolean">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="An indication of whether the interface is enabled."/>
+ <Annotation Term="OData.LongDescription" String="This property shall indicate whether the interface is enabled."/>
+ </Property>
+ <Property Name="SignalDetected" Type="Edm.Boolean">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="An indication of whether a signal is detected on this interface."/>
+ <Annotation Term="OData.LongDescription" String="This property shall indicate whether a signal that is appropriate for this link technology is detected for this port."/>
+ </Property>
+ <Property Name="LinkTransitionIndicator" Type="Edm.Int64" Nullable="false">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="The number of link state transitions for this interface."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the number of link state transitions for this interface."/>
+ </Property>
+ <Property Name="ActiveWidth" Type="Edm.Int64" Nullable="false">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The number of active lanes for this interface."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the number of active lanes for this interface."/>
+ </Property>
+ <Property Name="LinkState" Type="Port.v1_2_0.LinkState" Nullable="false">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="The desired link state for this interface."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the desired link state for this interface."/>
+ </Property>
+ <Property Name="LinkStatus" Type="Port.v1_2_0.LinkStatus" Nullable="false">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The link status for this interface."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the link status for this interface."/>
+ </Property>
+ <Property Name="GenZ" Type="Port.v1_2_0.GenZ" Nullable="false">
+ <Annotation Term="OData.Description" String="Gen-Z specific properties."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain Gen-Z specific properties for this interface."/>
+ </Property>
+ <NavigationProperty Name="Metrics" Type="PortMetrics.PortMetrics">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The link to the metrics associated with this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain a link to the metrics associated with this port."/>
+ <Annotation Term="OData.AutoExpandReferences"/>
+ </NavigationProperty>
+ </EntityType>
+
+ <ComplexType Name="GenZ">
+ <Annotation Term="OData.AdditionalProperties" Bool="false"/>
+ <Annotation Term="OData.Description" String="This type defines Gen-Z specific port properties."/>
+ <Annotation Term="OData.LongDescription" String="This type shall contain Gen-Z specific port properties."/>
+ <NavigationProperty Name="LPRT" Type="RouteEntryCollection.RouteEntryCollection" Nullable="false">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The Linear Packet Relay Table for the port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource collection of type RouteEntryCollection, and shall represent the Gen-Z Core Specification-defined Linear Packet Relay Table for this port."/>
+ <Annotation Term="OData.AutoExpandReferences"/>
+ </NavigationProperty>
+ <NavigationProperty Name="MPRT" Type="RouteEntryCollection.RouteEntryCollection" Nullable="false">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="the Multi-subnet Packet Relay Table for the port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource collection of type RouteEntryCollection, and shall represent the Gen-Z Core Specification-defined Multi-subnet Packet Relay Table for this port."/>
+ <Annotation Term="OData.AutoExpandReferences"/>
+ </NavigationProperty>
+ <NavigationProperty Name="VCAT" Type="VCATEntryCollection.VCATEntryCollection" Nullable="false">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="the Virtual Channel Action Table for the port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource collection of type VCATEntryCollection."/>
+ <Annotation Term="OData.AutoExpandReferences"/>
+ </NavigationProperty>
+ </ComplexType>
+
+ <ComplexType Name="Links" BaseType="Port.v1_0_0.Links">
+ <NavigationProperty Name="ConnectedPorts" Type="Collection(Port.Port)">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="An array of links to the remote device ports at the other end of the link."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to resources of type Port that represent the remote device ports to which this port is connected."/>
+ <Annotation Term="OData.AutoExpandReferences"/>
+ </NavigationProperty>
+ </ComplexType>
+
+ <EnumType Name="PortMedium">
+ <Member Name="Electrical">
+ <Annotation Term="OData.Description" String="This port has an electrical cable connection."/>
+ </Member>
+ <Member Name="Optical">
+ <Annotation Term="OData.Description" String="This port has an optical cable connection."/>
+ </Member>
+ </EnumType>
+
+ <EnumType Name="LinkState">
+ <Member Name="Enabled">
+ <Annotation Term="OData.Description" String="This link is enabled."/>
+ </Member>
+ <Member Name="Disabled">
+ <Annotation Term="OData.Description" String="This link is disabled."/>
+ </Member>
+ </EnumType>
+
+ <EnumType Name="LinkStatus">
+ <Member Name="LinkUp">
+ <Annotation Term="OData.Description" String="This link on this interface is up."/>
+ </Member>
+ <Member Name="Starting">
+ <Annotation Term="OData.Description" String="This link on this interface is starting. A physical link has been established, but the port is not able to transfer data."/>
+ </Member>
+ <Member Name="Training">
+ <Annotation Term="OData.Description" String="This physical link on this interface is training."/>
+ </Member>
+ <Member Name="LinkDown">
+ <Annotation Term="OData.Description" String="The link on this interface is down."/>
+ </Member>
+ <Member Name="NoLink">
+ <Annotation Term="OData.Description" String="No physical link detected on this interface."/>
+ </Member>
+ </EnumType>
+
+ <EnumType Name="LinkNetworkTechnology">
+ <Member Name="Ethernet">
+ <Annotation Term="OData.Description" String="The port is capable of connecting to an Ethernet network."/>
+ </Member>
+ <Member Name="InfiniBand">
+ <Annotation Term="OData.Description" String="The port is capable of connecting to an InfiniBand network."/>
+ </Member>
+ <Member Name="FibreChannel">
+ <Annotation Term="OData.Description" String="The port is capable of connecting to a Fibre Channel network."/>
+ </Member>
+ <Member Name="GenZ">
+ <Annotation Term="OData.Description" String="The port is capable of connecting to a Gen-Z fabric."/>
+ </Member>
+ <Member Name="PCIe">
+ <Annotation Term="OData.Description" String="The port is capable of connecting to PCIe and CXL fabrics."/>
+ <Annotation Term="Redfish.Revisions">
+ <Collection>
+ <Record>
+ <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
+ <PropertyValue Property="Version" String="v1_8_0"/>
+ </Record>
+ </Collection>
+ </Annotation>
+ </Member>
+ </EnumType>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_2_1">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
+ <EntityType Name="Port" BaseType="Port.v1_2_0.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_2_2">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created to clarify the descriptions for the values of LinkStatus."/>
+ <EntityType Name="Port" BaseType="Port.v1_2_1.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_2_3">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created specify 64-bit integers in OpenAPI."/>
+ <EntityType Name="Port" BaseType="Port.v1_2_2.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_2_4">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="Clarified that speed properties include protocol overhead."/>
+ <EntityType Name="Port" BaseType="Port.v1_2_3.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_2_5">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created to correct the permissions for LinkStatus."/>
+ <EntityType Name="Port" BaseType="Port.v1_2_4.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_2_6">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created to clarify the usage of the AssociatedEndpoints, ConnectedSwitches, ConnectedSwitchPorts, and ConnectedPorts properties inside of Links."/>
+ <EntityType Name="Port" BaseType="Port.v1_2_5.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_3_0">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="Redfish.Release" String="2020.3"/>
+
+ <EntityType Name="Port" BaseType="Port.v1_2_2.Port">
+ <Property Name="LocationIndicatorActive" Type="Edm.Boolean">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="An indicator allowing an operator to physically locate this resource."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the state of the indicator used to physically identify or locate this resource. A write to this property shall update the value of IndicatorLED in this resource, if supported, to reflect the implementation of the locating function."/>
+ </Property>
+ <Property Name="MaxFrameSize" Type="Edm.Int64">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The maximum frame size supported by the port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the maximum frame size supported by the port."/>
+ <Annotation Term="Measures.Unit" String="By"/>
+ </Property>
+ <Property Name="LinkConfiguration" Type="Collection(Port.v1_3_0.LinkConfiguration)" Nullable="false">
+ <Annotation Term="OData.Description" String="The link configuration of this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the static capabilities and configuration settings of the port."/>
+ </Property>
+ <Property Name="FibreChannel" Type="Port.v1_3_0.FibreChannelProperties">
+ <Annotation Term="OData.Description" String="Fibre Channel properties for this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain Fibre Channel-specific properties of the port."/>
+ </Property>
+ <Property Name="Ethernet" Type="Port.v1_3_0.EthernetProperties">
+ <Annotation Term="OData.Description" String="Ethernet properties for this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain Ethernet-specific properties of the port."/>
+ </Property>
+ </EntityType>
+
+ <ComplexType Name="FibreChannelProperties">
+ <Annotation Term="OData.AdditionalProperties" Bool="false"/>
+ <Annotation Term="OData.Description" String="Fibre Channel-specific properties for a port."/>
+ <Annotation Term="OData.LongDescription" String="This type shall contain Fibre Channel-specific properties for a port."/>
+ <Property Name="PortConnectionType" Type="Port.v1_3_0.PortConnectionType">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The connection type of this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the connection type for this port."/>
+ </Property>
+ <Property Name="NumberDiscoveredRemotePorts" Type="Edm.Int64">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The number of ports not on the associated device that the associated device has discovered through this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the number of ports not on this associated device that this port has discovered."/>
+ </Property>
+ <Property Name="FabricName" Type="Edm.String">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The Fibre Channel Fabric Name provided by the switch."/>
+ <Annotation Term="OData.LongDescription" String="This property shall indicate the Fibre Channel Fabric Name provided by the switch."/>
+ </Property>
+ </ComplexType>
+
+ <ComplexType Name="EthernetProperties">
+ <Annotation Term="OData.AdditionalProperties" Bool="false"/>
+ <Annotation Term="OData.Description" String="Ethernet-specific properties for a port."/>
+ <Annotation Term="OData.LongDescription" String="This type shall contain Ethernet-specific properties for a port."/>
+ <Property Name="SupportedEthernetCapabilities" Type="Collection(Port.v1_3_0.SupportedEthernetCapabilities)">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The set of Ethernet capabilities that this port supports."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain an array of Ethernet capabilities supported by this port."/>
+ <Annotation Term="Redfish.Revisions">
+ <Collection>
+ <Record>
+ <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Deprecated"/>
+ <PropertyValue Property="Version" String="v1_5_0"/>
+ <PropertyValue Property="Description" String="This property has been deprecated in favor of individual fields for the various properties."/>
+ </Record>
+ </Collection>
+ </Annotation>
+ </Property>
+ <Property Name="FlowControlStatus" Type="Port.v1_3_0.FlowControl">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The 802.3x flow control behavior negotiated with the link partner for this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the 802.3x flow control behavior negotiated with the link partner for this port."/>
+ </Property>
+ <Property Name="FlowControlConfiguration" Type="Port.v1_3_0.FlowControl">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="The locally configured 802.3x flow control setting for this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the locally configured 802.3x flow control setting for this port."/>
+ </Property>
+ </ComplexType>
+
+ <EnumType Name="PortConnectionType">
+ <Member Name="NotConnected">
+ <Annotation Term="OData.Description" String="This port is not connected."/>
+ </Member>
+ <Member Name="NPort">
+ <Annotation Term="OData.Description" String="This port connects through an N-Port to a switch."/>
+ </Member>
+ <Member Name="PointToPoint">
+ <Annotation Term="OData.Description" String="This port connects in a Point-to-point configuration."/>
+ </Member>
+ <Member Name="PrivateLoop">
+ <Annotation Term="OData.Description" String="This port connects in a private loop configuration."/>
+ </Member>
+ <Member Name="PublicLoop">
+ <Annotation Term="OData.Description" String="This port connects in a public configuration."/>
+ </Member>
+ <Member Name="Generic">
+ <Annotation Term="OData.Description" String="This port connection type is a generic fabric port."/>
+ </Member>
+ <Member Name="ExtenderFabric">
+ <Annotation Term="OData.Description" String="This port connection type is an extender fabric port."/>
+ </Member>
+ <Member Name="FPort">
+ <Annotation Term="OData.Description" String="This port connection type is a fabric port."/>
+ <Annotation Term="Redfish.Revisions">
+ <Collection>
+ <Record>
+ <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
+ <PropertyValue Property="Version" String="v1_5_0"/>
+ </Record>
+ </Collection>
+ </Annotation>
+ </Member>
+ <Member Name="EPort">
+ <Annotation Term="OData.Description" String="This port connection type is an extender fabric port."/>
+ <Annotation Term="Redfish.Revisions">
+ <Collection>
+ <Record>
+ <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
+ <PropertyValue Property="Version" String="v1_5_0"/>
+ </Record>
+ </Collection>
+ </Annotation>
+ </Member>
+ <Member Name="TEPort">
+ <Annotation Term="OData.Description" String="This port connection type is an trunking extender fabric port."/>
+ <Annotation Term="Redfish.Revisions">
+ <Collection>
+ <Record>
+ <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
+ <PropertyValue Property="Version" String="v1_5_0"/>
+ </Record>
+ </Collection>
+ </Annotation>
+ </Member>
+ <Member Name="NPPort">
+ <Annotation Term="OData.Description" String="This port connection type is a proxy N port for N-Port virtualization."/>
+ <Annotation Term="Redfish.Revisions">
+ <Collection>
+ <Record>
+ <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
+ <PropertyValue Property="Version" String="v1_5_0"/>
+ </Record>
+ </Collection>
+ </Annotation>
+ </Member>
+ <Member Name="GPort">
+ <Annotation Term="OData.Description" String="This port connection type is a generic fabric port."/>
+ <Annotation Term="Redfish.Revisions">
+ <Collection>
+ <Record>
+ <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
+ <PropertyValue Property="Version" String="v1_5_0"/>
+ </Record>
+ </Collection>
+ </Annotation>
+ </Member>
+ <Member Name="NLPort">
+ <Annotation Term="OData.Description" String="This port connects in a node loop configuration."/>
+ <Annotation Term="Redfish.Revisions">
+ <Collection>
+ <Record>
+ <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
+ <PropertyValue Property="Version" String="v1_5_0"/>
+ </Record>
+ </Collection>
+ </Annotation>
+ </Member>
+ <Member Name="FLPort">
+ <Annotation Term="OData.Description" String="This port connects in a fabric loop configuration."/>
+ <Annotation Term="Redfish.Revisions">
+ <Collection>
+ <Record>
+ <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
+ <PropertyValue Property="Version" String="v1_5_0"/>
+ </Record>
+ </Collection>
+ </Annotation>
+ </Member>
+ <Member Name="EXPort">
+ <Annotation Term="OData.Description" String="This port connection type is an external fabric port."/>
+ <Annotation Term="Redfish.Revisions">
+ <Collection>
+ <Record>
+ <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
+ <PropertyValue Property="Version" String="v1_5_0"/>
+ </Record>
+ </Collection>
+ </Annotation>
+ </Member>
+ <Member Name="UPort">
+ <Annotation Term="OData.Description" String="This port connection type is unassigned."/>
+ <Annotation Term="Redfish.Revisions">
+ <Collection>
+ <Record>
+ <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
+ <PropertyValue Property="Version" String="v1_5_0"/>
+ </Record>
+ </Collection>
+ </Annotation>
+ </Member>
+ <Member Name="DPort">
+ <Annotation Term="OData.Description" String="This port connection type is a diagnostic port."/>
+ <Annotation Term="Redfish.Revisions">
+ <Collection>
+ <Record>
+ <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
+ <PropertyValue Property="Version" String="v1_5_0"/>
+ </Record>
+ </Collection>
+ </Annotation>
+ </Member>
+ </EnumType>
+
+ <EnumType Name="SupportedEthernetCapabilities">
+ <Member Name="WakeOnLAN">
+ <Annotation Term="OData.Description" String="Wake on LAN (WoL) is supported on this port."/>
+ </Member>
+ <Member Name="EEE">
+ <Annotation Term="OData.Description" String="IEEE 802.3az Energy-Efficient Ethernet (EEE) is supported on this port."/>
+ </Member>
+ </EnumType>
+
+ <EnumType Name="FlowControl">
+ <Member Name="None">
+ <Annotation Term="OData.Description" String="No IEEE 802.3x flow control is enabled on this port."/>
+ </Member>
+ <Member Name="TX">
+ <Annotation Term="OData.Description" String="IEEE 802.3x flow control may be initiated by this station."/>
+ </Member>
+ <Member Name="RX">
+ <Annotation Term="OData.Description" String="IEEE 802.3x flow control may be initiated by the link partner."/>
+ </Member>
+ <Member Name="TX_RX">
+ <Annotation Term="OData.Description" String="IEEE 802.3x flow control may be initiated by this station or the link partner."/>
+ </Member>
+ </EnumType>
+
+ <ComplexType Name="LinkConfiguration">
+ <Annotation Term="OData.AdditionalProperties" Bool="false"/>
+ <Annotation Term="OData.Description" String="Properties of the link for which this port is configured."/>
+ <Annotation Term="OData.LongDescription" String="This type shall contain properties of the link for which port has been configured."/>
+ <Property Name="CapableLinkSpeedGbps" Type="Collection(Edm.Decimal)">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The set of link speed capabilities of this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain all of the possible network link speed capabilities of this port. This value includes overhead associated with the protocol."/>
+ <Annotation Term="Measures.Unit" String="Gbit/s"/>
+ </Property>
+ <Property Name="ConfiguredNetworkLinks" Type="Collection(Port.v1_3_0.ConfiguredNetworkLink)">
+ <Annotation Term="OData.Description" String="The set of link speed and width pairs this port is configured to use for autonegotiation."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the set of link speed and width pairs to which this port is restricted for autonegotiation purposes."/>
+ </Property>
+ <Property Name="AutoSpeedNegotiationCapable" Type="Edm.Boolean">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="An indication of whether the port is capable of autonegotiating speed."/>
+ <Annotation Term="OData.LongDescription" String="This property shall indicate whether the port is capable of autonegotiating speed."/>
+ </Property>
+ <Property Name="AutoSpeedNegotiationEnabled" Type="Edm.Boolean">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="Controls whether this port is configured to enable autonegotiating speed."/>
+ <Annotation Term="OData.LongDescription" String="This property shall indicate whether the port is configured to autonegotiate speed."/>
+ </Property>
+ </ComplexType>
+
+ <ComplexType Name="ConfiguredNetworkLink">
+ <Annotation Term="OData.AdditionalProperties" Bool="false"/>
+ <Annotation Term="OData.Description" String="A set of link settings that a port is configured to use for autonegotiation."/>
+ <Annotation Term="OData.LongDescription" String="This type shall contain a set of link settings that a port is configured to use for autonegotiation."/>
+ <Property Name="ConfiguredLinkSpeedGbps" Type="Edm.Decimal">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="The link speed per lane this port is configured to use for autonegotiation."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the network link speed per lane this port is configured to allow for autonegotiation purposes. This value includes overhead associated with the protocol."/>
+ <Annotation Term="Measures.Unit" String="Gbit/s"/>
+ </Property>
+ <Property Name="ConfiguredWidth" Type="Edm.Int64">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="The link width this port is configured to use for autonegotiation in conjunction with the link speed."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the network link width this port is configured to use for autonegotiation purposes."/>
+ </Property>
+ </ComplexType>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_3_1">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created specify 64-bit integers in OpenAPI."/>
+ <EntityType Name="Port" BaseType="Port.v1_3_0.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_3_2">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="Clarified that speed properties include protocol overhead."/>
+ <EntityType Name="Port" BaseType="Port.v1_3_1.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_3_3">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created to correct the permissions for LinkStatus."/>
+ <EntityType Name="Port" BaseType="Port.v1_3_2.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_3_4">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created to clarify the usage of the AssociatedEndpoints, ConnectedSwitches, ConnectedSwitchPorts, and ConnectedPorts properties inside of Links."/>
+ <EntityType Name="Port" BaseType="Port.v1_3_3.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_4_0">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="Redfish.Release" String="2021.1"/>
+
+ <EntityType Name="Port" BaseType="Port.v1_3_2.Port">
+ <Property Name="FunctionMinBandwidth" Type="Collection(Port.v1_4_0.FunctionMinBandwidth)" Nullable="false">
+ <Annotation Term="OData.Description" String="An array of minimum bandwidth allocation percentages for the functions associated with this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain an array of minimum bandwidth percentage allocations for each of the functions associated with this port."/>
+ </Property>
+ <Property Name="FunctionMaxBandwidth" Type="Collection(Port.v1_4_0.FunctionMaxBandwidth)" Nullable="false">
+ <Annotation Term="OData.Description" String="An array of maximum bandwidth allocation percentages for the functions associated with this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain an array of maximum bandwidth allocation percentages for the functions associated with this port."/>
+ </Property>
+ <Property Name="SFP" Type="Port.v1_4_0.SFP">
+ <Annotation Term="OData.Description" String="The small form-factor pluggable (SFP) device associated with this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain data about the small form-factor pluggable (SFP) device currently occupying this port."/>
+ </Property>
+ <NavigationProperty Name="EnvironmentMetrics" Type="EnvironmentMetrics.EnvironmentMetrics" Nullable="false">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The link to the environment metrics for this port or any attached small form-factor pluggable (SFP) device."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource of type EnvironmentMetrics that represents the environment metrics for this port or any attached small form-factor pluggable (SFP) device."/>
+ <Annotation Term="OData.AutoExpandReferences"/>
+ </NavigationProperty>
+ <Property Name="CurrentProtocolVersion" Type="Edm.String">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The protocol version being sent over this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the protocol version being sent over this port. This property should only be used for protocols where the version and not the speed is of primary interest such as USB, DisplayPort, or HDMI."/>
+ </Property>
+ <Property Name="CapableProtocolVersions" Type="Collection(Edm.String)">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The protocol versions capable of being sent over this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the protocol versions capable of being sent over this port. This property should only be used for protocols where the version and not the speed is of primary interest such as USB, DisplayPort, or HDMI."/>
+ </Property>
+ <Property Name="Enabled" Type="Edm.Boolean" Nullable="false">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="An indication of whether this port is enabled."/>
+ <Annotation Term="OData.LongDescription" String="The value of this property shall indicate if this port is enabled. Disabling a port will disconnect any devices only connected to the system through this port."/>
+ </Property>
+ </EntityType>
+
+ <ComplexType Name="FunctionMinBandwidth">
+ <Annotation Term="OData.Description" String="A minimum bandwidth allocation percentage for a network device functions associated a port."/>
+ <Annotation Term="OData.LongDescription" String="This type shall describe a minimum bandwidth percentage allocation for a network device function associated with a port."/>
+ <NavigationProperty Name="NetworkDeviceFunction" Type="NetworkDeviceFunction.NetworkDeviceFunction" Nullable="false">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The link to the network device function associated with this bandwidth setting of this network port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource of type NetworkDeviceFunction that represents the network device function associated with this bandwidth setting of this network port."/>
+ <Annotation Term="OData.AutoExpandReferences"/>
+ </NavigationProperty>
+ <Property Name="AllocationPercent" Type="Edm.Int64">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="The minimum bandwidth allocation percentage allocated to the corresponding network device function instance."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the minimum bandwidth percentage allocation for the associated network device function. The sum total of all minimum percentages shall not exceed 100."/>
+ <Annotation Term="Measures.Unit" String="%"/>
+ </Property>
+ </ComplexType>
+
+ <ComplexType Name="FunctionMaxBandwidth">
+ <Annotation Term="OData.Description" String="A maximum bandwidth allocation percentage for a network device functions associated a port."/>
+ <Annotation Term="OData.LongDescription" String="This type shall describe a maximum bandwidth percentage allocation for a network device function associated with a port."/>
+ <NavigationProperty Name="NetworkDeviceFunction" Type="NetworkDeviceFunction.NetworkDeviceFunction" Nullable="false">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The link to the network device function associated with this bandwidth setting of this network port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource of type NetworkDeviceFunction that represents the network device function associated with this bandwidth setting of this network port."/>
+ <Annotation Term="OData.AutoExpandReferences"/>
+ </NavigationProperty>
+ <Property Name="AllocationPercent" Type="Edm.Int64">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="The maximum bandwidth allocation percentage allocated to the corresponding network device function instance."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the maximum bandwidth percentage allocation for the associated network device function."/>
+ <Annotation Term="Measures.Unit" String="%"/>
+ </Property>
+ </ComplexType>
+
+ <ComplexType Name="EthernetProperties" BaseType="Port.v1_3_0.EthernetProperties">
+ <Property Name="AssociatedMACAddresses" Type="Collection(Edm.String)">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="Validation.Pattern" String="^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$"/>
+ <Annotation Term="OData.Description" String="An array of configured MAC addresses that are associated with this network port, including the programmed address of the lowest numbered network device function, the configured but not active address, if applicable, the address for hardware port teaming, or other network addresses."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain an array of configured MAC addresses that are associated with this network port, including the programmed address of the lowest numbered network device function, the configured but not active address if applicable, the address for hardware port teaming, or other network addresses."/>
+ </Property>
+ <Property Name="LLDPEnabled" Type="Edm.Boolean" Nullable="false">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="Enable/disable LLDP for this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the state indicating whether to enable LLDP for a port. If LLDP is disabled at the adapter level, this property shall be ignored."/>
+ </Property>
+ <Property Name="LLDPTransmit" Type="Port.v1_4_0.LLDPTransmit">
+ <Annotation Term="OData.Description" String="LLDP data being transmitted on this link."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the LLDP data being transmitted on this link."/>
+ </Property>
+ <Property Name="LLDPReceive" Type="Port.v1_4_0.LLDPReceive">
+ <Annotation Term="OData.Description" String="LLDP data being received on this link."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the LLDP data being received on this link."/>
+ </Property>
+ </ComplexType>
+
+ <ComplexType Name="FibreChannelProperties" BaseType="Port.v1_3_0.FibreChannelProperties">
+ <Property Name="AssociatedWorldWideNames" Type="Collection(Edm.String)">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="An array of configured World Wide Names (WWN) that are associated with this network port, including the programmed address of the lowest numbered network device function, the configured but not active address, if applicable, the address for hardware port teaming, or other network addresses."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain an array of configured World Wide Names (WWN) that are associated with this network port, including the programmed address of the lowest numbered network device function, the configured but not active address if applicable, the address for hardware port teaming, or other network addresses."/>
+ <Annotation Term="Validation.Pattern" String="^([0-9A-Fa-f]{2}[:-]){7}([0-9A-Fa-f]{2})$"/>
+ </Property>
+ </ComplexType>
+
+ <ComplexType Name="LLDPTransmit">
+ <Annotation Term="OData.Description" String="Link Layer Data Protocol (LLDP) data being transmitted on this link."/>
+ <Annotation Term="OData.LongDescription" String="This type shall contain the LLDP data to be transmitted from this endpoint."/>
+ <Property Name="ChassisId" Type="Edm.String">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="Link Layer Data Protocol (LLDP) chassis ID."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the chassis ID to be transmitted from this endpoint. If no such chassis ID is to be transmitted, this value shall be an empty string."/>
+ </Property>
+ <Property Name="ChassisIdSubtype" Type="Port.v1_4_0.IEEE802IdSubtype">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="The type of identifier used for the chassis ID."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the IEEE 802.1AB-2009 chassis ID subtype to be transmitted from this endpoint. If no such chassis ID subtype is to be transmitted, this value shall be `NotTransmitted`."/>
+ </Property>
+ <Property Name="ManagementVlanId" Type="Edm.Int64">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="Validation.Minimum" Int="0"/>
+ <Annotation Term="Validation.Maximum" Int="4095"/>
+ <Annotation Term="OData.Description" String="The management VLAN ID to be transmitted from this endpoint."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the management VLAN ID to be transmitted from this endpoint. If no such port ID is to be transmitted, this value shall be `4095`."/>
+ </Property>
+ <Property Name="ManagementAddressIPv4" Type="Edm.String">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="The IPv4 management address to be transmitted from this endpoint."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the IPv4 management address to be transmitted from this endpoint. If no such management address is to be transmitted, this value shall be an empty string."/>
+ <Annotation Term="Validation.Pattern" String="(^(?:[0-9]{1,3}\.){3}[0-9]{1,3}$)|(^$)"/>
+ </Property>
+ <Property Name="ManagementAddressIPv6" Type="Edm.String">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="The IPv6 management address to be transmitted from this endpoint."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the IPv6 management address to be transmitted from this endpoint. If no such management address is to be transmitted, this value shall be an empty string."/>
+ </Property>
+ <Property Name="ManagementAddressMAC" Type="Edm.String">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="Validation.Pattern" String="(^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$)|(^$)"/>
+ <Annotation Term="OData.Description" String="The management MAC address to be transmitted from this endpoint."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the management MAC address to be transmitted from this endpoint. If no such management address is to be transmitted, this value shall be an empty string."/>
+ </Property>
+ <Property Name="PortId" Type="Edm.String">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="Validation.Pattern" String="(^([0-9A-F]{2})([:]([0-9A-F]){2}){0,63}$)|(^$)"/>
+ <Annotation Term="OData.Description" String="A colon delimited string of hexadecimal octets identifying a port to be transmitted from this endpoint."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain a colon delimited string of hexadecimal octets identifying the port for an LLDP endpoint. If no such port ID is to be transmitted, this value shall be an empty string."/>
+ </Property>
+ <Property Name="PortIdSubtype" Type="Port.v1_4_0.IEEE802IdSubtype">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="The port ID subtype to be transmitted from this endpoint."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the port ID subtype from IEEE 802.1AB-2009 Table 8-3 to be transmitted from this endpoint. If no such port ID subtype is to be transmitted, this value shall be `NotTransmitted`."/>
+ </Property>
+ </ComplexType>
+
+ <ComplexType Name="LLDPReceive">
+ <Annotation Term="OData.Description" String="Link Layer Data Protocol (LLDP) data received from the remote partner across this link."/>
+ <Annotation Term="OData.LongDescription" String="This type shall contain the LLDP data from the remote partner across this link."/>
+ <Property Name="ChassisId" Type="Edm.String">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="Link Layer Data Protocol (LLDP) chassis ID received from the remote partner across this link."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the chassis ID received from the remote partner across this link. If no such chassis ID has been received, this property should not be present."/>
+ </Property>
+ <Property Name="ChassisIdSubtype" Type="Port.v1_4_0.IEEE802IdSubtype">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The type of identifier used for the chassis ID received from the remote partner across this link."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the IEEE 802.1AB-2009 chassis ID subtype received from the remote partner across this link. If no such chassis ID subtype has been received, this property should not be present."/>
+ </Property>
+ <Property Name="ManagementVlanId" Type="Edm.Int64">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="Validation.Minimum" Int="0"/>
+ <Annotation Term="Validation.Maximum" Int="4095"/>
+ <Annotation Term="OData.Description" String="The management VLAN ID received from the remote partner across this link."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the management VLAN ID received from the remote partner across this link. If no such management VLAN ID has been received, this property should not be present."/>
+ </Property>
+ <Property Name="ManagementAddressIPv4" Type="Edm.String">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The IPv4 management address received from the remote partner across this link."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the IPv4 management address received from the remote partner across this link. If no such management address has been received, this property should not be present."/>
+ <Annotation Term="Validation.Pattern" String="^(?:[0-9]{1,3}\.){3}[0-9]{1,3}$"/>
+ </Property>
+ <Property Name="ManagementAddressIPv6" Type="Edm.String">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The IPv6 management address received from the remote partner across this link."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the IPv6 management address received from the remote partner across this link. If no such management address has been received, this property should not be present."/>
+ <Annotation Term="Redfish.IPv6Format"/>
+ </Property>
+ <Property Name="ManagementAddressMAC" Type="Edm.String">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="Validation.Pattern" String="^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$"/>
+ <Annotation Term="OData.Description" String="The management MAC address received from the remote partner across this link."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the management MAC address received from the remote partner across this link. If no such management address has been received, this property should not be present."/>
+ </Property>
+ <Property Name="PortId" Type="Edm.String">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="Validation.Pattern" String="^([0-9A-F]{2})([:]([0-9A-F]){2}){0,63}$"/>
+ <Annotation Term="OData.Description" String="A colon delimited string of hexadecimal octets identifying a port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain a colon delimited string of hexadecimal octets identifying the port received from the remote partner across this link. If no such port ID has been received, this property should not be present."/>
+ </Property>
+ <Property Name="PortIdSubtype" Type="Port.v1_4_0.IEEE802IdSubtype">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The port ID subtype received from the remote partner across this link."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the port ID subtype from IEEE 802.1AB-2009 Table 8-3 received from the remote partner across this link. If no such port ID subtype has been received, this property should not be present."/>
+ </Property>
+ </ComplexType>
+
+ <EnumType Name="IEEE802IdSubtype">
+ <Member Name="ChassisComp">
+ <Annotation Term="OData.Description" String="Chassis component, based in the value of entPhysicalAlias in RFC4133."/>
+ </Member>
+ <Member Name="IfAlias">
+ <Annotation Term="OData.Description" String="Interface alias, based on the ifAlias MIB object."/>
+ </Member>
+ <Member Name="PortComp">
+ <Annotation Term="OData.Description" String="Port component, based in the value of entPhysicalAlias in RFC4133."/>
+ </Member>
+ <Member Name="MacAddr">
+ <Annotation Term="OData.Description" String="MAC address, based on an agent detected unicast source address as defined in IEEE Std. 802."/>
+ </Member>
+ <Member Name="NetworkAddr">
+ <Annotation Term="OData.Description" String="Network address, based on an agent detected network address."/>
+ </Member>
+ <Member Name="IfName">
+ <Annotation Term="OData.Description" String="Interface name, based on the ifName MIB object."/>
+ </Member>
+ <Member Name="AgentId">
+ <Annotation Term="OData.Description" String="Agent circuit ID, based on the agent-local identifier of the circuit as defined in RFC3046."/>
+ </Member>
+ <Member Name="LocalAssign">
+ <Annotation Term="OData.Description" String="Locally assigned, based on a alpha-numeric value locally assigned."/>
+ </Member>
+ <Member Name="NotTransmitted">
+ <Annotation Term="OData.Description" String="No data to be sent to/received from remote partner."/>
+ </Member>
+ </EnumType>
+
+ <ComplexType Name="SFP">
+ <Annotation Term="OData.Description" String="A small form-factor pluggable (SFP) device attached to a port."/>
+ <Annotation Term="OData.LongDescription" String="This type shall describe a small form-factor pluggable (SFP) device attached to a port."/>
+ <Property Name="Status" Type="Resource.Status" Nullable="false">
+ <Annotation Term="OData.Description" String="The status and health of the resource and its subordinate or dependent resources."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain any status or health properties of the resource."/>
+ </Property>
+ <Property Name="SupportedSFPTypes" Type="Collection(Port.v1_4_0.SFPType)">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The types of SFP devices that can be attached to this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain an array of SFP device types supported by this port."/>
+ </Property>
+ <Property Name="Type" Type="Port.v1_4_0.SFPType">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The type of SFP device that is attached to this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the SFP device type currently attached to this port."/>
+ </Property>
+ <Property Name="Manufacturer" Type="Edm.String">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The manufacturer of this SFP."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the name of the organization responsible for producing the SFP. This organization may be the entity from which the SFP is purchased, but this is not necessarily true."/>
+ </Property>
+ <Property Name="SerialNumber" Type="Edm.String">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The serial number for this SFP."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain a manufacturer-allocated number that identifies the SFP."/>
+ </Property>
+ <Property Name="PartNumber" Type="Edm.String">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The part number for this SFP."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the manufacturer-provided part number for the SFP."/>
+ </Property>
+ <Property Name="MediumType" Type="Port.v1_4_0.MediumType">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The medium type connected to this SFP."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the medium type used by the SFP."/>
+ </Property>
+ <Property Name="FiberConnectionType" Type="Port.v1_4_0.FiberConnectionType">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The type of fiber connection currently used by this SFP."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the fiber connection type used by the SFP."/>
+ </Property>
+ </ComplexType>
+
+ <EnumType Name="SFPType">
+ <Member Name="SFP">
+ <Annotation Term="OData.Description" String="The SFP conforms to the SFF Specification for SFP."/>
+ </Member>
+ <Member Name="SFPPlus">
+ <Annotation Term="OData.Description" String="The SFP conforms to the SFF Specification for SFP+."/>
+ </Member>
+ <Member Name="SFP28">
+ <Annotation Term="OData.Description" String="The SFP conforms to the SFF Specification for SFP+ and IEEE 802.3by Specification."/>
+ </Member>
+ <Member Name="cSFP">
+ <Annotation Term="OData.Description" String="The SFP conforms to the CSFP MSA Specification."/>
+ </Member>
+ <Member Name="SFPDD">
+ <Annotation Term="OData.Description" String="The SFP conforms to the SFP-DD MSA Specification."/>
+ </Member>
+ <Member Name="QSFP">
+ <Annotation Term="OData.Description" String="The SFP conforms to the SFF Specification for QSFP."/>
+ </Member>
+ <Member Name="QSFPPlus">
+ <Annotation Term="OData.Description" String="The SFP conforms to the SFF Specification for QSFP+."/>
+ </Member>
+ <Member Name="QSFP14">
+ <Annotation Term="OData.Description" String="The SFP conforms to the SFF Specification for QSFP14."/>
+ </Member>
+ <Member Name="QSFP28">
+ <Annotation Term="OData.Description" String="The SFP conforms to the SFF Specification for QSFP28."/>
+ </Member>
+ <Member Name="QSFP56">
+ <Annotation Term="OData.Description" String="The SFP conforms to the SFF Specification for QSFP56."/>
+ </Member>
+ <Member Name="MiniSASHD">
+ <Annotation Term="OData.Description" String="The SFP conforms to the SFF Specification SFF-8644."/>
+ </Member>
+ </EnumType>
+
+ <EnumType Name="MediumType">
+ <Member Name="Copper">
+ <Annotation Term="OData.Description" String="The medium connected is copper."/>
+ </Member>
+ <Member Name="FiberOptic">
+ <Annotation Term="OData.Description" String="The medium connected is fiber optic."/>
+ </Member>
+ </EnumType>
+
+ <EnumType Name="FiberConnectionType">
+ <Member Name="SingleMode">
+ <Annotation Term="OData.Description" String="The connection is using single mode operation."/>
+ </Member>
+ <Member Name="MultiMode">
+ <Annotation Term="OData.Description" String="The connection is using multi mode operation."/>
+ </Member>
+ </EnumType>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_4_1">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created to correct the permissions for LinkStatus."/>
+ <EntityType Name="Port" BaseType="Port.v1_4_0.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_4_2">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created to clarify the usage of the AssociatedEndpoints, ConnectedSwitches, ConnectedSwitchPorts, and ConnectedPorts properties inside of Links."/>
+ <EntityType Name="Port" BaseType="Port.v1_4_1.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_4_3">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created to correct regular expression patterns for LLDP transmit properties to allow for empty strings and to correct the description for LLDP receive properties to state they should be omitted rather than be empty strings."/>
+ <EntityType Name="Port" BaseType="Port.v1_4_2.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_5_0">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="Redfish.Release" String="2021.2"/>
+ <Annotation Term="OData.Description" String="This version was created to add new values to the PortConnectionType property."/>
+
+ <EntityType Name="Port" BaseType="Port.v1_4_1.Port"/>
+
+ <ComplexType Name="EthernetProperties" BaseType="Port.v1_4_0.EthernetProperties">
+ <Property Name="WakeOnLANEnabled" Type="Edm.Boolean">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="Indicates whether Wake on LAN (WoL) is enabled on this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall indicate whether Wake on LAN (WoL) is enabled on this port."/>
+ </Property>
+ <Property Name="EEEEnabled" Type="Edm.Boolean">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="Indicates whether IEEE 802.3az Energy-Efficient Ethernet (EEE) is enabled on this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall indicate whether IEEE 802.3az Energy-Efficient Ethernet (EEE) is enabled on this port."/>
+ </Property>
+ </ComplexType>
+
+ <ComplexType Name="Links" BaseType="Port.v1_2_0.Links">
+ <NavigationProperty Name="Cables" Type="Collection(Cable.Cable)">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="An array of links to the cables connected to this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to resources of type Cable that represent the cables connected to this port."/>
+ <Annotation Term="OData.AutoExpandReferences"/>
+ </NavigationProperty>
+ </ComplexType>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_5_1">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created to clarify the usage of the AssociatedEndpoints, ConnectedSwitches, ConnectedSwitchPorts, and ConnectedPorts properties inside of Links."/>
+ <EntityType Name="Port" BaseType="Port.v1_5_0.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_5_2">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created to correct regular expression patterns for LLDP transmit properties to allow for empty strings and to correct the description for LLDP receive properties to state they should be omitted rather than be empty strings."/>
+ <EntityType Name="Port" BaseType="Port.v1_5_1.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_6_0">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="Redfish.Release" String="2021.4"/>
+
+ <EntityType Name="Port" BaseType="Port.v1_5_0.Port">
+ <Property Name="InfiniBand" Type="Port.v1_6_0.InfiniBandProperties">
+ <Annotation Term="OData.Description" String="InfiniBand properties for this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain InfiniBand-specific properties of the port."/>
+ </Property>
+ </EntityType>
+
+ <ComplexType Name="InfiniBandProperties">
+ <Annotation Term="OData.AdditionalProperties" Bool="false"/>
+ <Annotation Term="OData.Description" String="InfiniBand-specific properties for a port."/>
+ <Annotation Term="OData.LongDescription" String="This type shall contain InfiniBand-specific properties for a port."/>
+ <Property Name="AssociatedPortGUIDs" Type="Collection(Edm.String)">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="An array of configured port GUIDs that are associated with this network port, including the programmed address of the lowest numbered network device function, the configured but not active address, if applicable, the address for hardware port teaming, or other network addresses."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain an array of configured port GUIDs that are associated with this network port, including the programmed address of the lowest numbered network device function, the configured but not active address if applicable, the address for hardware port teaming, or other network addresses."/>
+ <Annotation Term="Validation.Pattern" String="^([0-9A-Fa-f]{4}[:-]){3}([0-9A-Fa-f]{4})$"/>
+ </Property>
+ <Property Name="AssociatedNodeGUIDs" Type="Collection(Edm.String)">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="An array of configured node GUIDs that are associated with this network port, including the programmed address of the lowest numbered network device function, the configured but not active address, if applicable, the address for hardware port teaming, or other network addresses."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain an array of configured node GUIDs that are associated with this network port, including the programmed address of the lowest numbered network device function, the configured but not active address if applicable, the address for hardware port teaming, or other network addresses."/>
+ <Annotation Term="Validation.Pattern" String="^([0-9A-Fa-f]{4}[:-]){3}([0-9A-Fa-f]{4})$"/>
+ </Property>
+ <Property Name="AssociatedSystemGUIDs" Type="Collection(Edm.String)">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="An array of configured system GUIDs that are associated with this network port, including the programmed address of the lowest numbered network device function, the configured but not active address, if applicable, the address for hardware port teaming, or other network addresses."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain an array of configured system GUIDs that are associated with this network port, including the programmed address of the lowest numbered network device function, the configured but not active address if applicable, the address for hardware port teaming, or other network addresses."/>
+ <Annotation Term="Validation.Pattern" String="^([0-9A-Fa-f]{4}[:-]){3}([0-9A-Fa-f]{4})$"/>
+ </Property>
+ </ComplexType>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_6_1">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created to clarify the usage of the AssociatedEndpoints, ConnectedSwitches, ConnectedSwitchPorts, and ConnectedPorts properties inside of Links."/>
+ <EntityType Name="Port" BaseType="Port.v1_6_0.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_6_2">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="OData.Description" String="This version was created to correct regular expression patterns for LLDP transmit properties to allow for empty strings and to correct the description for LLDP receive properties to state they should be omitted rather than be empty strings."/>
+ <EntityType Name="Port" BaseType="Port.v1_6_1.Port"/>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_7_0">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="Redfish.Release" String="2022.2"/>
+
+ <EntityType Name="Port" BaseType="Port.v1_6_2.Port"/>
+
+ <ComplexType Name="Links" BaseType="Port.v1_5_0.Links">
+ <NavigationProperty Name="EthernetInterfaces" Type="Collection(EthernetInterface.EthernetInterface)">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The links to the Ethernet interfaces this port provides."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to resources of type EthernetInterface that represent the Ethernet interfaces this port provides. This property shall not include Ethernet interfaces that are not directly associated to a physical port."/>
+ <Annotation Term="OData.AutoExpandReferences"/>
+ </NavigationProperty>
+ </ComplexType>
+ </Schema>
+
+ <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_8_0">
+ <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+ <Annotation Term="Redfish.Release" String="2022.3"/>
+ <Annotation Term="OData.Description" String="This version was created to add `PCIe` to LinkNetworkTechnology."/>
+
+ <EntityType Name="Port" BaseType="Port.v1_7_0.Port">
+ <Property Name="RemotePortId" Type="Edm.String">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The identifier of the remote port to which this port is connected."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the identifier of the remote port, such as a switch or device, to which this port is connected."/>
+ </Property>
+ <Property Name="CXL" Type="Port.v1_8_0.CXL">
+ <Annotation Term="OData.Description" String="CXL properties for this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain CXL-specific properties for this port."/>
+ </Property>
+ </EntityType>
+
+ <ComplexType Name="LLDPTransmit" BaseType="Port.v1_4_0.LLDPTransmit">
+ <Property Name="SystemName" Type="Edm.String">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="The system name to be transmitted from this endpoint."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the system name to be transmitted from this endpoint. If no such system name is to be transmitted, this value shall be an empty string."/>
+ </Property>
+ <Property Name="SystemDescription" Type="Edm.String">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="The system description to be transmitted from this endpoint."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the system description to be transmitted from this endpoint. If no such system description is to be transmitted, this value shall be an empty string."/>
+ </Property>
+ <Property Name="SystemCapabilities" Type="Collection(Port.v1_8_0.LLDPSystemCapabilities)">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="The system capabilities to be transmitted from this endpoint."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the system capabilities to be transmitted from this endpoint. If no such system capabilities are to be transmitted, this value shall be an empty array. If this property contains the value `None`, an empty set of system capabilities is transmitted from this endpoint."/>
+ </Property>
+ </ComplexType>
+
+ <ComplexType Name="LLDPReceive" BaseType="Port.v1_4_0.LLDPReceive">
+ <Property Name="SystemName" Type="Edm.String">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The system name received from the remote partner across this link."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the system name received from the remote partner across this link. If no such system name has been received, this property shall not be present."/>
+ </Property>
+ <Property Name="SystemDescription" Type="Edm.String">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The system description received from the remote partner across this link."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the system description received from the remote partner across this link. If no such system description has been received, this property shall not be present."/>
+ </Property>
+ <Property Name="SystemCapabilities" Type="Collection(Port.v1_8_0.LLDPSystemCapabilities)">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The system capabilities received from the remote partner across this link."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the system capabilities received from the remote partner across this link. If no such system capabilities have been received, this property shall not be present. This property shall not contain the value `None`."/>
+ </Property>
+ </ComplexType>
+
+ <EnumType Name="LLDPSystemCapabilities">
+ <Member Name="None">
+ <Annotation Term="OData.Description" String="The system capabilities are transmitted, but no capabilities are set."/>
+ <Annotation Term="OData.LongDescription" String="This value shall indicate the system capabilities are transmitted, but no capabilities are set."/>
+ </Member>
+ <Member Name="Bridge">
+ <Annotation Term="OData.Description" String="Bridge."/>
+ <Annotation Term="OData.LongDescription" String="This value shall indicate the IEEE802.1AB-defined 'bridge' capability."/>
+ </Member>
+ <Member Name="DOCSISCableDevice">
+ <Annotation Term="OData.Description" String="DOCSIS cable device."/>
+ <Annotation Term="OData.LongDescription" String="This value shall indicate the IEEE802.1AB-defined 'DOCSIS cable device' capability."/>
+ </Member>
+ <Member Name="Other">
+ <Annotation Term="OData.Description" String="Other."/>
+ <Annotation Term="OData.LongDescription" String="This value shall indicate the IEEE802.1AB-defined 'other' capability."/>
+ </Member>
+ <Member Name="Repeater">
+ <Annotation Term="OData.Description" String="Repeater."/>
+ <Annotation Term="OData.LongDescription" String="This value shall indicate the IEEE802.1AB-defined 'repeater' capability."/>
+ </Member>
+ <Member Name="Router">
+ <Annotation Term="OData.Description" String="Router."/>
+ <Annotation Term="OData.LongDescription" String="This value shall indicate the IEEE802.1AB-defined 'router' capability."/>
+ </Member>
+ <Member Name="Station">
+ <Annotation Term="OData.Description" String="Station."/>
+ <Annotation Term="OData.LongDescription" String="This value shall indicate the IEEE802.1AB-defined 'station' capability."/>
+ </Member>
+ <Member Name="Telephone">
+ <Annotation Term="OData.Description" String="Telephone."/>
+ <Annotation Term="OData.LongDescription" String="This value shall indicate the IEEE802.1AB-defined 'telephone' capability."/>
+ </Member>
+ <Member Name="WLANAccessPoint">
+ <Annotation Term="OData.Description" String="WLAN access point."/>
+ <Annotation Term="OData.LongDescription" String="This value shall indicate the IEEE802.1AB-defined 'WLAN access point' capability."/>
+ </Member>
+ </EnumType>
+
+ <ComplexType Name="CXL">
+ <Annotation Term="OData.AdditionalProperties" Bool="false"/>
+ <Annotation Term="OData.Description" String="CXL properties for a port."/>
+ <Annotation Term="OData.LongDescription" String="This type shall contain CXL-specific properties for a port."/>
+ <Property Name="CurrentPortConfigurationState" Type="Port.v1_8_0.CurrentPortConfigurationState">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The current port configuration state."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the CXL Specification-defined 'Current Port Configuration State'."/>
+ </Property>
+ <Property Name="ConnectedDeviceMode" Type="Port.v1_8_0.ConnectedDeviceMode">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The connected device mode."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the CXL Specification-defined 'Connected Device Mode'."/>
+ </Property>
+ <Property Name="ConnectedDeviceType" Type="Port.v1_8_0.ConnectedDeviceType">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The connected device type."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the CXL Specification-defined 'Connected Device Type'."/>
+ </Property>
+ <Property Name="MaxLogicalDeviceCount" Type="Edm.Int64">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="The maximum number of logical devices supported."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the CXL Specification-defined 'Supported LD Count'."/>
+ </Property>
+ <Property Name="TemporaryThroughputReductionEnabled" Type="Edm.Boolean">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="Indicates whether temporary throughput reduction is enabled."/>
+ <Annotation Term="OData.LongDescription" String="This property shall indicate whether the CXL Specification-defined 'Temporary Throughput Reduction' mechanism is enabled."/>
+ </Property>
+ <Property Name="Congestion" Type="Port.v1_8_0.Congestion">
+ <Annotation Term="OData.Description" String="The congestion properties for this CXL port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the congestion properties for this CXL port."/>
+ </Property>
+ <Property Name="QoSTelemetryCapabilities" Type="Port.v1_8_0.QoSTelemetryCapabilities">
+ <Annotation Term="OData.Description" String="The quality of service telemetry capabilities for this CXL port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the quality of service telemetry capabilities for this CXL port."/>
+ </Property>
+ </ComplexType>
+
+ <ComplexType Name="Congestion">
+ <Annotation Term="OData.AdditionalProperties" Bool="false"/>
+ <Annotation Term="OData.Description" String="The congestion properties for a CXL port."/>
+ <Annotation Term="OData.LongDescription" String="This type shall contain the congestion properties for a CXL port."/>
+ <Property Name="CongestionTelemetryEnabled" Type="Edm.Boolean">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="Indicates whether congestion telemetry collection is enabled for this port."/>
+ <Annotation Term="OData.LongDescription" String="This property shall indicate whether congestion telemetry collection is enabled for this port."/>
+ </Property>
+ <Property Name="EgressModeratePercentage" Type="Edm.Int64">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="The threshold for moderate egress port congestion as a percentage."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the threshold for moderate egress port congestion for the CXL Specification-defined 'Egress Port Congestion' mechanism as a percentage."/>
+ <Annotation Term="Measures.Unit" String="%"/>
+ </Property>
+ <Property Name="EgressSeverePercentage" Type="Edm.Int64">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="The threshold for severe egress port congestion as a percentage."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the CXL Specification-defined 'Egress Severe Percentage' as a percentage."/>
+ <Annotation Term="Measures.Unit" String="%"/>
+ </Property>
+ <Property Name="BackpressureSampleInterval" Type="Edm.Int64">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="The interval for the CXL Specification-defined 'Egress Port Congestion' mechanism to take samples in nanoseconds."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the CXL Specification-defined 'Backpressure Sample Interval' in nanoseconds."/>
+ </Property>
+ <Property Name="MaxSustainedRequestCmpBias" Type="Edm.Int64">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="The estimated maximum sustained sum of requests and recent responses across the entire device, serving as the basis for the CXL Specification-defined 'QoS Limit Fraction'."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the CXL Specification-defined 'ReqCmpBasis'."/>
+ </Property>
+ <Property Name="CompletionCollectionInterval" Type="Edm.Int64">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+ <Annotation Term="OData.Description" String="The interval for the CXL Specification-defined 'Completion Counting' mechanism to collect the number of transmitted responses in a single counter in nanoseconds."/>
+ <Annotation Term="OData.LongDescription" String="This property shall contain the CXL Specification-defined 'Completion Collection Interval' in nanoseconds."/>
+ </Property>
+ </ComplexType>
+
+ <ComplexType Name="QoSTelemetryCapabilities">
+ <Annotation Term="OData.AdditionalProperties" Bool="false"/>
+ <Annotation Term="OData.Description" String="The quality of service telemetry capabilities for a CXL port."/>
+ <Annotation Term="OData.LongDescription" String="This type shall contain the quality of service telemetry capabilities for a CXL port."/>
+ <Property Name="EgressPortBackpressureSupported" Type="Edm.Boolean">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="Indicates whether the port supports the CXL Specification-defined 'Egress Port Backpressure' mechanism."/>
+ <Annotation Term="OData.LongDescription" String="This property shall indicate whether the port supports the CXL Specification-defined 'Egress Port Backpressure' mechanism."/>
+ </Property>
+ <Property Name="TemporaryThroughputReductionSupported" Type="Edm.Boolean">
+ <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+ <Annotation Term="OData.Description" String="Indicates whether the port supports the CXL Specification-defined 'Temporary Throughput Reduction' mechanism."/>
+ <Annotation Term="OData.LongDescription" String="This property shall indicate whether the port supports the CXL Specification-defined 'Temporary Throughput Reduction' mechanism."/>
+ </Property>
+ </ComplexType>
+
+ <EnumType Name="CurrentPortConfigurationState">
+ <Member Name="Disabled">
+ <Annotation Term="OData.Description" String="Disabled."/>
+ <Annotation Term="OData.LongDescription" String="This value shall indicate the port is disabled."/>
+ </Member>
+ <Member Name="BindInProgress">
+ <Annotation Term="OData.Description" String="Bind in progress."/>
+ <Annotation Term="OData.LongDescription" String="This value shall indicate a bind is in progress for the port."/>
+ </Member>
+ <Member Name="UnbindInProgress">
+ <Annotation Term="OData.Description" String="Unbind in progress."/>
+ <Annotation Term="OData.LongDescription" String="This value shall indicate an unbind is in progress for the port."/>
+ </Member>
+ <Member Name="DSP">
+ <Annotation Term="OData.Description" String="Downstream port (DSP)."/>
+ <Annotation Term="OData.LongDescription" String="This value shall indicate the port is enabled as a downstream port (DSP)."/>
+ </Member>
+ <Member Name="USP">
+ <Annotation Term="OData.Description" String="Upstream port (USP)."/>
+ <Annotation Term="OData.LongDescription" String="This value shall indicate the port is enabled as an upstream port (USP)."/>
+ </Member>
+ <Member Name="Reserved">
+ <Annotation Term="OData.Description" String="Reserved."/>
+ <Annotation Term="OData.LongDescription" String="This value shall indicate the port is in a reserved state."/>
+ </Member>
+ </EnumType>
+
+ <EnumType Name="ConnectedDeviceMode">
+ <Member Name="Disconnected">
+ <Annotation Term="OData.Description" String="The connection is not CXL or is disconnected."/>
+ <Annotation Term="OData.LongDescription" String="This value shall indicate the connection is not CXL or is disconnected."/>
+ </Member>
+ <Member Name="RCD">
+ <Annotation Term="OData.Description" String="Restricted CXL device (RCD)."/>
+ <Annotation Term="OData.LongDescription" String="This value shall indicate the connected device mode is restricted CXL device (RCD)."/>
+ </Member>
+ <Member Name="CXL68BFlitAndVH">
+ <Annotation Term="OData.Description" String="CXL 68B flit and VH."/>
+ <Annotation Term="OData.LongDescription" String="This value shall indicate the connected device mode is CXL 68B flit and VH."/>
+ </Member>
+ <Member Name="Standard256BFlit">
+ <Annotation Term="OData.Description" String="Standard 256B flit."/>
+ <Annotation Term="OData.LongDescription" String="This value shall indicate the connected device mode is standard 256B flit."/>
+ </Member>
+ <Member Name="CXLLatencyOptimized256BFlit">
+ <Annotation Term="OData.Description" String="CXL latency-optimized 256B flit."/>
+ <Annotation Term="OData.LongDescription" String="This value shall indicate the connected device mode is CXL latency-optimized 256B flit."/>
+ </Member>
+ <Member Name="PBR">
+ <Annotation Term="OData.Description" String="Port-based routing (PBR)."/>
+ <Annotation Term="OData.LongDescription" String="This value shall indicate the connected device mode is port-based routing (PBR)."/>
+ </Member>
+ </EnumType>
+
+ <EnumType Name="ConnectedDeviceType">
+ <Member Name="None">
+ <Annotation Term="OData.Description" String="No device detected."/>
+ <Annotation Term="OData.LongDescription" String="This value shall indicate no device is detected."/>
+ </Member>
+ <Member Name="PCIeDevice">
+ <Annotation Term="OData.Description" String="PCIe device."/>
+ <Annotation Term="OData.LongDescription" String="This value shall indicate the connected device is a PCIe device."/>
+ </Member>
+ <Member Name="Type1">
+ <Annotation Term="OData.Description" String="CXL Type 1 device."/>
+ <Annotation Term="OData.LongDescription" String="This value shall indicate the connected device is a CXL Type 1 device."/>
+ </Member>
+ <Member Name="Type2">
+ <Annotation Term="OData.Description" String="CXL Type 2 device."/>
+ <Annotation Term="OData.LongDescription" String="This value shall indicate the connected device is a CXL Type 2 device."/>
+ </Member>
+ <Member Name="Type3SLD">
+ <Annotation Term="OData.Description" String="CXL Type 3 single logical device (SLD)."/>
+ <Annotation Term="OData.LongDescription" String="This value shall indicate the connected device is a CXL Type 3 single logical device (SLD)."/>
+ </Member>
+ <Member Name="Type3MLD">
+ <Annotation Term="OData.Description" String="CXL Type 3 multi-logical device (MLD)."/>
+ <Annotation Term="OData.LongDescription" String="This value shall indicate the connected device is a CXL Type 3 multi-logical device (MLD)."/>
+ </Member>
+ </EnumType>
+ </Schema>
+
+ </edmx:DataServices>
+</edmx:Edmx>