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

Commit e58b4238 authored by qctecmdr Service's avatar qctecmdr Service Committed by Gerrit - the friendly Code Review server
Browse files

Merge "msm: ipa4: Add IPA endpoints mapping for IPA 4.5"

parents b28d86f9 1e710841
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -184,7 +184,16 @@ const char *ipa_clients_strings[IPA_CLIENT_MAX] = {
	__stringify(IPA_CLIENT_TEST3_CONS),
	__stringify(IPA_CLIENT_TEST4_PROD),
	__stringify(IPA_CLIENT_TEST4_CONS),
	__stringify(RESERVERD_PROD_72),
	__stringify(IPA_CLIENT_DUMMY_CONS),
	__stringify(IPA_CLIENT_Q6_DL_NLO_DATA_PROD),
	__stringify(IPA_CLIENT_Q6_UL_NLO_DATA_CONS),
	__stringify(RESERVERD_PROD_76),
	__stringify(IPA_CLIENT_Q6_UL_NLO_ACK_CONS),
	__stringify(RESERVERD_PROD_78),
	__stringify(IPA_CLIENT_Q6_QBAP_STATUS_CONS),
	__stringify(RESERVERD_PROD_80),
	__stringify(IPA_CLIENT_MHI_DPL_CONS),
};

/**
+2 −2
Original line number Diff line number Diff line
@@ -3491,8 +3491,8 @@ static const struct file_operations ipa3_drv_fops = {

static int ipa3_get_clks(struct device *dev)
{
	if (ipa3_ctx->ipa3_hw_mode == IPA_HW_MODE_EMULATION) {
		IPADBG("No clock manipulation when running emulation\n");
	if (ipa3_ctx->ipa3_hw_mode != IPA_HW_MODE_NORMAL) {
		IPADBG("not supported in this HW mode\n");
		ipa3_clk = NULL;
		return 0;
	}
+3 −0
Original line number Diff line number Diff line
@@ -812,6 +812,9 @@ int ipa3_request_gsi_channel(struct ipa_request_gsi_channel_params *params,

	params->chan_params.evt_ring_hdl = ep->gsi_evt_ring_hdl;
	params->chan_params.ch_id = gsi_ep_cfg_ptr->ipa_gsi_chan_num;
	params->chan_params.prefetch_mode = gsi_ep_cfg_ptr->prefetch_mode;
	params->chan_params.empty_lvl_threshold =
		gsi_ep_cfg_ptr->prefetch_threshold;
	gsi_res = gsi_alloc_channel(&params->chan_params, gsi_dev_hdl,
		&ep->gsi_chan_hdl);
	if (gsi_res != GSI_STATUS_SUCCESS) {
+5 −1
Original line number Diff line number Diff line
@@ -1075,7 +1075,7 @@ int ipa3_setup_sys_pipe(struct ipa_sys_connect_params *sys_in, u32 *clnt_hdl)
	if (result != GSI_STATUS_SUCCESS) {
		IPAERR("gsi_start_channel failed res=%d ep=%d.\n", result,
			ipa_ep_idx);
		goto fail_gen2;
		goto fail_gen3;
	}

	if (!ep->keep_ipa_awake)
@@ -1086,6 +1086,8 @@ int ipa3_setup_sys_pipe(struct ipa_sys_connect_params *sys_in, u32 *clnt_hdl)

	return 0;

fail_gen3:
	ipa3_disable_data_path(ipa_ep_idx);
fail_gen2:
	if (ipa3_ctx->use_ipa_pm)
		ipa_pm_deregister(ep->sys->pm_hdl);
@@ -3785,6 +3787,8 @@ static int ipa_gsi_setup_channel(struct ipa_sys_connect_params *in,
		gsi_channel_props.low_weight = IPA_GSI_MAX_CH_LOW_WEIGHT;
	else
		gsi_channel_props.low_weight = 1;
	gsi_channel_props.prefetch_mode = gsi_ep_info->prefetch_mode;
	gsi_channel_props.empty_lvl_threshold = gsi_ep_info->prefetch_threshold;
	gsi_channel_props.chan_user_data = ep->sys;
	gsi_channel_props.err_cb = ipa_gsi_chan_err_cb;
	if (IPA_CLIENT_IS_PROD(ep->client))
+2 −0
Original line number Diff line number Diff line
@@ -283,6 +283,8 @@ static int ipa_mhi_start_gsi_channel(enum ipa_client_type client,
	ch_props.use_db_eng = GSI_CHAN_DB_MODE;
	ch_props.max_prefetch = GSI_ONE_PREFETCH_SEG;
	ch_props.low_weight = 1;
	ch_props.prefetch_mode = ep_cfg->prefetch_mode;
	ch_props.empty_lvl_threshold = ep_cfg->prefetch_threshold;
	ch_props.err_cb = params->ch_err_cb;
	ch_props.chan_user_data = params->channel;
	res = gsi_alloc_channel(&ch_props, ipa3_ctx->gsi_dev_hdl,
Loading