> > + > > +static struct pci_driver hyperv_pci_driver = { > > + .name = KBUILD_MODNAME, > > + .id_table = hyperv_pci_tbl, > > + .probe = hyperv_pci_probe, > > + .remove = hyperv_pci_remove, > > +}; > > The PCI code doesn't do anything. Do you need this for gen1 to work > corretly. If so, there should at least be a short comment. Why don't > you > call hyperv_setup_gen1() in the PCI probe function? > > Thank you very much Thomas for the review. Yes, this is needed for gen1 to work. Regarding why hyperv_setup_gen1() is not called from PCI probe, this is to maintain consistency with hyperv_fb and also hv_driver probe method is called irrespective of gen1 or gen2. I will add a comment explaining this. Deepak