I have an PCI Express ATCA card with an FPGA. I have a device driver to communicate with the board. Now we are trying to implement hot-plug using the PCIe Port Bus Driver Model. Our driver has been modified in order to be compliant to a service driver as described in the HowTo Documentation. Using the file pcieport_if.h there were some structs that become obsolete namely the pci_port_service_id. 1) How can we provide the board ids with the pci_port_service_id struct removed? I'm using the old method struct pci_device_id 2) How can we point to the old pci_dev pointer in our functions once the arguments for probe(), remove() now are pcie_device struct? I'm using the port item in the struct pcie_device. 3) After changes at insmod time my board appears in the /proc/devices but my devices and sub-devices never appear in the /dev directory making me wonder that something is missing in my class_create() and device_create() function... 4) Are functions resume() and suspend() relevant for the hot-plug process? At the moment these functions only return -ENOSYS My Purpose: At the moment i'm only interest in modifying the Linux Device Driver for the board using the PCIe HotPlug Port Bus Driver Model (porting it to a Service Driver), detect the board and create the devices and sub-devices in the /dev directory as it used to do. I think there is only something missing but I dont know what. NOTE: Some aditional information: My _init() and _exit() functions are calling pcie_port_service_register() and pcie_port_service_unregister(), respectively. Thanks in Advance, Paulo (University PhD Student) -- 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