mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "Slark Xiao" <slark_xiao@163.com>
To: "Loic Poulain" <loic.poulain@oss.qualcomm.com>
Cc: mani@kernel.org, jeff.hugo@oss.qualcomm.com,
	krishna.chundru@oss.qualcomm.com, mhi@lists.linux.dev,
	linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org,
	stable@vger.kernel.org
Subject: Re:Re: Re: [PATCH] bus: mhi: host: pci_generic: Update the default autosuspend_delay_ms as 5000ms
Date: Tue, 20 Oct 2026 18:31:31 +0800 (CST)	[thread overview]
Message-ID: <65d8a1b5.8e5b.1a158ddc4de.Coremail.slark_xiao@163.com> (raw)
In-Reply-To: <CAFEp6-3o6gCb61hCQTJydiH2aD6CBVRa947tpmLe4L9j85Jg5w@mail.gmail.com>



At 2026-10-20 15:27:43, "Loic Poulain" <loic.poulain@oss.qualcomm.com> wrote:
>Hi Slark,
>
>On Tue, Oct 20, 2026 at 5:20 AM Slark Xiao <slark_xiao@163.com> wrote:
>>
>>
>> At 2026-10-19 15:41:27, "Loic Poulain" <loic.poulain@oss.qualcomm.com> wrote:
>> >On Mon, Oct 19, 2026 at 7:52 AM Slark Xiao <slark_xiao@163.com> wrote:
>> >>
>> >> For some MHI devices in some specific scenario, the default value
>> >> of autosuspend_delay_ms may not enough to handle last wake event.
>> >> This may lead to some unexpected problems.
>> >>
>> >> Refer to the Qualcomm's Windows settings and we checked this with
>> >> Quaclomm over case, Qualcomm recommend us to set this as 5000ms.
>> >
>> >Qualcomm
>> >
>> >> Qualcomm also suggests us to update this for all MHI devices.
>> >> Since this setting has affected some existed kernel versions, it's
>> >> better to be applied to stable version.
>> >
>> >This looks more like a workaround than a proper fix. It would be
>> >helpful to describe the underlying issue, including the timing and
>> >sequence of events that make this necessary. In principle, either the
>> >device can be suspended at that point or it cannot. Relying on a
>> >delayed suspend feels fragile and may end up masking the real problem.
>> >
>> Hi Loic,
>> Honestly, Qualcomm has been analyzing for over 2 months and still hasn't
>> identified the root cause.
>>
>> Actually I have explained the reasons behind the events to Mani in another
>> thread, you can refer to https://lore.kernel.org/mhi/20260919095506.9570-1-slark_xiao@163.com/
>>
>> From Qualcomm's perspective, 2 seconds is not enough for their default design.
>> They recommended us to update this value to 5 seconds and Mani checked this
>> internally as well. So we decided to update this 5 seconds setting to all MHI devices.
>
>Thanks. I'm really surprised we still don't have a more precise
>understanding or description of the underlying issue. That said, I
>think it's reasonable to proceed with this as an initial workaround.
>
>Could you please send a v2 that introduces a define for the 5000 ms
>timeout? It would also be helpful to add a comment explaining that
>this value is required to accommodate the 'late wake-event issue'.
>
>Regards,
>Loic

Do you mean something like below?

/* Add define of  initial autosuspend_delay_ms to accommodate a potential 'late wake-event' issue */
#define MHI_AUTOSUSPEND_DELAY_MS 5000
......
 -               pm_runtime_set_autosuspend_delay(&pdev->dev, 2000);
 +               pm_runtime_set_autosuspend_delay(&pdev->dev, MHI_AUTOSUSPEND_DELAY_MS);

Thanks

>>
>> Thanks
>> >>
>> >> Fixes: d3800c1dce24 ("bus: mhi: pci_generic: Add support for runtime PM")
>> >> Cc: stable@vger.kernel.org
>> >> Signed-off-by: Slark Xiao <slark_xiao@163.com>
>> >> ---
>> >>  drivers/bus/mhi/host/pci_generic.c | 2 +-
>> >>  1 file changed, 1 insertion(+), 1 deletion(-)
>> >>
>> >> diff --git a/drivers/bus/mhi/host/pci_generic.c b/drivers/bus/mhi/host/pci_generic.c
>> >> index 7193a384cca4..40735beb46cb 100644
>> >> --- a/drivers/bus/mhi/host/pci_generic.c
>> >> +++ b/drivers/bus/mhi/host/pci_generic.c
>> >> @@ -1483,7 +1483,7 @@ static int mhi_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id)
>> >>
>> >>         /* Allow runtime suspend only if both PME from D3Hot and M3 are supported */
>> >>         if (pci_pme_capable(pdev, PCI_D3hot) && !(info->no_m3)) {
>> >> -               pm_runtime_set_autosuspend_delay(&pdev->dev, 2000);
>> >> +               pm_runtime_set_autosuspend_delay(&pdev->dev, 5000);
>> >>                 pm_runtime_use_autosuspend(&pdev->dev);
>> >>                 pm_runtime_mark_last_busy(&pdev->dev);
>> >>                 pm_runtime_put_noidle(&pdev->dev);
>> >> --
>> >> 2.53.0
>> >>

      reply	other threads:[~2026-10-20 10:31 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-19  5:51 Slark Xiao
2026-10-19  7:41 ` Loic Poulain
2026-10-20  3:20   ` Slark Xiao
2026-10-20  7:27     ` Loic Poulain
2026-10-20 10:31       ` Slark Xiao [this message]

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=65d8a1b5.8e5b.1a158ddc4de.Coremail.slark_xiao@163.com \
    --to=slark_xiao@163.com \
    --cc=jeff.hugo@oss.qualcomm.com \
    --cc=krishna.chundru@oss.qualcomm.com \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=loic.poulain@oss.qualcomm.com \
    --cc=mani@kernel.org \
    --cc=mhi@lists.linux.dev \
    --cc=stable@vger.kernel.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

all inboxes | Powered by JetHome®