]> git.proxmox.com Git - mirror_ubuntu-focal-kernel.git/commit
Revert "i2c: i2c-qcom-geni: Fix DMA transfer race"
authorDouglas Anderson <dianders@chromium.org>
Tue, 13 Oct 2020 21:25:29 +0000 (14:25 -0700)
committerKleber Sacilotto de Souza <kleber.souza@canonical.com>
Wed, 20 Jan 2021 13:25:34 +0000 (14:25 +0100)
commitdff6a7c8d49c146d01afd0a0c4964721b231e07d
treea2bc98cffefd29b4386e6118c39c224a5dd9791b
parentee69956f4f20eea8ead617e13e00bb3ce1a8d5e8
Revert "i2c: i2c-qcom-geni: Fix DMA transfer race"

BugLink: https://bugs.launchpad.net/bugs/1910822
[ Upstream commit 9cb4c67d7717135d6f4600a49ab07b470ea4ee2f ]

This reverts commit 02b9aec59243c6240fc42884acc958602146ddf6.

As talked about in the patch ("soc: qcom: geni: More properly switch
to DMA mode"), swapping the order of geni_se_setup_m_cmd() and
geni_se_xx_dma_prep() can sometimes cause corrupted transfers.  Thus
we traded one problem for another.  Now that we've debugged the
problem further and fixed the geni helper functions to more disable
FIFO interrupts when we move to DMA mode we can revert it and end up
with (hopefully) zero problems!

To be explicit, the patch ("soc: qcom: geni: More properly switch
to DMA mode") is a prerequisite for this one.

Fixes: 02b9aec59243 ("i2c: i2c-qcom-geni: Fix DMA transfer race")
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Reviewed-by: Akash Asthana <akashast@codeaurora.org>
Tested-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20201013142448.v2.2.I7b22281453b8a18ab16ef2bfd4c641fb1cc6a92c@changeid
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Kelsey Skunberg <kelsey.skunberg@canonical.com>
drivers/i2c/busses/i2c-qcom-geni.c