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

Commit 583aeee9 authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "msm: ipa3: Fix to support IPA Q6 SMEM partition"

parents 140a23e0 36d13cff
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -135,6 +135,8 @@ IPA SMMU sub nodes
- qcom,additional-mapping: specifies any addtional mapping needed for this
				context bank. The format is <iova pa size>

- qcom,ipa-q6-smem-size: specifies the Q6 SMEM partition size

IPA SMP2P sub nodes

-compatible: "qcom,smp2pgpio-map-ipa-1-out" - represents the out gpio from
+13 −3
Original line number Diff line number Diff line
@@ -5973,6 +5973,7 @@ static int ipa_smmu_ap_cb_probe(struct device *dev)
	int bypass = 1;
	u32 iova_ap_mapping[2];
	u32 add_map_size;
	u32 q6_smem_size;
	const u32 *add_map;
	void *smem_addr;
	int i;
@@ -6089,9 +6090,18 @@ static int ipa_smmu_ap_cb_probe(struct device *dev)
		}
	}

	result = of_property_read_u32_array(dev->of_node,
			"qcom,ipa-q6-smem-size", &q6_smem_size, 1);
	if (result) {
		IPADBG("ipa q6 smem size = %d\n", IPA_SMEM_SIZE);
		/* map SMEM memory for IPA table accesses */
		smem_addr = smem_alloc(SMEM_IPA_FILTER_TABLE, IPA_SMEM_SIZE,
				SMEM_MODEM, 0);
	} else {
		IPADBG("ipa q6 smem size = %d\n", q6_smem_size);
		smem_addr = smem_alloc(SMEM_IPA_FILTER_TABLE, q6_smem_size,
				SMEM_MODEM, 0);
	}
	if (smem_addr) {
		phys_addr_t iova = smem_virt_to_phys(smem_addr);
		phys_addr_t pa = iova;