edu in-tree教育PCI设备
它很容易理解和记录良好,所以我建议你研究它.
它暴露了最小的PCI设备,具有基本IO,中断生成和DMA.
我已经编写了一个最小的Linux内核模块userland测试来使用它:
最小的PCI设备
我的Buildroot包装器已经将QEMU fork与子模块集成,只需克隆和./run.
ARM平台设备TYPE_SYS_BUS_DEVICE
SoC-land烘焙芯片中的大多数器件而不是PCI,这是一个最小的可运行示例:
> QEMU分叉:
>通知内核寄存器和IRQ所在的位置,并匹配QEMU的versatilepb.c中的参数.
> compatible匹配内核模块中的platform_driver.name,并通知内核哪个模块将处理此设备.
>使用-dtb传递给QEMU的固件
带有DTC修改的Linux fork是Buildroot包装器repo的子模块,所以只需克隆和./run -a arm.
树外设备