[PATCH] rtc: mt6397: Add platform device ID table

Subsystems: arm/mediatek rtc driver, real time clock (rtc) subsystem, the rest

STALE3809d

7 messages, 3 authors, 2016-02-24 · open the first message on its own page

[PATCH] rtc: mt6397: Add platform device ID table

From: Javier Martinez Canillas <hidden>
Date: 2016-02-09 11:08:37

The platform bus_type .match callback attempts to match the platform device
name with an entry on the .id_table if provided and fallbacks to match with
the driver's name if a table is not provided.

Using a platform device ID to match is more explicit, allows the driver to
support more than one device and also the MODULE_DEVICE_TABLE macro can be
used to export the module aliases information instead of the MODULE_ALIAS.

Signed-off-by: Javier Martinez Canillas <redacted>

---

 drivers/rtc/rtc-mt6397.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/drivers/rtc/rtc-mt6397.c b/drivers/rtc/rtc-mt6397.c
index 06a5c52b292f..46533f11f7fc 100644
--- a/drivers/rtc/rtc-mt6397.c
+++ b/drivers/rtc/rtc-mt6397.c
@@ -404,6 +404,12 @@ static const struct of_device_id mt6397_rtc_of_match[] = {
 };
 MODULE_DEVICE_TABLE(of, mt6397_rtc_of_match);
 
+static const struct platform_device_id mt6397_rtc_id[] = {
+	{"mt6397-rtc", 0},
+	{ /* sentinel */ },
+};
+MODULE_DEVICE_TABLE(platform, mt6397_rtc_id);
+
 static struct platform_driver mtk_rtc_driver = {
 	.driver = {
 		.name = "mt6397-rtc",
@@ -412,6 +418,7 @@ static struct platform_driver mtk_rtc_driver = {
 	},
 	.probe	= mtk_rtc_probe,
 	.remove = mtk_rtc_remove,
+	.id_table = mt6397_rtc_id,
 };
 
 module_platform_driver(mtk_rtc_driver);
@@ -419,4 +426,3 @@ module_platform_driver(mtk_rtc_driver);
 MODULE_LICENSE("GPL v2");
 MODULE_AUTHOR("Tianping Fang <tianping.fang@mediatek.com>");
 MODULE_DESCRIPTION("RTC Driver for MediaTek MT6397 PMIC");
-MODULE_ALIAS("platform:mt6397-rtc");
-- 
2.5.0

Re: [PATCH] rtc: mt6397: Add platform device ID table

From: Eddie Huang <eddie.huang@mediatek.com>
Date: 2016-02-15 01:58:24

On Tue, 2016-02-09 at 08:08 -0300, Javier Martinez Canillas wrote:
quoted hunk
The platform bus_type .match callback attempts to match the platform device
name with an entry on the .id_table if provided and fallbacks to match with
the driver's name if a table is not provided.

Using a platform device ID to match is more explicit, allows the driver to
support more than one device and also the MODULE_DEVICE_TABLE macro can be
used to export the module aliases information instead of the MODULE_ALIAS.

Signed-off-by: Javier Martinez Canillas <redacted>

---

 drivers/rtc/rtc-mt6397.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/drivers/rtc/rtc-mt6397.c b/drivers/rtc/rtc-mt6397.c
index 06a5c52b292f..46533f11f7fc 100644
--- a/drivers/rtc/rtc-mt6397.c
+++ b/drivers/rtc/rtc-mt6397.c
@@ -404,6 +404,12 @@ static const struct of_device_id mt6397_rtc_of_match[] = {
 };
 MODULE_DEVICE_TABLE(of, mt6397_rtc_of_match);
 
+static const struct platform_device_id mt6397_rtc_id[] = {
+	{"mt6397-rtc", 0},
+	{ /* sentinel */ },
+};
+MODULE_DEVICE_TABLE(platform, mt6397_rtc_id);
+
 static struct platform_driver mtk_rtc_driver = {
 	.driver = {
 		.name = "mt6397-rtc",
@@ -412,6 +418,7 @@ static struct platform_driver mtk_rtc_driver = {
 	},
 	.probe	= mtk_rtc_probe,
 	.remove = mtk_rtc_remove,
+	.id_table = mt6397_rtc_id,
 };
 
 module_platform_driver(mtk_rtc_driver);
@@ -419,4 +426,3 @@ module_platform_driver(mtk_rtc_driver);
 MODULE_LICENSE("GPL v2");
 MODULE_AUTHOR("Tianping Fang <tianping.fang@mediatek.com>");
 MODULE_DESCRIPTION("RTC Driver for MediaTek MT6397 PMIC");
-MODULE_ALIAS("platform:mt6397-rtc");
This patch looks good to me, but I am wondering, since we tend to use
device tree method to match driver, do we still need support platform
device ID ?

Eddie

Re: [PATCH] rtc: mt6397: Add platform device ID table

From: Javier Martinez Canillas <hidden>
Date: 2016-02-15 14:50:56

Hello Eddie,

On 02/14/2016 10:58 PM, Eddie Huang wrote:

[snip]
quoted
@@ -412,6 +418,7 @@ static struct platform_driver mtk_rtc_driver = {
  	},
  	.probe	= mtk_rtc_probe,
  	.remove = mtk_rtc_remove,
+	.id_table = mt6397_rtc_id,
  };

  module_platform_driver(mtk_rtc_driver);
@@ -419,4 +426,3 @@ module_platform_driver(mtk_rtc_driver);
  MODULE_LICENSE("GPL v2");
  MODULE_AUTHOR("Tianping Fang <tianping.fang@mediatek.com>");
  MODULE_DESCRIPTION("RTC Driver for MediaTek MT6397 PMIC");
-MODULE_ALIAS("platform:mt6397-rtc");
This patch looks good to me, but I am wondering, since we tend to use
device tree method to match driver, do we still need support platform
device ID ?
I'm not familiar with neither this IP block nor the SoC so it is up to
you. I just noticed this issue when reviewing a regulator driver for a
similar PMIC posted by someone from mediatek.

I thought platform device was needed since the driver has a MODULE_ALIAS()
but please let me know what you prefer and I can re-spin the patch and
just remove the MODULE_ALIAS() if that makes more sense for this platform.
  
Eddie
Best regards,
-- 
Javier Martinez Canillas
Open Source Group
Samsung Research America

Re: [PATCH] rtc: mt6397: Add platform device ID table

From: Arnd Bergmann <arnd@arndb.de>
Date: 2016-02-16 11:38:59

On Monday 15 February 2016 11:50:48 Javier Martinez Canillas wrote:
On 02/14/2016 10:58 PM, Eddie Huang wrote:

[snip]
quoted
quoted
@@ -412,6 +418,7 @@ static struct platform_driver mtk_rtc_driver = {
     },
     .probe  = mtk_rtc_probe,
     .remove = mtk_rtc_remove,
+    .id_table = mt6397_rtc_id,
  };

  module_platform_driver(mtk_rtc_driver);
@@ -419,4 +426,3 @@ module_platform_driver(mtk_rtc_driver);
  MODULE_LICENSE("GPL v2");
  MODULE_AUTHOR("Tianping Fang <tianping.fang@mediatek.com>");
  MODULE_DESCRIPTION("RTC Driver for MediaTek MT6397 PMIC");
-MODULE_ALIAS("platform:mt6397-rtc");
This patch looks good to me, but I am wondering, since we tend to use
device tree method to match driver, do we still need support platform
device ID ?
I'm not familiar with neither this IP block nor the SoC so it is up to
you. I just noticed this issue when reviewing a regulator driver for a
similar PMIC posted by someone from mediatek.

I thought platform device was needed since the driver has a MODULE_ALIAS()
but please let me know what you prefer and I can re-spin the patch and
just remove the MODULE_ALIAS() if that makes more sense for this platform.
  
I agree. We can alway add a MODULE_DEVICE_TABLE() if we get multiple
users of this driver on architectures that don't use devicetree yet.

	Arnd

Re: [PATCH] rtc: mt6397: Add platform device ID table

From: Eddie Huang <eddie.huang@mediatek.com>
Date: 2016-02-16 13:19:18

On Tue, 2016-02-16 at 12:37 +0100, Arnd Bergmann wrote:
On Monday 15 February 2016 11:50:48 Javier Martinez Canillas wrote:
quoted
On 02/14/2016 10:58 PM, Eddie Huang wrote:

[snip]
quoted
quoted
@@ -412,6 +418,7 @@ static struct platform_driver mtk_rtc_driver = {
     },
     .probe  = mtk_rtc_probe,
     .remove = mtk_rtc_remove,
+    .id_table = mt6397_rtc_id,
  };

  module_platform_driver(mtk_rtc_driver);
@@ -419,4 +426,3 @@ module_platform_driver(mtk_rtc_driver);
  MODULE_LICENSE("GPL v2");
  MODULE_AUTHOR("Tianping Fang <tianping.fang@mediatek.com>");
  MODULE_DESCRIPTION("RTC Driver for MediaTek MT6397 PMIC");
-MODULE_ALIAS("platform:mt6397-rtc");
This patch looks good to me, but I am wondering, since we tend to use
device tree method to match driver, do we still need support platform
device ID ?
I'm not familiar with neither this IP block nor the SoC so it is up to
you. I just noticed this issue when reviewing a regulator driver for a
similar PMIC posted by someone from mediatek.

I thought platform device was needed since the driver has a MODULE_ALIAS()
but please let me know what you prefer and I can re-spin the patch and
just remove the MODULE_ALIAS() if that makes more sense for this platform.
  
I agree. We can alway add a MODULE_DEVICE_TABLE() if we get multiple
users of this driver on architectures that don't use devicetree yet.
Sure. Thanks the patch to add expandability to this driver.

Acked-by: Eddie Huang <eddie.huang@mediatek.com>

Eddie

Re: [PATCH] rtc: mt6397: Add platform device ID table

From: Arnd Bergmann <arnd@arndb.de>
Date: 2016-02-24 16:57:49

On Tuesday 16 February 2016 21:19:07 Eddie Huang wrote:
On Tue, 2016-02-16 at 12:37 +0100, Arnd Bergmann wrote:
quoted
On Monday 15 February 2016 11:50:48 Javier Martinez Canillas wrote:
quoted
On 02/14/2016 10:58 PM, Eddie Huang wrote:

[snip]
quoted
quoted
@@ -412,6 +418,7 @@ static struct platform_driver mtk_rtc_driver = {
     },
     .probe  = mtk_rtc_probe,
     .remove = mtk_rtc_remove,
+    .id_table = mt6397_rtc_id,
  };

  module_platform_driver(mtk_rtc_driver);
@@ -419,4 +426,3 @@ module_platform_driver(mtk_rtc_driver);
  MODULE_LICENSE("GPL v2");
  MODULE_AUTHOR("Tianping Fang <tianping.fang@mediatek.com>");
  MODULE_DESCRIPTION("RTC Driver for MediaTek MT6397 PMIC");
-MODULE_ALIAS("platform:mt6397-rtc");
This patch looks good to me, but I am wondering, since we tend to use
device tree method to match driver, do we still need support platform
device ID ?
I'm not familiar with neither this IP block nor the SoC so it is up to
you. I just noticed this issue when reviewing a regulator driver for a
similar PMIC posted by someone from mediatek.

I thought platform device was needed since the driver has a MODULE_ALIAS()
but please let me know what you prefer and I can re-spin the patch and
just remove the MODULE_ALIAS() if that makes more sense for this platform.
  
I agree. We can alway add a MODULE_DEVICE_TABLE() if we get multiple
users of this driver on architectures that don't use devicetree yet.
Sure. Thanks the patch to add expandability to this driver.

Acked-by: Eddie Huang <eddie.huang@mediatek.com>
I think we misunderstood one another. I think we can drop both the MODULE_DEVICE_TABLE and the MODULE_ALIAS: there is no need for another
driver ID when it is always probed using DT.

	Arnd

Re: [PATCH] rtc: mt6397: Add platform device ID table

From: Javier Martinez Canillas <hidden>
Date: 2016-02-24 17:02:24

Hello Arnd,

On 02/24/2016 01:56 PM, Arnd Bergmann wrote:
On Tuesday 16 February 2016 21:19:07 Eddie Huang wrote:
quoted
On Tue, 2016-02-16 at 12:37 +0100, Arnd Bergmann wrote:
quoted
On Monday 15 February 2016 11:50:48 Javier Martinez Canillas wrote:
quoted
On 02/14/2016 10:58 PM, Eddie Huang wrote:

[snip]
quoted
quoted
@@ -412,6 +418,7 @@ static struct platform_driver mtk_rtc_driver = {
      },
      .probe  = mtk_rtc_probe,
      .remove = mtk_rtc_remove,
+    .id_table = mt6397_rtc_id,
   };

   module_platform_driver(mtk_rtc_driver);
@@ -419,4 +426,3 @@ module_platform_driver(mtk_rtc_driver);
   MODULE_LICENSE("GPL v2");
   MODULE_AUTHOR("Tianping Fang <tianping.fang@mediatek.com>");
   MODULE_DESCRIPTION("RTC Driver for MediaTek MT6397 PMIC");
-MODULE_ALIAS("platform:mt6397-rtc");
This patch looks good to me, but I am wondering, since we tend to use
device tree method to match driver, do we still need support platform
device ID ?
I'm not familiar with neither this IP block nor the SoC so it is up to
you. I just noticed this issue when reviewing a regulator driver for a
similar PMIC posted by someone from mediatek.

I thought platform device was needed since the driver has a MODULE_ALIAS()
but please let me know what you prefer and I can re-spin the patch and
just remove the MODULE_ALIAS() if that makes more sense for this platform.
I agree. We can alway add a MODULE_DEVICE_TABLE() if we get multiple
users of this driver on architectures that don't use devicetree yet.
Sure. Thanks the patch to add expandability to this driver.

Acked-by: Eddie Huang <eddie.huang@mediatek.com>
I think we misunderstood one another. I think we can drop both the MODULE_DEVICE_TABLE and the MODULE_ALIAS: there is no need for another
driver ID when it is always probed using DT.
That's how I understood but then Eddie said the opposite so I got confused
and was waiting for your clarification. I'll re-spin and remove the alias.
	Arnd
Best regards,
-- 
Javier Martinez Canillas
Open Source Group
Samsung Research America
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help