From: Brian Norris <briannorris-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>
To: Jon Hunter <jonathanh-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
Cc: Lee Jones <lee.jones-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
Shawn Nematbakhsh
<shawnn-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>,
Benson Leung <bleung-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>,
Doug Anderson <dianders-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>
Subject: Re: [PATCH 1/2] mfd: cros ec: spi: Don't send first message too soon
Date: Mon, 13 Nov 2017 13:19:23 -0800 [thread overview]
Message-ID: <20171113211900.GA126873@google.com> (raw)
In-Reply-To: <1510607140-30582-1-git-send-email-jonathanh-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
+ others
On Mon, Nov 13, 2017 at 09:05:39PM +0000, Jon Hunter wrote:
> On the Tegra124 Nyan-Big chromebook the very first SPI message sent to
> the EC is failing.
>
> The Tegra SPI driver configures the SPI chip-selects to be active-high
> by default (and always has for many years). The EC SPI requires an
> active-low chip-select and so the Tegra chip-select is reconfigured to
> be active-low when the EC SPI driver calls spi_setup(). The problem is
> that if the first SPI message to the EC is sent too soon after
> reconfiguring the SPI chip-select, it fails.
>
> The EC SPI driver prevents back-to-back SPI messages being sent too
> soon by keeping track of the time the last transfer was sent via the
> variable 'last_transfer_ns'. To prevent the very first transfer being
> sent too soon, initialise the 'last_transfer_ns' variable after calling
> spi_setup() and before sending the first SPI message.
>
> Signed-off-by: Jon Hunter <jonathanh-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
> ---
> Looks like this issue has been around for several Linux releases now
> and it just depends on timing if this issue is seen or not and so there
> is no specific commit this fixes. However, would be good to include for
> v4.15.
I wonder if that doesn't mean we should have a stable tag still?
Cc: <stable-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>
> drivers/mfd/cros_ec_spi.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/mfd/cros_ec_spi.c b/drivers/mfd/cros_ec_spi.c
> index c9714072e224..a14196e95e9b 100644
> --- a/drivers/mfd/cros_ec_spi.c
> +++ b/drivers/mfd/cros_ec_spi.c
> @@ -667,6 +667,7 @@ static int cros_ec_spi_probe(struct spi_device *spi)
> sizeof(struct ec_response_get_protocol_info);
> ec_dev->dout_size = sizeof(struct ec_host_request);
>
> + ec_spi->last_transfer_ns = ktime_get_ns();
Seems pretty reasonable to me:
Reviewed-by: Brian Norris <briannorris-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>
>
> err = cros_ec_register(ec_dev);
> if (err) {
> --
> 2.7.4
>
WARNING: multiple messages have this Message-ID (diff)
From: Brian Norris <briannorris@chromium.org>
To: Jon Hunter <jonathanh@nvidia.com>
Cc: Lee Jones <lee.jones@linaro.org>,
linux-kernel@vger.kernel.org, linux-tegra@vger.kernel.org,
Shawn Nematbakhsh <shawnn@chromium.org>,
Benson Leung <bleung@chromium.org>,
Doug Anderson <dianders@chromium.org>
Subject: Re: [PATCH 1/2] mfd: cros ec: spi: Don't send first message too soon
Date: Mon, 13 Nov 2017 13:19:23 -0800 [thread overview]
Message-ID: <20171113211900.GA126873@google.com> (raw)
In-Reply-To: <1510607140-30582-1-git-send-email-jonathanh@nvidia.com>
+ others
On Mon, Nov 13, 2017 at 09:05:39PM +0000, Jon Hunter wrote:
> On the Tegra124 Nyan-Big chromebook the very first SPI message sent to
> the EC is failing.
>
> The Tegra SPI driver configures the SPI chip-selects to be active-high
> by default (and always has for many years). The EC SPI requires an
> active-low chip-select and so the Tegra chip-select is reconfigured to
> be active-low when the EC SPI driver calls spi_setup(). The problem is
> that if the first SPI message to the EC is sent too soon after
> reconfiguring the SPI chip-select, it fails.
>
> The EC SPI driver prevents back-to-back SPI messages being sent too
> soon by keeping track of the time the last transfer was sent via the
> variable 'last_transfer_ns'. To prevent the very first transfer being
> sent too soon, initialise the 'last_transfer_ns' variable after calling
> spi_setup() and before sending the first SPI message.
>
> Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
> ---
> Looks like this issue has been around for several Linux releases now
> and it just depends on timing if this issue is seen or not and so there
> is no specific commit this fixes. However, would be good to include for
> v4.15.
I wonder if that doesn't mean we should have a stable tag still?
Cc: <stable@vger.kernel.org>
> drivers/mfd/cros_ec_spi.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/mfd/cros_ec_spi.c b/drivers/mfd/cros_ec_spi.c
> index c9714072e224..a14196e95e9b 100644
> --- a/drivers/mfd/cros_ec_spi.c
> +++ b/drivers/mfd/cros_ec_spi.c
> @@ -667,6 +667,7 @@ static int cros_ec_spi_probe(struct spi_device *spi)
> sizeof(struct ec_response_get_protocol_info);
> ec_dev->dout_size = sizeof(struct ec_host_request);
>
> + ec_spi->last_transfer_ns = ktime_get_ns();
Seems pretty reasonable to me:
Reviewed-by: Brian Norris <briannorris@chromium.org>
>
> err = cros_ec_register(ec_dev);
> if (err) {
> --
> 2.7.4
>
next prev parent reply other threads:[~2017-11-13 21:19 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-11-13 21:05 [PATCH 1/2] mfd: cros ec: spi: Don't send first message too soon Jon Hunter
2017-11-13 21:05 ` Jon Hunter
2017-11-13 21:05 ` [PATCH 2/2] mfd: cros ec: spi: Simplify delay handling between SPI messages Jon Hunter
2017-11-13 21:05 ` Jon Hunter
[not found] ` <1510607140-30582-2-git-send-email-jonathanh-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2017-11-13 21:22 ` Brian Norris
2017-11-13 21:22 ` Brian Norris
2017-11-29 11:07 ` Lee Jones
2017-11-29 11:07 ` Lee Jones
[not found] ` <1510607140-30582-1-git-send-email-jonathanh-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2017-11-13 21:19 ` Brian Norris [this message]
2017-11-13 21:19 ` [PATCH 1/2] mfd: cros ec: spi: Don't send first message too soon Brian Norris
[not found] ` <20171113211900.GA126873-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2017-11-14 14:44 ` Jon Hunter
2017-11-14 14:44 ` Jon Hunter
2017-11-29 11:07 ` Lee Jones
2017-11-29 11:07 ` 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=20171113211900.GA126873@google.com \
--to=briannorris-f7+t8e8rja9g9huczpvpmw@public.gmane.org \
--cc=bleung-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org \
--cc=dianders-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org \
--cc=jonathanh-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org \
--cc=lee.jones-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=shawnn-F7+t8E8rja9g9hUCZPvPmw@public.gmane.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 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.