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

Commit 39d40ad4 authored by Linux Build Service Account's avatar Linux Build Service Account
Browse files

Merge 9c90eafb on remote branch

Change-Id: Iee486b1c93bc29d3ed1fbd303e43895ab8ee1c10
parents f9dcf0f1 9c90eafb
Loading
Loading
Loading
Loading
+8 −2
Original line number Diff line number Diff line
/* SPDX-License-Identifier: GPL-2.0-only */
/*
 * Copyright (c) 2020, The Linux Foundation. All rights reserved.
 * Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
 */

#define CONFIG_GSI 1
@@ -8,3 +9,8 @@
#define CONFIG_RMNET_IPA3 1
#define CONFIG_RNDIS_IPA 1
#define CONFIG_IPA_WDI_UNIFIED_API 1
#define CONFIG_IPA3_REGDUMP 1
#define CONFIG_IPA3_APPS_REGDUMP 1
#define CONFIG_IPA3_REGDUMP_IPA_4_5 1
#define CONFIG_IPA3_4_5_RGSTR 0
#define CONFIG_IPA3_REGDUMP_NUM_EXTRA_ENDP_REGS 0
+4 −0
Original line number Diff line number Diff line
@@ -4,3 +4,7 @@ export CONFIG_IPA_CLIENTS_MANAGER=m
export CONFIG_IPA_WDI_UNIFIED_API=y
export CONFIG_RMNET_IPA3=y
export CONFIG_RNDIS_IPA=m
export CONFIG_IPA3_REGDUMP=y
export CONFIG_IPA3_APPS_REGDUMP=y
export CONFIG_IPA3_REGDUMP_IPA_4_5=y
export CONFIG_IPA3_4_5_RGSTR=n
+4 −0
Original line number Diff line number Diff line
@@ -4,3 +4,7 @@ export CONFIG_IPA_CLIENTS_MANAGER=y
export CONFIG_IPA_WDI_UNIFIED_API=y
export CONFIG_RMNET_IPA3=y
export CONFIG_RNDIS_IPA=y
export CONFIG_IPA3_REGDUMP=y
export CONFIG_IPA3_APPS_REGDUMP=y
export CONFIG_IPA3_REGDUMP_IPA_4_5=y
export CONFIG_IPA3_4_5_RGSTR=n
+1 −2
Original line number Diff line number Diff line
@@ -1482,8 +1482,7 @@ int gsi_deregister_device(unsigned long dev_hdl, bool force)

	devm_free_irq(gsi_ctx->dev, gsi_ctx->per.irq, gsi_ctx);
	gsi_unmap_base();
	memset(gsi_ctx, 0, sizeof(*gsi_ctx));

	gsi_ctx->per_registered = false;
	return GSI_STATUS_SUCCESS;
}
EXPORT_SYMBOL(gsi_deregister_device);
+62 −2
Original line number Diff line number Diff line
/* Copyright (c) 2019, 2021, The Linux Foundation. All rights reserved.
 *
 * Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 and
@@ -412,6 +414,20 @@ enum ipa_hw_irq_srcs_e {
 */
#define IPA_HW_REG_SAVE_NUM_ACTIVE_PIPES             23


/*
 * Total number of channel contexts that need to be saved for q6
 */

#define IPA_HW_REG_SAVE_GSI_NUM_CH_CNTXT_Q6         11

/*
 * Total number of event ring contexts that need to be saved for Q6
 */

#define IPA_HW_REG_SAVE_GSI_NUM_EVT_CNTXT_Q6         11


/*
 * Macro to set the active flag for all active pipe indexed register
 */
@@ -511,7 +527,29 @@ enum ipa_hw_irq_srcs_e {
	{ GEN_2xVECTOR_REG_OFST(reg_name, IPA_REG_SAVE_HWP_GSI_EE, 3), \
		(u32 *)&ipa_reg_save.gsi.ch_cntxt.uc[3].var_name }, \
	{ GEN_2xVECTOR_REG_OFST(reg_name, IPA_REG_SAVE_HWP_GSI_EE, 4), \
		(u32 *)&ipa_reg_save.gsi.ch_cntxt.uc[4].var_name }
		(u32 *)&ipa_reg_save.gsi.ch_cntxt.uc[4].var_name }, \
	{ GEN_2xVECTOR_REG_OFST(reg_name, IPA_HW_Q6_EE, 0), \
		(u32 *)&ipa_reg_save.gsi.ch_cntxt.q6[0].var_name }, \
	{ GEN_2xVECTOR_REG_OFST(reg_name, IPA_HW_Q6_EE, 1), \
		(u32 *)&ipa_reg_save.gsi.ch_cntxt.q6[1].var_name }, \
	{ GEN_2xVECTOR_REG_OFST(reg_name, IPA_HW_Q6_EE, 2), \
		(u32 *)&ipa_reg_save.gsi.ch_cntxt.q6[2].var_name }, \
	{ GEN_2xVECTOR_REG_OFST(reg_name, IPA_HW_Q6_EE, 3), \
		(u32 *)&ipa_reg_save.gsi.ch_cntxt.q6[3].var_name }, \
	{ GEN_2xVECTOR_REG_OFST(reg_name, IPA_HW_Q6_EE, 4), \
		(u32 *)&ipa_reg_save.gsi.ch_cntxt.q6[4].var_name }, \
	{ GEN_2xVECTOR_REG_OFST(reg_name, IPA_HW_Q6_EE, 5), \
		(u32 *)&ipa_reg_save.gsi.ch_cntxt.q6[5].var_name }, \
	{ GEN_2xVECTOR_REG_OFST(reg_name, IPA_HW_Q6_EE, 6), \
		(u32 *)&ipa_reg_save.gsi.ch_cntxt.q6[6].var_name }, \
	{ GEN_2xVECTOR_REG_OFST(reg_name, IPA_HW_Q6_EE, 7), \
		(u32 *)&ipa_reg_save.gsi.ch_cntxt.q6[7].var_name }, \
	{ GEN_2xVECTOR_REG_OFST(reg_name, IPA_HW_Q6_EE, 8), \
		(u32 *)&ipa_reg_save.gsi.ch_cntxt.q6[8].var_name }, \
	{ GEN_2xVECTOR_REG_OFST(reg_name, IPA_HW_Q6_EE, 9), \
		(u32 *)&ipa_reg_save.gsi.ch_cntxt.q6[9].var_name }, \
	{ GEN_2xVECTOR_REG_OFST(reg_name, IPA_HW_Q6_EE, 10), \
		(u32 *)&ipa_reg_save.gsi.ch_cntxt.q6[10].var_name }

#define IPA_REG_SAVE_CFG_ENTRY_GSI_EVT_CNTXT(reg_name, var_name) \
	{ GEN_2xVECTOR_REG_OFST(reg_name, IPA_HW_A7_EE, 0), \
@@ -545,7 +583,29 @@ enum ipa_hw_irq_srcs_e {
	{ GEN_2xVECTOR_REG_OFST(reg_name, IPA_REG_SAVE_HWP_GSI_EE, 2), \
		(u32 *)&ipa_reg_save.gsi.evt_cntxt.uc[2].var_name }, \
	{ GEN_2xVECTOR_REG_OFST(reg_name, IPA_REG_SAVE_HWP_GSI_EE, 3), \
		(u32 *)&ipa_reg_save.gsi.evt_cntxt.uc[3].var_name }
		(u32 *)&ipa_reg_save.gsi.evt_cntxt.uc[3].var_name }, \
	{ GEN_2xVECTOR_REG_OFST(reg_name, IPA_HW_Q6_EE, 0), \
		(u32 *)&ipa_reg_save.gsi.evt_cntxt.q6[0].var_name }, \
	{ GEN_2xVECTOR_REG_OFST(reg_name, IPA_HW_Q6_EE, 1), \
		(u32 *)&ipa_reg_save.gsi.evt_cntxt.q6[1].var_name }, \
	{ GEN_2xVECTOR_REG_OFST(reg_name, IPA_HW_Q6_EE, 2), \
		(u32 *)&ipa_reg_save.gsi.evt_cntxt.q6[2].var_name }, \
	{ GEN_2xVECTOR_REG_OFST(reg_name, IPA_HW_Q6_EE, 3), \
		(u32 *)&ipa_reg_save.gsi.evt_cntxt.q6[3].var_name }, \
	{ GEN_2xVECTOR_REG_OFST(reg_name, IPA_HW_Q6_EE, 4), \
		(u32 *)&ipa_reg_save.gsi.evt_cntxt.q6[4].var_name }, \
	{ GEN_2xVECTOR_REG_OFST(reg_name, IPA_HW_Q6_EE, 5), \
		(u32 *)&ipa_reg_save.gsi.evt_cntxt.q6[5].var_name }, \
	{ GEN_2xVECTOR_REG_OFST(reg_name, IPA_HW_Q6_EE, 6), \
		(u32 *)&ipa_reg_save.gsi.evt_cntxt.q6[6].var_name }, \
	{ GEN_2xVECTOR_REG_OFST(reg_name, IPA_HW_Q6_EE, 7), \
		(u32 *)&ipa_reg_save.gsi.evt_cntxt.q6[7].var_name }, \
	{ GEN_2xVECTOR_REG_OFST(reg_name, IPA_HW_Q6_EE, 8), \
		(u32 *)&ipa_reg_save.gsi.evt_cntxt.q6[8].var_name }, \
	{ GEN_2xVECTOR_REG_OFST(reg_name, IPA_HW_Q6_EE, 9), \
		(u32 *)&ipa_reg_save.gsi.evt_cntxt.q6[9].var_name }, \
	{ GEN_2xVECTOR_REG_OFST(reg_name, IPA_HW_Q6_EE, 10), \
		(u32 *)&ipa_reg_save.gsi.evt_cntxt.q6[10].var_name }

/*
 * Macro to define a particular register cfg entry for all pipe
Loading