1<?xml version="1.0" encoding="UTF-8"?>
2<!---->
3<!--################################################################################       -->
4<!--# Redfish Schema:  CXLLogicalDevice v1.2.1                                             -->
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-2024 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.Measures.V1.xml">
18    <edmx:Include Namespace="Org.OData.Measures.V1" Alias="Measures"/>
19  </edmx:Reference>
20  <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Capabilities.V1.xml">
21    <edmx:Include Namespace="Org.OData.Capabilities.V1" Alias="Capabilities"/>
22  </edmx:Reference>
23  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/RedfishExtensions_v1.xml">
24    <edmx:Include Namespace="RedfishExtensions.v1_0_0" Alias="Redfish"/>
25    <edmx:Include Namespace="Validation.v1_0_0" Alias="Validation"/>
26  </edmx:Reference>
27  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Resource_v1.xml">
28    <edmx:Include Namespace="Resource"/>
29    <edmx:Include Namespace="Resource.v1_0_0"/>
30  </edmx:Reference>
31  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/PCIeFunction_v1.xml">
32    <edmx:Include Namespace="PCIeFunction"/>
33  </edmx:Reference>
34  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/MemoryDomain_v1.xml">
35    <edmx:Include Namespace="MemoryDomain"/>
36  </edmx:Reference>
37  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/MemoryChunks_v1.xml">
38    <edmx:Include Namespace="MemoryChunks"/>
39  </edmx:Reference>
40  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Endpoint_v1.xml">
41    <edmx:Include Namespace="Endpoint"/>
42  </edmx:Reference>
43  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/LogService_v1.xml">
44    <edmx:Include Namespace="LogService"/>
45  </edmx:Reference>
46  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/MemoryRegionCollection_v1.xml">
47    <edmx:Include Namespace="MemoryRegionCollection"/>
48  </edmx:Reference>
49
50  <edmx:DataServices>
51
52    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CXLLogicalDevice">
53      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
54      <Annotation Term="Redfish.Language" String="en"/>
55
56      <EntityType Name="CXLLogicalDevice" BaseType="Resource.v1_0_0.Resource" Abstract="true">
57        <Annotation Term="OData.Description" String="The `CXLLogicalDevice` schema contains the properties of a CXL logical device within a PCIe device."/>
58        <Annotation Term="OData.LongDescription" String="This resource shall represent a CXL logical device that is a part of a PCIe device."/>
59        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
60        <Annotation Term="Capabilities.InsertRestrictions">
61          <Record>
62            <PropertyValue Property="Insertable" Bool="false"/>
63          </Record>
64        </Annotation>
65        <Annotation Term="Capabilities.UpdateRestrictions">
66          <Record>
67            <PropertyValue Property="Updatable" Bool="true"/>
68          </Record>
69        </Annotation>
70        <Annotation Term="Capabilities.DeleteRestrictions">
71          <Record>
72            <PropertyValue Property="Deletable" Bool="false"/>
73          </Record>
74        </Annotation>
75        <Annotation Term="Redfish.Uris">
76          <Collection>
77            <String>/redfish/v1/Chassis/{ChassisId}/PCIeDevices/{PCIeDeviceId}/CXLLogicalDevices/{CXLLogicalDeviceId}</String>
78          </Collection>
79        </Annotation>
80      </EntityType>
81    </Schema>
82
83    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CXLLogicalDevice.v1_0_0">
84      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
85      <Annotation Term="Redfish.Release" String="2022.3"/>
86
87      <EntityType Name="CXLLogicalDevice" BaseType="CXLLogicalDevice.CXLLogicalDevice">
88        <Property Name="Identifiers" Type="Collection(Resource.Identifier)" Nullable="false">
89          <Annotation Term="OData.Description" String="The durable names for the CXL logical device."/>
90          <Annotation Term="OData.LongDescription" String="This property shall contain a list of all known durable names for the associated CXL logical device."/>
91        </Property>
92        <Property Name="SemanticsSupported" Type="Collection(CXLLogicalDevice.v1_0_0.CXLSemantic)" Nullable="false">
93          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
94          <Annotation Term="OData.Description" String="The semantics supported by this CXL logical device."/>
95          <Annotation Term="OData.LongDescription" String="This property shall contain the CXL Specification-defined semantics that are supported by this CXL logical device."/>
96        </Property>
97        <Property Name="Status" Type="Resource.Status" Nullable="false">
98          <Annotation Term="OData.Description" String="The status and health of the resource and its subordinate or dependent resources."/>
99          <Annotation Term="OData.LongDescription" String="This property shall contain any status or health properties of the resource."/>
100        </Property>
101        <Property Name="Links" Type="CXLLogicalDevice.v1_0_0.Links" Nullable="false">
102          <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
103          <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."/>
104        </Property>
105        <Property Name="Actions" Type="CXLLogicalDevice.v1_0_0.Actions" Nullable="false">
106          <Annotation Term="OData.Description" String="The available actions for this resource."/>
107          <Annotation Term="OData.LongDescription" String="This property shall contain the available actions for this resource."/>
108        </Property>
109        <Property Name="MemorySizeMiB" Type="Edm.Int64" Nullable="false">
110          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
111          <Annotation Term="OData.Description" String="The total memory capacity currently available in this CXL logical device."/>
112          <Annotation Term="OData.LongDescription" String="This property shall contain the total memory capacity currently available in this CXL logical device in mebibytes (MiB).  This value shall equate to the sum of the dynamic capacity extents and the static capacity assigned to this logical device."/>
113          <Annotation Term="Measures.Unit" String="MiBy"/>
114        </Property>
115        <Property Name="QoSTelemetryCapabilities" Type="CXLLogicalDevice.v1_0_0.QoSTelemetryCapabilities" Nullable="false">
116          <Annotation Term="OData.Description" String="The quality of service telemetry capabilities for this CXL logical device."/>
117          <Annotation Term="OData.LongDescription" String="This property shall contain the quality of service telemetry capabilities for this CXL logical device."/>
118        </Property>
119        <Property Name="QoS" Type="CXLLogicalDevice.v1_0_0.QoS" Nullable="false">
120          <Annotation Term="OData.Description" String="The quality of service configuration for this CXL logical device."/>
121          <Annotation Term="OData.LongDescription" String="This property shall contain the quality of service configuration for this CXL logical device."/>
122        </Property>
123        <NavigationProperty Name="Log" Type="LogService.LogService" ContainsTarget="true" Nullable="false">
124          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
125          <Annotation Term="OData.Description" String="The link to the log service associated with this CXL logical device."/>
126          <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource of type `LogService`."/>
127          <Annotation Term="OData.AutoExpandReferences"/>
128        </NavigationProperty>
129      </EntityType>
130
131      <ComplexType Name="QoSTelemetryCapabilities">
132        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
133        <Annotation Term="OData.Description" String="The quality of service telemetry capabilities for a CXL logical device."/>
134        <Annotation Term="OData.LongDescription" String="This type shall contain the quality of service telemetry capabilities for a CXL logical device."/>
135        <Property Name="EgressPortBackpressureSupported" Type="Edm.Boolean">
136          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
137          <Annotation Term="OData.Description" String="Indicates whether the device supports the CXL Specification-defined 'Egress Port Backpressure' mechanism."/>
138          <Annotation Term="OData.LongDescription" String="This property shall indicate whether the device supports the CXL Specification-defined 'Egress Port Backpressure' mechanism."/>
139        </Property>
140        <Property Name="TemporaryThroughputReductionSupported" Type="Edm.Boolean">
141          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
142          <Annotation Term="OData.Description" String="Indicates whether the device supports the CXL Specification-defined 'Temporary Throughput Reduction' mechanism."/>
143          <Annotation Term="OData.LongDescription" String="This property shall indicate whether the device supports the CXL Specification-defined 'Temporary Throughput Reduction' mechanism."/>
144          <Annotation Term="Redfish.Revisions">
145            <Collection>
146              <Record>
147                <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Deprecated"/>
148                <PropertyValue Property="Version" String="v1_2_0"/>
149                <PropertyValue Property="Description" String="This property has been deprecated in favor of `TemporaryThroughputReductionSupported` in `PCIeDevice`."/>
150              </Record>
151            </Collection>
152          </Annotation>
153        </Property>
154      </ComplexType>
155
156      <ComplexType Name="QoS">
157        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
158        <Annotation Term="OData.Description" String="The quality of service properties for this CXL logical device."/>
159        <Annotation Term="OData.LongDescription" String="This type shall contain the quality of service properties of this CXL logical device."/>
160        <Property Name="AllocatedBandwidth" Type="Edm.Int64">
161          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
162          <Annotation Term="OData.Description" String="The bandwidth allocated to this CXL logical device as a percentage."/>
163          <Annotation Term="OData.LongDescription" String="This property shall contain the bandwidth allocated, `0` to `100`, for this CXL logical device as a percentage."/>
164          <Annotation Term="Measures.Unit" String="%"/>
165          <Annotation Term="Validation.Minimum" Int="0"/>
166          <Annotation Term="Validation.Maximum" Int="100"/>
167        </Property>
168        <Property Name="LimitPercent" Type="Edm.Int64">
169          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
170          <Annotation Term="OData.Description" String="The bandwidth limit to this CXL logical device as a percentage."/>
171          <Annotation Term="OData.LongDescription" String="This property shall contain the bandwidth limit, `0` to `100`, for this CXL logical device as a percentage."/>
172          <Annotation Term="Measures.Unit" String="%"/>
173          <Annotation Term="Validation.Minimum" Int="0"/>
174          <Annotation Term="Validation.Maximum" Int="100"/>
175        </Property>
176      </ComplexType>
177
178      <ComplexType Name="Links" BaseType="Resource.Links">
179        <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
180        <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."/>
181        <NavigationProperty Name="PCIeFunctions" Type="Collection(PCIeFunction.PCIeFunction)">
182          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
183          <Annotation Term="OData.Description" String="An array of links to the PCIe functions assigned to this CXL logical device."/>
184          <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to resources of type `PCIeFunction` that represent the PCIe functions assigned to this CXL logical device."/>
185          <Annotation Term="OData.AutoExpandReferences"/>
186        </NavigationProperty>
187        <NavigationProperty Name="MemoryDomains" Type="Collection(MemoryDomain.MemoryDomain)">
188          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
189          <Annotation Term="OData.Description" String="An array of links to the memory domains associated with this CXL logical device."/>
190          <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to resources of type `MemoryDomain` that represent the memory domains associated with this CXL logical device."/>
191          <Annotation Term="OData.AutoExpandReferences"/>
192        </NavigationProperty>
193        <NavigationProperty Name="MemoryChunks" Type="Collection(MemoryChunks.MemoryChunks)">
194          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
195          <Annotation Term="OData.Description" String="An array of links to the memory chunks owned by this CXL logical device."/>
196          <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to resources of type `MemoryChunks` that represent the memory chunks owned by this CXL logical device."/>
197          <Annotation Term="OData.AutoExpandReferences"/>
198        </NavigationProperty>
199        <NavigationProperty Name="Endpoints" Type="Collection(Endpoint.Endpoint)">
200          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
201          <Annotation Term="OData.Description" String="An array of links to the endpoints associated with this CXL logical device."/>
202          <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to resources of type `Endpoint` that represent the endpoints associated with this CXL logical device."/>
203          <Annotation Term="OData.AutoExpandReferences"/>
204        </NavigationProperty>
205      </ComplexType>
206
207      <ComplexType Name="Actions">
208        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
209        <Annotation Term="OData.Description" String="The available actions for this resource."/>
210        <Annotation Term="OData.LongDescription" String="This type shall contain the available actions for this resource."/>
211        <Property Name="Oem" Type="CXLLogicalDevice.v1_0_0.OemActions" Nullable="false">
212          <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
213          <Annotation Term="OData.LongDescription" String="This property shall contain the available OEM-specific actions for this resource."/>
214        </Property>
215      </ComplexType>
216
217      <ComplexType Name="OemActions">
218        <Annotation Term="OData.AdditionalProperties" Bool="true"/>
219        <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
220        <Annotation Term="OData.LongDescription" String="This type shall contain the available OEM-specific actions for this resource."/>
221      </ComplexType>
222
223      <EnumType Name="CXLSemantic">
224        <Member Name="CXLio">
225          <Annotation Term="OData.Description" String="CXL I/O semantic."/>
226          <Annotation Term="OData.LongDescription" String="This value shall indicate the device conforms with the CXL Specification-defined 'CXL.io' semantic."/>
227        </Member>
228        <Member Name="CXLcache">
229          <Annotation Term="OData.Description" String="CXL caching protocol semantic."/>
230          <Annotation Term="OData.LongDescription" String="This value shall indicate the device conforms with the CXL Specification-defined 'CXL.cache' semantic."/>
231        </Member>
232        <Member Name="CXLmem">
233          <Annotation Term="OData.Description" String="CXL memory access semantic."/>
234          <Annotation Term="OData.LongDescription" String="This value shall indicate the device conforms with the CXL Specification-defined 'CXL.mem' semantic."/>
235        </Member>
236      </EnumType>
237    </Schema>
238
239    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CXLLogicalDevice.v1_0_1">
240      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
241      <Annotation Term="OData.Description" String="This version was created to clarify the range of possible values for properties with percent units."/>
242      <EntityType Name="CXLLogicalDevice" BaseType="CXLLogicalDevice.v1_0_0.CXLLogicalDevice"/>
243    </Schema>
244
245    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CXLLogicalDevice.v1_0_2">
246      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
247      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
248      <EntityType Name="CXLLogicalDevice" BaseType="CXLLogicalDevice.v1_0_1.CXLLogicalDevice"/>
249    </Schema>
250
251    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CXLLogicalDevice.v1_0_3">
252      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
253      <Annotation Term="OData.Description" String="This version was created to correct the description and add units for `AllocatedBandwidth` in `QoS`.  It was also created to force the regeneration of OpenAPI schemas to properly express nullable properties with external references.  It was also created to correct various typographical errors."/>
254      <EntityType Name="CXLLogicalDevice" BaseType="CXLLogicalDevice.v1_0_2.CXLLogicalDevice"/>
255    </Schema>
256
257    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CXLLogicalDevice.v1_0_4">
258      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
259      <Annotation Term="OData.Description" String="This version was created to clarify the description of `MemorySizeMiB`."/>
260      <EntityType Name="CXLLogicalDevice" BaseType="CXLLogicalDevice.v1_0_3.CXLLogicalDevice"/>
261    </Schema>
262
263    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CXLLogicalDevice.v1_1_0">
264      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
265      <Annotation Term="Redfish.Release" String="2023.2"/>
266
267      <EntityType Name="CXLLogicalDevice" BaseType="CXLLogicalDevice.v1_0_1.CXLLogicalDevice">
268        <NavigationProperty Name="MemoryRegions" Type="MemoryRegionCollection.MemoryRegionCollection" ContainsTarget="true" Nullable="false">
269          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
270          <Annotation Term="OData.Description" String="The link to the collection of memory regions associated with this CXL logical device."/>
271          <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource collection of type `MemoryRegionCollection` that represents the memory regions associated with this CXL logical device."/>
272          <Annotation Term="OData.AutoExpandReferences"/>
273        </NavigationProperty>
274      </EntityType>
275    </Schema>
276
277    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CXLLogicalDevice.v1_1_1">
278      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
279      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
280      <EntityType Name="CXLLogicalDevice" BaseType="CXLLogicalDevice.v1_1_0.CXLLogicalDevice"/>
281    </Schema>
282
283    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CXLLogicalDevice.v1_1_2">
284      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
285      <Annotation Term="OData.Description" String="This version was created to correct the description and add units for `AllocatedBandwidth` in `QoS`.  It was also created to force the regeneration of OpenAPI schemas to properly express nullable properties with external references.  It was also created to correct various typographical errors."/>
286      <EntityType Name="CXLLogicalDevice" BaseType="CXLLogicalDevice.v1_1_1.CXLLogicalDevice"/>
287    </Schema>
288
289    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CXLLogicalDevice.v1_1_3">
290      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
291      <Annotation Term="OData.Description" String="This version was created to clarify the description of `MemorySizeMiB`."/>
292      <EntityType Name="CXLLogicalDevice" BaseType="CXLLogicalDevice.v1_1_2.CXLLogicalDevice"/>
293    </Schema>
294
295    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CXLLogicalDevice.v1_2_0">
296      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
297      <Annotation Term="Redfish.Release" String="2024.1"/>
298      <Annotation Term="OData.Description" String="This version was created to deprecate `TemporaryThroughputReductionSupported` in favor of `TemporaryThroughputReductionSupported` in `PCIeDevice`."/>
299
300      <EntityType Name="CXLLogicalDevice" BaseType="CXLLogicalDevice.v1_1_2.CXLLogicalDevice"/>
301    </Schema>
302
303    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CXLLogicalDevice.v1_2_1">
304      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
305      <Annotation Term="OData.Description" String="This version was created to clarify the description of `MemorySizeMiB`."/>
306      <EntityType Name="CXLLogicalDevice" BaseType="CXLLogicalDevice.v1_2_0.CXLLogicalDevice"/>
307    </Schema>
308
309  </edmx:DataServices>
310</edmx:Edmx>
311