Hi,
I want to obtain private data of my PLX pci device but I don't understand
anything what I do. Starting of my code below please help me.
/**
* define devices our driver supports
*/
static struct pci_device_id pic1711_ids[]={ { PCI_DEVICE(PCI_VENDOR_ID_PLX,
PCI_DEVICE_ID_1711) },{0,}, };
/**
* export pci_device_id structure to user space, allowing hotplug
*/
MODULE_DEVICE_TABLE (pci, pic1711_ids);
/**
* create pci_driver structure,
* and register it in cpci_ea221_driver_init_module,
* unregister in cpci_ea221_driver_exit_module
*/
static struct pci_driver pci1711_driver = {
.name = DRV_NAME,
.id_table = pic1711_ids,
.probe = pci1711_probe,
.remove = __devexit_p(pci1711_remove),
};
/**
* Init module function
*/
static int xeno_pic1711_driver_init_module(void){
static int ret_val;
printk( KERN_DEBUG "Module xenoPci1711_driver init\n" );
ret_val = pci_register_driver(&pci1711_driver);
return ret_val;
}
And I found this code for obtain private data.
struct pci_dev *pcidev;
printk("PCI-1711 DETECT PCI \n");
pcidev=NULL;
pcidev =pci_get_device (PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_1711, pcidev );
if (pcidev==NULL){
printk("PCI-1711 CANNOT BE FOUND \n");
}
else{
printk("PCI-1711 LOCATED \n");
if (pci_enable_device(pcidev)){
printk("PCI-1711 NOT ENABLED \n");
return(-EIO);
}
else{
printk("PCI-1711 ENABLED \n");
}
//PCI_BASE_ADRESS_1711= pci_resource_start(pcidev, 1)&
//PCI_BASE_ADDRESS_MEM_MASK; printk("PCI-1711 DETECT PCI %x
\n",PCI_BASE_ADRESS_1711);
With this code pci_dev used but my code has pci_driver I don't understand
relation between pci_dev and pci_driver.
--
Adil Karaöz
C TECH Yazılım Geliştiricisi
GYTE Bilgisayar Mühendisliği
_______________________________________________
Xenomai-help mailing list
[email protected]
https://mail.gna.org/listinfo/xenomai-help