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

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

 



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