From: Enric Balletbo i Serra <enric.balletbo@collabora.com>
To: Yu-Hsuan Hsu <yuhsuan@chromium.org>
Cc: ALSA development <alsa-devel@alsa-project.org>,
Takashi Iwai <tiwai@suse.com>,
Liam Girdwood <lgirdwood@gmail.com>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Tzung-Bi Shih <tzungbi@google.com>,
Mark Brown <broonie@kernel.org>,
Guenter Roeck <groeck@chromium.org>,
Benson Leung <bleung@chromium.org>,
Cheng-Yi Chiang <cychiang@chromium.org>
Subject: Re: [PATCH v2] ASoC: cros_ec_codec: Log results when EC commands fail
Date: Fri, 3 Jul 2020 11:19:14 +0200 [thread overview]
Message-ID: <cea2bc7e-035b-2c97-73bf-25dc55ab8801@collabora.com> (raw)
In-Reply-To: <CAGvk5Pqx475MOsefchcgs=CnVJiwFJxa+-J6eHcp1VgscVkTeg@mail.gmail.com>
Hi Yu-Hsuan,
On 3/7/20 10:48, Yu-Hsuan Hsu wrote:
> Enric Balletbo i Serra <enric.balletbo@collabora.com> 於 2020年7月3日 週五 下午4:38寫道:
>>
>> Hi Yu-Hsuan,
>>
>> Thank you for your patch
>>
>> On 3/7/20 9:19, Yu-Hsuan Hsu wrote:
>>> Log results of failed EC commands to identify a problem more easily.
>>>
>>> Replace cros_ec_cmd_xfer_status with cros_ec_cmd_xfer because the result
>>> has already been checked in this function. The wrapper is not needed.
>>>
>>
>> Nack, we did an effort to remove all public users of cros_ec_cmd_xfer() in
>> favour of cros_ec_cmd_xfer_status() and you are reintroducing again. You can do
>> the same but using cros_ec_cmd_xfer_status(). In fact, your patch will not build
>> on top of the upcoming changes.
> Thanks! But I have a question about implementing it. Does it look like
> the one below?
> ret = cros_ec_cmd_xfer_status(ec_dev, msg);
> if (ret < 0) {
In this case will already print an error.
What are you trying to achieve?
If the only reason is of this patch is print a message you should either, or
enable dynamic printk and enable dev_dbg or event better use the kernel trace
functionality. There is no need to be more verbose.
Example:
$ echo 1 > /sys/kernel/debug/tracing/events/cros_ec/enable
$ cat /sys/kernel/debug/tracing/trace
369.416372: cros_ec_request_start: version: 0, command: EC_CMD_USB_PD_POWER_INFO
369.420528: cros_ec_request_done: version: 0, command:
EC_CMD_USB_PD_POWER_INFO, ec result: EC_RES_SUCCESS, retval: 16
Cheers,
Enric
> if (ret == -EPROTO)
> dev_err(..., msg->result)
> goto error;
> }
> I'm not sure whether it makes sense to check ret == -EPROTO here.
>
>>
>>> Signed-off-by: Yu-Hsuan Hsu <yuhsuan@chromium.org>
>>> ---
>>> sound/soc/codecs/cros_ec_codec.c | 9 ++++++++-
>>> 1 file changed, 8 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/sound/soc/codecs/cros_ec_codec.c b/sound/soc/codecs/cros_ec_codec.c
>>> index 8d45c628e988e..a4ab62f59efa6 100644
>>> --- a/sound/soc/codecs/cros_ec_codec.c
>>> +++ b/sound/soc/codecs/cros_ec_codec.c
>>> @@ -90,10 +90,17 @@ static int send_ec_host_command(struct cros_ec_device *ec_dev, uint32_t cmd,
>>> if (outsize)
>>> memcpy(msg->data, out, outsize);
>>>
>>> - ret = cros_ec_cmd_xfer_status(ec_dev, msg);
>>> + ret = cros_ec_cmd_xfer(ec_dev, msg);
>>> if (ret < 0)
>>> goto error;
>>>
>>> + if (msg->result != EC_RES_SUCCESS) {
>>> + dev_err(ec_dev->dev, "Command %d failed: %d\n", cmd,
>>> + msg->result);
>>> + ret = -EPROTO;
>>> + goto error;
>>> + }
>>> +
>>> if (insize)
>>> memcpy(in, msg->data, insize);
>>>
>>>
next prev parent reply other threads:[~2020-07-03 9:19 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-07-03 7:19 [PATCH v2] ASoC: cros_ec_codec: Log results when EC commands fail Yu-Hsuan Hsu
2020-07-03 7:31 ` Tzung-Bi Shih
2020-07-03 8:10 ` Yu-Hsuan Hsu
2020-07-03 8:38 ` Enric Balletbo i Serra
2020-07-03 8:48 ` Yu-Hsuan Hsu
2020-07-03 9:19 ` Enric Balletbo i Serra [this message]
2020-07-03 9:40 ` Yu-Hsuan Hsu
2020-07-03 10:56 ` Enric Balletbo i Serra
2020-07-03 15:58 ` Guenter Roeck
2020-07-03 19:11 ` Yu-Hsuan Hsu
2020-07-03 19:28 ` Guenter Roeck
2020-07-04 11:34 ` Yu-Hsuan Hsu
2020-07-06 9:46 ` Yu-Hsuan Hsu
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=cea2bc7e-035b-2c97-73bf-25dc55ab8801@collabora.com \
--to=enric.balletbo@collabora.com \
--cc=alsa-devel@alsa-project.org \
--cc=bleung@chromium.org \
--cc=broonie@kernel.org \
--cc=cychiang@chromium.org \
--cc=groeck@chromium.org \
--cc=lgirdwood@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=tiwai@suse.com \
--cc=tzungbi@google.com \
--cc=yuhsuan@chromium.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).