blob: a7aaa141985d2ef9c78c612b606fc8d2763d497f [file] [log] [blame]
Brad Bishopa948d262016-10-05 19:51:48 -04001description: >
2 Implement to provide DIMM attributes.
Cheng C Yang9bf62f12019-10-27 00:24:55 +08003properties:
4 - name: MemoryDataWidth
5 type: uint16
6 description: >
7 Data width of Memory.
8 - name: MemorySizeInKB
9 type: uint32
10 description: >
11 Memory size of DIMM in Kilobyte.
12 - name: MemoryDeviceLocator
13 type: string
14 description: >
15 Socket on base board where Memory located, for example CPU1_DIMM_B1.
16 - name: MemoryType
17 type: enum[self.DeviceType]
18 description: >
19 Type of memory.
20 - name: MemoryTypeDetail
21 type: string
22 description: >
23 Additional detail on Memory, such as Synchronous, Static column, etc.
24 - name: MaxMemorySpeedInMhz
25 type: uint16
26 description: >
27 The maximum capable clock speed of Memory, in megahertz.
28 - name: MemoryAttributes
29 type: byte
30 description: >
31 Rank attributes of Memory. Means how many groups of memory chips on
32 the dimm.
33 - name: MemoryConfiguredSpeedInMhz
34 type: uint16
35 description: >
36 Configured clock speed to Memory, in megahertz.
37 - name: ECC
38 type: enum[self.Ecc]
39 description: >
40 Error-Correcting Code.
41 - name: CASLatencies
42 type: uint16
43 description: >
44 CAS Latency (CL) values are supported. The CAS latency is the delay
45 between the time at which the column address and the column address
Nirmal Patelb167aca2020-03-19 04:17:08 -070046 strobe signal are presented to the memory module and the time at
47 which the corresponding data is made available by the memory module.
Cheng C Yang9bf62f12019-10-27 00:24:55 +080048 - name: RevisionCode
49 type: uint16
50 description: >
51 Revision code provided by the individual manufacturer.
Nirmal Patelb167aca2020-03-19 04:17:08 -070052 - name: FormFactor
53 type: enum[self.FormFactor]
54 description: >
55 The base module type of the memory.
56 - name: MemoryTotalWidth
57 type: uint16
58 description: >
59 The bus width, in bits.
60 - name: AllowedSpeedsMHz
61 type: array[uint16]
62 description: >
63 Speeds supported by this memory.
64 - name: MaxAveragePowerLimitmW
65 type: array[uint32]
66 description: >
67 Set of maximum power budgets supported by the memory in milliwatts.
68 - name: SpareDeviceCount
69 type: byte
70 description: >
71 Number of unused spare devices available in the memory.
72 - name: Socket
73 type: uint16
74 description: >
75 The socket number to which the memory is connected.
76 - name: MemoryController
77 type: uint16
78 description: >
79 The memory controller number to which the memory is connected.
80 - name: Channel
81 type: uint16
82 description: >
83 The channel number to which the memory is connected.
84 - name: Slot
85 type: uint16
86 description: >
87 The slot number to which the memory is connected.
88 - name: VolatileRegionSizeLimitKiB
89 type: uint32
90 description: >
91 Total size of volatile regions in kibibytes (KiB).
92 - name: PmRegionSizeLimitKiB
93 type: uint32
94 description: >
95 Total size of persistent regions in kibibytes (KiB).
96 - name: AllowedMemoryModes
97 type: array[string]
98 description: >
99 Memory modes supported by the memory.
100 - name: IsSpareDeviceInUse
101 type: boolean
102 description: >
103 An indication of whether a spare device is enabled for this memory.
104 - name: IsRankSpareEnabled
105 type: boolean
106 description: >
107 An indication of whether rank spare is enabled for this memory.
108 - name: VolatileRegionNumberLimit
109 type: uint16
110 description: >
111 Total number of volatile regions this memory can support.
112 - name: PmRegionNumberLimit
113 type: uint16
114 description: >
115 Total number of persistent regions this memory can support.
116 - name: VolatileRegionMaxSizeKiB
117 type: uint32
118 description: >
119 Maximum size of a single volatile region in kibibytes (KiB).
120 - name: PmRegionMaxSizeKiB
121 type: uint32
122 description: >
123 Maximum size of a single persistent region in kibibytes (KiB).
124 - name: AllocationIncrementInKiB
125 type: uint64
126 description: >
127 The size of the smallest unit of allocation for a memory region in
128 kibibytes (KiB).
129 - name: AllocationAlignementInKiB
130 type: uint64
131 description: >
132 The boundary that memory regions are allocated on, measured in
133 kibibytes (KiB).
134 - name: ModuleManufacturerID
135 type: string
136 description: >
137 The manufacturer ID of this memory module.
138 - name: ModuleProductID
139 type: string
140 description: >
141 The product ID of this memory module.
142 - name: SubsystemVendorID
143 type: string
144 description: >
145 The manufacturer ID of the memory subsystem controller of this
146 memory module.
147 - name: SubsystemDeviceID
148 type: string
149 description: >
150 The product ID of the memory subsystem controller of this memory
151 module.
152 - name: VolatileSizeInKiB
153 type: uint32
154 description: >
155 Total size of the volatile portion memory in kibibytes (KiB).
156 - name: PmSizeInKiB
157 type: uint32
158 description: >
159 Total size of the non-volatile portion memory in kibibytes (KiB).
160 - name: CacheSizeInKB
161 type: uint32
162 description: >
163 Total size of the cache portion memory in kibibytes (KiB).
164 - name: MemoryMedia
165 type: array[string]
166 description: Media of this memory.
Brad Bishopa948d262016-10-05 19:51:48 -0400167
Cheng C Yang9bf62f12019-10-27 00:24:55 +0800168enumerations:
169 - name: Ecc
170 description: >
171 Error-Correcting Code.
172 values:
173 - name: NoECC
174 description: >
175 No ECC support.
176 - name: SingleBitECC
177 description: >
178 Single bit data errors can be corrected by ECC.
179 - name: MultiBitECC
180 description: >
181 Multibit data errors can be corrected by ECC.
Nirmal Patelb167aca2020-03-19 04:17:08 -0700182 - name: AddressParity
Cheng C Yang9bf62f12019-10-27 00:24:55 +0800183 description: >
184 Address parity errors can be corrected.
185 - name: Type
186 description: >
187 This property shall contain the type ofmemory that this Resource
188 represents.
189 values:
190 - name: DRAM
191 description: >
192 The memory module is comprised of volatile memory.
193 - name: NVDIMM_N
194 description: >
195 The memory module is comprised of volatile memory backed by
196 non-volatile memory.
197 - name: NVDIMM_F
198 description: >
199 The memory module is comprised of non-volatile memory.
200 - name: NVDIMM_P
201 description: >
202 The memory module is comprised of a combination of non-volatile
203 and volatile memory.
204 - name: IntelOptane
205 description: >
206 The memory module is an Intel Optane DC Persistent Memory Module.
207 - name: DeviceType
208 description: >
209 This property shall contain the Memory Device Type as defined by
210 SMBIOS.
211 values:
Cheng C Yange59bc112019-11-11 23:15:50 +0800212 - name: Other
213 description: >
214 Some devices which are not defined in this table.
215 - name: Unknown
216 description: >
217 Unknown device.
218 - name: DRAM
219 description: >
220 Dynamic Random Access Memory.
221 - name: EDRAM
222 description: >
223 Enhanced Dynamic Random Access Memory.
224 - name: VRAM
225 description: >
226 Video Random Access Memory.
227 - name: SRAM
228 description: >
229 Static Random Access Memory.
230 - name: RAM
231 description: >
232 Random Access Memory.
233 - name: ROM
234 description: >
235 Read Only Memory.
236 - name: FLASH
237 description: >
238 Flash Memory.
239 - name: EEPROM
240 description: >
241 Electrically Erasable Programmable Read Only Memory.
242 - name: FEPROM
243 description: >
244 Flash Erasable Programmable Read Only Memory.
245 - name: EPROM
246 description: >
247 Erasable Programmable Read Only Memory.
248 - name: CDRAM
249 description: >
250 Cached Dynamic Random Access Memory.
251 - name: ThreeDRAM
252 description: >
253 Three Dimensional Random Access Memory.
254 - name: SDRAM
255 description: >
256 Synchronous Dynamic Random Access Memory.
257 - name: DDR_SGRAM
258 description: >
259 Double Data Rate Synchronous Graphics Random-Access Memory.
260 - name: RDRAM
261 description: >
262 Direct Rambus Dynamic Random Access Memory.
Cheng C Yang9bf62f12019-10-27 00:24:55 +0800263 - name: DDR
264 description: >
265 Double Data Rate SDRAM.
266 - name: DDR2
267 description: >
268 Double Data Rate 2 SDRAM.
Cheng C Yang9bf62f12019-10-27 00:24:55 +0800269 - name: DDR2_SDRAM_FB_DIMM
270 description: >
271 DDR2 SDRAM Fully Buffered DIMM.
Cheng C Yang9bf62f12019-10-27 00:24:55 +0800272 - name: EDO
273 description: >
274 Extended Data Output Memory.
275 - name: FastPageMode
276 description: >
277 Fast Page Mode Memory.
278 - name: PipelinedNibble
279 description: >
280 Pipelined Nibble Memory.
Cheng C Yange59bc112019-11-11 23:15:50 +0800281 - name: DDR3
282 description: >
283 Double Data Rate 3 SDRAM.
284 - name: FBD2
285 description: >
286 Fully Buffered DIMM 2.
287 - name: DDR4
288 description: >
289 Double Data Rate 4 SDRAM.
290 - name: LPDDR_SDRAM
291 description: >
292 Low-Power Double Data Rate SDRAM.
293 - name: LPDDR2_SDRAM
294 description: >
295 Low-Power Double Data Rate 2 SDRAM.
296 - name: LPDDR3_SDRAM
297 description: >
298 Low-Power Double Data Rate 3 SDRAM.
299 - name: LPDDR4_SDRAM
300 description: >
301 Low-Power Double Data Rate 4 SDRAM.
Cheng C Yang9bf62f12019-10-27 00:24:55 +0800302 - name: Logical
303 description: >
304 Logical Non-volatile device.
305 - name: HBM
306 description: >
307 High Bandwidth Memory
308 - name: HBM2
309 description: >
310 High Bandwidth Memory Generation 2.
Cheng C Yange59bc112019-11-11 23:15:50 +0800311 - name: DDR2_SDRAM_FB_DIMM_PROB
312 description: >
313 DDR2 SDRAM Fully Buffered DIMM PROBE.
314 - name: DDR4E_SDRAM
315 description: >
316 Double Data Rate 4 Extended Compliant SDRAM.
Nirmal Patelb167aca2020-03-19 04:17:08 -0700317 - name: FormFactor
318 description: >
319 Implementation form factor for this memory device.
320 values:
321 - name: RDIMM
322 description: >
323 Registered DIMM.
324 - name: UDIMM
325 description: >
326 Unbuffered DIMM.
327 - name: SO_DIMM
328 description: >
329 Small Outline DIMM.
330 - name: LRDIMM
331 description: >
332 Load-reduced DIMMs.
333 - name: Mini_RDIMM
334 description: >
335 mini Registered DIMM.
336 - name: Mini_UDIMM
337 description: >
338 mini Unbuffered DIMM.
339 - name: SO_RDIMM_72b
340 description: >
341 Small Outline Registered DIMM.
342 - name: SO_UDIMM_72b
343 description: >
344 Small Outline Unbuffered DIMM.
345 - name: SO_DIMM_16b
346 description: >
347 Small Outline DIMM 16 bit.
348 - name: SO_DIMM_32b
349 description: >
350 Small Outline DIMM 32 bit.
351 - name: Die
352 description: >
353 A die within a package.