All of lore.kernel.org
 help / color / mirror / Atom feed
From: Paul Gortmaker <paul.gortmaker@windriver.com>
To: Lee Jones <lee.jones@linaro.org>
Cc: <linux-kernel@vger.kernel.org>,
	Paul Gortmaker <paul.gortmaker@windriver.com>,
	Venu Byravarasu <vbyravarasu@nvidia.com>
Subject: [PATCH 10/18] mfd: tps65090: Make it explicitly non-modular
Date: Sun, 13 Jan 2019 13:36:41 -0500	[thread overview]
Message-ID: <1547404609-14161-11-git-send-email-paul.gortmaker@windriver.com> (raw)
In-Reply-To: <1547404609-14161-1-git-send-email-paul.gortmaker@windriver.com>

The Kconfig currently controlling compilation of this code is:

drivers/mfd/Kconfig:config MFD_TPS65090
drivers/mfd/Kconfig:    bool "TI TPS65090 Power Management chips"

...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.

We explicitly disallow a driver unbind, since that doesn't have a
sensible use case anyway, and it allows us to drop the ".remove"
code for non-modular drivers.

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

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
was (or is now) contained at the top of the file in the comments.

Cc: Lee Jones <lee.jones@linaro.org>
Cc: Venu Byravarasu <vbyravarasu@nvidia.com>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
---
 drivers/mfd/tps65090.c | 30 +++++-------------------------
 1 file changed, 5 insertions(+), 25 deletions(-)

diff --git a/drivers/mfd/tps65090.c b/drivers/mfd/tps65090.c
index f13e4cd06e89..6968df4d7828 100644
--- a/drivers/mfd/tps65090.c
+++ b/drivers/mfd/tps65090.c
@@ -2,7 +2,9 @@
  * Core driver for TI TPS65090 PMIC family
  *
  * Copyright (c) 2012, NVIDIA CORPORATION.  All rights reserved.
-
+ *
+ * Author: Venu Byravarasu <vbyravarasu@nvidia.com>
+ *
  * This program is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
  * version 2, as published by the Free Software Foundation.
@@ -19,7 +21,7 @@
 #include <linux/interrupt.h>
 #include <linux/irq.h>
 #include <linux/kernel.h>
-#include <linux/module.h>
+#include <linux/init.h>
 #include <linux/mutex.h>
 #include <linux/slab.h>
 #include <linux/i2c.h>
@@ -171,7 +173,6 @@ static const struct of_device_id tps65090_of_match[] = {
 	{ .compatible = "ti,tps65090",},
 	{},
 };
-MODULE_DEVICE_TABLE(of, tps65090_of_match);
 #endif
 
 static int tps65090_i2c_probe(struct i2c_client *client,
@@ -236,30 +237,19 @@ static int tps65090_i2c_probe(struct i2c_client *client,
 	return ret;
 }
 
-static int tps65090_i2c_remove(struct i2c_client *client)
-{
-	struct tps65090 *tps65090 = i2c_get_clientdata(client);
-
-	mfd_remove_devices(tps65090->dev);
-	if (client->irq)
-		regmap_del_irq_chip(client->irq, tps65090->irq_data);
-
-	return 0;
-}
 
 static const struct i2c_device_id tps65090_id_table[] = {
 	{ "tps65090", 0 },
 	{ },
 };
-MODULE_DEVICE_TABLE(i2c, tps65090_id_table);
 
 static struct i2c_driver tps65090_driver = {
 	.driver	= {
 		.name	= "tps65090",
+		.suppress_bind_attrs = true,
 		.of_match_table = of_match_ptr(tps65090_of_match),
 	},
 	.probe		= tps65090_i2c_probe,
-	.remove		= tps65090_i2c_remove,
 	.id_table	= tps65090_id_table,
 };
 
@@ -268,13 +258,3 @@ static int __init tps65090_init(void)
 	return i2c_add_driver(&tps65090_driver);
 }
 subsys_initcall(tps65090_init);
-
-static void __exit tps65090_exit(void)
-{
-	i2c_del_driver(&tps65090_driver);
-}
-module_exit(tps65090_exit);
-
-MODULE_DESCRIPTION("TPS65090 core driver");
-MODULE_AUTHOR("Venu Byravarasu <vbyravarasu@nvidia.com>");
-MODULE_LICENSE("GPL v2");
-- 
2.7.4


  parent reply	other threads:[~2019-01-13 20:00 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-01-13 18:36 [PATCH v5 00/18] mfd: demodularization of non-modular drivers Paul Gortmaker
2019-01-13 18:36 ` Paul Gortmaker
2019-01-13 18:36 ` [PATCH 01/18] mfd: aat2870-core: Make it explicitly non-modular Paul Gortmaker
2019-01-13 18:36 ` [PATCH 02/18] mfd: adp5520: " Paul Gortmaker
2019-01-13 18:36 ` [PATCH 03/18] mfd: as3711: " Paul Gortmaker
2019-01-13 18:36 ` [PATCH 04/18] mfd: db8500-prcmu: drop unused MODULE_ tags from non-modular code Paul Gortmaker
2019-01-13 18:36 ` [PATCH 05/18] mfd: htc-i2cpld: Make it explicitly non-modular Paul Gortmaker
2019-01-13 18:36 ` [PATCH 06/18] mfd: max8925-core: drop unused MODULE_ tags from non-modular code Paul Gortmaker
2019-01-13 18:36 ` [PATCH 07/18] mfd: rc5t583: Make it explicitly non-modular Paul Gortmaker
2019-01-13 18:36 ` [PATCH 08/18] mfd: sta2x11: drop unused MODULE_ tags from non-modular code Paul Gortmaker
2019-01-13 18:36 ` [PATCH 09/18] mfd: syscon: Make it explicitly non-modular Paul Gortmaker
2019-01-13 18:36 ` Paul Gortmaker [this message]
2019-01-13 18:36 ` [PATCH 11/18] mfd: tps65910: " Paul Gortmaker
2019-01-13 18:36   ` Paul Gortmaker
2019-01-13 18:36 ` [PATCH 12/18] mfd: tps80031: " Paul Gortmaker
2019-01-13 18:36 ` [PATCH 13/18] mfd: wm831x-spi: " Paul Gortmaker
2019-01-14 11:28   ` Charles Keepax
2019-01-13 18:36 ` [PATCH 14/18] mfd: wm831x-i2c: " Paul Gortmaker
2019-01-13 18:36 ` [PATCH 15/18] mfd: wm831x-core: drop unused module infrastructure from non-modular code Paul Gortmaker
2019-01-13 18:36 ` [PATCH 16/18] mfd: wm8350-i2c: Make it explicitly non-modular Paul Gortmaker
2019-01-13 18:36 ` [PATCH 17/18] mfd: wm8350-core: drop unused module infrastructure from non-modular code Paul Gortmaker
2019-01-13 18:36 ` [PATCH 18/18] mfd: wm8400-core: Make it explicitly non-modular Paul Gortmaker
2019-01-16 13:24 ` [PATCH v5 00/18] mfd: demodularization of non-modular drivers Lee Jones
2019-01-16 13:24   ` Lee Jones
2019-03-06 23:10   ` Pavel Machek
2019-03-06 23:10     ` Pavel Machek
2019-03-07  4:18     ` Paul Gortmaker
2019-03-07  4:18       ` Paul Gortmaker
2019-03-07  8:25       ` Lee Jones
2019-03-07  8:25         ` Lee Jones
2019-03-07  8:35         ` Pavel Machek
2019-03-07  8:35           ` Pavel Machek
2019-03-07 16:11           ` Tony Lindgren
2019-03-07 16:11             ` Tony Lindgren
  -- strict thread matches above, loose matches on Subject: below --
2018-12-17 20:31 [PATCH v4 " Paul Gortmaker
2018-12-17 20:31 ` [PATCH 10/18] mfd: tps65090: Make it explicitly non-modular Paul Gortmaker
2018-12-07 20:10 [PATCH v3 00/18] mfd: demodularization of non-modular drivers Paul Gortmaker
2018-12-07 20:10 ` [PATCH 10/18] mfd: tps65090: Make it explicitly non-modular Paul Gortmaker

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1547404609-14161-11-git-send-email-paul.gortmaker@windriver.com \
    --to=paul.gortmaker@windriver.com \
    --cc=lee.jones@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=vbyravarasu@nvidia.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.