xref: /openbmc/bmcweb/redfish-core/schema/dmtf/csdl/VirtualCXLSwitch_v1.xml (revision c6d7a45d427f9a6d9e761afcf305761dca60d7cf)
1<?xml version="1.0" encoding="UTF-8"?>
2<!---->
3<!--################################################################################       -->
4<!--# Redfish Schema:  VirtualCXLSwitch v1.0.0                                             -->
5<!--#                                                                                      -->
6<!--# For a detailed change log, see the README file contained in the DSP8010 bundle,      -->
7<!--# available at http://www.dmtf.org/standards/redfish                                   -->
8<!--# Copyright 2014-2025 DMTF.                                                            -->
9<!--# For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright -->
10<!--################################################################################       -->
11<!---->
12<edmx:Edmx xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx" Version="4.0">
13
14  <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Core.V1.xml">
15    <edmx:Include Namespace="Org.OData.Core.V1" Alias="OData"/>
16  </edmx:Reference>
17  <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Capabilities.V1.xml">
18    <edmx:Include Namespace="Org.OData.Capabilities.V1" Alias="Capabilities"/>
19  </edmx:Reference>
20  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Resource_v1.xml">
21    <edmx:Include Namespace="Resource"/>
22    <edmx:Include Namespace="Resource.v1_0_0"/>
23  </edmx:Reference>
24  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/RedfishExtensions_v1.xml">
25    <edmx:Include Namespace="RedfishExtensions.v1_0_0" Alias="Redfish"/>
26  </edmx:Reference>
27  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/VirtualPCI2PCIBridgeCollection_v1.xml">
28    <edmx:Include Namespace="VirtualPCI2PCIBridgeCollection"/>
29  </edmx:Reference>
30  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Endpoint_v1.xml">
31    <edmx:Include Namespace="Endpoint"/>
32  </edmx:Reference>
33  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Port_v1.xml">
34    <edmx:Include Namespace="Port"/>
35  </edmx:Reference>
36
37  <edmx:DataServices>
38
39    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="VirtualCXLSwitch">
40      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
41
42      <EntityType Name="VirtualCXLSwitch" BaseType="Resource.v1_0_0.Resource" Abstract="true">
43        <Annotation Term="OData.Description" String="The Virtual CXL Switch describes the virtual component with the CXL switch that is governed by a list of rules as prescribed in the CXL specification."/>
44        <Annotation Term="OData.LongDescription" String="This resource shall represent a VCS entity within a CXL switch.  The CXL Specification contains the complete definition of a Virtual CXL Switch."/>
45        <Annotation Term="Capabilities.InsertRestrictions">
46          <Record>
47            <PropertyValue Property="Insertable" Bool="false"/>
48          </Record>
49        </Annotation>
50        <Annotation Term="Capabilities.UpdateRestrictions">
51          <Record>
52            <PropertyValue Property="Updatable" Bool="false"/>
53          </Record>
54        </Annotation>
55        <Annotation Term="Capabilities.DeleteRestrictions">
56          <Record>
57            <PropertyValue Property="Deletable" Bool="false"/>
58          </Record>
59        </Annotation>
60        <Annotation Term="Redfish.Uris">
61          <Collection>
62            <String>/redfish/v1/Fabrics/{FabricId}/Switches/{SwitchId}/VCSs/{VirtualCXLSwitchId}</String>
63          </Collection>
64        </Annotation>
65      </EntityType>
66    </Schema>
67
68    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="VirtualCXLSwitch.v1_0_0">
69      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
70      <Annotation Term="Redfish.Release" String="2025.2"/>
71
72      <EntityType Name="VirtualCXLSwitch" BaseType="VirtualCXLSwitch.VirtualCXLSwitch">
73        <Property Name="Status" Type="Resource.Status" Nullable="false">
74          <Annotation Term="OData.Description" String="The status and health of the resource and its subordinate or dependent resources."/>
75          <Annotation Term="OData.LongDescription" String="This property shall contain any status or health properties of the resource."/>
76        </Property>
77        <Property Name="VCSId" Type="Edm.String" Nullable="false">
78          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
79          <Annotation Term="OData.Description" String="The Virtual CXL Switch identifier."/>
80          <Annotation Term="OData.LongDescription" String="This property shall contain the identifier of the Virtual CXL Switch."/>
81        </Property>
82        <Property Name="HDMDecoders" Type="Edm.Int64" Nullable="false">
83          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
84          <Annotation Term="OData.Description" String="The number of HDM (Host Device Memory) decoders present in this Virtual CXL Switch."/>
85          <Annotation Term="OData.LongDescription" String="The number of HDM (Host Device Memory) decoders present in this Virtual CXL Switch."/>
86        </Property>
87        <NavigationProperty Name="VPPBs" Type="VirtualPCI2PCIBridgeCollection.VirtualPCI2PCIBridgeCollection" ContainsTarget="true" Nullable="false">
88          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
89          <Annotation Term="OData.Description" String="The link to the collection of vPPBs (Virtual PCI-to-PCI Bridges) for this Virtual CXL Switch."/>
90          <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource collection of type `VirtualPCI2PCIBridgeCollection`."/>
91          <Annotation Term="OData.AutoExpandReferences"/>
92        </NavigationProperty>
93        <Property Name="Actions" Type="VirtualCXLSwitch.v1_0_0.Actions" Nullable="false">
94          <Annotation Term="OData.Description" String="The available actions for this resource."/>
95          <Annotation Term="OData.LongDescription" String="This property shall contain the available actions for this resource."/>
96        </Property>
97        <Property Name="Links" Type="VirtualCXLSwitch.v1_0_0.Links" Nullable="false">
98          <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
99          <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."/>
100        </Property>
101      </EntityType>
102
103      <ComplexType Name="Links" BaseType="Resource.Links">
104        <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
105        <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."/>
106        <NavigationProperty Name="Endpoints" Type="Collection(Endpoint.Endpoint)">
107          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
108          <Annotation Term="OData.Description" String="The links to the endpoints designated for this Virtual CXL Switch."/>
109          <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to resources of type `Endpoint` that represent the endpoints for this Virtual CXL Switch."/>
110          <Annotation Term="OData.AutoExpandReferences"/>
111        </NavigationProperty>
112        <NavigationProperty Name="Port" Type="Port.Port" Nullable="false">
113          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
114          <Annotation Term="OData.Description" String="The link to the local upstream port of the switch that is physically connected to a host or another switch for this Virtual CXL Switch."/>
115          <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource of type `Port` that represents the local upstream port of the switch that is physically connected to a host or another switch for this Virtual CXL Switch."/>
116          <Annotation Term="OData.AutoExpandReferences"/>
117        </NavigationProperty>
118      </ComplexType>
119
120      <ComplexType Name="Actions">
121        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
122        <Annotation Term="OData.Description" String="The available actions for this resource."/>
123        <Annotation Term="OData.LongDescription" String="This type shall contain the available actions for this resource."/>
124        <Property Name="Oem" Type="VirtualCXLSwitch.v1_0_0.OemActions" Nullable="false">
125          <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
126          <Annotation Term="OData.LongDescription" String="This property shall contain the available OEM-specific actions for this resource."/>
127        </Property>
128      </ComplexType>
129
130      <ComplexType Name="OemActions">
131        <Annotation Term="OData.AdditionalProperties" Bool="true"/>
132        <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
133        <Annotation Term="OData.LongDescription" String="This type shall contain the available OEM-specific actions for this resource."/>
134      </ComplexType>
135    </Schema>
136
137  </edmx:DataServices>
138</edmx:Edmx>
139