xref: /openbmc/bmcweb/features/redfish/schema/dmtf/csdl/MemoryRegion_v1.xml (revision d125652e8a30dfeaad88bbfa5b1e04a80610469c)
12bde4061SEd Tanous<?xml version="1.0" encoding="UTF-8"?>
22bde4061SEd Tanous<!---->
32bde4061SEd Tanous<!--################################################################################       -->
428cfceb2SGunnar Mills<!--# Redfish Schema:  MemoryRegion v1.0.3                                                 -->
52bde4061SEd Tanous<!--#                                                                                      -->
62bde4061SEd Tanous<!--# For a detailed change log, see the README file contained in the DSP8010 bundle,      -->
72bde4061SEd Tanous<!--# available at http://www.dmtf.org/standards/redfish                                   -->
8*d125652eSGunnar Mills<!--# Copyright 2014-2025 DMTF.                                                            -->
92bde4061SEd Tanous<!--# For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright -->
102bde4061SEd Tanous<!--################################################################################       -->
112bde4061SEd Tanous<!---->
122bde4061SEd Tanous<edmx:Edmx xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx" Version="4.0">
132bde4061SEd Tanous
142bde4061SEd Tanous  <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Core.V1.xml">
152bde4061SEd Tanous    <edmx:Include Namespace="Org.OData.Core.V1" Alias="OData"/>
162bde4061SEd Tanous  </edmx:Reference>
172bde4061SEd Tanous  <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Capabilities.V1.xml">
182bde4061SEd Tanous    <edmx:Include Namespace="Org.OData.Capabilities.V1" Alias="Capabilities"/>
192bde4061SEd Tanous  </edmx:Reference>
202bde4061SEd Tanous  <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Measures.V1.xml">
212bde4061SEd Tanous    <edmx:Include Namespace="Org.OData.Measures.V1" Alias="Measures"/>
222bde4061SEd Tanous  </edmx:Reference>
232bde4061SEd Tanous  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Resource_v1.xml">
242bde4061SEd Tanous    <edmx:Include Namespace="Resource"/>
252bde4061SEd Tanous    <edmx:Include Namespace="Resource.v1_0_0"/>
262bde4061SEd Tanous  </edmx:Reference>
272bde4061SEd Tanous  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/RedfishExtensions_v1.xml">
282bde4061SEd Tanous    <edmx:Include Namespace="RedfishExtensions.v1_0_0" Alias="Redfish"/>
292bde4061SEd Tanous  </edmx:Reference>
302bde4061SEd Tanous  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/MemoryChunks_v1.xml">
312bde4061SEd Tanous    <edmx:Include Namespace="MemoryChunks"/>
322bde4061SEd Tanous  </edmx:Reference>
332bde4061SEd Tanous
342bde4061SEd Tanous  <edmx:DataServices>
352bde4061SEd Tanous
362bde4061SEd Tanous    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="MemoryRegion">
372bde4061SEd Tanous      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
38f2a8e57eSGunnar Mills      <Annotation Term="Redfish.Language" String="en"/>
392bde4061SEd Tanous
402bde4061SEd Tanous      <EntityType Name="MemoryRegion" BaseType="Resource.v1_0_0.Resource" Abstract="true">
41f2a8e57eSGunnar Mills        <Annotation Term="OData.Description" String="The `MemoryRegion` schema contains the definition of a memory region and its configuration."/>
42f2a8e57eSGunnar Mills        <Annotation Term="OData.LongDescription" String="This resource shall represent a memory region in a Redfish implementation."/>
432bde4061SEd Tanous        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
442bde4061SEd Tanous        <Annotation Term="Capabilities.InsertRestrictions">
452bde4061SEd Tanous          <Record>
462bde4061SEd Tanous            <PropertyValue Property="Insertable" Bool="false"/>
472bde4061SEd Tanous          </Record>
482bde4061SEd Tanous        </Annotation>
492bde4061SEd Tanous        <Annotation Term="Capabilities.UpdateRestrictions">
502bde4061SEd Tanous          <Record>
512bde4061SEd Tanous            <PropertyValue Property="Updatable" Bool="true"/>
522bde4061SEd Tanous          </Record>
532bde4061SEd Tanous        </Annotation>
542bde4061SEd Tanous        <Annotation Term="Capabilities.DeleteRestrictions">
552bde4061SEd Tanous          <Record>
562bde4061SEd Tanous            <PropertyValue Property="Deletable" Bool="true"/>
572bde4061SEd Tanous          </Record>
582bde4061SEd Tanous        </Annotation>
592bde4061SEd Tanous        <Annotation Term="Redfish.Uris">
602bde4061SEd Tanous          <Collection>
612bde4061SEd Tanous            <String>/redfish/v1/Chassis/{ChassisId}/PCIeDevices/{PCIeDeviceId}/CXLLogicalDevices/{CXLLogicalDeviceId}/MemoryRegions/{MemoryRegionId}</String>
622bde4061SEd Tanous          </Collection>
632bde4061SEd Tanous        </Annotation>
642bde4061SEd Tanous      </EntityType>
652bde4061SEd Tanous    </Schema>
662bde4061SEd Tanous
672bde4061SEd Tanous    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="MemoryRegion.v1_0_0">
682bde4061SEd Tanous      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
692bde4061SEd Tanous      <Annotation Term="Redfish.Release" String="2023.2"/>
702bde4061SEd Tanous
712bde4061SEd Tanous      <EntityType Name="MemoryRegion" BaseType="MemoryRegion.MemoryRegion">
722bde4061SEd Tanous        <Property Name="RegionType" Type="MemoryRegion.v1_0_0.RegionType" Nullable="false">
732bde4061SEd Tanous          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
742bde4061SEd Tanous          <Annotation Term="OData.Description" String="The type of memory region."/>
752bde4061SEd Tanous          <Annotation Term="OData.LongDescription" String="This property shall contain the type of memory region."/>
762bde4061SEd Tanous          <Annotation Term="Redfish.Required"/>
772bde4061SEd Tanous        </Property>
782bde4061SEd Tanous        <Property Name="RegionNumber" Type="Edm.Int64" Nullable="false">
792bde4061SEd Tanous          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
802bde4061SEd Tanous          <Annotation Term="OData.Description" String="The memory region number."/>
812bde4061SEd Tanous          <Annotation Term="OData.LongDescription" String="This property shall contain the memory region number."/>
822bde4061SEd Tanous        </Property>
832bde4061SEd Tanous        <Property Name="BlockSizeMiB" Type="Edm.Int64" Nullable="false">
842bde4061SEd Tanous          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
852bde4061SEd Tanous          <Annotation Term="OData.Description" String="The memory region block size in mebibytes (MiB)."/>
862bde4061SEd Tanous          <Annotation Term="OData.LongDescription" String="This property shall contain the memory region block size in mebibytes (MiB).  The region size, base offset, all extent sizes, and all extent base offsets shall be aligned to this block size."/>
872bde4061SEd Tanous          <Annotation Term="Measures.Unit" String="MiBy"/>
882bde4061SEd Tanous        </Property>
892bde4061SEd Tanous        <Property Name="RegionSizeMiB" Type="Edm.Int64" Nullable="false">
902bde4061SEd Tanous          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
912bde4061SEd Tanous          <Annotation Term="OData.Description" String="The size of the memory region in mebibytes (MiB)."/>
922bde4061SEd Tanous          <Annotation Term="OData.LongDescription" String="This property shall contain the size of the memory region in mebibytes (MiB)."/>
932bde4061SEd Tanous          <Annotation Term="Measures.Unit" String="MiBy"/>
942bde4061SEd Tanous        </Property>
952bde4061SEd Tanous        <Property Name="RegionBaseOffsetMiB" Type="Edm.Int64" Nullable="false">
962bde4061SEd Tanous          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
972bde4061SEd Tanous          <Annotation Term="OData.Description" String="The offset of the memory region in the device address range in mebibytes (MiB)."/>
982bde4061SEd Tanous          <Annotation Term="OData.LongDescription" String="The value of this property shall contain the offset of the memory region in the device address range in mebibytes (MiB)."/>
992bde4061SEd Tanous          <Annotation Term="Measures.Unit" String="MiBy"/>
1002bde4061SEd Tanous        </Property>
1012bde4061SEd Tanous        <Property Name="ShareableRegion" Type="Edm.Boolean" DefaultValue="false">
1022bde4061SEd Tanous          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
1032bde4061SEd Tanous          <Annotation Term="OData.Description" String="An indication of whether this memory region can be shared across multiple hosts."/>
1042bde4061SEd Tanous          <Annotation Term="OData.LongDescription" String="This property shall indicate whether this memory region can be shared across multiple hosts as defined in the 'Flags' field of 'Device Scoped Memory Affinity Structure' defined in the Coherent Device Attribute Table (CDAT) Specification."/>
1052bde4061SEd Tanous        </Property>
1062bde4061SEd Tanous        <Property Name="NonVolatileRegion" Type="Edm.Boolean" DefaultValue="false">
1072bde4061SEd Tanous          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
1082bde4061SEd Tanous          <Annotation Term="OData.Description" String="An indication of whether this memory region represents non-volatile memory."/>
1092bde4061SEd Tanous          <Annotation Term="OData.LongDescription" String="This property shall indicate whether this memory region represents non-volatile memory as defined in the 'Flags' field of 'Device Scoped Memory Affinity Structure' defined in the Coherent Device Attribute Table (CDAT) Specification."/>
1102bde4061SEd Tanous        </Property>
1112bde4061SEd Tanous        <Property Name="HardwareManagedCoherencyRegion" Type="Edm.Boolean">
1122bde4061SEd Tanous          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
1132bde4061SEd Tanous          <Annotation Term="OData.Description" String="An indication of whether the device manages the cache coherency across hosts for this memory region."/>
1142bde4061SEd Tanous          <Annotation Term="OData.LongDescription" String="This property shall indicate whether the device manages the cache coherency across hosts and thereby ensures that each host has a consistent view of this memory region content as defined in the 'Flags' field of 'Device Scoped Memory Affinity Structure' defined in the Coherent Device Attribute Table (CDAT) Specification."/>
1152bde4061SEd Tanous        </Property>
1162bde4061SEd Tanous        <Property Name="SanitizeOnRelease" Type="Edm.Boolean" DefaultValue="false">
1172bde4061SEd Tanous          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
1182bde4061SEd Tanous          <Annotation Term="OData.Description" String="An indication of whether the capacity released from this memory region will be sanitized before it is made available to any host."/>
1192bde4061SEd Tanous          <Annotation Term="OData.LongDescription" String="This property shall indicate whether the device has been configured such that capacity released from this memory region will be sanitized before it is made available to any host."/>
1202bde4061SEd Tanous        </Property>
1212bde4061SEd Tanous        <Property Name="ExtentsCount" Type="Edm.Int64">
1222bde4061SEd Tanous          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
1232bde4061SEd Tanous          <Annotation Term="OData.Description" String="The number of extents defined for this memory region."/>
1242bde4061SEd Tanous          <Annotation Term="OData.LongDescription" String="This property shall contain the number of extents defined for this memory region."/>
1252bde4061SEd Tanous        </Property>
1262bde4061SEd Tanous        <Property Name="MemoryExtents" Type="Collection(MemoryRegion.v1_0_0.MemoryExtent)">
1272bde4061SEd Tanous          <Annotation Term="OData.Description" String="The set of memory extents defined for this memory region."/>
1282bde4061SEd Tanous          <Annotation Term="OData.LongDescription" String="This property shall contain the set of memory extents defining address ranges available for an access in dynamic capacity memory regions."/>
1292bde4061SEd Tanous        </Property>
1302bde4061SEd Tanous        <Property Name="MemoryChunks" Type="Collection(MemoryRegion.v1_0_0.MemoryChunk)">
1312bde4061SEd Tanous          <Annotation Term="OData.Description" String="The set of memory chunks providing capacity for this memory region."/>
1322bde4061SEd Tanous          <Annotation Term="OData.LongDescription" String="This property shall contain the set of memory chunks providing capacity for this memory region."/>
1332bde4061SEd Tanous        </Property>
1342bde4061SEd Tanous        <Property Name="Status" Type="Resource.Status" Nullable="false">
1352bde4061SEd Tanous          <Annotation Term="OData.Description" String="The status and health of the resource and its subordinate or dependent resources."/>
1362bde4061SEd Tanous          <Annotation Term="OData.LongDescription" String="This property shall contain any status or health properties of the resource."/>
1372bde4061SEd Tanous        </Property>
1382bde4061SEd Tanous        <Property Name="Actions" Type="MemoryRegion.v1_0_0.Actions" Nullable="false">
1392bde4061SEd Tanous          <Annotation Term="OData.Description" String="The available actions for this resource."/>
1402bde4061SEd Tanous          <Annotation Term="OData.LongDescription" String="This property shall contain the available actions for this resource."/>
1412bde4061SEd Tanous        </Property>
1422bde4061SEd Tanous      </EntityType>
1432bde4061SEd Tanous
1442bde4061SEd Tanous      <ComplexType Name="MemoryExtent">
1452bde4061SEd Tanous        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
1462bde4061SEd Tanous        <Annotation Term="OData.Description" String="Definition of memory extent identifying an available address range in the memory region."/>
1472bde4061SEd Tanous        <Annotation Term="OData.LongDescription" String="This type shall contain the definition of a memory extent identifying an available address range in the dynamic capacity memory region."/>
1482bde4061SEd Tanous        <Property Name="ExtentOffsetMiB" Type="Edm.Int64" Nullable="false">
1492bde4061SEd Tanous          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
1502bde4061SEd Tanous          <Annotation Term="OData.Description" String="Offset of the memory extent within the memory region in mebibytes (MiB)."/>
1512bde4061SEd Tanous          <Annotation Term="OData.LongDescription" String="The value of this property shall be the offset of the memory extent within the memory region in mebibytes (MiB)."/>
1522bde4061SEd Tanous          <Annotation Term="Measures.Unit" String="MiBy"/>
1532bde4061SEd Tanous        </Property>
1542bde4061SEd Tanous        <Property Name="ExtentSizeMiB" Type="Edm.Int64" Nullable="false">
1552bde4061SEd Tanous          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
1562bde4061SEd Tanous          <Annotation Term="OData.Description" String="Size of the memory extent in mebibytes (MiB)."/>
1572bde4061SEd Tanous          <Annotation Term="OData.LongDescription" String="This property shall contain the size of the memory extent in MiB."/>
1582bde4061SEd Tanous          <Annotation Term="Measures.Unit" String="MiBy"/>
1592bde4061SEd Tanous        </Property>
1602bde4061SEd Tanous        <Property Name="Tag" Type="Edm.String" Nullable="false">
1612bde4061SEd Tanous          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
16228cfceb2SGunnar Mills          <Annotation Term="OData.Description" String="The tag of this memory extent."/>
1632bde4061SEd Tanous          <Annotation Term="OData.LongDescription" String="This property shall contain an opaque context attached to each extent to track usage of each extent or map extent to specific processes, transactions, or workloads on the host."/>
1642bde4061SEd Tanous        </Property>
1652bde4061SEd Tanous        <Property Name="SequenceNumber" Type="Edm.Int64">
1662bde4061SEd Tanous          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
1672bde4061SEd Tanous          <Annotation Term="OData.Description" String="The memory extent sequence number."/>
1682bde4061SEd Tanous          <Annotation Term="OData.LongDescription" String="This property shall contain the sequence number instructing host on the relative order the extents have to be placed in the host adjacent virtual address space."/>
1692bde4061SEd Tanous        </Property>
1702bde4061SEd Tanous      </ComplexType>
1712bde4061SEd Tanous
1722bde4061SEd Tanous      <ComplexType Name="MemoryChunk">
1732bde4061SEd Tanous        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
1742bde4061SEd Tanous        <Annotation Term="OData.Description" String="Definition of memory chunk providing capacity for memory region."/>
1752bde4061SEd Tanous        <Annotation Term="OData.LongDescription" String="This type shall contain the definition of a memory chunk providing capacity for memory region."/>
1762bde4061SEd Tanous        <Property Name="ChunkOffsetMiB" Type="Edm.Int64" Nullable="false">
1772bde4061SEd Tanous          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
1782bde4061SEd Tanous          <Annotation Term="OData.Description" String="Offset of the memory chunk within the memory region in mebibytes (MiB)."/>
1792bde4061SEd Tanous          <Annotation Term="OData.LongDescription" String="The value of this property shall be the offset of the memory chunk within the memory region in mebibytes (MiB)."/>
1802bde4061SEd Tanous          <Annotation Term="Measures.Unit" String="MiBy"/>
1812bde4061SEd Tanous        </Property>
1822bde4061SEd Tanous        <NavigationProperty Name="ChunkLink" Type="MemoryChunks.MemoryChunks" Nullable="false">
1832bde4061SEd Tanous          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
1842bde4061SEd Tanous          <Annotation Term="OData.Description" String="The link to the memory chunk providing capacity to the memory region."/>
185f2a8e57eSGunnar Mills          <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource of type `MemoryChunks` that provides capacity to the memory region."/>
1862bde4061SEd Tanous        </NavigationProperty>
1872bde4061SEd Tanous      </ComplexType>
1882bde4061SEd Tanous
1892bde4061SEd Tanous      <ComplexType Name="Actions">
1902bde4061SEd Tanous        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
1912bde4061SEd Tanous        <Annotation Term="OData.Description" String="The available actions for this resource."/>
1922bde4061SEd Tanous        <Annotation Term="OData.LongDescription" String="This type shall contain the available actions for this resource."/>
1932bde4061SEd Tanous        <Property Name="Oem" Type="MemoryRegion.v1_0_0.OemActions" Nullable="false">
1942bde4061SEd Tanous          <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
1952bde4061SEd Tanous          <Annotation Term="OData.LongDescription" String="This property shall contain the available OEM-specific actions for this resource."/>
1962bde4061SEd Tanous        </Property>
1972bde4061SEd Tanous      </ComplexType>
1982bde4061SEd Tanous
1992bde4061SEd Tanous      <ComplexType Name="OemActions">
2002bde4061SEd Tanous        <Annotation Term="OData.AdditionalProperties" Bool="true"/>
2012bde4061SEd Tanous        <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
2022bde4061SEd Tanous        <Annotation Term="OData.LongDescription" String="This type shall contain the available OEM-specific actions for this resource."/>
2032bde4061SEd Tanous      </ComplexType>
2042bde4061SEd Tanous
2052bde4061SEd Tanous      <EnumType Name="RegionType">
2062bde4061SEd Tanous        <Member Name="Static">
2072bde4061SEd Tanous          <Annotation Term="OData.Description" String="Static memory region.  The whole address range is always covered by memory."/>
2082bde4061SEd Tanous        </Member>
2092bde4061SEd Tanous        <Member Name="Dynamic">
2102bde4061SEd Tanous          <Annotation Term="OData.Description" String="Dynamic memory region.  The address range coverage may be changed in the runtime."/>
2112bde4061SEd Tanous        </Member>
2122bde4061SEd Tanous      </EnumType>
2132bde4061SEd Tanous    </Schema>
2142bde4061SEd Tanous
2152bde4061SEd Tanous    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="MemoryRegion.v1_0_1">
2162bde4061SEd Tanous      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
217f2a8e57eSGunnar Mills      <Annotation Term="OData.Description" String="This version was created to correct the spelling of the `RegionBaseOffsetMiB` property.  It was also created to correct various typographical errors."/>
2182bde4061SEd Tanous      <EntityType Name="MemoryRegion" BaseType="MemoryRegion.v1_0_0.MemoryRegion"/>
2192bde4061SEd Tanous    </Schema>
2202bde4061SEd Tanous
221f2a8e57eSGunnar Mills    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="MemoryRegion.v1_0_2">
222f2a8e57eSGunnar Mills      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
223f2a8e57eSGunnar Mills      <Annotation Term="OData.Description" String="This version was 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."/>
224f2a8e57eSGunnar Mills      <EntityType Name="MemoryRegion" BaseType="MemoryRegion.v1_0_1.MemoryRegion"/>
225f2a8e57eSGunnar Mills    </Schema>
226f2a8e57eSGunnar Mills
22728cfceb2SGunnar Mills    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="MemoryRegion.v1_0_3">
22828cfceb2SGunnar Mills      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
229dd5c81e9SGunnar Mills      <Annotation Term="OData.Description" String="This version was created to clarify the definition of the `Tag` property."/>
23028cfceb2SGunnar Mills      <EntityType Name="MemoryRegion" BaseType="MemoryRegion.v1_0_2.MemoryRegion"/>
23128cfceb2SGunnar Mills    </Schema>
23228cfceb2SGunnar Mills
2332bde4061SEd Tanous  </edmx:DataServices>
2342bde4061SEd Tanous</edmx:Edmx>
235