[regression] mhi: ath11k resume fails on some devices
Manivannan Sadhasivam
manivannan.sadhasivam at linaro.org
Fri Sep 24 02:57:55 PDT 2021
On Fri, Sep 24, 2021 at 12:07:41PM +0300, Kalle Valo wrote:
> Manivannan Sadhasivam <manivannan.sadhasivam at linaro.org> writes:
>
> > For aid debugging, please see the state the device is in during mhi_pm_resume().
> > You can use below diff:
> >
> > diff --git a/drivers/bus/mhi/core/pm.c b/drivers/bus/mhi/core/pm.c
> > index fb99e3727155..482d55dd209e 100644
> > --- a/drivers/bus/mhi/core/pm.c
> > +++ b/drivers/bus/mhi/core/pm.c
> > @@ -898,6 +898,9 @@ int mhi_pm_resume(struct mhi_controller *mhi_cntrl)
> > if (MHI_PM_IN_ERROR_STATE(mhi_cntrl->pm_state))
> > return -EIO;
> >
> > + dev_info(dev, "Device state: %s\n",
> > + TO_MHI_STATE_STR(mhi_get_mhi_state(mhi_cntrl)));
> > +
> > if (mhi_get_mhi_state(mhi_cntrl) != MHI_STATE_M3)
> > return -EINVAL;
>
> This is what I get with my NUC testbox:
>
> [ 970.488202] ACPI: EC: event unblocked
> [ 970.492484] hpet: Lost 1587 RTC interrupts
> [ 970.492749] mhi mhi0: Device state: RESET
Looks like the MHI device went into RESET state! It also looks to be a
firmware thing. But let's nail this down before adding any workaround in
the MHI stack.
Can you also rebuild the kernel with MHI debug enabled and capture the
logs in faliure case? Sorry if it is too much of work for you!
Thanks,
Mani
> [ 970.492805] ath11k_pci 0000:06:00.0: failed to set mhi state: RESUME(6)
>
> --
> https://patchwork.kernel.org/project/linux-wireless/list/
>
> https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
More information about the ath11k
mailing list