Hi all, I am quite newbie about PCIe and Linux Kernel development I have to write a driver for a PCIe chip that can act either as EndPoint or Root Complex device The chip is on a board with an ARM processor and Linux 2.6 I have understood that for a PCIe endpoint the driver model to be used is the normal PCI driver model that uses pci_register_driver() API and pci_driver struct for example as described in linux/Documentation/PCI/pci.txt. A possible example of such type of driver is the e1000e driver in linux/drivers/net is it correct ? My doubts are related to drivers for a Root Complex device. In this case I have understood that the model described in linux/Documentation/PCI/PCIEBUS-HOWTO.txt is to be used and service drivers for the 4 services (AER, HP, PME, VC) are to be written if needed. But is providing only service drivers enough to completely manage a Root Complex device or something else is needed ? Is there a Root Complex driver that anyone can use as example ? sorry for my poor english and thank you very much in advance. Any advice is welcome Stefano -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html