xref: /illumos-gate/usr/src/man/man3lib/libjedec.3lib (revision fc8c3a5155c57af4d5afa0b93dc1542934bf487a)
1.\"
2.\" This file and its contents are supplied under the terms of the
3.\" Common Development and Distribution License ("CDDL"), version 1.0.
4.\" You may only use this file in accordance with the terms of version
5.\" 1.0 of the CDDL.
6.\"
7.\" A full copy of the text of the CDDL should have accompanied this
8.\" source.  A copy of the CDDL is also available via the Internet at
9.\" http://www.illumos.org/license/CDDL.
10.\"
11.\"
12.\" Copyright 2023 Oxide Computer Company
13.\"
14.Dd September 18, 2023
15.Dt LIBJEDEC 3JEDEC
16.Os
17.Sh NAME
18.Nm libjedec
19.Nd JEDEC support library
20.Sh LIBRARY
21.Lb libjedec
22.In libjedec.h
23.Sh DESCRIPTION
24The
25.Nm
26library provides consumers access to several different classes of
27functions that are related to various JEDEC standards including:
28.Bl -bullet -width Ds
29.It
30Parsing Serial Presence Data (SPD) commonly found in DIMM modules
31.It
32Translating JEDEC vendor IDs to a well-known vendor name
33.It
34Translating JEDEC temperature range names to their numeric range
35.El
36.Pp
37This library is an uncommitted interface and API or ABI stability is not
38guaranteed.
39.Ss SPD Parsing
40Most DDR DIMM modules embed information about them which describes the
41timing, size and orientation, and manufacturing information of the
42device.
43The encoding of this information changes with each generation of the DDR
44devices and has its own format.
45The library attempts to normalize information across generations where
46possible.
47.Pp
48The function
49.Xr libjedec_spd 3JEDEC
50provides an interface to parse a full data payload into a
51.Vt nvlist_t ,
52a name-value pair list usable with
53.Xr libnvpair 3LIB .
54.Ss Vendor ID Translation
55JEDEC Vendor IDs come as a pair of a continuation number and an index
56into a block.
57These are then translated into well-known names by the JEDEC standard
58JEP106
59.Po
60.%T Standard Manufacturer's Identification Code
61.Pc .
62This vendor information can be found in different contexts such as SPD
63data, various SPI NOR and SPI NAND devices, SMBIOS, and more.
64.Pp
65The function
66.Xr libjedec_vendor_string 3JEDEC
67provides the ability to translate the IDs to a well known name.
68.Pp
69Currently the library implements JEP106BH from September 2023.
70.Ss Temperature Ranges
71Many JEDEC standards embed information about temperature ranges that
72components support for the case operating temperature, the ambient air
73temperature, and related.
74These ranges are in turn defined in JESD402-1A
75.Po
76.%T Temperature Range and Measurement Standards for Components and Modules
77.Pc .
78.Pp
79The function
80.Xr libjedec_temp_range 3JEDEC
81provides a way to translate these named ranges into the corresponding
82lower and upper bounds of the range.
83When other parts of the library parse data, they will emit the
84temperature range using the library's
85.Vt libjedec_temp_range_t
86type, which is defined in the aforementioned manual page.
87.Sh INTERFACE STABILITY
88.Sy Uncommitted
89.Pp
90The interfaces in this library are currently designed for use for
91software that is a part of illumos and are subject to change at any
92time.
93They are documented as an aid to developers and no API or ABI stability
94is currently intended, though it is not expected to change dramatically.
95.Sh MT-LEVEL
96.Sy MT-Safe
97.Pp
98While all functions in this library are currently
99.Sy MT-Safe ,
100there is no guarantee that this will apply to future functions.
101.Sh SEE ALSO
102.Xr libjedec_spd 3JEDEC ,
103.Xr libjedec_temp_range 3JEDEC ,
104.Xr libjedec_vendor_string 3JEDEC
105.Pp
106.Rs
107.%Q JEDEC Solid State Technology Association
108.%T Standard Manufacturer's Identification Code
109.%N JEP106BH
110.%D September 2023
111.Re
112.Rs
113.%Q JEDEC Solid State Technology Association
114.%T Temperature Range and Measurement Standards for Components and Modules
115.%N JESD402-1A
116.%D March 2022
117.Re
118.Rs
119.%Q JEDEC Solid State Technology Association
120.%T Serial Presence Detect (SPD), General Standard
121.%N 21-C
122.Re
123.Rs
124.%Q JEDEC Solid State Technology Association
125.%T DDR5 Serial Presence Detect (SPD) Contents
126.%N JESD400-5A.01
127.%D January 2023
128.Re
129