Loading Documentation/devicetree/bindings/platform/msm/ipa.txt +2 −0 Original line number Diff line number Diff line Loading @@ -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 Loading drivers/platform/msm/ipa/ipa_v3/ipa.c +13 −3 Original line number Diff line number Diff line Loading @@ -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; Loading Loading @@ -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; Loading Loading
Documentation/devicetree/bindings/platform/msm/ipa.txt +2 −0 Original line number Diff line number Diff line Loading @@ -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 Loading
drivers/platform/msm/ipa/ipa_v3/ipa.c +13 −3 Original line number Diff line number Diff line Loading @@ -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; Loading Loading @@ -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; Loading