Pcie Linux HotPlug Driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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




[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux