- Modèle
- GL702VM
- Processeur
- i7-6700HQ
- Disques
- SSD MX500
- Mémoire
- 16Go DDR4
- Ecran
- 17" / 24" ext full HD
- Système
- Linux Mint 22.1 | Windows 10 (diag )
Je ne m'étends pas sur le problème à résoudre. Beaucoup de choses ont déjà été évoquées dans ce topic : www.forum-des-portables-asus.fr: [Debian / Ubuntu] afficher les infos SPD | Le forum des portables Asus
Voici néanmoins un bref résumé (qui ne dispense pas de la lecture du topic cité)
Je remercie au passage Jean Delvare, développeur linux qui travaille notamment sur le projet lm-sensors >> https://khali.linux-fr.org/devel.html . Je tiens à saluer ici sa disponibilité, son extraordinaire réactivité ainsi que sa maîtrise du sujet.
Mes recherches préalables m'ont permis de comprendre que les infos SPD ( >> Serial presence detect - Wikipedia ) sont accessibles via le SMBus. J'ai donc cherché à identifier celui-ci sur mon système ( debian squeeze on L3C)
Aprés avoir installé deux paquets essentiels : lm-sensors et i2c-tools, j'ai recherché s'il existait un module prenant en charge l'Intel 82801CA/CAM SMBus Controller
Le résultat de la commande sensors-detect ci-dessous a été tronqué pour ne cibler que l'essentiel (le SMBus)
En conséquence, on remarque que le module i2c-i801 est requis pour le SMBus. Le module eeprom est quant à lui indispensable au programme decode-dimms et i2c-dev va nous permettre en particulier de détecter les canaux SMBus. Jusqu'ici tout semble rouler...
[HASHTAG]#Chargement[/HASHTAG] des modules#
#détection des canaux i2c et SMBus
Aucun SMBus n'est détecté^^, ce qui va nous amener au résultat suivant :
Note : je n'emploie pas ici la toute dernière version de decode-dimms, mais le pb n'est pas là.
Si l'on interroge le log du noyau par un dmesg, voici ce que l'on peut lire :
Cela signifie que certains ports sont réservés par le Bios ACPI et empêche le pilote i2c-i801 de les utiliser. Merci à J.Delvare pour m'avoir pointé du doigt ce problème et pour les explications qui ont suivis. La lecture des tables DSDT montre qu'en fait cette réservation est faite pour contrôler un capteur de température par le Bios ACPI via le SMBus.
La solution proposée ci-dessous a été testée avec succès sur deux machines Asus : le L3C et l'eeepc 1001PX.
J'attire votre attention sur le fait qu'il ne s'agit pas d'une solution définitive, que la méthode employée est utilisée ponctuellement pour UNE session durant laquelle vous allez pouvoir accéder aux infos. En effet la réservation des ports du SMbus par le Bios ACPI est probablement liée à l'utilisation d'une sonde de température (vérifié sur mon L3) ou au contrôle d'un ventilateur et il serait donc potentiellement dangereux pour la stabilité de votre système de rendre cette modification permanente en modifiant votre fichier grub.cfg par ex.
C'est pourquoi nous allons nous contenter de passer l'option 'acpi_enforce_resources=lax' au noyau lors du démarrage Il suffira d'appuyer sur une touche après le logo Asus puis de taper 'e' (comme edit) pour ajouter l'option au noyau puis Ctrl+X pour lancer le démarrage. En procédant de cette façon, le système "oubliera" cette option au démarrage suivant et c'est préférable. De toute façon on ne change pas ses barrettes RAM tous les quatre matins, et les infos SPD peuvent être aisément copiées dans un fichier texte au besoin.
Résultat des opérations :
Il y a du nouveau. Le SMBus est maintenant accessible ! ( Next adapter: SMBus I801 adapter at e800 (i2c-0) )
[HASHTAG]#Chargement[/HASHTAG] des modules#
#détection des canaux i2c et SMBus#
Cool. Le SMBus est correctement détecté !
#Accès aux infos SPD#
Notez qu'il peut être intéressant d'afficher les caracteristiques des barrettes côte à côte. Il suffit pour cela d'utiliser l'option --side-by-side
Pour tous commentaires, merci de répondre dans l'autre sujet:
https://www.forum-des-portables-asus.fr/forums/threads/debian-ubuntu-afficher-les-infos-spd.6510/
Voici néanmoins un bref résumé (qui ne dispense pas de la lecture du topic cité)
Dans ce premier message, nous allons essayé de comprendre pourquoi l'accès aux informations est impossible. La solution sera présentée dans un second temps. J'utilise personnellement des distros debian ou dérivés (ubuntu, mint) mais les informations qui suivent sont valables pour d'autres distros basées sur le noyau linux.Les informations SPD sont la "carte d'identité" de vos barrettes RAM. Cela comprend des données allant de la fréquence maxi supportée aux timings des barrettes en passant par la date de fabrication, l'identification du fabricant et j'en passe...Ces informations sont facilement accessibles avec des outils comme SIW ou PCWizard sous windows. C'est une autre histoire sous linux, et en particulier sur les laptops.
Je remercie au passage Jean Delvare, développeur linux qui travaille notamment sur le projet lm-sensors >> https://khali.linux-fr.org/devel.html . Je tiens à saluer ici sa disponibilité, son extraordinaire réactivité ainsi que sa maîtrise du sujet.
Mes recherches préalables m'ont permis de comprendre que les infos SPD ( >> Serial presence detect - Wikipedia ) sont accessibles via le SMBus. J'ai donc cherché à identifier celui-ci sur mon système ( debian squeeze on L3C)
Code:
# lspci | grep -i smbus
00:1f.3 SMBus: Intel Corporation 82801CA/CAM SMBus Controller (rev 02)
Aprés avoir installé deux paquets essentiels : lm-sensors et i2c-tools, j'ai recherché s'il existait un module prenant en charge l'Intel 82801CA/CAM SMBus Controller
Le résultat de la commande sensors-detect ci-dessous a été tronqué pour ne cibler que l'essentiel (le SMBus)
Code:
# sensors-detect
# sensors-detect revision 5818 (2010-01-18 17:22:07 +0100)
# Board: ASUSTeK Computer INC. P4_L3C
This program will help you determine which kernel modules you need
to load to use lm_sensors most effectively. It is generally safe
and recommended to accept the default answers to all questions,
unless you know what you're doing.
.../...
Lastly, we can probe the I2C/SMBus adapters for connected hardware
monitoring devices. This is the most risky part, and while it works
reasonably well on most systems, it has been reported to cause trouble
on some systems.
Do you want to probe the I2C/SMBus adapters now? (YES/no): y
Using driver `i2c-i801' for device 0000:00:1f.3: Intel 82801CA/CAM ICH3
Next adapter: (i2c-0)
Do you want to scan it? (YES/no/selectively): y
Client found at address 0x50
Probing for `Analog Devices ADM1033'... No
Probing for `Analog Devices ADM1034'... No
Probing for `SPD EEPROM'... No
Probing for `EDID EEPROM'... Yes
(confidence 8, not a hardware monitoring chip)
Client found at address 0x51
Probing for `Analog Devices ADM1033'... No
Probing for `Analog Devices ADM1034'... No
Probing for `SPD EEPROM'... No
Client found at address 0x52
Probing for `Analog Devices ADM1033'... No
Probing for `Analog Devices ADM1034'... No
Probing for `SPD EEPROM'... No
Client found at address 0x53
Probing for `Analog Devices ADM1033'... No
Probing for `Analog Devices ADM1034'... No
Probing for `SPD EEPROM'... No
Sorry, no sensors were detected.
Either your system has no sensors, or they are not supported, or
they are connected to an I2C or SMBus adapter that is not
supported. If you find out what chips are on your board, check
https://www.lm-sensors.org/wiki/Devices for driver status.
[HASHTAG]#Chargement[/HASHTAG] des modules#
Code:
# modprobe -a eeprom i2c-i801 i2c-dev
#détection des canaux i2c et SMBus
Code:
# i2cdetect -l
i2c-0 i2c I2C adapter
Code:
# i2cdetect 0
WARNING! This program can confuse your I2C bus, cause data loss and worse!
I will probe file /dev/i2c-0.
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: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- 37 -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: 50 51 52 53 54 55 56 57 -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
Code:
# decode-dimms
# decode-dimms version 5733 (2009-06-09 13:13:41 +0200)
Memory Serial Presence Detect Decoder
By Philip Edelbrock, Christian Zuckschwerdt, Burkart Lingner,
Jean Delvare, Trent Piepho and others
Number of SDRAM DIMMs detected and decoded: 0
Si l'on interroge le log du noyau par un dmesg, voici ce que l'on peut lire :
Code:
$ dmesg | grep -i ACPI
[13211.401036] ACPI: I/O resource 0000:00:1f.3 [0xe800-0xe81f] conflicts with ACPI region SMB0 [0xe800-0xe80f]
[13211.401049] ACPI: If an ACPI driver is available for this device, you should use it instead of the native driver
La solution proposée ci-dessous a été testée avec succès sur deux machines Asus : le L3C et l'eeepc 1001PX.
J'attire votre attention sur le fait qu'il ne s'agit pas d'une solution définitive, que la méthode employée est utilisée ponctuellement pour UNE session durant laquelle vous allez pouvoir accéder aux infos. En effet la réservation des ports du SMbus par le Bios ACPI est probablement liée à l'utilisation d'une sonde de température (vérifié sur mon L3) ou au contrôle d'un ventilateur et il serait donc potentiellement dangereux pour la stabilité de votre système de rendre cette modification permanente en modifiant votre fichier grub.cfg par ex.
C'est pourquoi nous allons nous contenter de passer l'option 'acpi_enforce_resources=lax' au noyau lors du démarrage Il suffira d'appuyer sur une touche après le logo Asus puis de taper 'e' (comme edit) pour ajouter l'option au noyau puis Ctrl+X pour lancer le démarrage. En procédant de cette façon, le système "oubliera" cette option au démarrage suivant et c'est préférable. De toute façon on ne change pas ses barrettes RAM tous les quatre matins, et les infos SPD peuvent être aisément copiées dans un fichier texte au besoin.
Résultat des opérations :
Code:
# sensors-detect
# sensors-detect revision 5818 (2010-01-18 17:22:07 +0100)
# Board: ASUSTeK Computer INC. P4_L3C
This program will help you determine which kernel modules you need
to load to use lm_sensors most effectively. It is generally safe
and recommended to accept the default answers to all questions,
unless you know what you're doing.
Some south bridges, CPUs or memory controllers contain embedded sensors.
.../...
Lastly, we can probe the I2C/SMBus adapters for connected hardware
monitoring devices. This is the most risky part, and while it works
reasonably well on most systems, it has been reported to cause trouble
on some systems.
Do you want to probe the I2C/SMBus adapters now? (YES/no): y
Using driver `i2c-i801' for device 0000:00:1f.3: Intel 82801CA/CAM ICH3
Module i2c-dev loaded successfully.
Next adapter: SMBus I801 adapter at e800 (i2c-0)
Do you want to scan it? (YES/no/selectively): y
Client found at address 0x4c
Handled by driver `lm90' (already loaded), chip type `max6657'
Client found at address 0x50
Probing for `Analog Devices ADM1033'... No
Probing for `Analog Devices ADM1034'... No
Probing for `SPD EEPROM'... Yes
(confidence 8, not a hardware monitoring chip)
Probing for `EDID EEPROM'... No
Client found at address 0x51
Probing for `Analog Devices ADM1033'... No
Probing for `Analog Devices ADM1034'... No
Probing for `SPD EEPROM'... Yes
(confidence 8, not a hardware monitoring chip)
Next adapter: (i2c-1)
Do you want to scan it? (YES/no/selectively): n
Now follows a summary of the probes I have just done.
Just press ENTER to continue:
Driver `lm90':
* Bus `SMBus I801 adapter at e800'
Busdriver `i2c_i801', I2C address 0x4c
Chip `max6657' (confidence: 6)
To load everything that is needed, add this to /etc/modules:
#----cut here----
# Chip drivers
lm90
#----cut here----
If you have some drivers built into your kernel, the list above will
contain too many modules. Skip the appropriate ones!
Do you want to add these lines automatically to /etc/modules? (yes/NO)y
Successful!
Monitoring programs won't work until the needed modules are
loaded. You may want to run '/etc/init.d/module-init-tools start'
to load them.
Unloading i2c-dev... OK
[HASHTAG]#Chargement[/HASHTAG] des modules#
Code:
# modprobe -a i2c-dev eeprom
Code:
# i2cdetect -l
i2c-0 smbus SMBus I801 adapter at e800 SMBus adapter
i2c-1 i2c I2C adapter
Cool. Le SMBus est correctement détecté !

Code:
# i2cdetect 0
WARNING! This program can confuse your I2C bus, cause data loss and worse!
I will probe file /dev/i2c-0.
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: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: 30 31 -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- UU -- -- --
50: 50 51 -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- 69 -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
Code:
# decode-dimms
# decode-dimms version 5733 (2009-06-09 13:13:41 +0200)
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 Checksum of bytes 0-62 OK (0x18)
# of bytes written to SDRAM EEPROM 128
Total number of bytes in EEPROM 256
Fundamental Memory type DDR SDRAM
SPD Revision 1.0
---=== Memory Characteristics ===---
Maximum module speed 266MHz (PC2100)
Size 512 MB
Voltage Interface Level SSTL 2.5V
tCL-tRCD-tRP-tRAS 2.5-3-3-6
Supported CAS Latencies 2.5T, 2T
Supported CS Latencies 0
Supported WE Latencies 1
Minimum Cycle Time 7.5 ns at CAS 2.5
10 ns at CAS 2
Maximum Access Time 0.75 ns at CAS 2.5
0.75 ns at CAS 2
Module Height 1.125" to 1.25"
---=== Manufacturing Information ===---
Manufacturer Micron Technology
Manufacturing Location Code 0x01
Part Number 16VDDF6464HG-265G2
Revision Code 0x0200
Manufacturing Date 2004-W34
Assembly Serial Number 0x9901AB16
Decoding EEPROM: /sys/bus/i2c/drivers/eeprom/0-0051
Guessing DIMM is in bank 2
---=== SPD EEPROM Information ===---
EEPROM Checksum of bytes 0-62 OK (0x18)
# of bytes written to SDRAM EEPROM 128
Total number of bytes in EEPROM 256
Fundamental Memory type DDR SDRAM
SPD Revision 1.0
---=== Memory Characteristics ===---
Maximum module speed 266MHz (PC2100)
Size 512 MB
Voltage Interface Level SSTL 2.5V
tCL-tRCD-tRP-tRAS 2.5-3-3-6
Supported CAS Latencies 2.5T, 2T
Supported CS Latencies 0
Supported WE Latencies 1
Minimum Cycle Time 7.5 ns at CAS 2.5
10 ns at CAS 2
Maximum Access Time 0.75 ns at CAS 2.5
0.75 ns at CAS 2
Module Height 1.125" to 1.25"
---=== Manufacturing Information ===---
Manufacturer Micron Technology
Manufacturing Location Code 0x01
Part Number 16VDDF6464HG-265G2
Revision Code 0x0200
Manufacturing Date 2004-W34
Assembly Serial Number 0x98017FC4
Number of SDRAM DIMMs detected and decoded: 2
Code:
# decode-dimms --side-by-side
Pour tous commentaires, merci de répondre dans l'autre sujet:
https://www.forum-des-portables-asus.fr/forums/threads/debian-ubuntu-afficher-les-infos-spd.6510/
Pièces jointes
-
22.3 KB Affichages: 2,976
Dernière édition par un modérateur:
Ne suivez pas ce lien ou vous tomberez dans un trou noir et vous serez banni du site.
