aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVinod Koul <vkoul@kernel.org>2020-07-23 19:54:03 +0530
committerVinod Koul <vkoul@kernel.org>2020-07-23 19:54:03 +0530
commitadaa195fb63c3e07eaf61e42dacfaf684f8ebf00 (patch)
tree6bc1da5f7b3c6e6a8422f68b77e8798001d0e86e
parent889b761158bd169515466d6ad500be1062661724 (diff)
debug trestopic/gsi
Signed-off-by: Vinod Koul <vkoul@kernel.org>
-rw-r--r--drivers/dma/qcom/gpi.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/drivers/dma/qcom/gpi.c b/drivers/dma/qcom/gpi.c
index de7944611fa5..c7d0c8f3eacd 100644
--- a/drivers/dma/qcom/gpi.c
+++ b/drivers/dma/qcom/gpi.c
@@ -1459,11 +1459,18 @@ static void gpi_process_imed_data_event(struct gpii_chan *gpii_chan,
GPII_ERR(gpii, gpii_chan->chid, "Event: %08x %08x %08x %08x\n",
gpi_ere->dword[0], gpi_ere->dword[1],
gpi_ere->dword[2], gpi_ere->dword[3]);
+ pr_err("VK: %s Event TRE: %08x %08x %08x %08x\n", __func__,
+ gpi_ere->dword[0], gpi_ere->dword[1],
+ gpi_ere->dword[2], gpi_ere->dword[3]);
gpi_tre = tre;
GPII_ERR(gpii, gpii_chan->chid,
"Pending TRE: %08x %08x %08x %08x\n",
gpi_tre->dword[0], gpi_tre->dword[1],
gpi_tre->dword[2], gpi_tre->dword[3]);
+
+ pr_err("VK %s Pending TRE: %08x %08x %08x %08x\n", __func__,
+ gpi_tre->dword[0], gpi_tre->dword[1],
+ gpi_tre->dword[2], gpi_tre->dword[3]);
gpi_generate_cb_event(gpii_chan, MSM_GPI_QUP_EOT_DESC_MISMATCH,
__LINE__);
return;
@@ -1551,6 +1558,9 @@ static void gpi_process_xfer_compl_event(struct gpii_chan *gpii_chan,
GPII_ERR(gpii, gpii_chan->chid, "Event: %08x %08x %08x %08x\n",
gpi_ere->dword[0], gpi_ere->dword[1],
gpi_ere->dword[2], gpi_ere->dword[3]);
+ pr_err("VK: %s Event TRE: %08x %08x %08x %08x\n", __func__,
+ gpi_ere->dword[0], gpi_ere->dword[1],
+ gpi_ere->dword[2], gpi_ere->dword[3]);
gpi_generate_cb_event(gpii_chan, MSM_GPI_QUP_EOT_DESC_MISMATCH,
__LINE__);
return;
@@ -1630,6 +1640,11 @@ static void gpi_process_events(struct gpii *gpii)
gpi_event->gpi_ere.dword[1],
gpi_event->gpi_ere.dword[2],
gpi_event->gpi_ere.dword[3]);
+ pr_err("VK: %s %08x %08x %08x %08x\n", __func__,
+ gpi_event->gpi_ere.dword[0],
+ gpi_event->gpi_ere.dword[1],
+ gpi_event->gpi_ere.dword[2],
+ gpi_event->gpi_ere.dword[3]);
switch (type) {
case XFER_COMPLETE_EV_TYPE:
@@ -2295,6 +2310,7 @@ struct dma_async_tx_descriptor *gpi_prep_slave_sg(struct dma_chan *chan,
void *tre, *wp = NULL;
const gfp_t gfp = GFP_ATOMIC;
struct gpi_desc *gpi_desc;
+ struct msm_gpi_tre *msm_tre;
gpii->ieob_set = false;
pr_err("VK: in %s\n", __func__);
@@ -2332,6 +2348,9 @@ struct dma_async_tx_descriptor *gpi_prep_slave_sg(struct dma_chan *chan,
/* copy each tre into transfer ring */
for_each_sg(sgl, sg, sg_len, i) {
tre = sg_virt(sg);
+ msm_tre = tre;
+ pr_err("VK: TRE:%d: %x:%x:%x:%x\n", i, msm_tre->dword[0], msm_tre->dword[1],
+ msm_tre->dword[2], msm_tre->dword[3]);
/* Check if last tre has ieob set */
if (i == sg_len - 1) {