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