From: Michal Simek <michal.simek-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org>
To: Robert ABEL
<rabel-Ejy783gw450hGw5VS8l+XCM2BslAju9D@public.gmane.org>,
wsa-z923LK4zBo2bacvFa/9K2g@public.gmane.org,
linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Cc: michal.simek-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org
Subject: Re: [PATCH 5/6] i2c: Xilinx IIC: make reset after TX error configurable
Date: Mon, 3 Aug 2015 07:34:27 +0200 [thread overview]
Message-ID: <55BEFD63.6090108@xilinx.com> (raw)
In-Reply-To: <1438344034-20211-7-git-send-email-rabel-Ejy783gw450hGw5VS8l+XCM2BslAju9D@public.gmane.org>
On 07/31/2015 02:00 PM, Robert ABEL wrote:
> CONFIG_I2C_XILINX_ERRATA makes resetting XIIC after every
> Master Transmit error configurable.
> Also mention proper module name for XIIC kernel module.
Datasheet? version.
>
> Signed-off-by: Robert ABEL <rabel-Ejy783gw450hGw5VS8l+XCM2BslAju9D@public.gmane.org>
> ---
> drivers/i2c/busses/Kconfig | 9 ++++++++-
> drivers/i2c/busses/i2c-xiic.c | 9 +++++++++
> 2 files changed, 17 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig
> index 46d5488..3255e89 100644
> --- a/drivers/i2c/busses/Kconfig
> +++ b/drivers/i2c/busses/Kconfig
> @@ -886,7 +886,14 @@ config I2C_XILINX
> Xilinx I2C controller.
>
> This driver can also be built as a module. If so, the module
> - will be called xilinx_i2c.
> + will be called i2c-xiic.
> +
> +config I2C_XILINX_ERRATA
> + bool "Reset on "
> + depends on I2C_XILINX
> + help
> + By enabling this option, the Xilinx I2C Controller will be reset
> + after Master Transmit Errors.
>
> config I2C_XLR
> tristate "XLR I2C support"
> diff --git a/drivers/i2c/busses/i2c-xiic.c b/drivers/i2c/busses/i2c-xiic.c
> index 5c9897e..6a834bc 100644
> --- a/drivers/i2c/busses/i2c-xiic.c
> +++ b/drivers/i2c/busses/i2c-xiic.c
> @@ -509,6 +509,15 @@ static irqreturn_t xiic_process(int irq, void *dev_id)
> break;
> }
>
> +#if defined(CONFIG_I2C_XILINX_ERRATA)
> + if (!(msg->flags & I2C_M_RD)) {
> + /* dynamic mode seem to suffer from problems if we just flush
> + * fifos and the next message is a TX with len 0 (only addr)
> + * reset the IP instead of just flushing fifos
> + */
> + xiic_reinit(i2c);
> + }
> +#endif
> }
>
> /* Receive FIFO is full */
>
Make it DT configurable.
Thanks,
Michal
next prev parent reply other threads:[~2015-08-03 5:34 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-31 12:00 [PATCH 0/6] i2c: Xilinx IIC: rework driver Robert ABEL
[not found] ` <1438344034-20211-1-git-send-email-rabel-Ejy783gw450hGw5VS8l+XCM2BslAju9D@public.gmane.org>
2015-07-31 12:00 ` [PATCH 0/6] i2c: Xilinx IIC: rename register defines Robert ABEL
2015-07-31 12:00 ` [PATCH 1/6] i2c: Xilinx IIC: remove Endianness hack Robert ABEL
2015-07-31 12:00 ` [PATCH 2/6] i2x: Xilinx IIC: remove non-initial tabs Robert ABEL
2015-07-31 12:00 ` [PATCH 3/6] i2c: Xilinx IIC: make all ioread/write calls 32-bit Robert ABEL
2015-07-31 12:00 ` [PATCH 4/6] i2c: Xilinx IIC: completely redo FSM/ISR logic Robert ABEL
2015-07-31 12:00 ` [PATCH 5/6] i2c: Xilinx IIC: make reset after TX error configurable Robert ABEL
[not found] ` <1438344034-20211-7-git-send-email-rabel-Ejy783gw450hGw5VS8l+XCM2BslAju9D@public.gmane.org>
2015-08-03 5:34 ` Michal Simek [this message]
[not found] ` <55BEFD63.6090108-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org>
2015-08-03 7:50 ` Robert Abel
[not found] ` <CAMdRc4F__S-dQOOsZv0pUtER5+-kwH=Mt+wfanvJXHWqS=YRMA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-08-06 9:18 ` Michal Simek
[not found] ` <55C32666.6070304-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org>
2015-08-06 9:40 ` Robert Abel
2015-07-31 12:00 ` [PATCH 6/6] i2c: Xilinx IIC: add DT Endianness support Robert ABEL
[not found] ` <1438344034-20211-8-git-send-email-rabel-Ejy783gw450hGw5VS8l+XCM2BslAju9D@public.gmane.org>
2015-08-03 5:32 ` Michal Simek
[not found] ` <55BEFCE5.70109-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org>
2015-08-03 7:46 ` Robert Abel
2015-08-03 5:26 ` [PATCH 0/6] i2c: Xilinx IIC: rework driver Michal Simek
[not found] ` <55BEFB87.1090909-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org>
2015-08-03 7:30 ` Robert Abel
[not found] ` <CAMdRc4EKRQki+Pm-Et29FyaKARkiCeNGsGYMAQFVyYyvxW2EOg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-08-03 7:44 ` Michal Simek
[not found] ` <55BF1BF5.4010809-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org>
2015-08-03 7:56 ` Robert Abel
[not found] ` <CAKfKVtG6rRyb70Mxe46Rd9czkx6kSaf91pTeysRf78vtpypFBA@mail.gmail.com>
[not found] ` <CAMdRc4EmQN7SAxgcuauowuz5vOvNn2QYsv99=yUNQOSFRVVr8Q@mail.gmail.com>
[not found] ` <CAMdRc4EmQN7SAxgcuauowuz5vOvNn2QYsv99=yUNQOSFRVVr8Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-07-31 20:53 ` Fwd: " Robert Abel
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=55BEFD63.6090108@xilinx.com \
--to=michal.simek-gjffaj9ahvfqt0dzr+alfa@public.gmane.org \
--cc=linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=rabel-Ejy783gw450hGw5VS8l+XCM2BslAju9D@public.gmane.org \
--cc=wsa-z923LK4zBo2bacvFa/9K2g@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.