2021-09-21 04:01:16

by Stephen Boyd

[permalink] [raw]
Subject: [PATCH] spmi: pmic-arb: Add sid and address to error messages

It's useful to know what particular device/component is having trouble
accessing the bus. Add the sid and address to error messages here so
that debugging is a little simpler.

Cc: Subbaraman Narayanamurthy <[email protected]>
Cc: satya priya <[email protected]>
Signed-off-by: Stephen Boyd <[email protected]>
---
drivers/spmi/spmi-pmic-arb.c | 17 +++++++++--------
1 file changed, 9 insertions(+), 8 deletions(-)

diff --git a/drivers/spmi/spmi-pmic-arb.c b/drivers/spmi/spmi-pmic-arb.c
index bbbd311eda03..e397c2532c8d 100644
--- a/drivers/spmi/spmi-pmic-arb.c
+++ b/drivers/spmi/spmi-pmic-arb.c
@@ -261,20 +261,21 @@ static int pmic_arb_wait_for_done(struct spmi_controller *ctrl,

if (status & PMIC_ARB_STATUS_DONE) {
if (status & PMIC_ARB_STATUS_DENIED) {
- dev_err(&ctrl->dev, "%s: transaction denied (0x%x)\n",
- __func__, status);
+ dev_err(&ctrl->dev, "%s: %#x %#x: transaction denied (%#x)\n",
+ __func__, sid, addr, status);
return -EPERM;
}

if (status & PMIC_ARB_STATUS_FAILURE) {
- dev_err(&ctrl->dev, "%s: transaction failed (0x%x)\n",
- __func__, status);
+ dev_err(&ctrl->dev, "%s: %#x %#x: transaction failed (%#x)\n",
+ __func__, sid, addr, status);
+ WARN_ON(1);
return -EIO;
}

if (status & PMIC_ARB_STATUS_DROPPED) {
- dev_err(&ctrl->dev, "%s: transaction dropped (0x%x)\n",
- __func__, status);
+ dev_err(&ctrl->dev, "%s: %#x %#x: transaction dropped (%#x)\n",
+ __func__, sid, addr, status);
return -EIO;
}

@@ -283,8 +284,8 @@ static int pmic_arb_wait_for_done(struct spmi_controller *ctrl,
udelay(1);
}

- dev_err(&ctrl->dev, "%s: timeout, status 0x%x\n",
- __func__, status);
+ dev_err(&ctrl->dev, "%s: %#x %#x: timeout, status %#x\n",
+ __func__, sid, addr, status);
return -ETIMEDOUT;
}

--
https://chromeos.dev


2021-09-21 08:55:07

by Satya Priya

[permalink] [raw]
Subject: Re: [PATCH] spmi: pmic-arb: Add sid and address to error messages

On 2021-09-21 05:18, Stephen Boyd wrote:
> It's useful to know what particular device/component is having trouble
> accessing the bus. Add the sid and address to error messages here so
> that debugging is a little simpler.
>
> Cc: Subbaraman Narayanamurthy <[email protected]>
> Cc: satya priya <[email protected]>
> Signed-off-by: Stephen Boyd <[email protected]>
> ---

Reviewed-by: Satya Priya <[email protected]>

> drivers/spmi/spmi-pmic-arb.c | 17 +++++++++--------
> 1 file changed, 9 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/spmi/spmi-pmic-arb.c
> b/drivers/spmi/spmi-pmic-arb.c
> index bbbd311eda03..e397c2532c8d 100644
> --- a/drivers/spmi/spmi-pmic-arb.c
> +++ b/drivers/spmi/spmi-pmic-arb.c
> @@ -261,20 +261,21 @@ static int pmic_arb_wait_for_done(struct
> spmi_controller *ctrl,
>
> if (status & PMIC_ARB_STATUS_DONE) {
> if (status & PMIC_ARB_STATUS_DENIED) {
> - dev_err(&ctrl->dev, "%s: transaction denied (0x%x)\n",
> - __func__, status);
> + dev_err(&ctrl->dev, "%s: %#x %#x: transaction denied (%#x)\n",
> + __func__, sid, addr, status);
> return -EPERM;
> }
>
> if (status & PMIC_ARB_STATUS_FAILURE) {
> - dev_err(&ctrl->dev, "%s: transaction failed (0x%x)\n",
> - __func__, status);
> + dev_err(&ctrl->dev, "%s: %#x %#x: transaction failed (%#x)\n",
> + __func__, sid, addr, status);
> + WARN_ON(1);
> return -EIO;
> }
>
> if (status & PMIC_ARB_STATUS_DROPPED) {
> - dev_err(&ctrl->dev, "%s: transaction dropped (0x%x)\n",
> - __func__, status);
> + dev_err(&ctrl->dev, "%s: %#x %#x: transaction dropped (%#x)\n",
> + __func__, sid, addr, status);
> return -EIO;
> }
>
> @@ -283,8 +284,8 @@ static int pmic_arb_wait_for_done(struct
> spmi_controller *ctrl,
> udelay(1);
> }
>
> - dev_err(&ctrl->dev, "%s: timeout, status 0x%x\n",
> - __func__, status);
> + dev_err(&ctrl->dev, "%s: %#x %#x: timeout, status %#x\n",
> + __func__, sid, addr, status);
> return -ETIMEDOUT;
> }