Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 90e0b5fd authored by Mukesh Kumar Savaliya's avatar Mukesh Kumar Savaliya Committed by Gerrit - the friendly Code Review server
Browse files

dmaengine: gpi: Add support to dump GPI registers by clients



This is to add gpi register dump support where clients can directly
call the API to dump GSI registers. This helps debug when GSI transfer
has any issue like timeout, no callback etc at the client driver and
want to dump register directly based on the need.

Change-Id: I1d9fadd51ccea166f2a486e84a8de47c134e435b
Signed-off-by: default avatarMukesh Kumar Savaliya <msavaliy@codeaurora.org>
parent 528dad42
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -852,6 +852,15 @@ static void gpi_dump_debug_reg(struct gpii *gpii)
	GPII_ERR(gpii, GPI_DBG_COMMON, "Global IRQ handling Exit\n");
}

void gpi_dump_for_geni(struct dma_chan *chan)
{
	struct gpii_chan *gpii_chan = to_gpii_chan(chan);
	struct gpii *gpii = gpii_chan->gpii;

	gpi_dump_debug_reg(gpii);
}
EXPORT_SYMBOL(gpi_dump_for_geni);

static void gpi_disable_interrupts(struct gpii *gpii)
{
	struct {
+5 −1
Original line number Diff line number Diff line
/* SPDX-License-Identifier: GPL-2.0-only */
/*
 * Copyright (c) 2017-2020, The Linux Foundation. All rights reserved.
 * Copyright (c) 2017-2021, The Linux Foundation. All rights reserved.
 */

#ifndef __MSM_GPI_H_
@@ -263,4 +263,8 @@ struct msm_gpi_dma_async_tx_cb_param {
	void *userdata;
};

/* Client drivers of the GPI can call this function to dump the GPI registers
 * whenever client met some scenario like timeout, error in GPI transfer mode.
 */
void gpi_dump_for_geni(struct dma_chan *chan);
#endif