Re: [PATCH] net: qrtr: Unprepare MHI channels during remove

Jeffrey Hugo
2020-11-18T18:34:43Z

On 11/18/2020 11:20 AM, Bhaumik Bhatt wrote:
> Reset MHI device channels when driver remove is called due to
> module unload or any crash scenario. This will make sure that
> MHI channels no longer remain enabled for transfers since the
> MHI stack does not take care of this anymore after the auto-start
> channels feature was removed.
>
> Signed-off-by: Bhaumik Bhatt <bbhatt@codeaurora.org>
> ---
> net/qrtr/mhi.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/net/qrtr/mhi.c b/net/qrtr/mhi.c
> index 7100f0b..2bf2b19 100644
> --- a/net/qrtr/mhi.c
> +++ b/net/qrtr/mhi.c
> @@ -104,6 +104,7 @@ static void qcom_mhi_qrtr_remove(struct mhi_device *mhi_dev)
> struct qrtr_mhi_dev *qdev = dev_get_drvdata(&mhi_dev->dev);
>
> qrtr_endpoint_unregister(&qdev->ep);
> + mhi_unprepare_from_transfer(mhi_dev);
> dev_set_drvdata(&mhi_dev->dev, NULL);
> }
>
>

I admit, I didn't pay much attention to the auto-start being removed,
but this seems odd to me.

As a client, the MHI device is being removed, likely because of some
factor outside of my control, but I still need to clean it up? This
really feels like something MHI should be handling.

--
Jeffrey Hugo
Qualcomm Technologies, Inc. is a member of the
Code Aurora Forum, a Linux Foundation Collaborative Project.