总结一些setpci的用法
lspci 看某个设备的具体信息:
查看某起始地址处的值:
setpci -s 00:12.0 0.l //访问地址0处,4byte
setpci -s 00:12.0 0.w //访问地址0处,2byte
setpci -s 00:12.0 0.b //访问地址0处,1byte
可以看到和lspci看到的值是一致的。
写某处地址的值:
setpci -s 00:12.0 0.l=0x01010101 //写地址0处,4byte
setpci -s 00:12.0 0.w=0x0101 //写地址0处,2byte
setpci -s 00:12.0 0.b=0x01 //写地址0处,1byte
这里就不设置了,可以自己找些可读写的寄存器试一下。
获取能力寄存器列表和PCI寄存器列表:
setpci --dumpregs
通过名称设置寄存器的值或者能力寄存器的值,尤其是查看能力寄存器的值,是及其方便的。
setpci -s 00:12.0 BASE_ADDRESS_0.l
setpci -s 00:12.0 CAP_MSIX.l
setpci -s 00:12.0 CAP_MSIX+0x4.l