Linux Driver Revived For Finally Being Able To Read DDR4 Memory SPD Data
DDR4 memory has been around for several years already yet the mainline Linux kernel doesn't have a driver for reading the SPD EEPROMs abiding by the JEDEC EE1004 standard as used by DDR4 SDRAM memory modules.
In November of last year, SUSE developer Jean Delvare sent out a patch for a new "ee1004" driver for reading the SPD (Serial Presence Detect) data on DDR4 memory modules. That patch/driver fell through the cracks while finally Jean has got around to resending out the driver on the kernel mailing list.
Delvare tackled this code originally as part of a SUSE Hackweek and besides this kernel support to expose the SPD information, he also prepared patches for the decode-dimms user-space utility for being able to then parse this information. The SPD data is what contains the standardized timing/CAS latency data, manufacturing data, and other memory module information like rank, nominal voltage, and even smaller characteristics like the physical module height/thickness.
This driver has been ready for reading the SPD EEPROMs on DDR4 memory compliant with the JEDEC EE1004 specification, but hadn't been merged -- hopefully it can still make it for Linux 4.20~5.0 given the driver is quite small. The EEPROM contents is then exposed to user-space via sysfs where it can be parsed by decode-dimms or other user-space code.
Those wanting to build the EE1004 driver from source can fetch it via the kernel mailing list where hopefully it won't fall through the cracks for another year. Already DDR5 SDRAM is expected to be introduced in 2019 with further upping the bandwidth and greater capacity while still lowering the power consumption; hopefully it won't take as long to get the Linux DDR5 SPD data reading in place.
In November of last year, SUSE developer Jean Delvare sent out a patch for a new "ee1004" driver for reading the SPD (Serial Presence Detect) data on DDR4 memory modules. That patch/driver fell through the cracks while finally Jean has got around to resending out the driver on the kernel mailing list.
Delvare tackled this code originally as part of a SUSE Hackweek and besides this kernel support to expose the SPD information, he also prepared patches for the decode-dimms user-space utility for being able to then parse this information. The SPD data is what contains the standardized timing/CAS latency data, manufacturing data, and other memory module information like rank, nominal voltage, and even smaller characteristics like the physical module height/thickness.
This driver has been ready for reading the SPD EEPROMs on DDR4 memory compliant with the JEDEC EE1004 specification, but hadn't been merged -- hopefully it can still make it for Linux 4.20~5.0 given the driver is quite small. The EEPROM contents is then exposed to user-space via sysfs where it can be parsed by decode-dimms or other user-space code.
Those wanting to build the EE1004 driver from source can fetch it via the kernel mailing list where hopefully it won't fall through the cracks for another year. Already DDR5 SDRAM is expected to be introduced in 2019 with further upping the bandwidth and greater capacity while still lowering the power consumption; hopefully it won't take as long to get the Linux DDR5 SPD data reading in place.
8 Comments