[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH 5/8] [xen/pci] Switch over from pci_frontend_* to xen_pci_frontend* functions.
[xen/pcifront] Register pci_frontend_[enable|disable]_[msi|msix] functions. Take advantage of the new registration mechanism. Remove the EXPORT_SYMBOL and alter the four functions to be static. diff --git a/drivers/pci/xen-pcifront.c b/drivers/pci/xen-pcifront.c index cc3b51b..f262b6b 100644 --- a/drivers/pci/xen-pcifront.c +++ b/drivers/pci/xen-pcifront.c @@ -256,8 +256,8 @@ struct pci_ops pcifront_bus_ops = { }; #ifdef CONFIG_PCI_MSI -int pci_frontend_enable_msix(struct pci_dev *dev, - int **vector, int nvec) +static int pci_frontend_enable_msix(struct pci_dev *dev, + int **vector, int nvec) { int err; int i; @@ -304,9 +304,8 @@ int pci_frontend_enable_msix(struct pci_dev *dev, return err; } } -EXPORT_SYMBOL_GPL(pci_frontend_enable_msix); -void pci_frontend_disable_msix(struct pci_dev *dev) +static void pci_frontend_disable_msix(struct pci_dev *dev) { int err; struct xen_pci_op op = { @@ -324,9 +323,8 @@ void pci_frontend_disable_msix(struct pci_dev *dev) if (err) dev_err(&dev->dev, "pci_disable_msix get err %x\n", err); } -EXPORT_SYMBOL_GPL(pci_frontend_disable_msix); -int pci_frontend_enable_msi(struct pci_dev *dev, int **vector) +static int pci_frontend_enable_msi(struct pci_dev *dev, int **vector) { int err; struct xen_pci_op op = { @@ -348,9 +346,8 @@ int pci_frontend_enable_msi(struct pci_dev *dev, int **vector) } return err; } -EXPORT_SYMBOL(pci_frontend_enable_msi); -void pci_frontend_disable_msi(struct pci_dev *dev) +static void pci_frontend_disable_msi(struct pci_dev *dev) { int err; struct xen_pci_op op = { @@ -372,7 +369,24 @@ void pci_frontend_disable_msi(struct pci_dev *dev) /* how can pciback notify us fail? */ printk(KERN_DEBUG "get fake response frombackend \n"); } -EXPORT_SYMBOL_GPL(pci_frontend_disable_msi); + +static void pci_frontend_registrar(int enable) +{ + + struct xen_pci_frontend_ops pci_frontend_ops = { + .enable_msi = pci_frontend_enable_msi, + .disable_msi = pci_frontend_disable_msi, + .enable_msix = pci_frontend_enable_msix, + .disable_msix = pci_frontend_disable_msix, + }; + + if (enable) + xen_pci_frontend = &pci_frontend_ops; + else + xen_pci_frontend = NULL; +}; +#else +static inline void pci_frontend_registrar(int enable) { }; #endif /* CONFIG_PCI_MSI */ /* Claim resources for the PCI frontend as-is, backend won't allow changes */ @@ -1119,12 +1133,15 @@ static int __init pcifront_init(void) if (!xen_domain()) return -ENODEV; + pci_frontend_registrar(1 /* enable */); + return xenbus_register_frontend(&xenbus_pcifront_driver); } static void __exit pcifront_cleanup(void) { xenbus_unregister_driver(&xenbus_pcifront_driver); + pci_frontend_registrar(0 /* disable */); } module_init(pcifront_init); module_exit(pcifront_cleanup); _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |