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

Commit d7713eda authored by Skylar Chang's avatar Skylar Chang Committed by Gerrit - the friendly Code Review server
Browse files

msm: gsi: configure GSI CNTXT_MSI_BASE reg



Set registers GSI_TOP_EE_n_CNTXT_MSI_BASE_LSB
and GSI_TOP_EE_n_CNTXT_MSI_BASE_MSB to 0 on boot
in sm8150.

Change-Id: Iaa128d01db7d5901ec38bcf63cd0daf030fb8579
Signed-off-by: default avatarSkylar Chang <chiaweic@codeaurora.org>
parent 47906484
Loading
Loading
Loading
Loading
+8 −0
Original line number Original line Diff line number Diff line
@@ -1165,6 +1165,14 @@ int gsi_register_device(struct gsi_per_props *props, unsigned long *dev_hdl)


	gsi_writel(props->intr, gsi_ctx->base +
	gsi_writel(props->intr, gsi_ctx->base +
			GSI_EE_n_CNTXT_INTSET_OFFS(gsi_ctx->per.ee));
			GSI_EE_n_CNTXT_INTSET_OFFS(gsi_ctx->per.ee));
	/* set GSI_TOP_EE_n_CNTXT_MSI_BASE_LSB/MSB to 0 */
	if ((gsi_ctx->per.ver >= GSI_VER_2_0) &&
		(props->intr != GSI_INTR_MSI)) {
		gsi_writel(0, gsi_ctx->base +
			GSI_EE_n_CNTXT_MSI_BASE_LSB(gsi_ctx->per.ee));
		gsi_writel(0, gsi_ctx->base +
			GSI_EE_n_CNTXT_MSI_BASE_MSB(gsi_ctx->per.ee));
	}


	val = gsi_readl(gsi_ctx->base +
	val = gsi_readl(gsi_ctx->base +
			GSI_EE_n_GSI_STATUS_OFFS(gsi_ctx->per.ee));
			GSI_EE_n_GSI_STATUS_OFFS(gsi_ctx->per.ee));
+5 −0
Original line number Original line Diff line number Diff line
@@ -1013,6 +1013,11 @@
#define GSI_EE_n_CNTXT_GSI_IRQ_CLR_GSI_BREAK_POINT_BMSK 0x1
#define GSI_EE_n_CNTXT_GSI_IRQ_CLR_GSI_BREAK_POINT_BMSK 0x1
#define GSI_EE_n_CNTXT_GSI_IRQ_CLR_GSI_BREAK_POINT_SHFT 0x0
#define GSI_EE_n_CNTXT_GSI_IRQ_CLR_GSI_BREAK_POINT_SHFT 0x0


#define GSI_EE_n_CNTXT_MSI_BASE_LSB(n) \
	(GSI_GSI_REG_BASE_OFFS + 0x0001f188 + 0x4000 * (n))
#define GSI_EE_n_CNTXT_MSI_BASE_MSB(n) \
	(GSI_GSI_REG_BASE_OFFS + 0x0001f18c + 0x4000 * (n))

#define GSI_EE_n_CNTXT_INTSET_OFFS(n) \
#define GSI_EE_n_CNTXT_INTSET_OFFS(n) \
	(GSI_GSI_REG_BASE_OFFS + 0x0001f180 + 0x4000 * (n))
	(GSI_GSI_REG_BASE_OFFS + 0x0001f180 + 0x4000 * (n))
#define GSI_EE_n_CNTXT_INTSET_INTYPE_BMSK 0x1
#define GSI_EE_n_CNTXT_INTSET_INTYPE_BMSK 0x1
+5 −0
Original line number Original line Diff line number Diff line
@@ -1013,6 +1013,11 @@
#define GSI_EE_n_CNTXT_GSI_IRQ_CLR_GSI_BREAK_POINT_BMSK 0x1
#define GSI_EE_n_CNTXT_GSI_IRQ_CLR_GSI_BREAK_POINT_BMSK 0x1
#define GSI_EE_n_CNTXT_GSI_IRQ_CLR_GSI_BREAK_POINT_SHFT 0x0
#define GSI_EE_n_CNTXT_GSI_IRQ_CLR_GSI_BREAK_POINT_SHFT 0x0


#define GSI_EE_n_CNTXT_MSI_BASE_LSB(n) \
	(GSI_GSI_REG_BASE_OFFS + 0x00012188 + 0x4000 * (n))
#define GSI_EE_n_CNTXT_MSI_BASE_MSB(n) \
	(GSI_GSI_REG_BASE_OFFS + 0x0001218c + 0x4000 * (n))

#define GSI_EE_n_CNTXT_INTSET_OFFS(n) \
#define GSI_EE_n_CNTXT_INTSET_OFFS(n) \
	(GSI_GSI_REG_BASE_OFFS + 0x00012180 + 0x4000 * (n))
	(GSI_GSI_REG_BASE_OFFS + 0x00012180 + 0x4000 * (n))
#define GSI_EE_n_CNTXT_INTSET_INTYPE_BMSK 0x1
#define GSI_EE_n_CNTXT_INTSET_INTYPE_BMSK 0x1