将 PCIe 驱动程序从 Linux 移植到 OracleSolaris

porting PCIe driver from Linux to OracleSolaris

我需要将 PCIe Linux 驱动程序移植到 Oracle Solaris 11.2(以前的 OpenSolaris)。之前驱动是在kernel 2.6.32-36下测试的。

幸运的是,驱动程序的实现方式是一部分 OS/platform 特定(PCI 注册、内存分配等),另一半以 OS 独立的方式编写,即那部分应该相对容易移植。

我的问题是关于 Linux-specific 部分,根据 https://www.kernel.org/doc/Documentation/PCI/pci.txt 中的步骤编写,所以我假设 Solaris 可能有类似的方法? Solaris移植需要注意哪些设备驱动部分在Solaris中完全不同,需要重新实现再移植?

更新 在阅读了一些关于 Solaris 驱动程序模型的资料后,我仍然不明白 STREAMS 框架的目的和适用性,它是字符设备的扩展还是网络设备的扩展,例如。以太网卡?

Solaris 11.2 驱动程序文档是 here

以下是一些可能也有用的链接:

http://docs.oracle.com/cd/E19253-01/817-5789/ http://www.oracle.com/technetwork/systems/articles/write-dev-driver-jsp-140901.html http://www.bolthole.com/solaris/drivers/TIPS.html http://blog.csdn.net/hotsolaris/article/details/1763716