linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RESEND PATCH] mfd: max77686: Use module_i2c_driver() instead of subsys initcall
@ 2016-04-04 22:46 Javier Martinez Canillas
  2016-04-05  1:47 ` Krzysztof Kozlowski
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Javier Martinez Canillas @ 2016-04-04 22:46 UTC (permalink / raw)
  To: linux-kernel
  Cc: linux-samsung-soc, Andi Shyti, Paul Gortmaker, Lee Jones,
	Krzysztof Kozlowski, Laxman Dewangan, Javier Martinez Canillas

The driver's init and exit function don't do anything besides adding and
deleting the I2C driver so the module_i2c_driver() macro could be used.

Currently is not being used because the driver is initialized at subsys
initcall level, claiming that this is done to allow consumers devices to
use the resources provided by this driver. But dependencies are in DT so
manual ordering of init calls is not necessary any more.

Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>

---

Changes in the resend:
- Change commit message to make clear that dependencies are in DT instead
  giving the impression that it was wishful thinking (Krzysztof Kozlowski).

Hello,

This patch was first sent as a part of a bigger series to allow the
max77686 MFD driver to be built as a module [0]. The other patches
were already picked but $SUBJECT wasn't, probably because there was
a dependency with a patch on the exynos thermal driver [1].

But the exynos thermal patches also landed in mainline so I think it
should be safe to merged $SUBJECT now.

[0]: https://lkml.org/lkml/2016/2/11/857
[1]: https://lkml.org/lkml/2016/2/18/592

Best regards,
Javier

 drivers/mfd/max77686.c | 13 +------------
 1 file changed, 1 insertion(+), 12 deletions(-)

diff --git a/drivers/mfd/max77686.c b/drivers/mfd/max77686.c
index c1aff46e89d9..66cc9bebb7ba 100644
--- a/drivers/mfd/max77686.c
+++ b/drivers/mfd/max77686.c
@@ -321,18 +321,7 @@ static struct i2c_driver max77686_i2c_driver = {
 	.id_table = max77686_i2c_id,
 };
 
-static int __init max77686_i2c_init(void)
-{
-	return i2c_add_driver(&max77686_i2c_driver);
-}
-/* init early so consumer devices can complete system boot */
-subsys_initcall(max77686_i2c_init);
-
-static void __exit max77686_i2c_exit(void)
-{
-	i2c_del_driver(&max77686_i2c_driver);
-}
-module_exit(max77686_i2c_exit);
+module_i2c_driver(max77686_i2c_driver);
 
 MODULE_DESCRIPTION("MAXIM 77686/802 multi-function core driver");
 MODULE_AUTHOR("Chiwoong Byun <woong.byun@samsung.com>");
-- 
2.5.0

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [RESEND PATCH] mfd: max77686: Use module_i2c_driver() instead of subsys initcall
  2016-04-04 22:46 [RESEND PATCH] mfd: max77686: Use module_i2c_driver() instead of subsys initcall Javier Martinez Canillas
@ 2016-04-05  1:47 ` Krzysztof Kozlowski
  2016-04-05  1:57 ` Andi Shyti
  2016-04-11 11:51 ` Lee Jones
  2 siblings, 0 replies; 4+ messages in thread
From: Krzysztof Kozlowski @ 2016-04-05  1:47 UTC (permalink / raw)
  To: Javier Martinez Canillas, linux-kernel
  Cc: linux-samsung-soc, Andi Shyti, Paul Gortmaker, Lee Jones,
	Laxman Dewangan

On 05.04.2016 07:46, Javier Martinez Canillas wrote:
> The driver's init and exit function don't do anything besides adding and
> deleting the I2C driver so the module_i2c_driver() macro could be used.
> 
> Currently is not being used because the driver is initialized at subsys
> initcall level, claiming that this is done to allow consumers devices to
> use the resources provided by this driver. But dependencies are in DT so
> manual ordering of init calls is not necessary any more.
> 
> Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>
> 
> ---
> 
> Changes in the resend:
> - Change commit message to make clear that dependencies are in DT instead
>   giving the impression that it was wishful thinking (Krzysztof Kozlowski).
> 
> Hello,
> 
> This patch was first sent as a part of a bigger series to allow the
> max77686 MFD driver to be built as a module [0]. The other patches
> were already picked but $SUBJECT wasn't, probably because there was
> a dependency with a patch on the exynos thermal driver [1].
> 
> But the exynos thermal patches also landed in mainline so I think it
> should be safe to merged $SUBJECT now.
> 
> [0]: https://lkml.org/lkml/2016/2/11/857
> [1]: https://lkml.org/lkml/2016/2/18/592
> 
> Best regards,
> Javier
> 
>  drivers/mfd/max77686.c | 13 +------------
>  1 file changed, 1 insertion(+), 12 deletions(-)
> 

Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>



Best regards,

Krzysztof

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [RESEND PATCH] mfd: max77686: Use module_i2c_driver() instead of subsys initcall
  2016-04-04 22:46 [RESEND PATCH] mfd: max77686: Use module_i2c_driver() instead of subsys initcall Javier Martinez Canillas
  2016-04-05  1:47 ` Krzysztof Kozlowski
@ 2016-04-05  1:57 ` Andi Shyti
  2016-04-11 11:51 ` Lee Jones
  2 siblings, 0 replies; 4+ messages in thread
From: Andi Shyti @ 2016-04-05  1:57 UTC (permalink / raw)
  To: Javier Martinez Canillas
  Cc: linux-kernel, linux-samsung-soc, Paul Gortmaker, Lee Jones,
	Krzysztof Kozlowski, Laxman Dewangan

Hi Javier,

> The driver's init and exit function don't do anything besides adding and
> deleting the I2C driver so the module_i2c_driver() macro could be used.
> 
> Currently is not being used because the driver is initialized at subsys
> initcall level, claiming that this is done to allow consumers devices to
> use the resources provided by this driver. But dependencies are in DT so
> manual ordering of init calls is not necessary any more.
> 
> Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>

Reviewed-by: Andi Shyti <andi.shyti@samsung.com>

Thanks,
Andi

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [RESEND PATCH] mfd: max77686: Use module_i2c_driver() instead of subsys initcall
  2016-04-04 22:46 [RESEND PATCH] mfd: max77686: Use module_i2c_driver() instead of subsys initcall Javier Martinez Canillas
  2016-04-05  1:47 ` Krzysztof Kozlowski
  2016-04-05  1:57 ` Andi Shyti
@ 2016-04-11 11:51 ` Lee Jones
  2 siblings, 0 replies; 4+ messages in thread
From: Lee Jones @ 2016-04-11 11:51 UTC (permalink / raw)
  To: Javier Martinez Canillas
  Cc: linux-kernel, linux-samsung-soc, Andi Shyti, Paul Gortmaker,
	Krzysztof Kozlowski, Laxman Dewangan

On Mon, 04 Apr 2016, Javier Martinez Canillas wrote:

> The driver's init and exit function don't do anything besides adding and
> deleting the I2C driver so the module_i2c_driver() macro could be used.
> 
> Currently is not being used because the driver is initialized at subsys
> initcall level, claiming that this is done to allow consumers devices to
> use the resources provided by this driver. But dependencies are in DT so
> manual ordering of init calls is not necessary any more.
> 
> Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>
> 
> ---
> 
> Changes in the resend:
> - Change commit message to make clear that dependencies are in DT instead
>   giving the impression that it was wishful thinking (Krzysztof Kozlowski).
> 
> Hello,
> 
> This patch was first sent as a part of a bigger series to allow the
> max77686 MFD driver to be built as a module [0]. The other patches
> were already picked but $SUBJECT wasn't, probably because there was
> a dependency with a patch on the exynos thermal driver [1].
> 
> But the exynos thermal patches also landed in mainline so I think it
> should be safe to merged $SUBJECT now.
> 
> [0]: https://lkml.org/lkml/2016/2/11/857
> [1]: https://lkml.org/lkml/2016/2/18/592
> 
> Best regards,
> Javier
> 
>  drivers/mfd/max77686.c | 13 +------------
>  1 file changed, 1 insertion(+), 12 deletions(-)

Applied, thanks.

> diff --git a/drivers/mfd/max77686.c b/drivers/mfd/max77686.c
> index c1aff46e89d9..66cc9bebb7ba 100644
> --- a/drivers/mfd/max77686.c
> +++ b/drivers/mfd/max77686.c
> @@ -321,18 +321,7 @@ static struct i2c_driver max77686_i2c_driver = {
>  	.id_table = max77686_i2c_id,
>  };
>  
> -static int __init max77686_i2c_init(void)
> -{
> -	return i2c_add_driver(&max77686_i2c_driver);
> -}
> -/* init early so consumer devices can complete system boot */
> -subsys_initcall(max77686_i2c_init);
> -
> -static void __exit max77686_i2c_exit(void)
> -{
> -	i2c_del_driver(&max77686_i2c_driver);
> -}
> -module_exit(max77686_i2c_exit);
> +module_i2c_driver(max77686_i2c_driver);
>  
>  MODULE_DESCRIPTION("MAXIM 77686/802 multi-function core driver");
>  MODULE_AUTHOR("Chiwoong Byun <woong.byun@samsung.com>");

-- 
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2016-04-11 11:51 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-04-04 22:46 [RESEND PATCH] mfd: max77686: Use module_i2c_driver() instead of subsys initcall Javier Martinez Canillas
2016-04-05  1:47 ` Krzysztof Kozlowski
2016-04-05  1:57 ` Andi Shyti
2016-04-11 11:51 ` Lee Jones

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).