Hi All, I have a query regarding pci_register_driver vs platform_driver_register/platform_driver_probe. I am writing a dcd for a PCI based USB device. Currently, I am registering my device using pci_register_driver as shown below: static const struct pci_device_id pci_ids [] = { { .vendor = MY_VENDOR_ID, .device = MY_DEVICE_ID, .subvendor = PCI_ANY_ID, .subdevice = PCI_ANY_ID, }, { /* end: all zeroes */ } }; MODULE_DEVICE_TABLE (pci, pci_ids); static struct pci_driver my_pci_driver = { .name = (char *) driver_name, .id_table = pci_ids, .probe = my_probe, .remove = my_remove, }; static int __init init (void) { return pci_register_driver (&my_pci_driver); } module_init (init); I am able to successfully registered my device using pci_register_driver and the control is reaching to "my_probe" function as expected while registering the device. Now, my query is: Can I use platform_driver_register/platform_driver_probe instead of pci_register_driver for registering the same device? If yes, then how? Any help would be appreciated. Thanks and Regards, Meetu -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html