在运行Linux的单板计算机上,有没有办法读取控制硬件的设备配置寄存器的内容?我认为这将是inw()
.
我正在寻找相当于 U-boot 内存转储 ( md
) 命令的命令,以便在驱动程序调试的上下文中使用。
答案1
如果您知道设备的物理地址,则可以使用 devmem2。
devmem2 <physical address> <size (b/h/w)> [value]
答案2
我不知道你是否可以直接用香草内核来做。
但是编写一个简单的驱动程序,使用 /proc 中的“文件”来导出您想要查看的内存内容应该是相当困难的。
然后您可以使用简单的脚本读取您的“文件”并访问该内存。
答案3
我可能完全错了,如果我错了,请原谅我,但是如果 uboot 的 md 命令只是读取映射到设备寄存器的内存地址并将内容返回给您,那么您不能巧妙地使用这些相同的内存位置吗?的dd if=/dev/mem ...
?
答案4
有一个实用程序叫做PCIEM(https://github.com/billfarrow/pciem)
您可以使用它来读取和写入 PCI 设备。