Re: [decode-dimms] Crucial Ballistix BLS2K16G4D30AESB, cannot decode / understand timings

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Yep - and the crucial ones worked too. Here is all the command output
below. Thank you so much Jean for solving this issue.

[root:/sys/bus/i2c/devices] # cd /sys/bus/i2c/devices
[root:/sys/bus/i2c/devices] # ls
i2c-0  i2c-1
[root:/sys/bus/i2c/devices] #
[root:/sys/bus/i2c/devices] # modprobe i2c-dev
[root:/sys/bus/i2c/devices] # modprobe i2c-i801
[root:/sys/bus/i2c/devices] # ls
i2c-0  i2c-1  i2c-2
[root:/sys/bus/i2c/devices] #
[root:/sys/bus/i2c/devices] # i2cdetect 2
WARNING! This program can confuse your I2C bus, cause data loss and worse!
I will probe file /dev/i2c-2.
I will probe address range 0x03-0x77.
Continue? [Y/n] y
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- 08 -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: 30 -- -- -- 34 35 -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- 44 -- -- -- -- -- -- -- -- -- -- --
50: 50 -- 52 -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
[root:/sys/bus/i2c/devices] #
[root:/sys/bus/i2c/devices] #
[root:/sys/bus/i2c/devices] #
[root:/sys/bus/i2c/devices] # echo ee1004 0x50 >
/sys/bus/i2c/devices/i2c-2/new_device
[root:/sys/bus/i2c/devices] # echo ee1004 0x52 >
/sys/bus/i2c/devices/i2c-2/new_device
[root:/sys/bus/i2c/devices] #
[root:/sys/bus/i2c/devices] # cd ~
[root:~] # ./decode-dimms.new
# decode-dimms version $Revision$

Memory Serial Presence Detect Decoder
By Philip Edelbrock, Christian Zuckschwerdt, Burkart Lingner,
Jean Delvare, Trent Piepho and others


Decoding EEPROM: /sys/bus/i2c/drivers/ee1004/2-0050
Guessing DIMM is in                              bank 1

---=== SPD EEPROM Information ===---
EEPROM CRC of bytes 0-125                        OK (0x9912)
# of bytes written to SDRAM EEPROM               384
Total number of bytes in EEPROM                  512
Fundamental Memory type                          DDR4 SDRAM
SPD Revision                                     1.1
Module Type                                      UDIMM
EEPROM CRC of bytes 128-253                      OK (0xDF74)

---=== Memory Characteristics ===---
Maximum module speed                             2400 MHz (PC4-19200)
Size                                             16384 MB
Banks x Rows x Columns x Bits                    16 x 16 x 10 x 64
SDRAM Device Width                               8 bits
Ranks                                            2
Rank Mix                                         Symmetrical
Primary Bus Width                                64 bits
AA-RCD-RP-RAS (cycles)                           16-16-16-39
Supported CAS Latencies                          24T, 23T, 22T, 21T,
20T, 19T, 18T, 17T, 16T, 15T, 14T, 13T, 12T, 11T, 10T, 9T

---=== Timings at Standard Speeds ===---
AA-RCD-RP-RAS (cycles) as DDR4-2400              16-16-16-39
AA-RCD-RP-RAS (cycles) as DDR4-2133              15-15-15-35
AA-RCD-RP-RAS (cycles) as DDR4-1866              13-13-13-30
AA-RCD-RP-RAS (cycles) as DDR4-1600              11-11-11-26

---=== Timing Parameters ===---
Minimum Cycle Time (tCKmin)                      0.833 ns
Maximum Cycle Time (tCKmax)                      1.600 ns
Minimum CAS Latency Time (tAA)                   13.320 ns
Minimum RAS to CAS Delay (tRCD)                  13.320 ns
Minimum Row Precharge Delay (tRP)                13.320 ns
Minimum Active to Precharge Delay (tRAS)         32.000 ns
Minimum Active to Auto-Refresh Delay (tRC)       45.320 ns
Minimum Recovery Delay (tRFC1)                   350.000 ns
Minimum Recovery Delay (tRFC2)                   260.000 ns
Minimum Recovery Delay (tRFC4)                   160.000 ns
Minimum Four Activate Window Delay (tFAW)        21.000 ns
Minimum Row Active to Row Active Delay (tRRD_S)  3.000 ns
Minimum Row Active to Row Active Delay (tRRD_L)  4.900 ns
Minimum CAS to CAS Delay (tCCD_L)                5.000 ns
Minimum Write Recovery Time (tWR)                15.000 ns
Minimum Write to Read Time (tWTR_S)              2.500 ns
Minimum Write to Read Time (tWTR_L)              7.500 ns

---=== Other Information ===---
Package Type                                     Monolithic
Maximum Activate Count                           Unlimited
Post Package Repair                              Not supported
Module Nominal Voltage                           1.2 V
Thermal Sensor                                   No

---=== Physical Characteristics ===---
Module Height                                    32 mm
Module Thickness                                 2 mm front, 2 mm back
Module Reference Card                            B revision 1

---=== Manufacturer Data ===---
Module Manufacturer                              Crucial Technology
DRAM Manufacturer                                Micron Technology
Manufacturing Date                               2019-W10
Assembly Serial Number                           0xE1C50F14
Part Number                                      BLS16G4D30AESB.M16FE


Decoding EEPROM: /sys/bus/i2c/drivers/ee1004/2-0052
Guessing DIMM is in                              bank 3

---=== SPD EEPROM Information ===---
EEPROM CRC of bytes 0-125                        OK (0x9912)
# of bytes written to SDRAM EEPROM               384
Total number of bytes in EEPROM                  512
Fundamental Memory type                          DDR4 SDRAM
SPD Revision                                     1.1
Module Type                                      UDIMM
EEPROM CRC of bytes 128-253                      OK (0xDF74)

---=== Memory Characteristics ===---
Maximum module speed                             2400 MHz (PC4-19200)
Size                                             16384 MB
Banks x Rows x Columns x Bits                    16 x 16 x 10 x 64
SDRAM Device Width                               8 bits
Ranks                                            2
Rank Mix                                         Symmetrical
Primary Bus Width                                64 bits
AA-RCD-RP-RAS (cycles)                           16-16-16-39
Supported CAS Latencies                          24T, 23T, 22T, 21T,
20T, 19T, 18T, 17T, 16T, 15T, 14T, 13T, 12T, 11T, 10T, 9T

---=== Timings at Standard Speeds ===---
AA-RCD-RP-RAS (cycles) as DDR4-2400              16-16-16-39
AA-RCD-RP-RAS (cycles) as DDR4-2133              15-15-15-35
AA-RCD-RP-RAS (cycles) as DDR4-1866              13-13-13-30
AA-RCD-RP-RAS (cycles) as DDR4-1600              11-11-11-26

---=== Timing Parameters ===---
Minimum Cycle Time (tCKmin)                      0.833 ns
Maximum Cycle Time (tCKmax)                      1.600 ns
Minimum CAS Latency Time (tAA)                   13.320 ns
Minimum RAS to CAS Delay (tRCD)                  13.320 ns
Minimum Row Precharge Delay (tRP)                13.320 ns
Minimum Active to Precharge Delay (tRAS)         32.000 ns
Minimum Active to Auto-Refresh Delay (tRC)       45.320 ns
Minimum Recovery Delay (tRFC1)                   350.000 ns
Minimum Recovery Delay (tRFC2)                   260.000 ns
Minimum Recovery Delay (tRFC4)                   160.000 ns
Minimum Four Activate Window Delay (tFAW)        21.000 ns
Minimum Row Active to Row Active Delay (tRRD_S)  3.000 ns
Minimum Row Active to Row Active Delay (tRRD_L)  4.900 ns
Minimum CAS to CAS Delay (tCCD_L)                5.000 ns
Minimum Write Recovery Time (tWR)                15.000 ns
Minimum Write to Read Time (tWTR_S)              2.500 ns
Minimum Write to Read Time (tWTR_L)              7.500 ns

---=== Other Information ===---
Package Type                                     Monolithic
Maximum Activate Count                           Unlimited
Post Package Repair                              Not supported
Module Nominal Voltage                           1.2 V
Thermal Sensor                                   No

---=== Physical Characteristics ===---
Module Height                                    32 mm
Module Thickness                                 2 mm front, 2 mm back
Module Reference Card                            B revision 1

---=== Manufacturer Data ===---
Module Manufacturer                              Crucial Technology
DRAM Manufacturer                                Micron Technology
Manufacturing Date                               2019-W10
Assembly Serial Number                           0xE1C4CF8D
Part Number                                      BLS16G4D30AESB.M16FE


Number of SDRAM DIMMs detected and decoded: 2
[root:~] #


# dmesg -w
[  181.304884] i801_smbus 0000:00:1f.4: SPD Write Disable is set
[  181.304917] i801_smbus 0000:00:1f.4: SMBus using PCI interrupt

[  199.450787] ee1004 2-0050: Currently selected page: 1
[  199.450789] ee1004 2-0050: 512 byte EE1004-compliant SPD EEPROM, read-only
[  199.450844] i2c i2c-2: new_device: Instantiated device ee1004 at 0x50
[  199.474452] ee1004 2-0052: Currently selected page: 1
[  199.474454] ee1004 2-0052: 512 byte EE1004-compliant SPD EEPROM, read-only
[  199.474538] i2c i2c-2: new_device: Instantiated device ee1004 at 0x52

[  216.816208] ee1004 2-0050: Selected page 0
[  216.820355] ee1004 2-0050: read 32@0 --> 32
[  216.824490] ee1004 2-0050: read 32@32 --> 32
[  216.828717] ee1004 2-0050: read 32@64 --> 32
[  216.832939] ee1004 2-0050: read 32@96 --> 32
[  216.837314] ee1004 2-0052: read 32@0 --> 32
[  216.841541] ee1004 2-0052: read 32@32 --> 32
[  216.845844] ee1004 2-0052: read 32@64 --> 32
[  216.850016] ee1004 2-0052: read 32@96 --> 32
[  216.854424] ee1004 2-0050: read 32@128 --> 32
[  216.858548] ee1004 2-0050: read 32@160 --> 32
[  216.862726] ee1004 2-0050: read 32@192 --> 32
[  216.866886] ee1004 2-0050: read 32@224 --> 32
[  216.867358] ee1004 2-0050: Selected page 1
[  216.871490] ee1004 2-0050: read 32@0 --> 32
[  216.875690] ee1004 2-0050: read 32@32 --> 32
[  216.879863] ee1004 2-0050: read 32@64 --> 32
[  216.884010] ee1004 2-0050: read 32@96 --> 32
[  216.885058] ee1004 2-0052: Selected page 0
[  216.889209] ee1004 2-0052: read 32@128 --> 32
[  216.893385] ee1004 2-0052: read 32@160 --> 32
[  216.897521] ee1004 2-0052: read 32@192 --> 32
[  216.901702] ee1004 2-0052: read 32@224 --> 32
[  216.902190] ee1004 2-0052: Selected page 1
[  216.906348] ee1004 2-0052: read 32@0 --> 32
[  216.910507] ee1004 2-0052: read 32@32 --> 32
[  216.914681] ee1004 2-0052: read 32@64 --> 32
[  216.918841] ee1004 2-0052: read 32@96 --> 32



On Fri, Apr 19, 2019 at 8:45 PM Dreamcat4 <dreamcat4@xxxxxxxxx> wrote:
>
> Oh sorry. Forgot to include my dmesg -w output (with trident-z kit).
> Crucial kit test result will be in next msg then.
>
> dmesg -w
> [268514.855020] ee1004 2-0050: Currently selected page: 0
> [268514.855022] ee1004 2-0050: 512 byte EE1004-compliant SPD EEPROM, read-only
> [268514.855325] ee1004 2-0052: Currently selected page: 0
> [268514.855327] ee1004 2-0052: 512 byte EE1004-compliant SPD EEPROM, read-only
>
> [268533.107783] ee1004 2-0050: read 32@0 --> 32
> [268533.112049] ee1004 2-0050: read 32@32 --> 32
> [268533.116399] ee1004 2-0050: read 32@64 --> 32
> [268533.120908] ee1004 2-0050: read 32@96 --> 32
> [268533.125561] ee1004 2-0052: read 32@0 --> 32
> [268533.129723] ee1004 2-0052: read 32@32 --> 32
> [268533.134000] ee1004 2-0052: read 32@64 --> 32
> [268533.138231] ee1004 2-0052: read 32@96 --> 32
> [268533.142785] ee1004 2-0050: read 32@128 --> 32
> [268533.147004] ee1004 2-0050: read 32@160 --> 32
> [268533.151337] ee1004 2-0050: read 32@192 --> 32
> [268533.155616] ee1004 2-0050: read 32@224 --> 32
> [268533.156148] ee1004 2-0050: Selected page 1
> [268533.160319] ee1004 2-0050: read 32@0 --> 32
> [268533.164631] ee1004 2-0050: read 32@32 --> 32
> [268533.168870] ee1004 2-0050: read 32@64 --> 32
> [268533.173116] ee1004 2-0050: read 32@96 --> 32
> [268533.174186] ee1004 2-0052: Selected page 0
> [268533.178331] ee1004 2-0052: read 32@128 --> 32
> [268533.182631] ee1004 2-0052: read 32@160 --> 32
> [268533.187121] ee1004 2-0052: read 32@192 --> 32
> [268533.191507] ee1004 2-0052: read 32@224 --> 32
> [268533.192091] ee1004 2-0052: Selected page 1
> [268533.196267] ee1004 2-0052: read 32@0 --> 32
> [268533.200619] ee1004 2-0052: read 32@32 --> 32
> [268533.204900] ee1004 2-0052: read 32@64 --> 32
> [268533.209183] ee1004 2-0052: read 32@96 --> 32
>
> On Fri, Apr 19, 2019 at 8:43 PM Dreamcat4 <dreamcat4@xxxxxxxxx> wrote:
> >
> > Awesome thanks!
> > Just to reminder that of my system specs, i have this ASUS maximus ix
> > apex (z270) motherboard, and both my ram kits, one a crucial ballistix
> > (BLS2K16G4D30AESB), the other a g.skill trident-z (F4-3200C15-16GTZ),
> > neither decoded with this motherboard.
> >
> > Well compiled it, tried just tried now, and with the trident-z kit,
> > and decode-dimms.new (my download of the newer online version of this
> > script), and works!
> >
> > Will need to reboot and double check for the Cruicial kit, which will
> > be coming shortly, in my next message.
> >
> > Here is the output from the trident-z kit
> >
> > $ sudo ./decode-dimms.new
> > # decode-dimms version $Revision$
> >
> > Memory Serial Presence Detect Decoder
> > By Philip Edelbrock, Christian Zuckschwerdt, Burkart Lingner,
> > Jean Delvare, Trent Piepho and others
> >
> >
> > Decoding EEPROM: /sys/bus/i2c/drivers/ee1004/2-0050
> > Guessing DIMM is in                              bank 1
> >
> > ---=== SPD EEPROM Information ===---
> > EEPROM CRC of bytes 0-125                        OK (0x7EAF)
> > # of bytes written to SDRAM EEPROM               384
> > Total number of bytes in EEPROM                  512
> > Fundamental Memory type                          DDR4 SDRAM
> > SPD Revision                                     1.0
> > Module Type                                      UDIMM
> > EEPROM CRC of bytes 128-253                      OK (0xDF74)
> >
> > ---=== Memory Characteristics ===---
> > Maximum module speed                             2132 MHz (PC4-17000)
> > Size                                             16384 MB
> > Banks x Rows x Columns x Bits                    16 x 16 x 10 x 64
> > SDRAM Device Width                               8 bits
> > Ranks                                            2
> > Rank Mix                                         Symmetrical
> > Primary Bus Width                                64 bits
> > AA-RCD-RP-RAS (cycles)                           15-15-15-36
> > Supported CAS Latencies                          16T, 15T, 14T, 13T,
> > 12T, 11T, 10T
> >
> > ---=== Timings at Standard Speeds ===---
> > AA-RCD-RP-RAS (cycles) as DDR4-1866              13-13-13-31
> > AA-RCD-RP-RAS (cycles) as DDR4-1600              11-11-11-27
> >
> > ---=== Timing Parameters ===---
> > Minimum Cycle Time (tCKmin)                      0.938 ns
> > Maximum Cycle Time (tCKmax)                      1.500 ns
> > Minimum CAS Latency Time (tAA)                   13.750 ns
> > Minimum RAS to CAS Delay (tRCD)                  13.750 ns
> > Minimum Row Precharge Delay (tRP)                13.750 ns
> > Minimum Active to Precharge Delay (tRAS)         33.000 ns
> > Minimum Active to Auto-Refresh Delay (tRC)       46.750 ns
> > Minimum Recovery Delay (tRFC1)                   350.000 ns
> > Minimum Recovery Delay (tRFC2)                   260.000 ns
> > Minimum Recovery Delay (tRFC4)                   160.000 ns
> > Minimum Four Activate Window Delay (tFAW)        21.000 ns
> > Minimum Row Active to Row Active Delay (tRRD_S)  3.700 ns
> > Minimum Row Active to Row Active Delay (tRRD_L)  5.300 ns
> > Minimum CAS to CAS Delay (tCCD_L)                5.625 ns
> >
> > ---=== Other Information ===---
> > Package Type                                     Monolithic
> > Maximum Activate Count                           Unlimited
> > Post Package Repair                              One row per bank group
> > Soft PPR                                         Not Supported
> > Module Nominal Voltage                           1.2 V
> > Thermal Sensor                                   No
> >
> > ---=== Physical Characteristics ===---
> > Module Height                                    32 mm
> > Module Thickness                                 2 mm front, 2 mm back
> > Module Reference Card                            B revision 1
> >
> > ---=== Manufacturer Data ===---
> > Module Manufacturer                              G Skill Intl
> > DRAM Manufacturer                                Samsung
> > Part Number                                      F4-3200C15-16GTZ
> >
> >
> > Decoding EEPROM: /sys/bus/i2c/drivers/ee1004/2-0052
> > Guessing DIMM is in                              bank 3
> >
> > ---=== SPD EEPROM Information ===---
> > EEPROM CRC of bytes 0-125                        OK (0x7EAF)
> > # of bytes written to SDRAM EEPROM               384
> > Total number of bytes in EEPROM                  512
> > Fundamental Memory type                          DDR4 SDRAM
> > SPD Revision                                     1.0
> > Module Type                                      UDIMM
> > EEPROM CRC of bytes 128-253                      OK (0xDF74)
> >
> > ---=== Memory Characteristics ===---
> > Maximum module speed                             2132 MHz (PC4-17000)
> > Size                                             16384 MB
> > Banks x Rows x Columns x Bits                    16 x 16 x 10 x 64
> > SDRAM Device Width                               8 bits
> > Ranks                                            2
> > Rank Mix                                         Symmetrical
> > Primary Bus Width                                64 bits
> > AA-RCD-RP-RAS (cycles)                           15-15-15-36
> > Supported CAS Latencies                          16T, 15T, 14T, 13T,
> > 12T, 11T, 10T
> >
> > ---=== Timings at Standard Speeds ===---
> > AA-RCD-RP-RAS (cycles) as DDR4-1866              13-13-13-31
> > AA-RCD-RP-RAS (cycles) as DDR4-1600              11-11-11-27
> >
> > ---=== Timing Parameters ===---
> > Minimum Cycle Time (tCKmin)                      0.938 ns
> > Maximum Cycle Time (tCKmax)                      1.500 ns
> > Minimum CAS Latency Time (tAA)                   13.750 ns
> > Minimum RAS to CAS Delay (tRCD)                  13.750 ns
> > Minimum Row Precharge Delay (tRP)                13.750 ns
> > Minimum Active to Precharge Delay (tRAS)         33.000 ns
> > Minimum Active to Auto-Refresh Delay (tRC)       46.750 ns
> > Minimum Recovery Delay (tRFC1)                   350.000 ns
> > Minimum Recovery Delay (tRFC2)                   260.000 ns
> > Minimum Recovery Delay (tRFC4)                   160.000 ns
> > Minimum Four Activate Window Delay (tFAW)        21.000 ns
> > Minimum Row Active to Row Active Delay (tRRD_S)  3.700 ns
> > Minimum Row Active to Row Active Delay (tRRD_L)  5.300 ns
> > Minimum CAS to CAS Delay (tCCD_L)                5.625 ns
> >
> > ---=== Other Information ===---
> > Package Type                                     Monolithic
> > Maximum Activate Count                           Unlimited
> > Post Package Repair                              One row per bank group
> > Soft PPR                                         Not Supported
> > Module Nominal Voltage                           1.2 V
> > Thermal Sensor                                   No
> >
> > ---=== Physical Characteristics ===---
> > Module Height                                    32 mm
> > Module Thickness                                 2 mm front, 2 mm back
> > Module Reference Card                            B revision 1
> >
> > ---=== Manufacturer Data ===---
> > Module Manufacturer                              G Skill Intl
> > DRAM Manufacturer                                Samsung
> > Part Number                                      F4-3200C15-16GTZ
> >
> >
> > Number of SDRAM DIMMs detected and decoded: 2
> > [id:~] $
> >
> >
> > A quick recap of what Jean has changed in the ee1004.c
> >
> > $ diff ee1004.c foo.c
> > 59a60,76
> > > static int ee1004_get_current_page(void)
> > > {
> > >     int err;
> > >
> > >     err = i2c_smbus_read_byte(ee1004_set_page[0]);
> > >     if (err == -ENXIO) {
> > >         /* Nack means page 1 is selected */
> > >         return 1;
> > >     } else if (err < 0) {
> > >         /* Anything else is a real error, bail out */
> > >         return err;
> > >     } else {
> > >         /* Ack means page 0 is selected, returned value meaningless */
> > >         return 0;
> > >     }
> > > }
> > >
> > 108a126,135
> > >             if (status == -ENXIO) {
> > >                 /*
> > >                  * Don't give up just yet. Some memory
> > >                  * modules will select the page but not
> > >                  * ack the command. Check which page is
> > >                  * selected now.
> > >                  */
> > >                 if (ee1004_get_current_page() == page)
> > >                     status = 0;
> > >             }
> > 193,198c220,221
> > <     err = i2c_smbus_read_byte(ee1004_set_page[0]);
> > <     if (err == -ENXIO) {
> > <         /* Nack means page 1 is selected */
> > <         ee1004_current_page = 1;
> > <     } else if (err < 0) {
> > <         /* Anything else is a real error, bail out */
> > ---
> > >     err = ee1004_get_current_page();
> > >     if (err < 0)
> > 200,203c223
> > <     } else {
> > <         /* Ack means page 0 is selected, returned value meaningless */
> > <         ee1004_current_page = 0;
> > <     }
> > ---
> > >     ee1004_current_page = err;
> >
> >
> >
> >
> > On Fri, Apr 19, 2019 at 7:39 PM Jean Delvare <jdelvare@xxxxxxx> wrote:
> > >
> > > On Thu, 18 Apr 2019 18:19:46 +0300, Jarkko Nikula wrote:
> > > > Same system. Working set (two DIMMs) is Micron and failing set is
> > > > Crucial. Interestingly decode-dimm was able to parse also Crucial when
> > > > plugged in together with Micron and all of them probed with ee1004 but
> > > > not when there were 2* or 4* Crusial DIMMs alone.
> > >
> > > Dreamcat4, I have put an updated ee1004 driver at:
> > >
> > > http://jdelvare.nerim.net/devel/lm-sensors/drivers/ee1004/
> > >
> > > Please build it and give it a try. It includes a hack which may
> > > workaround the weird behavior of your memory modules.
> > >
> > > You'll still need to instantiate the 2 ee1004 devices manually, as
> > > before. You should be able to read from the eeprom files without error
> > > now, and hopefully decode-dimms will even print sensible values.
> > >
> > > --
> > > Jean Delvare
> > > SUSE L3 Support



[Index of Archives]     [Linux GPIO]     [Linux SPI]     [Linux Hardward Monitoring]     [LM Sensors]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux