大家好,如果增加了一个新的块设备驱动模块(比如PCIe),编译进内核后,开机的时候不是有注册驱动以及初始化等工作嘛。那么后面如果软件内核要向事务层发送一个命令数据包是通过什么接口发的?是调用驱动里面的接口函数吗?光看驱动代码没有看出内核软件是如何调用驱动接口发送的,能否说一下,最好具体一点,一定给分,多谢了!
------解决方案--------------------
参考arch\x86\pci\direct.c中的pci_conf1_read,pci_conf1_write,这就是最终底层驱动要处理的数据报文的接口函数,然后通过操作io寄存器的方式操作发送pcie的报文。
------解决方案--------------------
软件内核?事务层?我怎么感觉看不明白啊,如果你说的是软件如何调用驱动,那就是通过ioctl了。