From: Lee Jones <lee.jones@linaro.org>
To: Doug Anderson <dianders@chromium.org>
Cc: Simon Glass <sjg@chromium.org>,
Andrew Bresticker <abrestic@chromium.org>,
Stephen Warren <swarren@wwwdotorg.org>,
Olof Johansson <olof@lixom.net>,
Sonny Rao <sonnyrao@chromium.org>,
linux-samsung-soc <linux-samsung-soc@vger.kernel.org>,
Javier Martinez Canillas <javier.martinez@collabora.co.uk>,
Bill Richardson <wfrichar@chromium.org>,
Wolfram Sang <wsa@the-dreams.de>, Mark Brown <broonie@kernel.org>,
Samuel Ortiz <sameo@linux.intel.com>,
lk <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 09/10] mfd: cros_ec: Check result code from EC messages
Date: Wed, 18 Jun 2014 08:35:05 +0100 [thread overview]
Message-ID: <20140618073505.GC21030@lee--X1> (raw)
In-Reply-To: <CAD=FV=WNWt111t3wYnOA2npPnAUdnFUC5WbLe+t6n0nJPeiqCQ@mail.gmail.com>
On Tue, 17 Jun 2014, Doug Anderson wrote:
> Simon,
>
> On Tue, Jun 17, 2014 at 8:43 PM, Simon Glass <sjg@chromium.org> wrote:
> >> diff --git a/drivers/mfd/cros_ec_spi.c b/drivers/mfd/cros_ec_spi.c
> >> index 09ca789..4d34f1c 100644
> >> --- a/drivers/mfd/cros_ec_spi.c
> >> +++ b/drivers/mfd/cros_ec_spi.c
> >> @@ -289,21 +289,23 @@ static int cros_ec_cmd_xfer_spi(struct cros_ec_device *ec_dev,
> >> goto exit;
> >> }
> >>
> >> - /* check response error code */
> >> ptr = ec_dev->din;
> >> - if (ptr[0]) {
> >> - if (ptr[0] == EC_RES_IN_PROGRESS) {
> >> - dev_dbg(ec_dev->dev, "command 0x%02x in progress\n",
> >> - ec_msg->command);
> >> - ret = -EAGAIN;
> >> - goto exit;
> >> - }
> >> - dev_warn(ec_dev->dev, "command 0x%02x returned an error %d\n",
> >> - ec_msg->command, ptr[0]);
> >> - debug_packet(ec_dev->dev, "in_err", ptr, len);
> >> - ret = -EINVAL;
> >> +
> >> + /* check response error code */
> >> + ec_msg->result = ptr[0];
> >> + switch (ec_msg->result) {
> >> + case EC_RES_SUCCESS:
> >> + break;
> >> + case EC_RES_IN_PROGRESS:
> >> + ret = -EAGAIN;
> >> + dev_dbg(ec_dev->dev, "command 0x%02x in progress\n",
> >> + ec_msg->command);
> >> goto exit;
> >> + default:
> >> + dev_warn(ec_dev->dev, "command 0x%02x returned %d\n",
> >> + ec_msg->command, ec_msg->result);
> >> }
> >
> > Since this code is the same as the above, should it go in a common
> > function in cros_ec?
>
> So you are thinking it should be written like:
>
> ec_msg->result = ptr[0];
> ret = cros_ec_check_result(ec_dev, ec_msg);
> if (ret)
> goto exit;
>
> ---
>
> int cros_ec_check_result(struct cros_ec_device *ec_dev, struct
> cros_ec_command *ec_msg)
> {
> switch (ec_msg->result) {
> case EC_RES_SUCCESS:
> return 0;
> case EC_RES_IN_PROGRESS:
> dev_dbg(ec_dev->dev, "command 0x%02x in progress\n",
> ec_msg->command);
> return -EAGAIN;
> default:
> dev_warn(ec_dev->dev, "command 0x%02x returned %d\n",
> ec_msg->command, ec_msg->result);
> return 0;
> }
>
> OK, that seems reasonable. I'll plan to spin tomorrow with that.
+1
I'll do a proper review when you re-spin the patch.
--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
next prev parent reply other threads:[~2014-06-18 7:35 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-06-16 21:39 [PATCH 0/10] Batch of cleanup patches for cros_ec Doug Anderson
2014-06-16 21:39 ` [PATCH 01/10] mfd: cros_ec: Fix the comment on cros_ec_remove() Doug Anderson
2014-06-18 7:57 ` Lee Jones
2014-06-18 16:26 ` Doug Anderson
2014-06-18 16:39 ` Lee Jones
2014-06-16 21:39 ` [PATCH 02/10] mfd: cros_ec: IRQs for cros_ec should be optional Doug Anderson
2014-06-18 3:29 ` Simon Glass
2014-06-18 7:55 ` Lee Jones
2014-06-18 16:23 ` Doug Anderson
2014-06-18 16:46 ` Lee Jones
2014-06-18 17:45 ` Doug Anderson
2014-06-16 21:39 ` [PATCH 03/10] mfd: cros_ec: Allow static din/dout buffers with cros_ec_register() Doug Anderson
2014-06-18 3:29 ` Simon Glass
2014-06-18 7:53 ` Lee Jones
2014-06-18 16:35 ` Doug Anderson
2014-06-16 21:39 ` [PATCH 04/10] mfd: cros_ec: Tweak struct cros_ec_device for clarity Doug Anderson
2014-06-18 3:35 ` Simon Glass
2014-06-18 4:16 ` Doug Anderson
2014-06-18 7:49 ` Lee Jones
2014-06-16 21:39 ` [PATCH 05/10] mdf: cros_ec: Detect in-progress commands Doug Anderson
2014-06-18 7:46 ` Lee Jones
2014-06-16 21:39 ` [PATCH 06/10] mfd: cros_ec: Use struct cros_ec_command to communicate with the EC Doug Anderson
2014-06-18 7:45 ` Lee Jones
2014-06-16 21:39 ` [PATCH 07/10] mfd: cros_ec: cleanup: remove unused fields from struct cros_ec_device Doug Anderson
2014-06-18 3:39 ` Simon Glass
2014-06-18 4:22 ` Doug Anderson
2014-06-18 4:25 ` Simon Glass
2014-06-18 4:30 ` Doug Anderson
2014-06-18 7:41 ` Lee Jones
2014-06-16 21:39 ` [PATCH 08/10] mfd: cros_ec: cleanup: Remove EC wrapper functions Doug Anderson
2014-06-18 3:42 ` Simon Glass
2014-06-18 4:27 ` Doug Anderson
[not found] ` <CAD=FV=Ue9OBkXtii4aKrCbKPd--7ZRN_G0pw2ZtX89mcz_hfzQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-06-18 5:05 ` Simon Glass
2014-06-18 5:05 ` Simon Glass
2014-06-18 7:40 ` Lee Jones
2014-06-16 21:39 ` [PATCH 09/10] mfd: cros_ec: Check result code from EC messages Doug Anderson
2014-06-18 3:43 ` Simon Glass
2014-06-18 4:44 ` Doug Anderson
2014-06-18 7:35 ` Lee Jones [this message]
[not found] ` <1402954800-28215-1-git-send-email-dianders-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>
2014-06-16 21:40 ` [PATCH 10/10] mfd: cros_ec: ec_dev->cmd_xfer() returns number of bytes received from EC Doug Anderson
2014-06-16 21:40 ` Doug Anderson
[not found] ` <1402954800-28215-11-git-send-email-dianders-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>
2014-06-18 3:46 ` Simon Glass
2014-06-18 3:46 ` Simon Glass
2014-06-18 4:54 ` Doug Anderson
2014-06-18 5:07 ` Simon Glass
2014-06-18 7:34 ` Lee Jones
2014-06-18 7:34 ` Lee Jones
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=20140618073505.GC21030@lee--X1 \
--to=lee.jones@linaro.org \
--cc=abrestic@chromium.org \
--cc=broonie@kernel.org \
--cc=dianders@chromium.org \
--cc=javier.martinez@collabora.co.uk \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-samsung-soc@vger.kernel.org \
--cc=olof@lixom.net \
--cc=sameo@linux.intel.com \
--cc=sjg@chromium.org \
--cc=sonnyrao@chromium.org \
--cc=swarren@wwwdotorg.org \
--cc=wfrichar@chromium.org \
--cc=wsa@the-dreams.de \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.