* [PATCH 0/2] Remove mmc_host enable/disable methods.
@ 2015-03-25 21:43 NeilBrown
2015-03-25 21:43 ` [PATCH 2/2] mmc: remove " NeilBrown
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: NeilBrown @ 2015-03-25 21:43 UTC (permalink / raw)
To: Tony Lindgren, Ulf Hansson, Adrian Hunter, Chris Ball
Cc: linux-omap, linux-mmc, linux-kernel
Only omap_hsmmc uses enable and disable, and this seems
to be largely for historical reasons and is no longer
necessary.
I have tested these patches with an OMAP3 with an
uSD card on mmc0 and a wifi SDIO device on mmc1.
NeilBrown
---
NeilBrown (2):
mmc: omap_hsmmc: stop using .enable and .disable method.
mmc: remove enable/disable methods.
drivers/mmc/core/core.c | 5 -----
drivers/mmc/host/omap_hsmmc.c | 24 +++---------------------
include/linux/mmc/host.h | 6 ------
3 files changed, 3 insertions(+), 32 deletions(-)
--
Signature
^ permalink raw reply [flat|nested] 7+ messages in thread* [PATCH 2/2] mmc: remove enable/disable methods. 2015-03-25 21:43 [PATCH 0/2] Remove mmc_host enable/disable methods NeilBrown @ 2015-03-25 21:43 ` NeilBrown 2015-03-25 21:43 ` [PATCH 1/2] mmc: omap_hsmmc: stop using .enable and .disable method NeilBrown 2015-03-27 10:01 ` [PATCH 0/2] Remove mmc_host enable/disable methods Ulf Hansson 2 siblings, 0 replies; 7+ messages in thread From: NeilBrown @ 2015-03-25 21:43 UTC (permalink / raw) To: Tony Lindgren, Ulf Hansson, Adrian Hunter, Chris Ball Cc: linux-omap, linux-mmc, linux-kernel The 'enable' and 'disable' methods are "deprecated" according to host.h, and are no longer used. So discard them. Signed-off-by: NeilBrown <neil@brown.name> --- drivers/mmc/core/core.c | 5 ----- include/linux/mmc/host.h | 6 ------ 2 files changed, 11 deletions(-) diff --git a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c index 23f10f72e5f3..709ada9f26b5 100644 --- a/drivers/mmc/core/core.c +++ b/drivers/mmc/core/core.c @@ -920,8 +920,6 @@ int __mmc_claim_host(struct mmc_host *host, atomic_t *abort) wake_up(&host->wq); spin_unlock_irqrestore(&host->lock, flags); remove_wait_queue(&host->wq, &wait); - if (host->ops->enable && !stop && host->claim_cnt == 1) - host->ops->enable(host); return stop; } @@ -940,9 +938,6 @@ void mmc_release_host(struct mmc_host *host) WARN_ON(!host->claimed); - if (host->ops->disable && host->claim_cnt == 1) - host->ops->disable(host); - spin_lock_irqsave(&host->lock, flags); if (--host->claim_cnt) { /* Release for nested claim */ diff --git a/include/linux/mmc/host.h b/include/linux/mmc/host.h index 0c8cbe5d1550..b5bedaec6223 100644 --- a/include/linux/mmc/host.h +++ b/include/linux/mmc/host.h @@ -80,12 +80,6 @@ struct mmc_ios { struct mmc_host_ops { /* - * 'enable' is called when the host is claimed and 'disable' is called - * when the host is released. 'enable' and 'disable' are deprecated. - */ - int (*enable)(struct mmc_host *host); - int (*disable)(struct mmc_host *host); - /* * It is optional for the host to implement pre_req and post_req in * order to support double buffering of requests (prepare one * request while another request is active). ^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH 1/2] mmc: omap_hsmmc: stop using .enable and .disable method. 2015-03-25 21:43 [PATCH 0/2] Remove mmc_host enable/disable methods NeilBrown 2015-03-25 21:43 ` [PATCH 2/2] mmc: remove " NeilBrown @ 2015-03-25 21:43 ` NeilBrown 2015-03-26 1:18 ` NeilBrown 2015-03-27 10:01 ` [PATCH 0/2] Remove mmc_host enable/disable methods Ulf Hansson 2 siblings, 1 reply; 7+ messages in thread From: NeilBrown @ 2015-03-25 21:43 UTC (permalink / raw) To: Tony Lindgren, Ulf Hansson, Adrian Hunter, Chris Ball Cc: linux-omap, linux-mmc, linux-kernel enable and disable are only used to get and put runtime pm references. .set_ios already does this itself, and other drivers just do it in set_ios and .request without using enable/disable. So add pm_runtime get/put to omap_hsmmc_request(), and discard the enable/disable methods. Signed-off-by: NeilBrown <neil@brown.name> --- drivers/mmc/host/omap_hsmmc.c | 24 +++--------------------- 1 file changed, 3 insertions(+), 21 deletions(-) diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c index f84cfb01716d..092bcecd73e6 100644 --- a/drivers/mmc/host/omap_hsmmc.c +++ b/drivers/mmc/host/omap_hsmmc.c @@ -882,6 +882,8 @@ static void omap_hsmmc_request_done(struct omap_hsmmc_host *host, struct mmc_req return; host->mrq = NULL; mmc_request_done(host->mmc, mrq); + pm_runtime_mark_last_busy(host->dev); + pm_runtime_put_autosuspend(host->dev); } /* @@ -1537,6 +1539,7 @@ static void omap_hsmmc_request(struct mmc_host *mmc, struct mmc_request *req) BUG_ON(host->req_in_progress); BUG_ON(host->dma_ch != -1); + pm_runtime_get_sync(host->dev); if (host->protect_card) { if (host->reqs_blocked < 3) { /* @@ -1778,25 +1781,6 @@ static void omap_hsmmc_conf_bus_power(struct omap_hsmmc_host *host) set_sd_bus_power(host); } -static int omap_hsmmc_enable_fclk(struct mmc_host *mmc) -{ - struct omap_hsmmc_host *host = mmc_priv(mmc); - - pm_runtime_get_sync(host->dev); - - return 0; -} - -static int omap_hsmmc_disable_fclk(struct mmc_host *mmc) -{ - struct omap_hsmmc_host *host = mmc_priv(mmc); - - pm_runtime_mark_last_busy(host->dev); - pm_runtime_put_autosuspend(host->dev); - - return 0; -} - static int omap_hsmmc_multi_io_quirk(struct mmc_card *card, unsigned int direction, int blk_size) { @@ -1808,8 +1792,6 @@ static int omap_hsmmc_multi_io_quirk(struct mmc_card *card, } static struct mmc_host_ops omap_hsmmc_ops = { - .enable = omap_hsmmc_enable_fclk, - .disable = omap_hsmmc_disable_fclk, .post_req = omap_hsmmc_post_req, .pre_req = omap_hsmmc_pre_req, .request = omap_hsmmc_request, ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH 1/2] mmc: omap_hsmmc: stop using .enable and .disable method. 2015-03-25 21:43 ` [PATCH 1/2] mmc: omap_hsmmc: stop using .enable and .disable method NeilBrown @ 2015-03-26 1:18 ` NeilBrown 2015-03-26 7:38 ` Ulf Hansson 0 siblings, 1 reply; 7+ messages in thread From: NeilBrown @ 2015-03-26 1:18 UTC (permalink / raw) To: NeilBrown Cc: Tony Lindgren, Ulf Hansson, Adrian Hunter, Chris Ball, linux-omap, linux-mmc, linux-kernel [-- Attachment #1: Type: text/plain, Size: 3719 bytes --] On Thu, 26 Mar 2015 08:43:37 +1100 NeilBrown <neil@brown.name> wrote: > enable and disable are only used to get and put > runtime pm references. .set_ios already does this > itself, and other drivers just do it in set_ios > and .request without using enable/disable. > > So add pm_runtime get/put to omap_hsmmc_request(), > and discard the enable/disable methods. > > Signed-off-by: NeilBrown <neil@brown.name> Sorry, that patch wasn't much good. This one I have really tested properly and checked that the 'put' match the 'get's and that the device to regularly go to sleep as expected. NeilBrown From: NeilBrown <neil@brown.name> Date: Thu, 26 Mar 2015 08:28:43 +1100 Subject: [PATCH] mmc: omap_hsmmc: stop using .enable and .disable method. enable and disable are only used to get and put runtime pm references. .set_ios already does this itself, and other drivers just do it in set_ios and .request without using enable/disable. So add pm_runtime get/put to omap_hsmmc_request(), and discard the enable/disable methods. Signed-off-by: NeilBrown <neil@brown.name> diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c index f84cfb01716d..2cb81538a612 100644 --- a/drivers/mmc/host/omap_hsmmc.c +++ b/drivers/mmc/host/omap_hsmmc.c @@ -882,6 +882,8 @@ static void omap_hsmmc_request_done(struct omap_hsmmc_host *host, struct mmc_req return; host->mrq = NULL; mmc_request_done(host->mmc, mrq); + pm_runtime_mark_last_busy(host->dev); + pm_runtime_put_autosuspend(host->dev); } /* @@ -1305,6 +1307,8 @@ static void omap_hsmmc_dma_callback(void *param) host->mrq = NULL; mmc_request_done(host->mmc, mrq); + pm_runtime_mark_last_busy(host->dev); + pm_runtime_put_autosuspend(host->dev); } } @@ -1537,6 +1541,7 @@ static void omap_hsmmc_request(struct mmc_host *mmc, struct mmc_request *req) BUG_ON(host->req_in_progress); BUG_ON(host->dma_ch != -1); + pm_runtime_get_sync(host->dev); if (host->protect_card) { if (host->reqs_blocked < 3) { /* @@ -1553,6 +1558,8 @@ static void omap_hsmmc_request(struct mmc_host *mmc, struct mmc_request *req) req->data->error = -EBADF; req->cmd->retries = 0; mmc_request_done(mmc, req); + pm_runtime_mark_last_busy(host->dev); + pm_runtime_put_autosuspend(host->dev); return; } else if (host->reqs_blocked) host->reqs_blocked = 0; @@ -1566,6 +1573,8 @@ static void omap_hsmmc_request(struct mmc_host *mmc, struct mmc_request *req) req->data->error = err; host->mrq = NULL; mmc_request_done(mmc, req); + pm_runtime_mark_last_busy(host->dev); + pm_runtime_put_autosuspend(host->dev); return; } if (req->sbc && !(host->flags & AUTO_CMD23)) { @@ -1778,25 +1787,6 @@ static void omap_hsmmc_conf_bus_power(struct omap_hsmmc_host *host) set_sd_bus_power(host); } -static int omap_hsmmc_enable_fclk(struct mmc_host *mmc) -{ - struct omap_hsmmc_host *host = mmc_priv(mmc); - - pm_runtime_get_sync(host->dev); - - return 0; -} - -static int omap_hsmmc_disable_fclk(struct mmc_host *mmc) -{ - struct omap_hsmmc_host *host = mmc_priv(mmc); - - pm_runtime_mark_last_busy(host->dev); - pm_runtime_put_autosuspend(host->dev); - - return 0; -} - static int omap_hsmmc_multi_io_quirk(struct mmc_card *card, unsigned int direction, int blk_size) { @@ -1808,8 +1798,6 @@ static int omap_hsmmc_multi_io_quirk(struct mmc_card *card, } static struct mmc_host_ops omap_hsmmc_ops = { - .enable = omap_hsmmc_enable_fclk, - .disable = omap_hsmmc_disable_fclk, .post_req = omap_hsmmc_post_req, .pre_req = omap_hsmmc_pre_req, .request = omap_hsmmc_request, [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 811 bytes --] ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH 1/2] mmc: omap_hsmmc: stop using .enable and .disable method. 2015-03-26 1:18 ` NeilBrown @ 2015-03-26 7:38 ` Ulf Hansson 2015-03-26 8:05 ` Ulf Hansson 0 siblings, 1 reply; 7+ messages in thread From: Ulf Hansson @ 2015-03-26 7:38 UTC (permalink / raw) To: NeilBrown Cc: NeilBrown, Tony Lindgren, Adrian Hunter, Chris Ball, linux-omap, linux-mmc, linux-kernel@vger.kernel.org On 26 March 2015 at 02:18, NeilBrown <neilb@suse.de> wrote: > On Thu, 26 Mar 2015 08:43:37 +1100 NeilBrown <neil@brown.name> wrote: > >> enable and disable are only used to get and put >> runtime pm references. .set_ios already does this >> itself, and other drivers just do it in set_ios >> and .request without using enable/disable. >> >> So add pm_runtime get/put to omap_hsmmc_request(), >> and discard the enable/disable methods. >> >> Signed-off-by: NeilBrown <neil@brown.name> > > Sorry, that patch wasn't much good. This one I have really tested properly > and checked that the 'put' match the 'get's and that the device to regularly > go to sleep as expected. > > NeilBrown > > > From: NeilBrown <neil@brown.name> > Date: Thu, 26 Mar 2015 08:28:43 +1100 > Subject: [PATCH] mmc: omap_hsmmc: stop using .enable and .disable method. > > enable and disable are only used to get and put > runtime pm references. .set_ios already does this > itself, and other drivers just do it in set_ios > and .request without using enable/disable. > > So add pm_runtime get/put to omap_hsmmc_request(), > and discard the enable/disable methods. > > Signed-off-by: NeilBrown <neil@brown.name> > > diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c > index f84cfb01716d..2cb81538a612 100644 > --- a/drivers/mmc/host/omap_hsmmc.c > +++ b/drivers/mmc/host/omap_hsmmc.c > @@ -882,6 +882,8 @@ static void omap_hsmmc_request_done(struct omap_hsmmc_host *host, struct mmc_req > return; > host->mrq = NULL; > mmc_request_done(host->mmc, mrq); > + pm_runtime_mark_last_busy(host->dev); > + pm_runtime_put_autosuspend(host->dev); > } How about adding a function like this: _omap_hsmmc_request_done(struct omap_hsmmc_host *host, struct mmc_req) { mmc_request_done(host->mmc, mrq); pm_runtime_mark_last_busy(host->dev); pm_runtime_put_autosuspend(host->dev); } Then just invoke it from those places were needed? > > /* > @@ -1305,6 +1307,8 @@ static void omap_hsmmc_dma_callback(void *param) > > host->mrq = NULL; > mmc_request_done(host->mmc, mrq); > + pm_runtime_mark_last_busy(host->dev); > + pm_runtime_put_autosuspend(host->dev); > } > } > > @@ -1537,6 +1541,7 @@ static void omap_hsmmc_request(struct mmc_host *mmc, struct mmc_request *req) > > BUG_ON(host->req_in_progress); > BUG_ON(host->dma_ch != -1); > + pm_runtime_get_sync(host->dev); > if (host->protect_card) { > if (host->reqs_blocked < 3) { > /* > @@ -1553,6 +1558,8 @@ static void omap_hsmmc_request(struct mmc_host *mmc, struct mmc_request *req) > req->data->error = -EBADF; > req->cmd->retries = 0; > mmc_request_done(mmc, req); > + pm_runtime_mark_last_busy(host->dev); > + pm_runtime_put_autosuspend(host->dev); > return; > } else if (host->reqs_blocked) > host->reqs_blocked = 0; > @@ -1566,6 +1573,8 @@ static void omap_hsmmc_request(struct mmc_host *mmc, struct mmc_request *req) > req->data->error = err; > host->mrq = NULL; > mmc_request_done(mmc, req); > + pm_runtime_mark_last_busy(host->dev); > + pm_runtime_put_autosuspend(host->dev); > return; > } > if (req->sbc && !(host->flags & AUTO_CMD23)) { > @@ -1778,25 +1787,6 @@ static void omap_hsmmc_conf_bus_power(struct omap_hsmmc_host *host) > set_sd_bus_power(host); > } > > -static int omap_hsmmc_enable_fclk(struct mmc_host *mmc) > -{ > - struct omap_hsmmc_host *host = mmc_priv(mmc); > - > - pm_runtime_get_sync(host->dev); > - > - return 0; > -} > - > -static int omap_hsmmc_disable_fclk(struct mmc_host *mmc) > -{ > - struct omap_hsmmc_host *host = mmc_priv(mmc); > - > - pm_runtime_mark_last_busy(host->dev); > - pm_runtime_put_autosuspend(host->dev); > - > - return 0; > -} > - > static int omap_hsmmc_multi_io_quirk(struct mmc_card *card, > unsigned int direction, int blk_size) > { > @@ -1808,8 +1798,6 @@ static int omap_hsmmc_multi_io_quirk(struct mmc_card *card, > } > > static struct mmc_host_ops omap_hsmmc_ops = { > - .enable = omap_hsmmc_enable_fclk, > - .disable = omap_hsmmc_disable_fclk, > .post_req = omap_hsmmc_post_req, > .pre_req = omap_hsmmc_pre_req, > .request = omap_hsmmc_request, Finally, I think you have forgotten to deal with pm_runtime_get|put*() in omap_hsmmc_enable_sdio_irq(). Kind regards Uffe ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 1/2] mmc: omap_hsmmc: stop using .enable and .disable method. 2015-03-26 7:38 ` Ulf Hansson @ 2015-03-26 8:05 ` Ulf Hansson 0 siblings, 0 replies; 7+ messages in thread From: Ulf Hansson @ 2015-03-26 8:05 UTC (permalink / raw) To: NeilBrown Cc: NeilBrown, Tony Lindgren, Adrian Hunter, Chris Ball, linux-omap, linux-mmc, linux-kernel@vger.kernel.org On 26 March 2015 at 08:38, Ulf Hansson <ulf.hansson@linaro.org> wrote: > On 26 March 2015 at 02:18, NeilBrown <neilb@suse.de> wrote: >> On Thu, 26 Mar 2015 08:43:37 +1100 NeilBrown <neil@brown.name> wrote: >> >>> enable and disable are only used to get and put >>> runtime pm references. .set_ios already does this >>> itself, and other drivers just do it in set_ios >>> and .request without using enable/disable. >>> >>> So add pm_runtime get/put to omap_hsmmc_request(), >>> and discard the enable/disable methods. >>> >>> Signed-off-by: NeilBrown <neil@brown.name> >> >> Sorry, that patch wasn't much good. This one I have really tested properly >> and checked that the 'put' match the 'get's and that the device to regularly >> go to sleep as expected. >> >> NeilBrown >> >> >> From: NeilBrown <neil@brown.name> >> Date: Thu, 26 Mar 2015 08:28:43 +1100 >> Subject: [PATCH] mmc: omap_hsmmc: stop using .enable and .disable method. >> >> enable and disable are only used to get and put >> runtime pm references. .set_ios already does this >> itself, and other drivers just do it in set_ios >> and .request without using enable/disable. >> >> So add pm_runtime get/put to omap_hsmmc_request(), >> and discard the enable/disable methods. >> >> Signed-off-by: NeilBrown <neil@brown.name> >> >> diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c >> index f84cfb01716d..2cb81538a612 100644 >> --- a/drivers/mmc/host/omap_hsmmc.c >> +++ b/drivers/mmc/host/omap_hsmmc.c >> @@ -882,6 +882,8 @@ static void omap_hsmmc_request_done(struct omap_hsmmc_host *host, struct mmc_req >> return; >> host->mrq = NULL; >> mmc_request_done(host->mmc, mrq); >> + pm_runtime_mark_last_busy(host->dev); >> + pm_runtime_put_autosuspend(host->dev); >> } > > How about adding a function like this: > > _omap_hsmmc_request_done(struct omap_hsmmc_host *host, struct mmc_req) > { > mmc_request_done(host->mmc, mrq); > pm_runtime_mark_last_busy(host->dev); > pm_runtime_put_autosuspend(host->dev); > } > > Then just invoke it from those places were needed? > >> >> /* >> @@ -1305,6 +1307,8 @@ static void omap_hsmmc_dma_callback(void *param) >> >> host->mrq = NULL; >> mmc_request_done(host->mmc, mrq); >> + pm_runtime_mark_last_busy(host->dev); >> + pm_runtime_put_autosuspend(host->dev); >> } >> } >> >> @@ -1537,6 +1541,7 @@ static void omap_hsmmc_request(struct mmc_host *mmc, struct mmc_request *req) >> >> BUG_ON(host->req_in_progress); >> BUG_ON(host->dma_ch != -1); >> + pm_runtime_get_sync(host->dev); >> if (host->protect_card) { >> if (host->reqs_blocked < 3) { >> /* >> @@ -1553,6 +1558,8 @@ static void omap_hsmmc_request(struct mmc_host *mmc, struct mmc_request *req) >> req->data->error = -EBADF; >> req->cmd->retries = 0; >> mmc_request_done(mmc, req); >> + pm_runtime_mark_last_busy(host->dev); >> + pm_runtime_put_autosuspend(host->dev); >> return; >> } else if (host->reqs_blocked) >> host->reqs_blocked = 0; >> @@ -1566,6 +1573,8 @@ static void omap_hsmmc_request(struct mmc_host *mmc, struct mmc_request *req) >> req->data->error = err; >> host->mrq = NULL; >> mmc_request_done(mmc, req); >> + pm_runtime_mark_last_busy(host->dev); >> + pm_runtime_put_autosuspend(host->dev); >> return; >> } >> if (req->sbc && !(host->flags & AUTO_CMD23)) { >> @@ -1778,25 +1787,6 @@ static void omap_hsmmc_conf_bus_power(struct omap_hsmmc_host *host) >> set_sd_bus_power(host); >> } >> >> -static int omap_hsmmc_enable_fclk(struct mmc_host *mmc) >> -{ >> - struct omap_hsmmc_host *host = mmc_priv(mmc); >> - >> - pm_runtime_get_sync(host->dev); >> - >> - return 0; >> -} >> - >> -static int omap_hsmmc_disable_fclk(struct mmc_host *mmc) >> -{ >> - struct omap_hsmmc_host *host = mmc_priv(mmc); >> - >> - pm_runtime_mark_last_busy(host->dev); >> - pm_runtime_put_autosuspend(host->dev); >> - >> - return 0; >> -} >> - >> static int omap_hsmmc_multi_io_quirk(struct mmc_card *card, >> unsigned int direction, int blk_size) >> { >> @@ -1808,8 +1798,6 @@ static int omap_hsmmc_multi_io_quirk(struct mmc_card *card, >> } >> >> static struct mmc_host_ops omap_hsmmc_ops = { >> - .enable = omap_hsmmc_enable_fclk, >> - .disable = omap_hsmmc_disable_fclk, >> .post_req = omap_hsmmc_post_req, >> .pre_req = omap_hsmmc_pre_req, >> .request = omap_hsmmc_request, > > Finally, I think you have forgotten to deal with pm_runtime_get|put*() > in omap_hsmmc_enable_sdio_irq(). No, _me_ totally forgot that SDIO IRQ is a special case and from the above mentioned function we mustn't deal with runtime PM, since that function is executed in IRQ context. :-) Also, since omap's runtime PM ->suspend() callback disables regular SDIO IRQS and enables wakeups, this case is already covered. Please ignore my comment above and sorry for the noise. Kind regards Uffe ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 0/2] Remove mmc_host enable/disable methods. 2015-03-25 21:43 [PATCH 0/2] Remove mmc_host enable/disable methods NeilBrown 2015-03-25 21:43 ` [PATCH 2/2] mmc: remove " NeilBrown 2015-03-25 21:43 ` [PATCH 1/2] mmc: omap_hsmmc: stop using .enable and .disable method NeilBrown @ 2015-03-27 10:01 ` Ulf Hansson 2 siblings, 0 replies; 7+ messages in thread From: Ulf Hansson @ 2015-03-27 10:01 UTC (permalink / raw) To: NeilBrown Cc: Tony Lindgren, Adrian Hunter, Chris Ball, linux-omap, linux-mmc, linux-kernel@vger.kernel.org On 25 March 2015 at 22:43, NeilBrown <neil@brown.name> wrote: > Only omap_hsmmc uses enable and disable, and this seems > to be largely for historical reasons and is no longer > necessary. > > I have tested these patches with an OMAP3 with an > uSD card on mmc0 and a wifi SDIO device on mmc1. > > NeilBrown > > > --- > > NeilBrown (2): > mmc: omap_hsmmc: stop using .enable and .disable method. > mmc: remove enable/disable methods. > > > drivers/mmc/core/core.c | 5 ----- > drivers/mmc/host/omap_hsmmc.c | 24 +++--------------------- > include/linux/mmc/host.h | 6 ------ > 3 files changed, 3 insertions(+), 32 deletions(-) > > -- Applied both patches (the later version of patch 1). Also I took the liberty to update the commit messages. If you care about my comments for patch1, let's deal with that as new separate "cleanup-patch". Thanks! Kind regards Uffe ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2015-03-27 10:01 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2015-03-25 21:43 [PATCH 0/2] Remove mmc_host enable/disable methods NeilBrown 2015-03-25 21:43 ` [PATCH 2/2] mmc: remove " NeilBrown 2015-03-25 21:43 ` [PATCH 1/2] mmc: omap_hsmmc: stop using .enable and .disable method NeilBrown 2015-03-26 1:18 ` NeilBrown 2015-03-26 7:38 ` Ulf Hansson 2015-03-26 8:05 ` Ulf Hansson 2015-03-27 10:01 ` [PATCH 0/2] Remove mmc_host enable/disable methods Ulf Hansson
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).