Pour le contexte, programmer un pilote pour interagir avec un noyau IP FPGA sur un Linux embarqué (Yocto: krogoth) sur une carte Xilinx.
À des fins de débogage, je voudrais lire des adresses mémoire spécifiques de la mémoire physique./dev/mem semble prometteur. Je voulais demander comment je peux lire la valeur d'une adresse de mémoire physique spécifique à partir de la ligne de commande. J'espérais quelque chose dans le sens de cat /dev/mem 0x2000000
pour lire l'octet à 0x2000000.
Habituellement, vous devriez déjà avoir installé l'outil devmem dans votre image Linux:
$ devmem 0x2000000
Si vous ne le faites pas cependant, vous pouvez aller dans le menu Busybox et le modifier pour vous assurer qu'il est compilé et installé:
$ bitbake busybox -c menuconfig
(recherche devmem)
Hexdump est souvent installé dans les systèmes embarqués. Ensuite, vous pouvez faire
hexdump -C --skip 0x2000000 /dev/mem | head
afin de lire plus d'un seul mot et de le voir décodé de différentes manières. (Le hexdump de busybox est un peu plus limité, mais toujours très utile.)