- 論壇徽章:
- 0
|
static struct pci_device_id PCI9030_pci_ids[]__devinitdata={{0X10B5,0X9030,0X00 ,0X00,0X068000,0,0UL},{0,}};
pci_register_driver(&PCI9030_pci_driver)注冊(cè)失敗,好郁悶啊,不管怎么修改了PCI9030_pci_ids[]數(shù)組的值,都發(fā)現(xiàn)沒有調(diào)用自己寫的驅(qū)動(dòng)里的prob()函數(shù),貌似是PCI層沒有探測(cè)到設(shè)備,我用lspci看到有自己的芯片信息。。。。
急急急
用的是PCI9030芯片,做過相關(guān)芯片的看下到底該給
struct pci_device_id這個(gè)結(jié)構(gòu)體賦值多少
struct pci_device_id {
__u32 vendor, device; /* Vendor and device ID or PCI_ANY_ID*/
__u32 subvendor, subdevice; /* Subsystem ID's or PCI_ANY_ID */
__u32 class, class_mask; /* (class,subclass,prog-if) triplet */
kernel_ulong_t driver_data; /* Data private to the driver */
};
但是該芯片的vendor, device是16位寄存器的啊,class寄存器是24位,也沒看到class_mask對(duì)應(yīng)的寄存器 |
|