From: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
To: Bhaumik Bhatt <bbhatt@codeaurora.org>
Cc: linux-arm-msm@vger.kernel.org, hemantk@codeaurora.org,
jhugo@codeaurora.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v6 07/11] bus: mhi: core: Introduce counters to track MHI device state transitions
Date: Fri, 7 Aug 2020 10:43:20 +0530 [thread overview]
Message-ID: <20200807051320.GB3230@Mani-XPS-13-9360> (raw)
In-Reply-To: <1595901740-27379-8-git-send-email-bbhatt@codeaurora.org>
On Mon, Jul 27, 2020 at 07:02:16PM -0700, Bhaumik Bhatt wrote:
> Use counters to track MHI device state transitions such as those
> to M0, M2, or M3 states. This can help in better debug, allowing
> the user to see the number of transitions to a certain MHI state
> when queried using debugfs entries or via other mechanisms.
>
> Signed-off-by: Bhaumik Bhatt <bbhatt@codeaurora.org>
Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
A minor nit below...
> ---
> drivers/bus/mhi/core/pm.c | 4 ++++
> include/linux/mhi.h | 2 ++
> 2 files changed, 6 insertions(+)
>
> diff --git a/drivers/bus/mhi/core/pm.c b/drivers/bus/mhi/core/pm.c
> index 27bb471..ce4d969 100644
> --- a/drivers/bus/mhi/core/pm.c
> +++ b/drivers/bus/mhi/core/pm.c
> @@ -256,6 +256,7 @@ int mhi_pm_m0_transition(struct mhi_controller *mhi_cntrl)
> dev_err(dev, "Unable to transition to M0 state\n");
> return -EIO;
> }
> + mhi_cntrl->M0++;
>
> /* Wake up the device */
> read_lock_bh(&mhi_cntrl->pm_lock);
> @@ -326,6 +327,8 @@ void mhi_pm_m1_transition(struct mhi_controller *mhi_cntrl)
> mhi_cntrl->dev_state = MHI_STATE_M2;
>
> write_unlock_irq(&mhi_cntrl->pm_lock);
> +
> + mhi_cntrl->M2++;
> wake_up_all(&mhi_cntrl->state_event);
>
> /* If there are any pending resources, exit M2 immediately */
> @@ -362,6 +365,7 @@ int mhi_pm_m3_transition(struct mhi_controller *mhi_cntrl)
> return -EIO;
> }
>
> + mhi_cntrl->M3++;
> wake_up_all(&mhi_cntrl->state_event);
>
> return 0;
> diff --git a/include/linux/mhi.h b/include/linux/mhi.h
> index a8379b3..e38de6d 100644
> --- a/include/linux/mhi.h
> +++ b/include/linux/mhi.h
> @@ -328,6 +328,7 @@ struct mhi_controller_config {
> * @dev_state: MHI device state
> * @dev_wake: Device wakeup count
> * @pending_pkts: Pending packets for the controller
> + * @M0, M2, M3, M3_fast: Counters to track number of device MHI state changes
> * @transition_list: List of MHI state transitions
> * @transition_lock: Lock for protecting MHI state transition list
> * @wlock: Lock for protecting device wakeup
> @@ -407,6 +408,7 @@ struct mhi_controller {
> enum mhi_state dev_state;
> atomic_t dev_wake;
> atomic_t pending_pkts;
> + u32 M0, M2, M3, M3_fast;
Are you using M3_fast anywhere in current series? If not, please drop it for
now.
Thanks,
Mani
> struct list_head transition_list;
> spinlock_t transition_lock;
> spinlock_t wlock;
> --
> The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
> a Linux Foundation Collaborative Project
>
next prev parent reply other threads:[~2020-08-07 5:13 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-07-28 2:02 [PATCH v6 00/11] Introduce features and debugfs/sysfs entries for MHI Bhaumik Bhatt
2020-07-28 2:02 ` [PATCH v6 01/11] bus: mhi: core: Remove double occurrence for mhi_ctrl_ev_task() declaration Bhaumik Bhatt
2020-07-28 2:02 ` [PATCH v6 02/11] bus: mhi: core: Abort suspends due to outgoing pending packets Bhaumik Bhatt
2020-07-28 2:02 ` [PATCH v6 03/11] bus: mhi: core: Use helper API to trigger a non-blocking host resume Bhaumik Bhatt
2020-07-28 2:02 ` [PATCH v6 04/11] bus: mhi: core: Trigger host resume if suspended during mhi_device_get() Bhaumik Bhatt
2020-07-28 2:02 ` [PATCH v6 05/11] bus: mhi: core: Use generic name field for an MHI device Bhaumik Bhatt
2020-07-28 2:02 ` [PATCH v6 06/11] bus: mhi: core: Introduce helper function to check device state Bhaumik Bhatt
2020-07-28 2:02 ` [PATCH v6 07/11] bus: mhi: core: Introduce counters to track MHI device state transitions Bhaumik Bhatt
2020-08-07 5:13 ` Manivannan Sadhasivam [this message]
2020-07-28 2:02 ` [PATCH v6 08/11] bus: mhi: core: Introduce debugfs entries for MHI Bhaumik Bhatt
2020-08-01 7:08 ` kernel test robot
2020-07-28 2:02 ` [PATCH v6 09/11] bus: mhi: core: Read and save device hardware information from BHI Bhaumik Bhatt
2020-07-28 2:02 ` [PATCH v6 10/11] bus: mhi: core: Introduce APIs to allocate and free the MHI controller Bhaumik Bhatt
2020-08-07 5:15 ` Manivannan Sadhasivam
2020-07-28 2:02 ` [PATCH v6 11/11] bus: mhi: core: Introduce sysfs entries for MHI Bhaumik Bhatt
2020-08-07 5:22 ` Manivannan Sadhasivam
2020-08-10 19:11 ` bbhatt
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=20200807051320.GB3230@Mani-XPS-13-9360 \
--to=manivannan.sadhasivam@linaro.org \
--cc=bbhatt@codeaurora.org \
--cc=hemantk@codeaurora.org \
--cc=jhugo@codeaurora.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@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;
as well as URLs for NNTP newsgroup(s).