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

Commit f77e4541 authored by Akshay Pandit's avatar Akshay Pandit Committed by Gerrit - the friendly Code Review server
Browse files

msm: veth_ipa: title KW P1 issue fixes



KW P1 fix for Frontend Driver veth_ipa.

Change-Id: I864d82641ee87efd24c8e33eafef6ee0729f96bd
Acked-by: default avatarSAROSH HASAN <sarohasa@qti.qualcomm.com>
Signed-off-by: default avatarAkshay Pandit <pandit@codeaurora.org>
parent d1953739
Loading
Loading
Loading
Loading
+12 −12
Original line number Diff line number Diff line
@@ -165,10 +165,6 @@ static int veth_ipa_offload_init(struct veth_ipa_dev *pdata)
	emac_emb_smmu_ctx.valid = true;

	VETH_IPA_DEBUG("veth_ipa_offload_init");
	if (!pdata) {
		VETH_IPA_ERROR("%s: Null Param\n", __func__);
		return -EINVAL;
	}

	ret = ipa_is_vlan_mode(IPA_VLAN_IF_EMAC, &ipa_vlan_mode);
	if (ret) {
@@ -341,7 +337,7 @@ int veth_set_ul_dl_smmu_ipa_params(struct veth_ipa_dev *pdata,
	}

	/*Configure SGT for UL ring base*/
	ul->ring_base_sgt = kzalloc(sizeof(ul->ring_base_sgt), GFP_KERNEL);
	ul->ring_base_sgt = kzalloc(sizeof(struct sg_table), GFP_KERNEL);
	if (!ul->ring_base_sgt)
		return -ENOMEM;

@@ -369,7 +365,7 @@ int veth_set_ul_dl_smmu_ipa_params(struct veth_ipa_dev *pdata,

	/*configure SGT for UL buff pool base*/
	ul->buff_pool_base_sgt = kzalloc(
		sizeof(ul->buff_pool_base_sgt), GFP_KERNEL);
		sizeof(struct sg_table), GFP_KERNEL);

	if (!ul->buff_pool_base_sgt) {
		kfree(ul->ring_base_sgt);
@@ -402,7 +398,7 @@ int veth_set_ul_dl_smmu_ipa_params(struct veth_ipa_dev *pdata,
		ul->buff_pool_base_pa);

	/*Configure SGT for DL ring base*/
	dl->ring_base_sgt = kzalloc(sizeof(dl->ring_base_sgt), GFP_KERNEL);
	dl->ring_base_sgt = kzalloc(sizeof(struct sg_table), GFP_KERNEL);
	if (!dl->ring_base_sgt)
		return -ENOMEM;

@@ -430,7 +426,7 @@ int veth_set_ul_dl_smmu_ipa_params(struct veth_ipa_dev *pdata,

	/*configure SGT for DL buff pool base*/
	dl->buff_pool_base_sgt = kzalloc(
		sizeof(dl->buff_pool_base_sgt), GFP_KERNEL);
		sizeof(struct sg_table), GFP_KERNEL);

	if (!dl->buff_pool_base_sgt)
		return -ENOMEM;
@@ -450,6 +446,7 @@ int veth_set_ul_dl_smmu_ipa_params(struct veth_ipa_dev *pdata,
		ret = -EAGAIN;
	}

	if (dl->buff_pool_base_sgt != NULL) {
		dl->buff_pool_base_pa = sg_phys(dl->buff_pool_base_sgt->sgl);
		veth_emac_mem->tx_buff_pool_base_pa = dl->buff_pool_base_pa;

@@ -458,6 +455,7 @@ int veth_set_ul_dl_smmu_ipa_params(struct veth_ipa_dev *pdata,
		__func__,
		dl->buff_pool_base_sgt,
		dl->buff_pool_base_pa);
	}
	return ret;
}

@@ -1144,7 +1142,9 @@ static void veth_ipa_offload_event_handler(
	}

	VETH_IPA_UNLOCK();
	VETH_IPA_DEBUG("Exit: event=%s\n", IPA_OFFLOAD_EVENT_string[ev]);
	if (ev < 9)
		VETH_IPA_DEBUG("Exit: event=%s\n",
			IPA_OFFLOAD_EVENT_string[ev]);
}

static void  veth_ipa_emac_deinit_wq(struct work_struct *work)