From: Krzysztof Kozlowski <k.kozlowski@samsung.com>
To: Javier Martinez Canillas <javier@osg.samsung.com>,
linux-kernel@vger.kernel.org
Cc: Markus Reichl <m.reichl@fivetechno.de>,
Anand Moon <linux.amoon@gmail.com>,
linux-samsung-soc@vger.kernel.org,
Alim Akhtar <alim.akhtar@samsung.com>,
Marek Szyprowski <m.szyprowski@samsung.com>,
linux-mmc@vger.kernel.org,
Alexandre Courbot <acourbot@nvidia.com>,
Ulf Hansson <ulf.hansson@linaro.org>
Subject: Re: [PATCH] mmc: pwrseq: Use highest priority for eMMC restart handler
Date: Thu, 22 Oct 2015 09:36:01 +0900 [thread overview]
Message-ID: <56282F71.2070408@samsung.com> (raw)
In-Reply-To: <1445440540-21525-1-git-send-email-javier@osg.samsung.com>
On 22.10.2015 00:15, Javier Martinez Canillas wrote:
> The pwrseq_emmc driver does a eMMC card reset before a system reboot to
> allow broken or limited ROM boot-loaders (that don't have an eMMC reset
> logic) to be able to read the second stage from the eMMC.
>
> But this has to be called before a system reboot handler and while most
> of them use the priority 128, there are other restart handlers (such as
> the syscon-reboot one) that use a higher priority. So, use the highest
> priority to make sure that the eMMC hw is reset before a system reboot.
>
> Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>
> Tested-by: Markus Reichl <m.reichl@fivetechno.de>
> Tested-by: Anand Moon <linux.amoon@gmail.com>
> Reviewed-by: Alim Akhtar <alim.akhtar@samsung.com>
>
> ---
> Hello,
>
> This patch was needed since a recent series from Alim [0] added
> syscon reboot and poweroff support to Exynos SoCs and removed
> the reset handler in the Exynos Power Management Unit (PMU) code.
>
> But the PMU and syscon-reboot restart handler have a different
> priority so [0] breaks restart when eMMC is used on these boards.
>
> [0]: http://www.spinics.net/lists/arm-kernel/msg454396.html
>
> So this patch must be merged before [0] to avoid regressions.
>
> Best regards,
> Javier
>
> drivers/mmc/core/pwrseq_emmc.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/mmc/core/pwrseq_emmc.c b/drivers/mmc/core/pwrseq_emmc.c
> index 137c97fb7aa8..ad4f94ec7e8d 100644
> --- a/drivers/mmc/core/pwrseq_emmc.c
> +++ b/drivers/mmc/core/pwrseq_emmc.c
> @@ -84,11 +84,11 @@ struct mmc_pwrseq *mmc_pwrseq_emmc_alloc(struct mmc_host *host,
>
> /*
> * register reset handler to ensure emmc reset also from
> - * emergency_reboot(), priority 129 schedules it just before
> - * system reboot
> + * emergency_reboot(), priority 255 is the highest priority
> + * so it will be executed before any system reboot handler.
> */
> pwrseq->reset_nb.notifier_call = mmc_pwrseq_emmc_reset_nb;
> - pwrseq->reset_nb.priority = 129;
> + pwrseq->reset_nb.priority = 255;
I see the problem which you are trying to solve but this may be tricker
then just kicking the number. Some of restart handlers are registered
with priority 192. I found few of such, like: at91_restart_nb,
zynq_slcr_restart_nb, rmobile_reset_nb (maybe more, I did not grep too
much).
I guess they chose the "192" priority on purpose.
Effectively, now the emmc handler will be executed before their
handlers... is it an issue? Maybe some testing on these platforms is
necessary?
Best regards,
Krzysztof
> register_restart_handler(&pwrseq->reset_nb);
>
> pwrseq->pwrseq.ops = &mmc_pwrseq_emmc_ops;
>
next prev parent reply other threads:[~2015-10-22 0:36 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-21 15:15 [PATCH] mmc: pwrseq: Use highest priority for eMMC restart handler Javier Martinez Canillas
2015-10-22 0:36 ` Krzysztof Kozlowski [this message]
2015-10-22 1:20 ` Javier Martinez Canillas
2015-10-22 1:43 ` Krzysztof Kozlowski
2015-10-22 2:52 ` Javier Martinez Canillas
2015-10-22 4:14 ` Alim Akhtar
2015-10-22 10:07 ` Marek Szyprowski
2015-10-22 11:02 ` Javier Martinez Canillas
2015-10-22 5:03 ` Anand Moon
2015-10-22 8:36 ` Javier Martinez Canillas
2015-10-22 9:42 ` Anand Moon
2015-10-22 15:34 ` Doug Anderson
2015-10-22 15:51 ` Heiko Stübner
2015-10-22 16:07 ` Javier Martinez Canillas
2015-10-22 17:33 ` Doug Anderson
2015-10-22 17:53 ` Javier Martinez Canillas
2015-10-24 4:55 ` Alim Akhtar
2015-10-27 10:10 ` Ulf Hansson
2015-10-28 11:02 ` Javier Martinez Canillas
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=56282F71.2070408@samsung.com \
--to=k.kozlowski@samsung.com \
--cc=acourbot@nvidia.com \
--cc=alim.akhtar@samsung.com \
--cc=javier@osg.samsung.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mmc@vger.kernel.org \
--cc=linux-samsung-soc@vger.kernel.org \
--cc=linux.amoon@gmail.com \
--cc=m.reichl@fivetechno.de \
--cc=m.szyprowski@samsung.com \
--cc=ulf.hansson@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).