[PATCH 2/2] drivers/irqchip: make irq-renesas-irqc.c explicitly non-modular

From: Paul Gortmaker
Date: Sun Oct 11 2015 - 19:06:29 EST


The Kconfig currently controlling compilation of this code is:

drivers/irqchip/Kconfig:config RENESAS_IRQC
drivers/irqchip/Kconfig: bool

...meaning that it currently is not being built as a module by anyone.

Lets remove the modular code that is essentially orphaned, so that
when reading the driver there is no doubt it is builtin-only.

While at it, since this is core infrastructural code for the platform,
lets prohibit any unbind actions that would have called the .remove
function, if anyone was unwise enough to try that.

Since module_init was not in use by this code, the init ordering
remains unchanged with this commit.

We don't replace module.h with init.h since the file already has that.

Also note that MODULE_DEVICE_TABLE is a no-op for non-modular code.

We also delete the MODULE_LICENSE tag etc. since all that information
is already contained at the top of the file in the comments.

Cc: Magnus Damm <damm+renesas@xxxxxxxxxxxxx>
Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
Cc: Marc Zyngier <marc.zyngier@xxxxxxx>
Signed-off-by: Paul Gortmaker <paul.gortmaker@xxxxxxxxxxxxx>
---
drivers/irqchip/irq-renesas-irqc.c | 30 +-----------------------------
1 file changed, 1 insertion(+), 29 deletions(-)

diff --git a/drivers/irqchip/irq-renesas-irqc.c b/drivers/irqchip/irq-renesas-irqc.c
index 52304b139aa4..a05b1012fce7 100644
--- a/drivers/irqchip/irq-renesas-irqc.c
+++ b/drivers/irqchip/irq-renesas-irqc.c
@@ -28,7 +28,6 @@
#include <linux/irqdomain.h>
#include <linux/err.h>
#include <linux/slab.h>
-#include <linux/module.h>
#include <linux/pm_runtime.h>

#define IRQC_IRQ_MAX 32 /* maximum 32 interrupts per driver instance */
@@ -260,33 +259,16 @@ err0:
return ret;
}

-static int irqc_remove(struct platform_device *pdev)
-{
- struct irqc_priv *p = platform_get_drvdata(pdev);
- int k;
-
- for (k = 0; k < p->number_of_irqs; k++)
- free_irq(p->irq[k].requested_irq, &p->irq[k]);
-
- irq_domain_remove(p->irq_domain);
- iounmap(p->iomem);
- pm_runtime_put(&pdev->dev);
- pm_runtime_disable(&pdev->dev);
- kfree(p);
- return 0;
-}
-
static const struct of_device_id irqc_dt_ids[] = {
{ .compatible = "renesas,irqc", },
{},
};
-MODULE_DEVICE_TABLE(of, irqc_dt_ids);

static struct platform_driver irqc_device_driver = {
.probe = irqc_probe,
- .remove = irqc_remove,
.driver = {
.name = "renesas_irqc",
+ .suppress_bind_attrs = true,
.of_match_table = irqc_dt_ids,
}
};
@@ -296,13 +278,3 @@ static int __init irqc_init(void)
return platform_driver_register(&irqc_device_driver);
}
postcore_initcall(irqc_init);
-
-static void __exit irqc_exit(void)
-{
- platform_driver_unregister(&irqc_device_driver);
-}
-module_exit(irqc_exit);
-
-MODULE_AUTHOR("Magnus Damm");
-MODULE_DESCRIPTION("Renesas IRQC Driver");
-MODULE_LICENSE("GPL v2");
--
2.6.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/