1<?xml version="1.0" encoding="UTF-8"?>
2<!---->
3<!--################################################################################       -->
4<!--# Redfish Schema:  Processor  v1.0.3-->
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-2016 Distributed Management Task Force, Inc. (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
28  <edmx:DataServices>
29
30    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Processor">
31
32      <EntityType Name="Processor" BaseType="Resource.v1_0_0.Resource" Abstract="true">
33        <Annotation Term="OData.Description" String="The Processor resource reports information about a single processor contained within a system.  This includes both performance characteristics (clock speed, architecture, core count, etc.) and compatibility (e.g. CPU ID instruction results)."/>
34        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
35        <Annotation Term="Capabilities.InsertRestrictions">
36          <Record>
37            <PropertyValue Property="Insertable" Bool="false"/>
38          </Record>
39        </Annotation>
40        <Annotation Term="Capabilities.UpdateRestrictions">
41          <Record>
42            <PropertyValue Property="Updatable" Bool="false"/>
43          </Record>
44        </Annotation>
45        <Annotation Term="Capabilities.DeleteRestrictions">
46          <Record>
47            <PropertyValue Property="Deletable" Bool="false"/>
48          </Record>
49        </Annotation>
50      </EntityType>
51
52    </Schema>
53
54    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Processor.v1_0_0">
55
56      <EntityType Name="Processor" BaseType="Processor.Processor">
57        <Annotation Term="OData.Description" String="This is the schema definition for the Processor resource.  It represents the properties of a processor attached to a System."/>
58        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
59        <Property Name="Socket" Type="Edm.String">
60          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
61          <Annotation Term="OData.Description" String="The socket or location of the processor."/>
62          <Annotation Term="OData.LongDescription" String="This property shall contain the string which identifies the physical location or socket of the processor."/>
63        </Property>
64        <Property Name="ProcessorType" Type="Processor.v1_0_0.ProcessorType">
65          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
66          <Annotation Term="OData.Description" String="The type of processor."/>
67          <Annotation Term="OData.LongDescription" String="This property shall contain the string which identifies the type of processor contained in this Socket."/>
68        </Property>
69        <Property Name="ProcessorArchitecture" Type="Processor.v1_0_0.ProcessorArchitecture">
70          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
71          <Annotation Term="OData.Description" String="The architecture of the processor."/>
72          <Annotation Term="OData.LongDescription" String="This property shall contain the string which identifies the architecture of the processor contained in this Socket."/>
73        </Property>
74        <Property Name="InstructionSet" Type="Processor.v1_0_0.InstructionSet">
75          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
76          <Annotation Term="OData.Description" String="The instruction set of the processor."/>
77          <Annotation Term="OData.LongDescription" String="This property shall contain the string which identifies the instruction set of the processor contained in this socket."/>
78        </Property>
79        <Property Name="ProcessorId" Type="Processor.v1_0_0.ProcessorId"  Nullable="false">
80          <Annotation Term="OData.Description" String="Identification information for this processor."/>
81          <Annotation Term="OData.LongDescription" String="This object shall contain identification information for this processor."/>
82        </Property>
83        <Property Name="Status" Type="Resource.Status" Nullable="false"/>
84        <Property Name="Manufacturer" Type="Edm.String">
85          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
86          <Annotation Term="OData.Description" String="The processor manufacturer."/>
87          <Annotation Term="OData.LongDescription" String="This property shall contain a string which identifies the manufacturer of the processor."/>
88        </Property>
89        <Property Name="Model" Type="Edm.String">
90          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
91          <Annotation Term="OData.Description" String="The product model number of this device."/>
92          <Annotation Term="OData.LongDescription" String="This property shall indicate the model information as provided by the manufacturer of this processor."/>
93        </Property>
94        <Property Name="MaxSpeedMHz" Type="Edm.Int64">
95          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
96          <Annotation Term="OData.Description" String="The maximum clock speed of the processor."/>
97          <Annotation Term="OData.LongDescription" String="This property shall indicate the maximum rated clock speed of the processor in MHz."/>
98        </Property>
99        <Property Name="TotalCores" Type="Edm.Int64">
100          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
101          <Annotation Term="OData.Description" String="The total number of cores contained in this processor."/>
102          <Annotation Term="OData.LongDescription" String="This property shall indicate the total count of independent processor cores contained within this processor."/>
103        </Property>
104        <Property Name="TotalThreads" Type="Edm.Int64">
105          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
106          <Annotation Term="OData.Description" String="The total number of execution threads supported by this processor."/>
107          <Annotation Term="OData.LongDescription" String="This property shall indicate the total count of independent execution threads supported by this processor."/>
108        </Property>
109      </EntityType>
110
111      <ComplexType Name="ProcessorId">
112        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
113        <Property Name="VendorId" Type="Edm.String">
114          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
115          <Annotation Term="OData.Description" String="The Vendor Identification for this processor."/>
116          <Annotation Term="OData.LongDescription" String="This property shall indicate the Vendor Identification string information as provided by the manufacturer of this processor."/>
117        </Property>
118        <Property Name="IdentificationRegisters" Type="Edm.String">
119          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
120          <Annotation Term="OData.Description" String="The contents of the Identification Registers (CPUID) for this processor."/>
121          <Annotation Term="OData.LongDescription" String="This property shall include the raw CPUID instruction output as provided by the manufacturer of this processor."/>
122        </Property>
123        <Property Name="EffectiveFamily" Type="Edm.String">
124          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
125          <Annotation Term="OData.Description" String="The effective Family for this processor."/>
126          <Annotation Term="OData.LongDescription" String="This property shall indicate the effective Family information as provided by the manufacturer of this processor."/>
127        </Property>
128        <Property Name="EffectiveModel" Type="Edm.String">
129          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
130          <Annotation Term="OData.Description" String="The effective Model for this processor."/>
131          <Annotation Term="OData.LongDescription" String="This property shall indicate the effective Model information as provided by the manufacturer of this processor."/>
132        </Property>
133        <Property Name="Step" Type="Edm.String">
134          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
135          <Annotation Term="OData.Description" String="The Step value for this processor."/>
136          <Annotation Term="OData.LongDescription" String="This property shall indicate the Step or revision string information as provided by the manufacturer of this processor."/>
137        </Property>
138        <Property Name="MicrocodeInfo" Type="Edm.String">
139          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
140          <Annotation Term="OData.Description" String="The Microcode Information for this processor."/>
141          <Annotation Term="OData.LongDescription" String="This property shall indicate the Microcode Information as provided by the manufacturer of this processor."/>
142        </Property>
143      </ComplexType>
144
145      <EnumType Name="ProcessorType">
146        <Member Name="CPU">
147          <Annotation Term="OData.Description" String="A Central Processing Unit."/>
148        </Member>
149        <Member Name="GPU">
150          <Annotation Term="OData.Description" String="A Graphics Processing Unit."/>
151        </Member>
152        <Member Name="FPGA">
153          <Annotation Term="OData.Description" String="A Field Programmable Gate Array."/>
154        </Member>
155        <Member Name="DSP">
156          <Annotation Term="OData.Description" String="A Digital Signal Processor."/>
157        </Member>
158        <Member Name="Accelerator">
159          <Annotation Term="OData.Description" String="An Accelerator."/>
160        </Member>
161        <Member Name="OEM">
162          <Annotation Term="OData.Description" String="An OEM-defined Processing Unit."/>
163        </Member>
164      </EnumType>
165
166      <TypeDefinition Name="ProcessorArchitecture" UnderlyingType="Edm.String">
167        <Annotation Term="Redfish.Enumeration">
168          <Collection>
169            <Record>
170              <PropertyValue Property="Member" String="x86"/>
171              <Annotation Term="OData.Description" String="x86 or x86-64."/>
172            </Record>
173            <Record>
174              <PropertyValue Property="Member" String="IA-64"/>
175              <Annotation Term="OData.Description" String="Intel Itanium."/>
176            </Record>
177            <Record>
178              <PropertyValue Property="Member" String="ARM"/>
179              <Annotation Term="OData.Description" String="ARM."/>
180            </Record>
181            <Record>
182              <PropertyValue Property="Member" String="MIPS"/>
183              <Annotation Term="OData.Description" String="MIPS."/>
184            </Record>
185            <Record>
186              <PropertyValue Property="Member" String="OEM"/>
187              <Annotation Term="OData.Description" String="OEM-defined."/>
188            </Record>
189          </Collection>
190        </Annotation>
191      </TypeDefinition>
192
193      <TypeDefinition Name="InstructionSet" UnderlyingType="Edm.String">
194        <Annotation Term="Redfish.Enumeration">
195          <Collection>
196            <Record>
197              <PropertyValue Property="Member" String="x86"/>
198              <Annotation Term="OData.Description" String="x86 32-bit."/>
199            </Record>
200            <Record>
201              <PropertyValue Property="Member" String="x86-64"/>
202              <Annotation Term="OData.Description" String="x86 64-bit."/>
203            </Record>
204            <Record>
205              <PropertyValue Property="Member" String="IA-64"/>
206              <Annotation Term="OData.Description" String="Intel IA-64."/>
207            </Record>
208            <Record>
209              <PropertyValue Property="Member" String="ARM-A32"/>
210              <Annotation Term="OData.Description" String="ARM 32-bit."/>
211            </Record>
212            <Record>
213              <PropertyValue Property="Member" String="ARM-A64"/>
214              <Annotation Term="OData.Description" String="ARM 64-bit."/>
215            </Record>
216            <Record>
217              <PropertyValue Property="Member" String="MIPS32"/>
218              <Annotation Term="OData.Description" String="MIPS 32-bit."/>
219            </Record>
220            <Record>
221              <PropertyValue Property="Member" String="MIPS64"/>
222              <Annotation Term="OData.Description" String="MIPS 64-bit."/>
223            </Record>
224            <Record>
225              <PropertyValue Property="Member" String="OEM"/>
226              <Annotation Term="OData.Description" String="OEM-defined."/>
227            </Record>
228          </Collection>
229        </Annotation>
230      </TypeDefinition>
231
232    </Schema>
233
234    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Processor.v1_0_2">
235      <Annotation Term="OData.Description" String="This version was created to show annotations in previous namespaces were updated."/>
236      <EntityType Name="Processor" BaseType="Processor.v1_0_0.Processor"/>
237    </Schema>
238
239    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Processor.v1_0_3">
240      <Annotation Term="OData.Description" String="This version was created to show annotations in previous namespaces were updated."/>
241      <EntityType Name="Processor" BaseType="Processor.v1_0_2.Processor"/>
242    </Schema>
243
244  </edmx:DataServices>
245</edmx:Edmx>
246