PCI: xilinx: Make explicitly non-modular
authorPaul Gortmaker <paul.gortmaker@windriver.com>
Wed, 24 Aug 2016 20:57:49 +0000 (16:57 -0400)
committerBjorn Helgaas <bhelgaas@google.com>
Wed, 24 Aug 2016 22:16:32 +0000 (17:16 -0500)
This code is not being built as a module by anyone:

  drivers/pci/host/Kconfig:config PCIE_XILINX
  drivers/pci/host/Kconfig:  bool "Xilinx AXI PCIe host bridge support"

Remove uses of MODULE_DESCRIPTION(), MODULE_AUTHOR(), MODULE_LICENSE(),
etc., so that when reading the driver there is no doubt it is builtin-only.
The information is preserved in comments at the top of the file.

Note that for non-modular code, builtin_platform_driver() uses the same
init level priority as module_platform_driver(), so this doesn't change
init ordering.

[bhelgaas: changelog]
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
CC: Michal Simek <michal.simek@xilinx.com>
CC: "Sören Brinkmann" <soren.brinkmann@xilinx.com>
drivers/pci/host/pcie-xilinx.c

index a30e016395575016e7f8230e676217b197345f5d..7b7dbd22bcccfb508b3b4daecf40235ce28d316b 100644 (file)
@@ -18,7 +18,7 @@
 #include <linux/irq.h>
 #include <linux/irqdomain.h>
 #include <linux/kernel.h>
-#include <linux/module.h>
+#include <linux/init.h>
 #include <linux/msi.h>
 #include <linux/of_address.h>
 #include <linux/of_pci.h>
@@ -505,35 +505,6 @@ static irqreturn_t xilinx_pcie_intr_handler(int irq, void *data)
        return IRQ_HANDLED;
 }
 
-/**
- * xilinx_pcie_free_irq_domain - Free IRQ domain
- * @port: PCIe port information
- */
-static void xilinx_pcie_free_irq_domain(struct xilinx_pcie_port *port)
-{
-       int i;
-       u32 irq, num_irqs;
-
-       /* Free IRQ Domain */
-       if (IS_ENABLED(CONFIG_PCI_MSI)) {
-
-               free_pages(port->msi_pages, 0);
-
-               num_irqs = XILINX_NUM_MSI_IRQS;
-       } else {
-               /* INTx */
-               num_irqs = 4;
-       }
-
-       for (i = 0; i < num_irqs; i++) {
-               irq = irq_find_mapping(port->irq_domain, i);
-               if (irq > 0)
-                       irq_dispose_mapping(irq);
-       }
-
-       irq_domain_remove(port->irq_domain);
-}
-
 /**
  * xilinx_pcie_init_irq_domain - Initialize IRQ domain
  * @port: PCIe port information
@@ -724,21 +695,6 @@ error:
        return err;
 }
 
-/**
- * xilinx_pcie_remove - Remove function
- * @pdev: Platform device pointer
- *
- * Return: '0' always
- */
-static int xilinx_pcie_remove(struct platform_device *pdev)
-{
-       struct xilinx_pcie_port *port = platform_get_drvdata(pdev);
-
-       xilinx_pcie_free_irq_domain(port);
-
-       return 0;
-}
-
 static struct of_device_id xilinx_pcie_of_match[] = {
        { .compatible = "xlnx,axi-pcie-host-1.00.a", },
        {}
@@ -751,10 +707,5 @@ static struct platform_driver xilinx_pcie_driver = {
                .suppress_bind_attrs = true,
        },
        .probe = xilinx_pcie_probe,
-       .remove = xilinx_pcie_remove,
 };
-module_platform_driver(xilinx_pcie_driver);
-
-MODULE_AUTHOR("Xilinx Inc");
-MODULE_DESCRIPTION("Xilinx AXI PCIe driver");
-MODULE_LICENSE("GPL v2");
+builtin_platform_driver(xilinx_pcie_driver);