From: Dmitry Osipenko <digetx@gmail.com>
To: Thierry Reding <thierry.reding@gmail.com>,
Jonathan Hunter <jonathanh@nvidia.com>,
Laxman Dewangan <ldewangan@nvidia.com>,
Mikko Perttunen <cyndis@kapsi.fi>,
Wolfram Sang <wsa@the-dreams.de>
Cc: linux-i2c@vger.kernel.org, linux-tegra@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: [PATCH v4 0/8] NVIDIA Tegra I2C driver fixes and improvements
Date: Sun, 12 Jan 2020 20:14:22 +0300 [thread overview]
Message-ID: <20200112171430.27219-1-digetx@gmail.com> (raw)
Hello,
This patchset adds support for atomic transfers which are required for
shutting down machine properly. Secondly, a (not)suspending I2C and some
other things are fixed/improved by this small series as well. Please review
and apply, thanks in advance!
Changelog:
v4: Removed the "clk: tegra: Fix double-free in tegra_clk_init()" patch
from this series, which was added by accident in v3.
Added Thierry's tested-by to the patches.
v3: The "Prevent interrupt triggering after transfer timeout" and "Support
atomic transfers" patches got extra very minor improvements. The
completion now is passed directly to tegra_i2c_poll_completion_timeout(),
for consistency.
Added two new patches that firm up DMA transfer handling:
i2c: tegra: Always terminate DMA transfer
i2c: tegra: Check DMA completion status in addition to left time
v2: The series is renamed from "Tegra I2C: Support atomic transfers and
correct suspend/resume" to "NVIDIA Tegra I2C driver fixes and
improvements" because it now contains some more various changes.
New patches in v2:
i2c: tegra: Correct unwinding order on driver's probe error
i2c: tegra: Prevent interrupt triggering after transfer timeout
i2c: tegra: Use relaxed versions of readl/writel
The "Rename I2C_PIO_MODE_MAX_LEN to I2C_PIO_MODE_PREFERRED_LEN" got an
improved wording for the code's comment to I2C_PIO_MODE_PREFERRED_LEN.
The "Support atomic transfers" also got some very minor tuning, like
s/in_interrupt()/i2c_dev->is_curr_atomic_xfer/ in dvc_writel() that was
missed in v1.
v1: The "i2c: tegra: Support atomic transfers" previously was sent out as
a separate patch, but later I spotted that suspend/resume doesn't
work properly. The "i2c: tegra: Fix suspending in active runtime PM
state" patch depends on the atomic patch because there is a need to
active IRQ-safe mode for the runtime PM by both patches.
I fixed a missed doc-comment of the newly added "is_curr_atomic_xfer"
structure field and added additional comment that explains why IRQ needs
to be disabled for the atomic transfer in the "Support atomic transfers"
patch.
Lastly, I added a minor "i2c: tegra: Rename .." patch that helps to
follow driver's code.
Dmitry Osipenko (8):
i2c: tegra: Fix suspending in active runtime PM state
i2c: tegra: Properly disable runtime PM on driver's probe error
i2c: tegra: Prevent interrupt triggering after transfer timeout
i2c: tegra: Support atomic transfers
i2c: tegra: Rename I2C_PIO_MODE_MAX_LEN to I2C_PIO_MODE_PREFERRED_LEN
i2c: tegra: Use relaxed versions of readl/writel
i2c: tegra: Always terminate DMA transfer
i2c: tegra: Check DMA completion status in addition to left time
drivers/i2c/busses/i2c-tegra.c | 216 ++++++++++++++++++++++-----------
1 file changed, 144 insertions(+), 72 deletions(-)
--
2.24.0
next reply other threads:[~2020-01-12 17:17 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-01-12 17:14 Dmitry Osipenko [this message]
2020-01-12 17:14 ` [PATCH v4 1/8] i2c: tegra: Fix suspending in active runtime PM state Dmitry Osipenko
2020-01-12 17:14 ` [PATCH v4 2/8] i2c: tegra: Properly disable runtime PM on driver's probe error Dmitry Osipenko
2020-01-12 17:14 ` [PATCH v4 3/8] i2c: tegra: Prevent interrupt triggering after transfer timeout Dmitry Osipenko
2020-01-12 17:14 ` [PATCH v4 4/8] i2c: tegra: Support atomic transfers Dmitry Osipenko
2020-01-13 22:03 ` Wolfram Sang
2020-01-13 22:52 ` Dmitry Osipenko
2020-01-14 1:26 ` Dmitry Osipenko
2020-01-14 5:57 ` Wolfram Sang
2020-01-12 17:14 ` [PATCH v4 5/8] i2c: tegra: Rename I2C_PIO_MODE_MAX_LEN to I2C_PIO_MODE_PREFERRED_LEN Dmitry Osipenko
2020-01-12 17:14 ` [PATCH v4 6/8] i2c: tegra: Use relaxed versions of readl/writel Dmitry Osipenko
2020-01-12 17:14 ` [PATCH v4 7/8] i2c: tegra: Always terminate DMA transfer Dmitry Osipenko
2020-01-12 17:14 ` [PATCH v4 8/8] i2c: tegra: Check DMA completion status in addition to left time Dmitry Osipenko
2020-01-13 21:53 ` [PATCH v4 0/8] NVIDIA Tegra I2C driver fixes and improvements Wolfram Sang
2020-01-13 23:01 ` Dmitry Osipenko
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=20200112171430.27219-1-digetx@gmail.com \
--to=digetx@gmail.com \
--cc=cyndis@kapsi.fi \
--cc=jonathanh@nvidia.com \
--cc=ldewangan@nvidia.com \
--cc=linux-i2c@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-tegra@vger.kernel.org \
--cc=thierry.reding@gmail.com \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox