Check out my first novel, midnight's simulacra!
EE1004: Difference between revisions
From dankwiki
(Created page with "[https://www.jedec.org/category/keywords/ee1004-v EE1004-v] is a JEDEC standard for SPD published May 2022. It is used in DDR4+ DIMMs, and has its own kernel module, <tt>ee1004</tt>, updating the <tt>at24</tt> module. ==Reading EE1004== Load the <tt>eeprom</tt> and <tt>ee1004</tt> modules (the former is still necessary for <tt>decode-dimms</tt> to function, but is deprecated). Determine which DIMMs are populated via addresses 0x50--0x57 on an SMBUS-type I2C connecti...") |
No edit summary |
||
Line 23: | Line 23: | ||
70: 70 71 72 -- 74 -- 76 -- | 70: 70 71 72 -- 74 -- 76 -- | ||
[schwarzgerat](0) $ | [schwarzgerat](0) $ | ||
</pre> | |||
Here, we see my 8 DIMMs populating addresses 0x50 through 0x57. We now must associate these addresses with <tt>ee1004</tt>: | |||
<pre> | |||
[schwarzgerat](0) $ for i in `seq 0 7` ; do echo ee1004 0x5$i | sudo tee /sys/bus/i2c/devices/i2c-0/new_device ; done | |||
ee1004 0x50 | |||
ee1004 0x51 | |||
ee1004 0x52 | |||
ee1004 0x53 | |||
ee1004 0x54 | |||
ee1004 0x55 | |||
ee1004 0x56 | |||
ee1004 0x57 | |||
[schwarzgerat](1) $ | |||
</pre> | </pre> |
Revision as of 20:08, 4 September 2022
EE1004-v is a JEDEC standard for SPD published May 2022. It is used in DDR4+ DIMMs, and has its own kernel module, ee1004, updating the at24 module.
Reading EE1004
Load the eeprom and ee1004 modules (the former is still necessary for decode-dimms to function, but is deprecated). Determine which DIMMs are populated via addresses 0x50--0x57 on an SMBUS-type I2C connection. Here, buses 0 and 1 are SMBUS (using the i2c-piix4 module).
[schwarzgerat](0) $ i2cdetect -l i2c-0 smbus SMBus PIIX4 adapter port 0 at 0b00 SMBus adapter i2c-1 smbus SMBus PIIX4 adapter port 2 at 0b00 SMBus adapter ..... [schwarzgerat](0) $
Let's take a look across bus 0:
[schwarzgerat](0) $ i2cdetect -y 0 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: 08 09 -- -- 0c -- -- -- 10: 10 11 -- 13 14 15 -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- 27 28 -- -- -- -- -- -- -- 30: 30 31 -- -- 34 35 -- 37 -- -- 3a -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- 4a -- -- -- -- -- 50: UU UU UU UU UU UU UU UU -- -- -- -- -- -- -- -- 60: -- -- 62 63 64 -- -- -- 68 69 -- -- 6c -- -- -- 70: 70 71 72 -- 74 -- 76 -- [schwarzgerat](0) $
Here, we see my 8 DIMMs populating addresses 0x50 through 0x57. We now must associate these addresses with ee1004:
[schwarzgerat](0) $ for i in `seq 0 7` ; do echo ee1004 0x5$i | sudo tee /sys/bus/i2c/devices/i2c-0/new_device ; done ee1004 0x50 ee1004 0x51 ee1004 0x52 ee1004 0x53 ee1004 0x54 ee1004 0x55 ee1004 0x56 ee1004 0x57 [schwarzgerat](1) $