EEPROM for hardinfo System Profiler and Benchmark

Please help explain need for EEPROM for hardinfo System Profiler and Benchmark

EEPROM stands for Electrically Erasable Programmable Read Only Memory….

….but AFAIK it resides on a chip somewhere on the mainboard. :face_with_monocle:

So is this statement on hardinfo page just saying that the eeprom it requires is just a reader of this semi-permanent memory needed to ascertain the RAM speed…? :nerd_face:
The module eeprom must be loaded to display info about your currently installed memory. Load with modprobe eeprom and refresh the module screen.
Not sure how to implement modpobe eeprom…? BTW my hardinfo is the Arch gtk2 version as I do not have any AUR packages at present.

https://archlinux.org/packages/community/x86_64/hardinfo/

You can tell I’m confused – help please :anguished:

If you are looking for information about your ram you can use dmidecode. It should be installed i think.

sudo dmidecode --type 17
2 Likes

I know this isn’t the answer maybe you wanted. But eeprom is a kernel module.

https://www.kernel.org/doc/html/latest/misc-devices/eeprom.html

2 Likes

Hey thanks for the type 17 command – did not know that one. Thought it was uppercase G or video? Anyway here is the output from the first bank – second bank is the same. As you can see RAM Speed is 1333 MT per second as is the second bank.

Please correct me if I am geeky :nerd_face: wrong but think we should add the two banks together to give an effective RAM speed of 2666 MT/s. (megatransfers per second - 1 MT/s is one million transfers per second.)

[anglo@anglo-latitudee6420 ~]$ sudo dmidecode --type 17

[sudo] password for anglo:

# dmidecode 3.3

Getting SMBIOS data from sysfs.

SMBIOS 2.6 present.

Handle 0x0042, DMI type 17, 28 bytes

Memory Device

Array Handle: 0x0041

Error Information Handle: Not Provided

Total Width: 64 bits

Data Width: 64 bits

Size: 4 GB

Form Factor: SODIMM

Set: None

Locator: ChannelA-DIMM0

Bank Locator: BANK 0

Type: DDR3

Type Detail: Synchronous

Speed: 1333 MT/s

Manufacturer: Samsung

Serial Number: 624ACBEB

Asset Tag: 9876543210

Part Number: M471B5273DH0-CH9

Rank: 2

Okay correct – but I am still learning and may get there one day. :face_with_monocle:

This terminal command also gives the same output - sudo dmidecode -t memory

CPU-Z in Windows is what we need but hardinfo System Profiler and Benchmark needs EEPROM to get that function.

It would seem that Stackexchange got close…

…but need to understand the answer or how to load the eeprom module. Your second link is the answer but beyond my understanding and Arch knowledge – think add eeprom module to the installed kernel…. :cold_sweat:

Thanks again Rick :slightly_smiling_face:

Not sure what you are trying to do.

sudo dmidecode -t memory | grep -i speed

Trying to get hardinfo System Profiler and Benchmark fully functional.
See right hand window in pictures above…
It says “Please load the eeprom module to obtain information about memory SPD
Thanks

Like this? Works for me. What are you trying to run this on?

Edit: This is on EOS!

Screenshot_20220125_113833

Okay i see it’s in the list down lower.

Edit: Mine showed the same so i tried this and then the message is gone and it shows nothing for serial presence detection.

sudo modprobe eeprom 

No…! Scroll down Left Column to Memory SPD.
Thanks
Edit - sorry did not refresh - will try the command :slightly_smiling_face:

I did read my next post. It’s same as yours but i loaded eeprom then it shows nothing for that because my system is newer so it probably won’t show that?

1 Like

You fixed it :1st_place_medal:

Running the command did not show any result as such but it obviously fixed the software as you can see -

Hardinfo-03

NOTE: You have to click the refresh tab - top left for it to display properly. :wink:
Hope it works for you - it should do unless soldered to board…
Thanks so much :smiley:

For those following this topic wondering – like me – what SPD memory speed is for…?

Go here and wish you had not asked… Enjoy :upside_down_face: :slightly_smiling_face:

It doesn’t show on my system even if i refresh it.

Ah well - we tried…! Thanks again for getting it to work on my system :clap:

Apparently gamers and clocking junkies understand memory SPD timings :nerd_face:

It begs the question - as EndeavourOS is terminal centric - if there is a command to retrieve SPD timings…? :thinking:

I usually don’t trust software for readings like this. If I want to know timings i can just look it up in BIOS.

2 Likes

Hear what you say; but AFAIK the software does not invent timings - it also looks up the values in BIOS.. :nerd_face:
Better still it displays it neatly in GUI with just two clicks - Ooooops :shushing_face: :flushed:
and…

:face_with_monocle: :thinking:

Often incorrectly. The easiest way to be sure would be to look up the timings directly off the stick and compare to what the software is reading.

I don’t see what EndeavourOS being terminal centric has to do with any of this but to answer your question almost anything can be done in Arch linux. Have a read over here:

lm_sensors - ArchWiki (archlinux.org)

Pay attention to this part:

Reading SPD values from memory modules (optional)
To read the SPD timing values from memory modules, install the i2c-tools package. Once installed, load the eeprom kernel module.

# modprobe eeprom
Finally, view memory information with decode-dimms.

Here is partial output from one machine:

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


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

---=== SPD EEPROM Information ===---
EEPROM CRC of bytes 0-116                       OK (0x583F)
# of bytes written to SDRAM EEPROM              176
Total number of bytes in EEPROM                 512
Fundamental Memory type                         DDR3 SDRAM
Module Type                                     UDIMM

---=== Memory Characteristics ===---
Fine time base                                  2.500 ps
Medium time base                                0.125 ns
Maximum module speed                            1066MHz (PC3-8533)
Size                                            2048 MB
Banks x Rows x Columns x Bits                   8 x 14 x 10 x 64
Ranks                                           2
SDRAM Device Width                              8 bits
tCL-tRCD-tRP-tRAS                               7-7-7-33
Supported CAS Latencies (tCL)                   8T, 7T, 6T, 5T

---=== Timing Parameters ===---
Minimum Write Recovery time (tWR)               15.000 ns
Minimum Row Active to Row Active Delay (tRRD)   7.500 ns
Minimum Active to Auto-Refresh Delay (tRC)      49.500 ns
Minimum Recovery Delay (tRFC)                   110.000 ns
Minimum Write to Read CMD Delay (tWTR)          7.500 ns
Minimum Read to Pre-charge CMD Delay (tRTP)     7.500 ns
Minimum Four Activate Window Delay (tFAW)       30.000 ns

---=== Optional Features ===---
Operable voltages                               1.5V
RZQ/6 supported?                                Yes
RZQ/7 supported?                                Yes
DLL-Off Mode supported?                         No
Operating temperature range                     0-85C
Refresh Rate in extended temp range             1X
Auto Self-Refresh?                              Yes
On-Die Thermal Sensor readout?                  No
Partial Array Self-Refresh?                     No
Thermal Sensor Accuracy                         Not implemented
SDRAM Device Type                               Standard Monolithic

---=== Physical Characteristics ===---
Module Height (mm)                              15
Module Thickness (mm)                           1 front, 1 back
Module Width (mm)                               133.5
Module Reference Card                           B

---=== Manufacturer Data ===---
Module Manufacturer                             Invalid
Manufacturing Location Code                     0x02
Part Number                                     OCZ3G1600LV2G     

...
2 Likes
sudo dmidecode | grep -A 15 Memory
2 Likes

I don’t know why you are asking this? EndeavourOS is based on Arch. Yes it’s terminal centric. You can get all the info you need from the Arch Wiki and also using the tools provide such as man pages. You can install different tools which can be used to get this kind of information. You can get this information from your hardware which is more accurate.

1 Like

Great replies - thanks to all :clap: :sunglasses:

Well with your help we got the software to work fine by fixing the one menu item which did not work - now that it works my mind wondered what is memory SPD and what are these “timings” :thinking:
Out of interest I tried to find the terminal command for SPD memory and timings - I failed
As @BONK Jack pointed to Arch page with link you need to install the i2c-tools package to enable command decode-dimms
Thanks to all for the education :clap: