Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1330092 > unrolled thread

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

Started byJavier Martinez Canillas <javier@osg.samsung.com>
First post2016-02-09 12:10 +0100
Last post2016-02-16 14:20 +0100
Articles 5 — 3 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH] rtc: mt6397: Add platform device ID table Javier Martinez Canillas <javier@osg.samsung.com> - 2016-02-09 12:10 +0100
    Re: [PATCH] rtc: mt6397: Add platform device ID table Eddie Huang <eddie.huang@mediatek.com> - 2016-02-15 03:00 +0100
      Re: [PATCH] rtc: mt6397: Add platform device ID table Javier Martinez Canillas <javier@osg.samsung.com> - 2016-02-15 16:00 +0100
        Re: [PATCH] rtc: mt6397: Add platform device ID table Arnd Bergmann <arnd@arndb.de> - 2016-02-16 12:40 +0100
          Re: [PATCH] rtc: mt6397: Add platform device ID table Eddie Huang <eddie.huang@mediatek.com> - 2016-02-16 14:20 +0100

#1330092 — [PATCH] rtc: mt6397: Add platform device ID table

FromJavier Martinez Canillas <javier@osg.samsung.com>
Date2016-02-09 12:10 +0100
Subject[PATCH] rtc: mt6397: Add platform device ID table
Message-ID<r0elc-3c6-11@gated-at.bofh.it>
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 <javier@osg.samsung.com>

---

 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

[toc] | [next] | [standalone]


#1334100

FromEddie Huang <eddie.huang@mediatek.com>
Date2016-02-15 03:00 +0100
Message-ID<r2gCe-2zt-7@gated-at.bofh.it>
In reply to#1330092
On Tue, 2016-02-09 at 08:08 -0300, Javier Martinez Canillas wrote:
> 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 <javier@osg.samsung.com>
> 
> ---
> 
>  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

[toc] | [prev] | [next] | [standalone]


#1334503

FromJavier Martinez Canillas <javier@osg.samsung.com>
Date2016-02-15 16:00 +0100
Message-ID<r2sN4-2p8-17@gated-at.bofh.it>
In reply to#1334100
Hello Eddie,

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

[snip]

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

[toc] | [prev] | [next] | [standalone]


#1335297

FromArnd Bergmann <arnd@arndb.de>
Date2016-02-16 12:40 +0100
Message-ID<r2M94-7eU-17@gated-at.bofh.it>
In reply to#1334503
On Monday 15 February 2016 11:50:48 Javier Martinez Canillas wrote:
> 
> On 02/14/2016 10:58 PM, Eddie Huang wrote:
> 
> [snip]
> 
> >> @@ -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

[toc] | [prev] | [next] | [standalone]


#1335356

FromEddie Huang <eddie.huang@mediatek.com>
Date2016-02-16 14:20 +0100
Message-ID<r2NHQ-8jx-5@gated-at.bofh.it>
In reply to#1335297
On Tue, 2016-02-16 at 12:37 +0100, Arnd Bergmann wrote:
> On Monday 15 February 2016 11:50:48 Javier Martinez Canillas wrote:
> > 
> > On 02/14/2016 10:58 PM, Eddie Huang wrote:
> > 
> > [snip]
> > 
> > >> @@ -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

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web