* [PATCH] mmc: make dev_to_mmc_card() macro public @ 2010-08-18 13:31 Andy Shevchenko 2010-08-19 21:49 ` Andrew Morton 0 siblings, 1 reply; 5+ messages in thread From: Andy Shevchenko @ 2010-08-18 13:31 UTC (permalink / raw) To: linux-kernel; +Cc: Andy Shevchenko, Adrian Hunter, linux-mmc Conversion from struct device to struct mmc_card is used more than in one place. Due to this it's better to have public macro for such thing. Signed-off-by: Andy Shevchenko <ext-andriy.shevchenko@nokia.com> Cc: Adrian Hunter <adrian.hunter@nokia.com> Cc: linux-mmc@vger.kernel.org --- drivers/mmc/card/mmc_test.c | 4 +--- drivers/mmc/core/bus.c | 1 - drivers/mmc/core/bus.h | 2 +- include/linux/mmc/card.h | 2 ++ 4 files changed, 4 insertions(+), 5 deletions(-) diff --git a/drivers/mmc/card/mmc_test.c b/drivers/mmc/card/mmc_test.c index 5dd8576..82d39bd 100644 --- a/drivers/mmc/card/mmc_test.c +++ b/drivers/mmc/card/mmc_test.c @@ -1935,12 +1935,10 @@ static ssize_t mmc_test_show(struct device *dev, static ssize_t mmc_test_store(struct device *dev, struct device_attribute *attr, const char *buf, size_t count) { - struct mmc_card *card; + struct mmc_card *card = dev_to_mmc_card(dev); struct mmc_test_card *test; int testcase; - card = container_of(dev, struct mmc_card, dev); - testcase = simple_strtol(buf, NULL, 10); test = kzalloc(sizeof(struct mmc_test_card), GFP_KERNEL); diff --git a/drivers/mmc/core/bus.c b/drivers/mmc/core/bus.c index 7cd9749..27326c4 100644 --- a/drivers/mmc/core/bus.c +++ b/drivers/mmc/core/bus.c @@ -22,7 +22,6 @@ #include "sdio_cis.h" #include "bus.h" -#define dev_to_mmc_card(d) container_of(d, struct mmc_card, dev) #define to_mmc_driver(d) container_of(d, struct mmc_driver, drv) static ssize_t mmc_type_show(struct device *dev, diff --git a/drivers/mmc/core/bus.h b/drivers/mmc/core/bus.h index 1817876..7813954 100644 --- a/drivers/mmc/core/bus.h +++ b/drivers/mmc/core/bus.h @@ -14,7 +14,7 @@ #define MMC_DEV_ATTR(name, fmt, args...) \ static ssize_t mmc_##name##_show (struct device *dev, struct device_attribute *attr, char *buf) \ { \ - struct mmc_card *card = container_of(dev, struct mmc_card, dev); \ + struct mmc_card *card = dev_to_mmc_card(dev); \ return sprintf(buf, fmt, args); \ } \ static DEVICE_ATTR(name, S_IRUGO, mmc_##name##_show, NULL) diff --git a/include/linux/mmc/card.h b/include/linux/mmc/card.h index 6b75250..71acf19 100644 --- a/include/linux/mmc/card.h +++ b/include/linux/mmc/card.h @@ -173,6 +173,8 @@ static inline int mmc_blksz_for_byte_mode(const struct mmc_card *c) #define mmc_card_name(c) ((c)->cid.prod_name) #define mmc_card_id(c) (dev_name(&(c)->dev)) +#define dev_to_mmc_card(d) container_of(d, struct mmc_card, dev) + #define mmc_list_to_card(l) container_of(l, struct mmc_card, node) #define mmc_get_drvdata(c) dev_get_drvdata(&(c)->dev) #define mmc_set_drvdata(c,d) dev_set_drvdata(&(c)->dev, d) -- 1.6.3.3 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH] mmc: make dev_to_mmc_card() macro public 2010-08-18 13:31 [PATCH] mmc: make dev_to_mmc_card() macro public Andy Shevchenko @ 2010-08-19 21:49 ` Andrew Morton 2010-08-20 7:17 ` Andy Shevchenko 0 siblings, 1 reply; 5+ messages in thread From: Andrew Morton @ 2010-08-19 21:49 UTC (permalink / raw) To: Andy Shevchenko; +Cc: linux-kernel, Andy Shevchenko, Adrian Hunter, linux-mmc On Wed, 18 Aug 2010 16:31:18 +0300 Andy Shevchenko <andy.shevchenko@gmail.com> wrote: > Conversion from struct device to struct mmc_card is used more than in one > place. Due to this it's better to have public macro for such thing. > nit: generally, subsystem-specific identifiers should use their subsystem's identifier as a prefix. So a better name for dev_to_mmc_card() would be mmc_dev_to_card(). ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] mmc: make dev_to_mmc_card() macro public 2010-08-19 21:49 ` Andrew Morton @ 2010-08-20 7:17 ` Andy Shevchenko 2010-08-20 7:23 ` Andrew Morton 0 siblings, 1 reply; 5+ messages in thread From: Andy Shevchenko @ 2010-08-20 7:17 UTC (permalink / raw) To: Andrew Morton; +Cc: linux-kernel, Andy Shevchenko, Adrian Hunter, linux-mmc On Fri, Aug 20, 2010 at 12:49 AM, Andrew Morton <akpm@linux-foundation.org> wrote: > nit: generally, subsystem-specific identifiers should use their > subsystem's identifier as a prefix. So a better name for > dev_to_mmc_card() would be mmc_dev_to_card(). Sounds reasonable. Would you like to get new version of patch or fix against patch? -- With Best Regards, Andy Shevchenko ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] mmc: make dev_to_mmc_card() macro public 2010-08-20 7:17 ` Andy Shevchenko @ 2010-08-20 7:23 ` Andrew Morton 2010-08-20 7:46 ` [PATCHv2] mmc: make mmc_dev_to_card() " Andy Shevchenko 0 siblings, 1 reply; 5+ messages in thread From: Andrew Morton @ 2010-08-20 7:23 UTC (permalink / raw) To: Andy Shevchenko; +Cc: linux-kernel, Andy Shevchenko, Adrian Hunter, linux-mmc On Fri, 20 Aug 2010 10:17:20 +0300 Andy Shevchenko <andy.shevchenko@gmail.com> wrote: > On Fri, Aug 20, 2010 at 12:49 AM, Andrew Morton > <akpm@linux-foundation.org> wrote: > > nit: generally, subsystem-specific identifiers should use their > > subsystem's identifier as a prefix. __So a better name for > > dev_to_mmc_card() would be mmc_dev_to_card(). > Sounds reasonable. > Would you like to get new version of patch or fix against patch? Either is OK for me. I'll turn a replacement patch into a delta so I can see what changed, but that takes just a few seconds. ^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCHv2] mmc: make mmc_dev_to_card() macro public 2010-08-20 7:23 ` Andrew Morton @ 2010-08-20 7:46 ` Andy Shevchenko 0 siblings, 0 replies; 5+ messages in thread From: Andy Shevchenko @ 2010-08-20 7:46 UTC (permalink / raw) To: linux-kernel; +Cc: Andy Shevchenko, Adrian Hunter, linux-mmc, Andrew Morton Conversion from struct device to struct mmc_card is used more than in one place. Due to this it's better to have public macro for such thing. Signed-off-by: Andy Shevchenko <ext-andriy.shevchenko@nokia.com> Cc: Adrian Hunter <adrian.hunter@nokia.com> Cc: linux-mmc@vger.kernel.org Cc: Andrew Morton <akpm@linux-foundation.org> --- drivers/mmc/card/mmc_test.c | 4 +--- drivers/mmc/core/bus.c | 15 +++++++-------- drivers/mmc/core/bus.h | 2 +- include/linux/mmc/card.h | 2 ++ 4 files changed, 11 insertions(+), 12 deletions(-) diff --git a/drivers/mmc/card/mmc_test.c b/drivers/mmc/card/mmc_test.c index 5dd8576..b992725 100644 --- a/drivers/mmc/card/mmc_test.c +++ b/drivers/mmc/card/mmc_test.c @@ -1935,12 +1935,10 @@ static ssize_t mmc_test_show(struct device *dev, static ssize_t mmc_test_store(struct device *dev, struct device_attribute *attr, const char *buf, size_t count) { - struct mmc_card *card; + struct mmc_card *card = mmc_dev_to_card(dev); struct mmc_test_card *test; int testcase; - card = container_of(dev, struct mmc_card, dev); - testcase = simple_strtol(buf, NULL, 10); test = kzalloc(sizeof(struct mmc_test_card), GFP_KERNEL); diff --git a/drivers/mmc/core/bus.c b/drivers/mmc/core/bus.c index 7cd9749..e70bd66 100644 --- a/drivers/mmc/core/bus.c +++ b/drivers/mmc/core/bus.c @@ -22,13 +22,12 @@ #include "sdio_cis.h" #include "bus.h" -#define dev_to_mmc_card(d) container_of(d, struct mmc_card, dev) #define to_mmc_driver(d) container_of(d, struct mmc_driver, drv) static ssize_t mmc_type_show(struct device *dev, struct device_attribute *attr, char *buf) { - struct mmc_card *card = dev_to_mmc_card(dev); + struct mmc_card *card = mmc_dev_to_card(dev); switch (card->type) { case MMC_TYPE_MMC: @@ -62,7 +61,7 @@ static int mmc_bus_match(struct device *dev, struct device_driver *drv) static int mmc_bus_uevent(struct device *dev, struct kobj_uevent_env *env) { - struct mmc_card *card = dev_to_mmc_card(dev); + struct mmc_card *card = mmc_dev_to_card(dev); const char *type; int retval = 0; @@ -105,7 +104,7 @@ mmc_bus_uevent(struct device *dev, struct kobj_uevent_env *env) static int mmc_bus_probe(struct device *dev) { struct mmc_driver *drv = to_mmc_driver(dev->driver); - struct mmc_card *card = dev_to_mmc_card(dev); + struct mmc_card *card = mmc_dev_to_card(dev); return drv->probe(card); } @@ -113,7 +112,7 @@ static int mmc_bus_probe(struct device *dev) static int mmc_bus_remove(struct device *dev) { struct mmc_driver *drv = to_mmc_driver(dev->driver); - struct mmc_card *card = dev_to_mmc_card(dev); + struct mmc_card *card = mmc_dev_to_card(dev); drv->remove(card); @@ -123,7 +122,7 @@ static int mmc_bus_remove(struct device *dev) static int mmc_bus_suspend(struct device *dev, pm_message_t state) { struct mmc_driver *drv = to_mmc_driver(dev->driver); - struct mmc_card *card = dev_to_mmc_card(dev); + struct mmc_card *card = mmc_dev_to_card(dev); int ret = 0; if (dev->driver && drv->suspend) @@ -134,7 +133,7 @@ static int mmc_bus_suspend(struct device *dev, pm_message_t state) static int mmc_bus_resume(struct device *dev) { struct mmc_driver *drv = to_mmc_driver(dev->driver); - struct mmc_card *card = dev_to_mmc_card(dev); + struct mmc_card *card = mmc_dev_to_card(dev); int ret = 0; if (dev->driver && drv->resume) @@ -189,7 +188,7 @@ EXPORT_SYMBOL(mmc_unregister_driver); static void mmc_release_card(struct device *dev) { - struct mmc_card *card = dev_to_mmc_card(dev); + struct mmc_card *card = mmc_dev_to_card(dev); sdio_free_common_cis(card); diff --git a/drivers/mmc/core/bus.h b/drivers/mmc/core/bus.h index 1817876..00a1971 100644 --- a/drivers/mmc/core/bus.h +++ b/drivers/mmc/core/bus.h @@ -14,7 +14,7 @@ #define MMC_DEV_ATTR(name, fmt, args...) \ static ssize_t mmc_##name##_show (struct device *dev, struct device_attribute *attr, char *buf) \ { \ - struct mmc_card *card = container_of(dev, struct mmc_card, dev); \ + struct mmc_card *card = mmc_dev_to_card(dev); \ return sprintf(buf, fmt, args); \ } \ static DEVICE_ATTR(name, S_IRUGO, mmc_##name##_show, NULL) diff --git a/include/linux/mmc/card.h b/include/linux/mmc/card.h index 6b75250..7bd4923 100644 --- a/include/linux/mmc/card.h +++ b/include/linux/mmc/card.h @@ -173,6 +173,8 @@ static inline int mmc_blksz_for_byte_mode(const struct mmc_card *c) #define mmc_card_name(c) ((c)->cid.prod_name) #define mmc_card_id(c) (dev_name(&(c)->dev)) +#define mmc_dev_to_card(d) container_of(d, struct mmc_card, dev) + #define mmc_list_to_card(l) container_of(l, struct mmc_card, node) #define mmc_get_drvdata(c) dev_get_drvdata(&(c)->dev) #define mmc_set_drvdata(c,d) dev_set_drvdata(&(c)->dev, d) -- 1.6.3.3 ^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2010-08-20 7:46 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2010-08-18 13:31 [PATCH] mmc: make dev_to_mmc_card() macro public Andy Shevchenko 2010-08-19 21:49 ` Andrew Morton 2010-08-20 7:17 ` Andy Shevchenko 2010-08-20 7:23 ` Andrew Morton 2010-08-20 7:46 ` [PATCHv2] mmc: make mmc_dev_to_card() " Andy Shevchenko
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox